diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000000000000000000000000000000000000..96e722427c2b0250783623668ef89e3d6ac7083d --- /dev/null +++ b/.dockerignore @@ -0,0 +1,16 @@ +# Avoid including these folders when building the components +.git/ +.gitlab/ +.vscode/ +coverage/ +data/ +deploy/ +ecoc22/ +hackfest/ +manifests/ +nfvsdn22/ +oeccpsc22/ +ofc22/ +ofc23/ +scripts/ +tmp/ diff --git a/.gitignore b/.gitignore index 0a116f850780386a9fe1010b22164f4c7dbf8228..a9144d6699af12319a67e8bad5cec982f3ae6a8c 100644 --- a/.gitignore +++ b/.gitignore @@ -168,5 +168,8 @@ delete_local_deployment.sh local_docker_deployment.sh local_k8s_deployment.sh +# asdf configuration +.tool-versions + # Other logs **/logs/*.log.* diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 6a00c6eed58ed2421c20acd90f407bd51893bd34..8fe5e6c5db2815ff2c5fcbf28b6fedeec3e060c0 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -31,7 +31,7 @@ include: - local: '/src/dbscanserving/.gitlab-ci.yml' - local: '/src/opticalattackmitigator/.gitlab-ci.yml' - local: '/src/opticalattackdetector/.gitlab-ci.yml' - - local: '/src/opticalattackmanager/.gitlab-ci.yml' + # - local: '/src/opticalattackmanager/.gitlab-ci.yml' - local: '/src/automation/.gitlab-ci.yml' - local: '/src/policy/.gitlab-ci.yml' #- local: '/src/webui/.gitlab-ci.yml' diff --git a/deploy/expose_dashboard.sh b/deploy/expose_dashboard.sh index 60b41c7b75d4f96a22151b1d4d68ba53c75a265c..65f715cabe6d688eb01dc5ae6afe7a21261aca94 100755 --- a/deploy/expose_dashboard.sh +++ b/deploy/expose_dashboard.sh @@ -29,11 +29,13 @@ export GRAF_EXT_PORT_HTTP=${GRAF_EXT_PORT_HTTP:-"3000"} # Automated steps start here ######################################################################################################################## +MONITORING_NAMESPACE="monitoring" + function expose_dashboard() { echo "Prometheus Port Mapping" echo ">>> Expose Prometheus HTTP Mgmt GUI port (9090->${PROM_EXT_PORT_HTTP})" - PROM_PORT_HTTP=$(kubectl --namespace monitoring get service prometheus-k8s -o 'jsonpath={.spec.ports[?(@.name=="web")].port}') - PATCH='{"data": {"'${PROM_EXT_PORT_HTTP}'": "monitoring/prometheus-k8s:'${PROM_PORT_HTTP}'"}}' + PROM_PORT_HTTP=$(kubectl --namespace ${MONITORING_NAMESPACE} get service prometheus-k8s -o 'jsonpath={.spec.ports[?(@.name=="web")].port}') + PATCH='{"data": {"'${PROM_EXT_PORT_HTTP}'": "'${MONITORING_NAMESPACE}'/prometheus-k8s:'${PROM_PORT_HTTP}'"}}' kubectl patch configmap nginx-ingress-tcp-microk8s-conf --namespace ingress --patch "${PATCH}" PORT_MAP='{"containerPort": '${PROM_EXT_PORT_HTTP}', "hostPort": '${PROM_EXT_PORT_HTTP}'}' @@ -44,8 +46,8 @@ function expose_dashboard() { echo "Grafana Port Mapping" echo ">>> Expose Grafana HTTP Mgmt GUI port (3000->${GRAF_EXT_PORT_HTTP})" - GRAF_PORT_HTTP=$(kubectl --namespace monitoring get service grafana -o 'jsonpath={.spec.ports[?(@.name=="http")].port}') - PATCH='{"data": {"'${GRAF_EXT_PORT_HTTP}'": "monitoring/grafana:'${GRAF_PORT_HTTP}'"}}' + GRAF_PORT_HTTP=$(kubectl --namespace ${MONITORING_NAMESPACE} get service grafana -o 'jsonpath={.spec.ports[?(@.name=="http")].port}') + PATCH='{"data": {"'${GRAF_EXT_PORT_HTTP}'": "'${MONITORING_NAMESPACE}'/grafana:'${GRAF_PORT_HTTP}'"}}' kubectl patch configmap nginx-ingress-tcp-microk8s-conf --namespace ingress --patch "${PATCH}" PORT_MAP='{"containerPort": '${GRAF_EXT_PORT_HTTP}', "hostPort": '${GRAF_EXT_PORT_HTTP}'}' @@ -55,4 +57,9 @@ function expose_dashboard() { echo } -expose_dashboard +if kubectl get namespace ${MONITORING_NAMESPACE} &> /dev/null; then + echo ">>> Namespace ${MONITORING_NAMESPACE} is present, exposing dashboard..." + expose_dashboard +else + echo ">>> Namespace ${MONITORING_NAMESPACE} is NOT present, skipping expose dashboard..." +fi diff --git a/deploy/tfs.sh b/deploy/tfs.sh index e6a0c0c1053b69462a0e60c6b6cebe28a7dc59af..261996acb3a11cc582a6c3a6bb3a2253e20fdd5c 100755 --- a/deploy/tfs.sh +++ b/deploy/tfs.sh @@ -327,7 +327,12 @@ echo "Deploying extra manifests..." for EXTRA_MANIFEST in $TFS_EXTRA_MANIFESTS; do echo "Processing manifest '$EXTRA_MANIFEST'..." if [[ "$EXTRA_MANIFEST" == *"servicemonitor"* ]]; then - kubectl apply -f $EXTRA_MANIFEST + if kubectl get namespace monitoring &> /dev/null; then + echo ">>> Namespace monitoring is present, applying service monitors..." + kubectl apply -f $EXTRA_MANIFEST + else + echo ">>> Namespace monitoring is NOT present, skipping service monitors..." + fi else kubectl --namespace $TFS_K8S_NAMESPACE apply -f $EXTRA_MANIFEST fi diff --git a/hackfest/commands.txt b/hackfest/commands.txt index 31558364d74aa1fec729c80c9fab50aa7e0c2313..840b83a245f6adf823b8ec097b16437c7d052826 100644 --- a/hackfest/commands.txt +++ b/hackfest/commands.txt @@ -115,6 +115,9 @@ python3 client_connection.py cd ~/tfs-ctrl/hackfest/tapi/server pip install -r requirements.txt +cd ~/tfs-ctrl/hackfest/tapi/tapi_app +./requirements.sh + # (done) Build & Implement methods for the TAPI v2.1.3 server: cd ~/tfs-ctrl/hackfest/tapi wget https://repo1.maven.org/maven2/io/swagger/codegen/v3/swagger-codegen-cli/3.0.35/swagger-codegen-cli-3.0.35.jar @@ -134,7 +137,7 @@ cd ~/tfs-ctrl/hackfest/tapi/server python3 -m tapi_server 8080 database/mini-ols-context.json # Run TAPI client using cURL (In a new window): -$ cd ~/tfs-ctrl/hackfest/tapi/client +cd ~/tfs-ctrl/hackfest/tapi/client # Interrogate Context and SIPs: curl -X GET -H "Content-Type: application/json" http://127.0.0.1:8080/restconf/data/tapi-common:context/ @@ -163,6 +166,7 @@ curl -X DELETE -H "Content-Type: application/json" http://127.0.0.1:8080/restcon ## EXERCISE + # Exercise: retrieve and draw the topology # solution in folder tapi_app @@ -175,24 +179,32 @@ python3 tapi_app.py # Deploy TeraFlowSDN ################################################################################ -# Check status of Kubernetes +## GUIDED + +# Check status of MicroK8s microk8s.status --wait-ready +# If not running, start MicroK8s +microk8s.start + +# Periodically inspect status of MicroK8s until all addons are enabled +watch -n 1 microk8s.status --wait-ready + # Check all resources in Kubernetes -microk8s.kubectl get all --all-namespaces +watch -n 1 kubectl get all --all-namespaces # Deploy TeraFlowSDN cd ~/tfs-ctrl source my_deploy.sh -./deploy.sh +./deploy/all.sh # Show status of your deployment (if new terminal) cd ~/tfs-ctrl && source my_deploy.sh -./show_deploy.sh +./deploy/show.sh # Show logs of a specific component (if new terminal) cd ~/tfs-ctrl && source my_deploy.sh -scripts/show_logs_device.sh +./scripts/show_logs_device.sh @@ -202,6 +214,8 @@ scripts/show_logs_device.sh # (done) Build a Netconf server supporting basic OpenConfig data model +## GUIDED + # Start the Netconf/OpenConfig server cd ~/tfs-ctrl/hackfest/netconf-oc python3 server_openconfig.py 8300 @@ -212,7 +226,8 @@ python3 server_openconfig.py 8300 # Service requests ################################################################################ -## L3VPN service from JSON descriptors +## EXERCISE +# Exercise: L3VPN service from JSON descriptors # (in a new terminal) Start OLS TAPI server: cd ~/tfs-ctrl/hackfest/tapi/server @@ -236,9 +251,8 @@ python3 server_openconfig.py 8304 -############ -# Mock OSM -############ +## EXERCISE +# Exercise: L2VPN slice from Mock OSM $ cd ~/tfs-ctrl/hackfest/ $ python -m mock_osm @@ -262,16 +276,69 @@ Service b8c99e2c-39d8-424d-9833-554634269555 deleted (mock-osm) exit Bye! + + +############ +# gRPC +############ + +## GUIDED + +# Generate connection messages from .proto +cd ~/tfs-ctrl/hackfest/grpc +python -m grpc_tools.protoc -I=. --python_out=connection/ connection.proto + +# Create a connection message and save to a file +cd ~/tfs-ctrl/hackfest/grpc/connection +python3 create.py connection.txt + +# List a connection from a file +cd ~/tfs-ctrl/hackfest/grpc/connection +python3 list.py connection.txt + +# Build ConnectionService from .proto +cd ~/tfs-ctrl/hackfest/grpc +python -m grpc_tools.protoc -I=. --python_out=connectionService/ --grpc_python_out=connectionService/ connectionService.proto + +# Start ConnectionService server +cd ~/tfs-ctrl/hackfest/grpc/connectionService +python3 connectionService_server.py + +# Start ConnectionService client (in another terminal) +cd ~/tfs-ctrl/hackfest/grpc/connectionService +python3 connectionService_client.py + + +## EXERCISE +# Exercise: add streams + +# Build ConnectionServiceWithNotif from .proto +cd ~/tfs-ctrl/hackfest/grpc +python -m grpc_tools.protoc -I=. --python_out=connectionServiceWithNotif/ --grpc_python_out=connectionServiceWithNotif/ connectionServiceWithNotif.proto + +## Solution: +# Run ConnectionServiceWithNotif server +cd ~/tfs-ctrl/hackfest/grpc/connectionServiceWithNotif +python3 connectionServiceWithNotif_server.py + +# Run ConnectionServiceWithNotif client (in another terminal) +$ cd ~/tfs-ctrl/hackfest/grpc/connectionServiceWithNotif +$ python3 connectionServiceWithNotif_client.py + + + ############ # gNMI ############ +## GUIDED + ## Download and install the latest release -$ sudo bash -c "$(curl -sL https://get.containerlab.dev)“ +$ sudo bash -c "$(curl -sL https://get.containerlab.dev)" ## Deploy proposed two SR node scenario -$ cd tfs-ctrl/hackfest/gnmi -$ sudo containerlab deploy -t srlinux.clab.yml +$ cd ~/tfs-ctrl/hackfest/gnmi +$ sudo containerlab deploy --topo srlinux.clab.yml ## Access SR Bash $ docker exec -it clab-srlinux-srl1 bash diff --git a/hackfest/containerlab/.gitignore b/hackfest/containerlab/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..48cbf38799194b5fb3896f3a27f16bff11369fb2 --- /dev/null +++ b/hackfest/containerlab/.gitignore @@ -0,0 +1,2 @@ +clab-tfs-scenario +.tfs-scenario.clab.yml.bak diff --git a/hackfest/containerlab/commands.txt b/hackfest/containerlab/commands.txt new file mode 100644 index 0000000000000000000000000000000000000000..18c629c0af2fe176a34f9b08a16405731c185243 --- /dev/null +++ b/hackfest/containerlab/commands.txt @@ -0,0 +1,99 @@ +############ +# ContainerLab +############ + +Refs: +https://documentation.nokia.com/srlinux/22-6/SR_Linux_Book_Files/SysMgmt_Guide/data-models.html#openconfig-ov +https://documentation.nokia.com/srlinux/SR_Linux_HTML_R21-11/SysMgmt_Guide/gnmi-interface.html#ai9ersv4qe +https://github.com/openconfig/kne/blob/v0.1.9/examples/nokia/srlinux-services/srl-openconfig.cfg.json +https://containerlab.dev/manual/kinds/srl/#default-node-configuration +https://learn.srlinux.dev/tutorials/infrastructure/kne/srl-with-oc-services/ +https://github.com/openconfig/reference/blob/master/rpc/gnmi/gnmi-specification.md +https://gnmic.kmrd.dev/cmd/get/ + + +IMPORTANT: for Nokia SR Linux, use kind "srl" and type "ixr6" + +## Download and install the latest release +$ sudo bash -c "$(curl -sL https://get.containerlab.dev)" -- -v 0.42.0 + +## Deploy proposed two SR node scenario +$ cd ~/tfs-ctrl/hackfest/containerlab +$ sudo containerlab deploy --topo tfs-scenario.clab.yml + +## Access SR Bash +$ docker exec -it clab-tfs-scenario-srl1 bash + +## Access SR CLI +$ docker exec -it clab-tfs-scenario-srl1 sr_cli + +## Destroy scenario +$ sudo containerlab destroy --topo tfs-scenario.clab.yml + + +## Enable OpenConfig data models and set as default: +$ docker exec -it clab-tfs-scenario-srl1 sr_cli +# enter candidate +# system management openconfig admin-state enable +# system gnmi-server network-instance mgmt yang-models openconfig +# commit stay +# quit + + +# Configure containerlab clients +docker exec -it clab-tfs-scenario-client1 bash + ip address add 172.16.1.10/24 dev eth1 + ip route add 172.16.2.0/24 via 172.16.1.1 + + ping 172.16.2.1 or 172.16.2.10 + +docker exec -it clab-tfs-scenario-client2 bash + ip address add 172.16.2.10/24 dev eth1 + ip route add 172.16.1.0/24 via 172.16.2.1 + + ping 172.16.1.1 or 172.16.1.10 + + + + +## Install gNMIc +$ sudo bash -c "$(curl -sL https://get-gnmic.kmrd.dev)" + +## gNMI Capabilities request +$ gnmic -a clab-srlinux-srl1 -u admin -p NokiaSrl1! --skip-verify capabilities + +## gNMI Get request +$ gnmic -a clab-srlinux-srl1 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path /system/name/host-name +$ gnmic -a clab-srlinux-srl1 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path /interface[name=mgmt0] + +## gNMI Set request +$ gnmic -a clab-srlinux-srl1 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --update-path /system/name/host-name --update-value slr11 + +(we check the changed value) +$ gnmic -a clab-srlinux-srl1 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path /system/name/host-name + +## Subscribe request +$ gnmic -a clab-srlinux-srl1 -u admin -p NokiaSrl1! --skip-verify -e json_ietf subscribe --path /interface[name=mgmt0]/statistics +(In another terminal, you can generate traffic) +$ssh admin@clab-srlinux-srl1 + + + + +# Check configurations done: +gnmic -a 172.100.100.101 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path '/network-instances' > srl1-nis.json +gnmic -a 172.100.100.101 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path '/interfaces' > srl1-ifs.json +gnmic -a 172.100.100.102 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path '/network-instances' > srl2-nis.json +gnmic -a 172.100.100.102 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path '/interfaces' > srl2-ifs.json + + +# Delete elements: +gnmic -a 172.100.100.101 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/network-instances/network-instance[name=b19229e8]' +gnmic -a 172.100.100.101 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/interfaces/interface[name=ethernet-1/1]/subinterfaces/subinterface[index=0]' +gnmic -a 172.100.100.101 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/interfaces/interface[name=ethernet-1/2]/subinterfaces/subinterface[index=0]' +gnmic -a 172.100.100.102 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/network-instances/network-instance[name=b19229e8]' +gnmic -a 172.100.100.102 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/interfaces/interface[name=ethernet-1/1]/subinterfaces/subinterface[index=0]' +gnmic -a 172.100.100.102 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/interfaces/interface[name=ethernet-1/2]/subinterfaces/subinterface[index=0]' + +# Run gNMI Driver in standalone mode (advanced) +PYTHONPATH=./src python -m src.device.tests.test_gnmi diff --git a/hackfest/containerlab/tfs-descriptors/.gitkeep b/hackfest/containerlab/tfs-descriptors/.gitkeep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/hackfest/containerlab/tfs-descriptors/dc-2-dc-l3-service.json b/hackfest/containerlab/tfs-descriptors/dc-2-dc-l3-service.json new file mode 100644 index 0000000000000000000000000000000000000000..cb9ef972e4c314694a1a8a78bb5e30509a2de61f --- /dev/null +++ b/hackfest/containerlab/tfs-descriptors/dc-2-dc-l3-service.json @@ -0,0 +1,37 @@ +{ + "services": [ + { + "service_id": { + "context_id": {"context_uuid": {"uuid": "admin"}}, "service_uuid": {"uuid": "dc-2-dc-l3-svc"} + }, + "service_type": 1, + "service_status": {"service_status": 1}, + "service_endpoint_ids": [ + {"device_id":{"device_uuid":{"uuid":"DC1"}},"endpoint_uuid":{"uuid":"int"}}, + {"device_id":{"device_uuid":{"uuid":"DC2"}},"endpoint_uuid":{"uuid":"int"}} + ], + "service_constraints": [], + "service_config": {"config_rules": [ + {"action": 1, "custom": {"resource_key": "/device[SRL1]/settings", "resource_value": { + "static_routes": [{"prefix": "172.16.2.0/24", "next_hop": "172.0.0.2"}] + }}}, + {"action": 1, "custom": {"resource_key": "/device[SRL1]/endpoint[ethernet-1/1]/settings", "resource_value": { + "ipv4_address": "172.0.0.1", "ipv4_prefix": 30, "sub_interface_index": 0 + }}}, + {"action": 1, "custom": {"resource_key": "/device[SRL1]/endpoint[ethernet-1/2]/settings", "resource_value": { + "ipv4_address": "172.16.1.1", "ipv4_prefix": 24, "sub_interface_index": 0 + }}}, + + {"action": 1, "custom": {"resource_key": "/device[SRL2]/settings", "resource_value": { + "static_routes": [{"prefix": "172.16.1.0/24", "next_hop": "172.0.0.1"}] + }}}, + {"action": 1, "custom": {"resource_key": "/device[SRL2]/endpoint[ethernet-1/1]/settings", "resource_value": { + "ipv4_address": "172.0.0.2", "ipv4_prefix": 30, "sub_interface_index": 0 + }}}, + {"action": 1, "custom": {"resource_key": "/device[SRL2]/endpoint[ethernet-1/2]/settings", "resource_value": { + "ipv4_address": "172.16.2.1", "ipv4_prefix": 24, "sub_interface_index": 0 + }}} + ]} + } + ] +} diff --git a/hackfest/containerlab/tfs-descriptors/topology.json b/hackfest/containerlab/tfs-descriptors/topology.json new file mode 100644 index 0000000000000000000000000000000000000000..e4a49981f99339d77538af814365703e463d3db5 --- /dev/null +++ b/hackfest/containerlab/tfs-descriptors/topology.json @@ -0,0 +1,96 @@ +{ + "contexts": [ + {"context_id": {"context_uuid": {"uuid": "admin"}}} + ], + "topologies": [ + {"topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "admin"}}} + ], + "devices": [ + { + "device_id": {"device_uuid": {"uuid": "DC1"}}, "device_type": "emu-datacenter", "device_drivers": [0], + "device_config": {"config_rules": [ + {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "127.0.0.1"}}, + {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, + {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ + {"uuid": "eth1", "type": "copper"}, {"uuid": "eth2", "type": "copper"}, {"uuid": "int", "type": "copper"} + ]}}} + ]} + }, + { + "device_id": {"device_uuid": {"uuid": "DC2"}}, "device_type": "emu-datacenter", "device_drivers": [0], + "device_config": {"config_rules": [ + {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "127.0.0.1"}}, + {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, + {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ + {"uuid": "eth1", "type": "copper"}, {"uuid": "eth2", "type": "copper"}, {"uuid": "int", "type": "copper"} + ]}}} + ]} + }, + { + "device_id": {"device_uuid": {"uuid": "SRL1"}}, "device_type": "packet-router", "device_drivers": [8], + "device_config": {"config_rules": [ + {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "172.100.100.101"}}, + {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "57400"}}, + {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": { + "username": "admin", "password": "NokiaSrl1!", "use_tls": true + }}} + ]} + }, + { + "device_id": {"device_uuid": {"uuid": "SRL2"}}, "device_type": "packet-router", "device_drivers": [8], + "device_config": {"config_rules": [ + {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "172.100.100.102"}}, + {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "57400"}}, + {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": { + "username": "admin", "password": "NokiaSrl1!", "use_tls": true + }}} + ]} + } + ], + "links": [ + { + "link_id": {"link_uuid": {"uuid": "DC1/eth1==SRL1/ethernet-1/2"}}, + "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "DC1"}}, "endpoint_uuid": {"uuid": "eth1"}}, + {"device_id": {"device_uuid": {"uuid": "SRL1"}}, "endpoint_uuid": {"uuid": "ethernet-1/2"}} + ] + }, + { + "link_id": {"link_uuid": {"uuid": "SRL1/ethernet-1/2==DC1/eth1"}}, + "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "SRL1"}}, "endpoint_uuid": {"uuid": "ethernet-1/2"}}, + {"device_id": {"device_uuid": {"uuid": "DC1"}}, "endpoint_uuid": {"uuid": "eth1"}} + ] + }, + + { + "link_id": {"link_uuid": {"uuid": "SRL1/ethernet-1/1==SRL2/ethernet-1/1"}}, + "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "SRL1"}}, "endpoint_uuid": {"uuid": "ethernet-1/1"}}, + {"device_id": {"device_uuid": {"uuid": "SRL2"}}, "endpoint_uuid": {"uuid": "ethernet-1/1"}} + ] + }, + { + "link_id": {"link_uuid": {"uuid": "SRL2/ethernet-1/1==SRL1/ethernet-1/1"}}, + "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "SRL2"}}, "endpoint_uuid": {"uuid": "ethernet-1/1"}}, + {"device_id": {"device_uuid": {"uuid": "SRL1"}}, "endpoint_uuid": {"uuid": "ethernet-1/1"}} + ] + }, + + { + "link_id": {"link_uuid": {"uuid": "DC2/eth1==SRL2/ethernet-1/2"}}, + "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "DC2"}}, "endpoint_uuid": {"uuid": "eth1"}}, + {"device_id": {"device_uuid": {"uuid": "SRL2"}}, "endpoint_uuid": {"uuid": "ethernet-1/2"}} + ] + }, + { + "link_id": {"link_uuid": {"uuid": "SRL2/ethernet-1/2==DC2/eth1"}}, + "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "SRL2"}}, "endpoint_uuid": {"uuid": "ethernet-1/2"}}, + {"device_id": {"device_uuid": {"uuid": "DC2"}}, "endpoint_uuid": {"uuid": "eth1"}} + ] + } + ] +} diff --git a/hackfest/containerlab/tfs-scenario.clab.yml b/hackfest/containerlab/tfs-scenario.clab.yml new file mode 100644 index 0000000000000000000000000000000000000000..df197ebea70906874515240f18d2f06c4c307c88 --- /dev/null +++ b/hackfest/containerlab/tfs-scenario.clab.yml @@ -0,0 +1,59 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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. + +# Example based on clos01 example (http://containerlab.dev/lab-examples/min-clos/) + +# TFS 2 Nokia SR Linux nodes + 2 Linux clients +name: tfs-scenario + +mgmt: + network: mgmt-net + ipv4-subnet: 172.100.100.0/24 + +topology: + kinds: + srl: + image: ghcr.io/nokia/srlinux:23.3.1 + linux: + image: ghcr.io/hellt/network-multitool + nodes: + srl1: + kind: srl + type: ixr6 + cpu: 0.5 + memory: 1GB + mgmt-ipv4: 172.100.100.101 + #startup-config: srl1.cli + srl2: + kind: srl + type: ixr6 + cpu: 0.5 + memory: 1GB + mgmt-ipv4: 172.100.100.102 + #startup-config: srl2.cli + client1: + kind: linux + cpu: 0.1 + memory: 100MB + mgmt-ipv4: 172.100.100.201 + client2: + kind: linux + cpu: 0.1 + memory: 100MB + mgmt-ipv4: 172.100.100.202 + + links: + - endpoints: ["srl1:e1-1", "srl2:e1-1"] + - endpoints: ["client1:eth1", "srl1:e1-2"] + - endpoints: ["client2:eth1", "srl2:e1-2"] diff --git a/hackfest/gnmi/sonic.clab.yml b/hackfest/gnmi/srlinux.clab.yml similarity index 83% rename from hackfest/gnmi/sonic.clab.yml rename to hackfest/gnmi/srlinux.clab.yml index 47c1e64643a70e3e0caff12aff8a6796598cea1f..a589292ac5b58664646ab7d3cccebfd62c28a540 100644 --- a/hackfest/gnmi/sonic.clab.yml +++ b/hackfest/gnmi/srlinux.clab.yml @@ -12,18 +12,17 @@ # See the License for the specific language governing permissions and # limitations under the License. -# file: sonic.clab.yml -name: sonic-vs +# file: srlinux.clab.yml +name: srlinux topology: nodes: srl1: - kind: sonic-vs - image: docker-sonic-vs + kind: srl + image: ghcr.io/nokia/srlinux srl2: - kind: sonic-vs - image: docker-sonic-vs + kind: srl + image: ghcr.io/nokia/srlinux links: - endpoints: ["srl1:e1-1", "srl2:e1-1"] - diff --git a/hackfest/grpc/connection/connection_pb2.py b/hackfest/grpc/connection/connection_pb2.py index e66b665b22303fbf582de9ec378591fae4e09659..4d642577df514be773ce4dc20df2cf34380410c1 100644 --- a/hackfest/grpc/connection/connection_pb2.py +++ b/hackfest/grpc/connection/connection_pb2.py @@ -1,9 +1,9 @@ +# -*- coding: utf-8 -*- # Generated by the protocol buffer compiler. DO NOT EDIT! # source: connection.proto - -import sys -_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +"""Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool from google.protobuf import message as _message from google.protobuf import reflection as _reflection from google.protobuf import symbol_database as _symbol_database @@ -14,163 +14,34 @@ _sym_db = _symbol_database.Default() -DESCRIPTOR = _descriptor.FileDescriptor( - name='connection.proto', - package='connection', - syntax='proto3', - serialized_options=None, - serialized_pb=_b('\n\x10\x63onnection.proto\x12\nconnection\"\xf5\x01\n\nConnection\x12\x14\n\x0c\x63onnectionId\x18\x01 \x01(\t\x12\x12\n\nsourceNode\x18\x02 \x01(\t\x12\x12\n\ntargetNode\x18\x03 \x01(\t\x12\x12\n\nsourcePort\x18\x04 \x01(\t\x12\x12\n\ntargetPort\x18\x05 \x01(\t\x12\x11\n\tbandwidth\x18\x06 \x01(\r\x12\x43\n\x11layerProtocolName\x18\x07 \x01(\x0e\x32(.connection.Connection.LayerProtocolName\")\n\x11LayerProtocolName\x12\x07\n\x03\x45TH\x10\x00\x12\x0b\n\x07OPTICAL\x10\x01\"<\n\x0e\x43onnectionList\x12*\n\nconnection\x18\x01 \x03(\x0b\x32\x16.connection.Connectionb\x06proto3') -) - - - -_CONNECTION_LAYERPROTOCOLNAME = _descriptor.EnumDescriptor( - name='LayerProtocolName', - full_name='connection.Connection.LayerProtocolName', - filename=None, - file=DESCRIPTOR, - values=[ - _descriptor.EnumValueDescriptor( - name='ETH', index=0, number=0, - serialized_options=None, - type=None), - _descriptor.EnumValueDescriptor( - name='OPTICAL', index=1, number=1, - serialized_options=None, - type=None), - ], - containing_type=None, - serialized_options=None, - serialized_start=237, - serialized_end=278, -) -_sym_db.RegisterEnumDescriptor(_CONNECTION_LAYERPROTOCOLNAME) - - -_CONNECTION = _descriptor.Descriptor( - name='Connection', - full_name='connection.Connection', - filename=None, - file=DESCRIPTOR, - containing_type=None, - fields=[ - _descriptor.FieldDescriptor( - name='connectionId', full_name='connection.Connection.connectionId', 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), - _descriptor.FieldDescriptor( - name='sourceNode', full_name='connection.Connection.sourceNode', 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), - _descriptor.FieldDescriptor( - name='targetNode', full_name='connection.Connection.targetNode', 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), - _descriptor.FieldDescriptor( - name='sourcePort', full_name='connection.Connection.sourcePort', 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), - _descriptor.FieldDescriptor( - name='targetPort', full_name='connection.Connection.targetPort', index=4, - number=5, 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), - _descriptor.FieldDescriptor( - name='bandwidth', full_name='connection.Connection.bandwidth', 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), - _descriptor.FieldDescriptor( - name='layerProtocolName', full_name='connection.Connection.layerProtocolName', index=6, - number=7, 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), - ], - extensions=[ - ], - nested_types=[], - enum_types=[ - _CONNECTION_LAYERPROTOCOLNAME, - ], - serialized_options=None, - is_extendable=False, - syntax='proto3', - extension_ranges=[], - oneofs=[ - ], - serialized_start=33, - serialized_end=278, -) - +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x10\x63onnection.proto\x12\nconnection\"\xf5\x01\n\nConnection\x12\x14\n\x0c\x63onnectionId\x18\x01 \x01(\t\x12\x12\n\nsourceNode\x18\x02 \x01(\t\x12\x12\n\ntargetNode\x18\x03 \x01(\t\x12\x12\n\nsourcePort\x18\x04 \x01(\t\x12\x12\n\ntargetPort\x18\x05 \x01(\t\x12\x11\n\tbandwidth\x18\x06 \x01(\r\x12\x43\n\x11layerProtocolName\x18\x07 \x01(\x0e\x32(.connection.Connection.LayerProtocolName\")\n\x11LayerProtocolName\x12\x07\n\x03\x45TH\x10\x00\x12\x0b\n\x07OPTICAL\x10\x01\"<\n\x0e\x43onnectionList\x12*\n\nconnection\x18\x01 \x03(\x0b\x32\x16.connection.Connectionb\x06proto3') -_CONNECTIONLIST = _descriptor.Descriptor( - name='ConnectionList', - full_name='connection.ConnectionList', - filename=None, - file=DESCRIPTOR, - containing_type=None, - fields=[ - _descriptor.FieldDescriptor( - name='connection', full_name='connection.ConnectionList.connection', 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), - ], - extensions=[ - ], - nested_types=[], - enum_types=[ - ], - serialized_options=None, - is_extendable=False, - syntax='proto3', - extension_ranges=[], - oneofs=[ - ], - serialized_start=280, - serialized_end=340, -) -_CONNECTION.fields_by_name['layerProtocolName'].enum_type = _CONNECTION_LAYERPROTOCOLNAME -_CONNECTION_LAYERPROTOCOLNAME.containing_type = _CONNECTION -_CONNECTIONLIST.fields_by_name['connection'].message_type = _CONNECTION -DESCRIPTOR.message_types_by_name['Connection'] = _CONNECTION -DESCRIPTOR.message_types_by_name['ConnectionList'] = _CONNECTIONLIST -_sym_db.RegisterFileDescriptor(DESCRIPTOR) -Connection = _reflection.GeneratedProtocolMessageType('Connection', (_message.Message,), dict( - DESCRIPTOR = _CONNECTION, - __module__ = 'connection_pb2' +_CONNECTION = DESCRIPTOR.message_types_by_name['Connection'] +_CONNECTIONLIST = DESCRIPTOR.message_types_by_name['ConnectionList'] +_CONNECTION_LAYERPROTOCOLNAME = _CONNECTION.enum_types_by_name['LayerProtocolName'] +Connection = _reflection.GeneratedProtocolMessageType('Connection', (_message.Message,), { + 'DESCRIPTOR' : _CONNECTION, + '__module__' : 'connection_pb2' # @@protoc_insertion_point(class_scope:connection.Connection) - )) + }) _sym_db.RegisterMessage(Connection) -ConnectionList = _reflection.GeneratedProtocolMessageType('ConnectionList', (_message.Message,), dict( - DESCRIPTOR = _CONNECTIONLIST, - __module__ = 'connection_pb2' +ConnectionList = _reflection.GeneratedProtocolMessageType('ConnectionList', (_message.Message,), { + 'DESCRIPTOR' : _CONNECTIONLIST, + '__module__' : 'connection_pb2' # @@protoc_insertion_point(class_scope:connection.ConnectionList) - )) + }) _sym_db.RegisterMessage(ConnectionList) +if _descriptor._USE_C_DESCRIPTORS == False: + DESCRIPTOR._options = None + _CONNECTION._serialized_start=33 + _CONNECTION._serialized_end=278 + _CONNECTION_LAYERPROTOCOLNAME._serialized_start=237 + _CONNECTION_LAYERPROTOCOLNAME._serialized_end=278 + _CONNECTIONLIST._serialized_start=280 + _CONNECTIONLIST._serialized_end=340 # @@protoc_insertion_point(module_scope) diff --git a/hackfest/grpc/connectionService/connectionService_pb2.py b/hackfest/grpc/connectionService/connectionService_pb2.py index 9f1951fa92a017baf4f44470e833aae8d74e0f3b..a7efb7d21aa948134388dd6918a57d816ba4bcff 100644 --- a/hackfest/grpc/connectionService/connectionService_pb2.py +++ b/hackfest/grpc/connectionService/connectionService_pb2.py @@ -1,9 +1,9 @@ +# -*- coding: utf-8 -*- # Generated by the protocol buffer compiler. DO NOT EDIT! # source: connectionService.proto - -import sys -_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +"""Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool from google.protobuf import message as _message from google.protobuf import reflection as _reflection from google.protobuf import symbol_database as _symbol_database @@ -15,197 +15,37 @@ _sym_db = _symbol_database.Default() from google.protobuf import empty_pb2 as google_dot_protobuf_dot_empty__pb2 -DESCRIPTOR = _descriptor.FileDescriptor( - name='connectionService.proto', - package='connection', - syntax='proto3', - serialized_options=None, - serialized_pb=_b('\n\x17\x63onnectionService.proto\x12\nconnection\x1a\x1bgoogle/protobuf/empty.proto\"\xf5\x01\n\nConnection\x12\x14\n\x0c\x63onnectionId\x18\x01 \x01(\t\x12\x12\n\nsourceNode\x18\x02 \x01(\t\x12\x12\n\ntargetNode\x18\x03 \x01(\t\x12\x12\n\nsourcePort\x18\x04 \x01(\t\x12\x12\n\ntargetPort\x18\x05 \x01(\t\x12\x11\n\tbandwidth\x18\x06 \x01(\r\x12\x43\n\x11layerProtocolName\x18\x07 \x01(\x0e\x32(.connection.Connection.LayerProtocolName\")\n\x11LayerProtocolName\x12\x07\n\x03\x45TH\x10\x00\x12\x0b\n\x07OPTICAL\x10\x01\"<\n\x0e\x43onnectionList\x12*\n\nconnection\x18\x01 \x03(\x0b\x32\x16.connection.Connection2\xa1\x01\n\x11\x43onnectionService\x12\x44\n\x10\x43reateConnection\x12\x16.connection.Connection\x1a\x16.google.protobuf.Empty\"\x00\x12\x46\n\x0eListConnection\x12\x16.google.protobuf.Empty\x1a\x1a.connection.ConnectionList\"\x00\x62\x06proto3') - , - dependencies=[google_dot_protobuf_dot_empty__pb2.DESCRIPTOR,]) - - - -_CONNECTION_LAYERPROTOCOLNAME = _descriptor.EnumDescriptor( - name='LayerProtocolName', - full_name='connection.Connection.LayerProtocolName', - filename=None, - file=DESCRIPTOR, - values=[ - _descriptor.EnumValueDescriptor( - name='ETH', index=0, number=0, - serialized_options=None, - type=None), - _descriptor.EnumValueDescriptor( - name='OPTICAL', index=1, number=1, - serialized_options=None, - type=None), - ], - containing_type=None, - serialized_options=None, - serialized_start=273, - serialized_end=314, -) -_sym_db.RegisterEnumDescriptor(_CONNECTION_LAYERPROTOCOLNAME) - - -_CONNECTION = _descriptor.Descriptor( - name='Connection', - full_name='connection.Connection', - filename=None, - file=DESCRIPTOR, - containing_type=None, - fields=[ - _descriptor.FieldDescriptor( - name='connectionId', full_name='connection.Connection.connectionId', 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), - _descriptor.FieldDescriptor( - name='sourceNode', full_name='connection.Connection.sourceNode', 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), - _descriptor.FieldDescriptor( - name='targetNode', full_name='connection.Connection.targetNode', 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), - _descriptor.FieldDescriptor( - name='sourcePort', full_name='connection.Connection.sourcePort', 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), - _descriptor.FieldDescriptor( - name='targetPort', full_name='connection.Connection.targetPort', index=4, - number=5, 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), - _descriptor.FieldDescriptor( - name='bandwidth', full_name='connection.Connection.bandwidth', 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), - _descriptor.FieldDescriptor( - name='layerProtocolName', full_name='connection.Connection.layerProtocolName', index=6, - number=7, 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), - ], - extensions=[ - ], - nested_types=[], - enum_types=[ - _CONNECTION_LAYERPROTOCOLNAME, - ], - serialized_options=None, - is_extendable=False, - syntax='proto3', - extension_ranges=[], - oneofs=[ - ], - serialized_start=69, - serialized_end=314, -) +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17\x63onnectionService.proto\x12\nconnection\x1a\x1bgoogle/protobuf/empty.proto\"\xf5\x01\n\nConnection\x12\x14\n\x0c\x63onnectionId\x18\x01 \x01(\t\x12\x12\n\nsourceNode\x18\x02 \x01(\t\x12\x12\n\ntargetNode\x18\x03 \x01(\t\x12\x12\n\nsourcePort\x18\x04 \x01(\t\x12\x12\n\ntargetPort\x18\x05 \x01(\t\x12\x11\n\tbandwidth\x18\x06 \x01(\r\x12\x43\n\x11layerProtocolName\x18\x07 \x01(\x0e\x32(.connection.Connection.LayerProtocolName\")\n\x11LayerProtocolName\x12\x07\n\x03\x45TH\x10\x00\x12\x0b\n\x07OPTICAL\x10\x01\"<\n\x0e\x43onnectionList\x12*\n\nconnection\x18\x01 \x03(\x0b\x32\x16.connection.Connection2\xa1\x01\n\x11\x43onnectionService\x12\x44\n\x10\x43reateConnection\x12\x16.connection.Connection\x1a\x16.google.protobuf.Empty\"\x00\x12\x46\n\x0eListConnection\x12\x16.google.protobuf.Empty\x1a\x1a.connection.ConnectionList\"\x00\x62\x06proto3') -_CONNECTIONLIST = _descriptor.Descriptor( - name='ConnectionList', - full_name='connection.ConnectionList', - filename=None, - file=DESCRIPTOR, - containing_type=None, - fields=[ - _descriptor.FieldDescriptor( - name='connection', full_name='connection.ConnectionList.connection', 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), - ], - extensions=[ - ], - nested_types=[], - enum_types=[ - ], - serialized_options=None, - is_extendable=False, - syntax='proto3', - extension_ranges=[], - oneofs=[ - ], - serialized_start=316, - serialized_end=376, -) -_CONNECTION.fields_by_name['layerProtocolName'].enum_type = _CONNECTION_LAYERPROTOCOLNAME -_CONNECTION_LAYERPROTOCOLNAME.containing_type = _CONNECTION -_CONNECTIONLIST.fields_by_name['connection'].message_type = _CONNECTION -DESCRIPTOR.message_types_by_name['Connection'] = _CONNECTION -DESCRIPTOR.message_types_by_name['ConnectionList'] = _CONNECTIONLIST -_sym_db.RegisterFileDescriptor(DESCRIPTOR) - -Connection = _reflection.GeneratedProtocolMessageType('Connection', (_message.Message,), dict( - DESCRIPTOR = _CONNECTION, - __module__ = 'connectionService_pb2' +_CONNECTION = DESCRIPTOR.message_types_by_name['Connection'] +_CONNECTIONLIST = DESCRIPTOR.message_types_by_name['ConnectionList'] +_CONNECTION_LAYERPROTOCOLNAME = _CONNECTION.enum_types_by_name['LayerProtocolName'] +Connection = _reflection.GeneratedProtocolMessageType('Connection', (_message.Message,), { + 'DESCRIPTOR' : _CONNECTION, + '__module__' : 'connectionService_pb2' # @@protoc_insertion_point(class_scope:connection.Connection) - )) + }) _sym_db.RegisterMessage(Connection) -ConnectionList = _reflection.GeneratedProtocolMessageType('ConnectionList', (_message.Message,), dict( - DESCRIPTOR = _CONNECTIONLIST, - __module__ = 'connectionService_pb2' +ConnectionList = _reflection.GeneratedProtocolMessageType('ConnectionList', (_message.Message,), { + 'DESCRIPTOR' : _CONNECTIONLIST, + '__module__' : 'connectionService_pb2' # @@protoc_insertion_point(class_scope:connection.ConnectionList) - )) + }) _sym_db.RegisterMessage(ConnectionList) - - -_CONNECTIONSERVICE = _descriptor.ServiceDescriptor( - name='ConnectionService', - full_name='connection.ConnectionService', - file=DESCRIPTOR, - index=0, - serialized_options=None, - serialized_start=379, - serialized_end=540, - methods=[ - _descriptor.MethodDescriptor( - name='CreateConnection', - full_name='connection.ConnectionService.CreateConnection', - index=0, - containing_service=None, - input_type=_CONNECTION, - output_type=google_dot_protobuf_dot_empty__pb2._EMPTY, - serialized_options=None, - ), - _descriptor.MethodDescriptor( - name='ListConnection', - full_name='connection.ConnectionService.ListConnection', - index=1, - containing_service=None, - input_type=google_dot_protobuf_dot_empty__pb2._EMPTY, - output_type=_CONNECTIONLIST, - serialized_options=None, - ), -]) -_sym_db.RegisterServiceDescriptor(_CONNECTIONSERVICE) - -DESCRIPTOR.services_by_name['ConnectionService'] = _CONNECTIONSERVICE - +_CONNECTIONSERVICE = DESCRIPTOR.services_by_name['ConnectionService'] +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + _CONNECTION._serialized_start=69 + _CONNECTION._serialized_end=314 + _CONNECTION_LAYERPROTOCOLNAME._serialized_start=273 + _CONNECTION_LAYERPROTOCOLNAME._serialized_end=314 + _CONNECTIONLIST._serialized_start=316 + _CONNECTIONLIST._serialized_end=376 + _CONNECTIONSERVICE._serialized_start=379 + _CONNECTIONSERVICE._serialized_end=540 # @@protoc_insertion_point(module_scope) diff --git a/hackfest/grpc/connectionService/connectionService_pb2_grpc.py b/hackfest/grpc/connectionService/connectionService_pb2_grpc.py index 94ffffbf7fd3c90b541f36bd1aac6f23e1b5913b..0278d6fa443960a5fcfdb166e5dbeea3b31b6cc2 100644 --- a/hackfest/grpc/connectionService/connectionService_pb2_grpc.py +++ b/hackfest/grpc/connectionService/connectionService_pb2_grpc.py @@ -1,4 +1,5 @@ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" import grpc import connectionService_pb2 as connectionService__pb2 @@ -6,59 +7,94 @@ from google.protobuf import empty_pb2 as google_dot_protobuf_dot_empty__pb2 class ConnectionServiceStub(object): - # missing associated documentation comment in .proto file - pass + """Missing associated documentation comment in .proto file.""" - def __init__(self, channel): - """Constructor. + def __init__(self, channel): + """Constructor. - Args: - channel: A grpc.Channel. - """ - self.CreateConnection = channel.unary_unary( - '/connection.ConnectionService/CreateConnection', - request_serializer=connectionService__pb2.Connection.SerializeToString, - response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString, - ) - self.ListConnection = channel.unary_unary( - '/connection.ConnectionService/ListConnection', - request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString, - response_deserializer=connectionService__pb2.ConnectionList.FromString, - ) + Args: + channel: A grpc.Channel. + """ + self.CreateConnection = channel.unary_unary( + '/connection.ConnectionService/CreateConnection', + request_serializer=connectionService__pb2.Connection.SerializeToString, + response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString, + ) + self.ListConnection = channel.unary_unary( + '/connection.ConnectionService/ListConnection', + request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString, + response_deserializer=connectionService__pb2.ConnectionList.FromString, + ) class ConnectionServiceServicer(object): - # missing associated documentation comment in .proto file - pass + """Missing associated documentation comment in .proto file.""" - def CreateConnection(self, request, context): - # missing associated documentation comment in .proto file - pass - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') + def CreateConnection(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 ListConnection(self, request, context): - # missing associated documentation comment in .proto file - pass - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') + def ListConnection(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_ConnectionServiceServicer_to_server(servicer, server): - rpc_method_handlers = { - 'CreateConnection': grpc.unary_unary_rpc_method_handler( - servicer.CreateConnection, - request_deserializer=connectionService__pb2.Connection.FromString, - response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString, - ), - 'ListConnection': grpc.unary_unary_rpc_method_handler( - servicer.ListConnection, - request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString, - response_serializer=connectionService__pb2.ConnectionList.SerializeToString, - ), - } - generic_handler = grpc.method_handlers_generic_handler( - 'connection.ConnectionService', rpc_method_handlers) - server.add_generic_rpc_handlers((generic_handler,)) + rpc_method_handlers = { + 'CreateConnection': grpc.unary_unary_rpc_method_handler( + servicer.CreateConnection, + request_deserializer=connectionService__pb2.Connection.FromString, + response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString, + ), + 'ListConnection': grpc.unary_unary_rpc_method_handler( + servicer.ListConnection, + request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString, + response_serializer=connectionService__pb2.ConnectionList.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'connection.ConnectionService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + # This class is part of an EXPERIMENTAL API. +class ConnectionService(object): + """Missing associated documentation comment in .proto file.""" + + @staticmethod + def CreateConnection(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, '/connection.ConnectionService/CreateConnection', + connectionService__pb2.Connection.SerializeToString, + google_dot_protobuf_dot_empty__pb2.Empty.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def ListConnection(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, '/connection.ConnectionService/ListConnection', + google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString, + connectionService__pb2.ConnectionList.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/hackfest/grpc/connectionServiceWithNotif/connectionServiceWithNotif_pb2.py b/hackfest/grpc/connectionServiceWithNotif/connectionServiceWithNotif_pb2.py index 403dd0ce409700875e8fc80b011564d055c5c4cb..f6ce23ef00c01aab9463e122198a91bd66051100 100644 --- a/hackfest/grpc/connectionServiceWithNotif/connectionServiceWithNotif_pb2.py +++ b/hackfest/grpc/connectionServiceWithNotif/connectionServiceWithNotif_pb2.py @@ -1,9 +1,9 @@ +# -*- coding: utf-8 -*- # Generated by the protocol buffer compiler. DO NOT EDIT! # source: connectionServiceWithNotif.proto - -import sys -_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +"""Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool from google.protobuf import message as _message from google.protobuf import reflection as _reflection from google.protobuf import symbol_database as _symbol_database @@ -15,245 +15,47 @@ _sym_db = _symbol_database.Default() from google.protobuf import empty_pb2 as google_dot_protobuf_dot_empty__pb2 -DESCRIPTOR = _descriptor.FileDescriptor( - name='connectionServiceWithNotif.proto', - package='connection', - syntax='proto3', - serialized_options=None, - serialized_pb=_b('\n connectionServiceWithNotif.proto\x12\nconnection\x1a\x1bgoogle/protobuf/empty.proto\"\x14\n\x03\x42\x65r\x12\r\n\x05value\x18\x01 \x01(\x01\"\xf5\x01\n\nConnection\x12\x14\n\x0c\x63onnectionId\x18\x01 \x01(\t\x12\x12\n\nsourceNode\x18\x02 \x01(\t\x12\x12\n\ntargetNode\x18\x03 \x01(\t\x12\x12\n\nsourcePort\x18\x04 \x01(\t\x12\x12\n\ntargetPort\x18\x05 \x01(\t\x12\x11\n\tbandwidth\x18\x06 \x01(\r\x12\x43\n\x11layerProtocolName\x18\x07 \x01(\x0e\x32(.connection.Connection.LayerProtocolName\")\n\x11LayerProtocolName\x12\x07\n\x03\x45TH\x10\x00\x12\x0b\n\x07OPTICAL\x10\x01\"<\n\x0e\x43onnectionList\x12*\n\nconnection\x18\x01 \x03(\x0b\x32\x16.connection.Connection2\xe1\x01\n\x1a\x43onnectionServiceWithNotif\x12\x44\n\x10\x43reateConnection\x12\x16.connection.Connection\x1a\x16.google.protobuf.Empty\"\x00\x12\x46\n\x0eListConnection\x12\x16.google.protobuf.Empty\x1a\x1a.connection.ConnectionList\"\x00\x12\x35\n\x06GetBer\x12\x16.connection.Connection\x1a\x0f.connection.Ber\"\x00\x30\x01\x62\x06proto3') - , - dependencies=[google_dot_protobuf_dot_empty__pb2.DESCRIPTOR,]) - - - -_CONNECTION_LAYERPROTOCOLNAME = _descriptor.EnumDescriptor( - name='LayerProtocolName', - full_name='connection.Connection.LayerProtocolName', - filename=None, - file=DESCRIPTOR, - values=[ - _descriptor.EnumValueDescriptor( - name='ETH', index=0, number=0, - serialized_options=None, - type=None), - _descriptor.EnumValueDescriptor( - name='OPTICAL', index=1, number=1, - serialized_options=None, - type=None), - ], - containing_type=None, - serialized_options=None, - serialized_start=304, - serialized_end=345, -) -_sym_db.RegisterEnumDescriptor(_CONNECTION_LAYERPROTOCOLNAME) - - -_BER = _descriptor.Descriptor( - name='Ber', - full_name='connection.Ber', - filename=None, - file=DESCRIPTOR, - containing_type=None, - fields=[ - _descriptor.FieldDescriptor( - name='value', full_name='connection.Ber.value', 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), - ], - extensions=[ - ], - nested_types=[], - enum_types=[ - ], - serialized_options=None, - is_extendable=False, - syntax='proto3', - extension_ranges=[], - oneofs=[ - ], - serialized_start=77, - serialized_end=97, -) - +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n connectionServiceWithNotif.proto\x12\nconnection\x1a\x1bgoogle/protobuf/empty.proto\"\x14\n\x03\x42\x65r\x12\r\n\x05value\x18\x01 \x01(\x01\"\xf5\x01\n\nConnection\x12\x14\n\x0c\x63onnectionId\x18\x01 \x01(\t\x12\x12\n\nsourceNode\x18\x02 \x01(\t\x12\x12\n\ntargetNode\x18\x03 \x01(\t\x12\x12\n\nsourcePort\x18\x04 \x01(\t\x12\x12\n\ntargetPort\x18\x05 \x01(\t\x12\x11\n\tbandwidth\x18\x06 \x01(\r\x12\x43\n\x11layerProtocolName\x18\x07 \x01(\x0e\x32(.connection.Connection.LayerProtocolName\")\n\x11LayerProtocolName\x12\x07\n\x03\x45TH\x10\x00\x12\x0b\n\x07OPTICAL\x10\x01\"<\n\x0e\x43onnectionList\x12*\n\nconnection\x18\x01 \x03(\x0b\x32\x16.connection.Connection2\xe1\x01\n\x1a\x43onnectionServiceWithNotif\x12\x44\n\x10\x43reateConnection\x12\x16.connection.Connection\x1a\x16.google.protobuf.Empty\"\x00\x12\x46\n\x0eListConnection\x12\x16.google.protobuf.Empty\x1a\x1a.connection.ConnectionList\"\x00\x12\x35\n\x06GetBer\x12\x16.connection.Connection\x1a\x0f.connection.Ber\"\x00\x30\x01\x62\x06proto3') -_CONNECTION = _descriptor.Descriptor( - name='Connection', - full_name='connection.Connection', - filename=None, - file=DESCRIPTOR, - containing_type=None, - fields=[ - _descriptor.FieldDescriptor( - name='connectionId', full_name='connection.Connection.connectionId', 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), - _descriptor.FieldDescriptor( - name='sourceNode', full_name='connection.Connection.sourceNode', 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), - _descriptor.FieldDescriptor( - name='targetNode', full_name='connection.Connection.targetNode', 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), - _descriptor.FieldDescriptor( - name='sourcePort', full_name='connection.Connection.sourcePort', 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), - _descriptor.FieldDescriptor( - name='targetPort', full_name='connection.Connection.targetPort', index=4, - number=5, 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), - _descriptor.FieldDescriptor( - name='bandwidth', full_name='connection.Connection.bandwidth', 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), - _descriptor.FieldDescriptor( - name='layerProtocolName', full_name='connection.Connection.layerProtocolName', index=6, - number=7, 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), - ], - extensions=[ - ], - nested_types=[], - enum_types=[ - _CONNECTION_LAYERPROTOCOLNAME, - ], - serialized_options=None, - is_extendable=False, - syntax='proto3', - extension_ranges=[], - oneofs=[ - ], - serialized_start=100, - serialized_end=345, -) -_CONNECTIONLIST = _descriptor.Descriptor( - name='ConnectionList', - full_name='connection.ConnectionList', - filename=None, - file=DESCRIPTOR, - containing_type=None, - fields=[ - _descriptor.FieldDescriptor( - name='connection', full_name='connection.ConnectionList.connection', 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), - ], - extensions=[ - ], - nested_types=[], - enum_types=[ - ], - serialized_options=None, - is_extendable=False, - syntax='proto3', - extension_ranges=[], - oneofs=[ - ], - serialized_start=347, - serialized_end=407, -) - -_CONNECTION.fields_by_name['layerProtocolName'].enum_type = _CONNECTION_LAYERPROTOCOLNAME -_CONNECTION_LAYERPROTOCOLNAME.containing_type = _CONNECTION -_CONNECTIONLIST.fields_by_name['connection'].message_type = _CONNECTION -DESCRIPTOR.message_types_by_name['Ber'] = _BER -DESCRIPTOR.message_types_by_name['Connection'] = _CONNECTION -DESCRIPTOR.message_types_by_name['ConnectionList'] = _CONNECTIONLIST -_sym_db.RegisterFileDescriptor(DESCRIPTOR) - -Ber = _reflection.GeneratedProtocolMessageType('Ber', (_message.Message,), dict( - DESCRIPTOR = _BER, - __module__ = 'connectionServiceWithNotif_pb2' +_BER = DESCRIPTOR.message_types_by_name['Ber'] +_CONNECTION = DESCRIPTOR.message_types_by_name['Connection'] +_CONNECTIONLIST = DESCRIPTOR.message_types_by_name['ConnectionList'] +_CONNECTION_LAYERPROTOCOLNAME = _CONNECTION.enum_types_by_name['LayerProtocolName'] +Ber = _reflection.GeneratedProtocolMessageType('Ber', (_message.Message,), { + 'DESCRIPTOR' : _BER, + '__module__' : 'connectionServiceWithNotif_pb2' # @@protoc_insertion_point(class_scope:connection.Ber) - )) + }) _sym_db.RegisterMessage(Ber) -Connection = _reflection.GeneratedProtocolMessageType('Connection', (_message.Message,), dict( - DESCRIPTOR = _CONNECTION, - __module__ = 'connectionServiceWithNotif_pb2' +Connection = _reflection.GeneratedProtocolMessageType('Connection', (_message.Message,), { + 'DESCRIPTOR' : _CONNECTION, + '__module__' : 'connectionServiceWithNotif_pb2' # @@protoc_insertion_point(class_scope:connection.Connection) - )) + }) _sym_db.RegisterMessage(Connection) -ConnectionList = _reflection.GeneratedProtocolMessageType('ConnectionList', (_message.Message,), dict( - DESCRIPTOR = _CONNECTIONLIST, - __module__ = 'connectionServiceWithNotif_pb2' +ConnectionList = _reflection.GeneratedProtocolMessageType('ConnectionList', (_message.Message,), { + 'DESCRIPTOR' : _CONNECTIONLIST, + '__module__' : 'connectionServiceWithNotif_pb2' # @@protoc_insertion_point(class_scope:connection.ConnectionList) - )) + }) _sym_db.RegisterMessage(ConnectionList) - - -_CONNECTIONSERVICEWITHNOTIF = _descriptor.ServiceDescriptor( - name='ConnectionServiceWithNotif', - full_name='connection.ConnectionServiceWithNotif', - file=DESCRIPTOR, - index=0, - serialized_options=None, - serialized_start=410, - serialized_end=635, - methods=[ - _descriptor.MethodDescriptor( - name='CreateConnection', - full_name='connection.ConnectionServiceWithNotif.CreateConnection', - index=0, - containing_service=None, - input_type=_CONNECTION, - output_type=google_dot_protobuf_dot_empty__pb2._EMPTY, - serialized_options=None, - ), - _descriptor.MethodDescriptor( - name='ListConnection', - full_name='connection.ConnectionServiceWithNotif.ListConnection', - index=1, - containing_service=None, - input_type=google_dot_protobuf_dot_empty__pb2._EMPTY, - output_type=_CONNECTIONLIST, - serialized_options=None, - ), - _descriptor.MethodDescriptor( - name='GetBer', - full_name='connection.ConnectionServiceWithNotif.GetBer', - index=2, - containing_service=None, - input_type=_CONNECTION, - output_type=_BER, - serialized_options=None, - ), -]) -_sym_db.RegisterServiceDescriptor(_CONNECTIONSERVICEWITHNOTIF) - -DESCRIPTOR.services_by_name['ConnectionServiceWithNotif'] = _CONNECTIONSERVICEWITHNOTIF - +_CONNECTIONSERVICEWITHNOTIF = DESCRIPTOR.services_by_name['ConnectionServiceWithNotif'] +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + _BER._serialized_start=77 + _BER._serialized_end=97 + _CONNECTION._serialized_start=100 + _CONNECTION._serialized_end=345 + _CONNECTION_LAYERPROTOCOLNAME._serialized_start=304 + _CONNECTION_LAYERPROTOCOLNAME._serialized_end=345 + _CONNECTIONLIST._serialized_start=347 + _CONNECTIONLIST._serialized_end=407 + _CONNECTIONSERVICEWITHNOTIF._serialized_start=410 + _CONNECTIONSERVICEWITHNOTIF._serialized_end=635 # @@protoc_insertion_point(module_scope) diff --git a/hackfest/grpc/connectionServiceWithNotif/connectionServiceWithNotif_pb2_grpc.py b/hackfest/grpc/connectionServiceWithNotif/connectionServiceWithNotif_pb2_grpc.py index 9a88a22b4bd9055f1d2e905abaa2496faadb5533..9a5a844c8d10e0fa9087d97050c1bc92de8a868d 100644 --- a/hackfest/grpc/connectionServiceWithNotif/connectionServiceWithNotif_pb2_grpc.py +++ b/hackfest/grpc/connectionServiceWithNotif/connectionServiceWithNotif_pb2_grpc.py @@ -1,4 +1,5 @@ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" import grpc import connectionServiceWithNotif_pb2 as connectionServiceWithNotif__pb2 @@ -6,76 +7,127 @@ from google.protobuf import empty_pb2 as google_dot_protobuf_dot_empty__pb2 class ConnectionServiceWithNotifStub(object): - # missing associated documentation comment in .proto file - pass - - def __init__(self, channel): - """Constructor. - - Args: - channel: A grpc.Channel. - """ - self.CreateConnection = channel.unary_unary( - '/connection.ConnectionServiceWithNotif/CreateConnection', - request_serializer=connectionServiceWithNotif__pb2.Connection.SerializeToString, - response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString, - ) - self.ListConnection = channel.unary_unary( - '/connection.ConnectionServiceWithNotif/ListConnection', - request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString, - response_deserializer=connectionServiceWithNotif__pb2.ConnectionList.FromString, - ) - self.GetBer = channel.unary_stream( - '/connection.ConnectionServiceWithNotif/GetBer', - request_serializer=connectionServiceWithNotif__pb2.Connection.SerializeToString, - response_deserializer=connectionServiceWithNotif__pb2.Ber.FromString, - ) + """Missing associated documentation comment in .proto file.""" + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.CreateConnection = channel.unary_unary( + '/connection.ConnectionServiceWithNotif/CreateConnection', + request_serializer=connectionServiceWithNotif__pb2.Connection.SerializeToString, + response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString, + ) + self.ListConnection = channel.unary_unary( + '/connection.ConnectionServiceWithNotif/ListConnection', + request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString, + response_deserializer=connectionServiceWithNotif__pb2.ConnectionList.FromString, + ) + self.GetBer = channel.unary_stream( + '/connection.ConnectionServiceWithNotif/GetBer', + request_serializer=connectionServiceWithNotif__pb2.Connection.SerializeToString, + response_deserializer=connectionServiceWithNotif__pb2.Ber.FromString, + ) class ConnectionServiceWithNotifServicer(object): - # missing associated documentation comment in .proto file - pass - - def CreateConnection(self, request, context): - # missing associated documentation comment in .proto file - pass - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - - def ListConnection(self, request, context): - # missing associated documentation comment in .proto file - pass - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - - def GetBer(self, request, context): - # missing associated documentation comment in .proto file - pass - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') + """Missing associated documentation comment in .proto file.""" + + def CreateConnection(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 ListConnection(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 GetBer(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_ConnectionServiceWithNotifServicer_to_server(servicer, server): - rpc_method_handlers = { - 'CreateConnection': grpc.unary_unary_rpc_method_handler( - servicer.CreateConnection, - request_deserializer=connectionServiceWithNotif__pb2.Connection.FromString, - response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString, - ), - 'ListConnection': grpc.unary_unary_rpc_method_handler( - servicer.ListConnection, - request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString, - response_serializer=connectionServiceWithNotif__pb2.ConnectionList.SerializeToString, - ), - 'GetBer': grpc.unary_stream_rpc_method_handler( - servicer.GetBer, - request_deserializer=connectionServiceWithNotif__pb2.Connection.FromString, - response_serializer=connectionServiceWithNotif__pb2.Ber.SerializeToString, - ), - } - generic_handler = grpc.method_handlers_generic_handler( - 'connection.ConnectionServiceWithNotif', rpc_method_handlers) - server.add_generic_rpc_handlers((generic_handler,)) + rpc_method_handlers = { + 'CreateConnection': grpc.unary_unary_rpc_method_handler( + servicer.CreateConnection, + request_deserializer=connectionServiceWithNotif__pb2.Connection.FromString, + response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString, + ), + 'ListConnection': grpc.unary_unary_rpc_method_handler( + servicer.ListConnection, + request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString, + response_serializer=connectionServiceWithNotif__pb2.ConnectionList.SerializeToString, + ), + 'GetBer': grpc.unary_stream_rpc_method_handler( + servicer.GetBer, + request_deserializer=connectionServiceWithNotif__pb2.Connection.FromString, + response_serializer=connectionServiceWithNotif__pb2.Ber.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'connection.ConnectionServiceWithNotif', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + # This class is part of an EXPERIMENTAL API. +class ConnectionServiceWithNotif(object): + """Missing associated documentation comment in .proto file.""" + + @staticmethod + def CreateConnection(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, '/connection.ConnectionServiceWithNotif/CreateConnection', + connectionServiceWithNotif__pb2.Connection.SerializeToString, + google_dot_protobuf_dot_empty__pb2.Empty.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def ListConnection(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, '/connection.ConnectionServiceWithNotif/ListConnection', + google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString, + connectionServiceWithNotif__pb2.ConnectionList.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def GetBer(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_stream(request, target, '/connection.ConnectionServiceWithNotif/GetBer', + connectionServiceWithNotif__pb2.Connection.SerializeToString, + connectionServiceWithNotif__pb2.Ber.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/hackfest/tfs-descriptors/context-topology.json b/hackfest/tfs-descriptors/hackfest1/context-topology.json similarity index 50% rename from hackfest/tfs-descriptors/context-topology.json rename to hackfest/tfs-descriptors/hackfest1/context-topology.json index 36b3c44fd61fdec9d208a82a11d5a16c3671d004..afc2cc258889b445cb8d5f21b7e5fddac6a56db1 100644 --- a/hackfest/tfs-descriptors/context-topology.json +++ b/hackfest/tfs-descriptors/hackfest1/context-topology.json @@ -1,19 +1,13 @@ { "contexts": [ - { - "context_id": {"context_uuid": {"uuid": "admin"}}, - "topology_ids": [], - "service_ids": [] - } + {"context_id": {"context_uuid": {"uuid": "admin"}}} ], "topologies": [ { "topology_id": { "context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "admin"} - }, - "device_ids": [], - "link_ids": [] + } } ] } diff --git a/hackfest/tfs-descriptors/device-all.json b/hackfest/tfs-descriptors/hackfest1/device-all.json similarity index 94% rename from hackfest/tfs-descriptors/device-all.json rename to hackfest/tfs-descriptors/hackfest1/device-all.json index 36a93fe98d253dbc5e6db7f91b3b890e529c2ffc..0c5fb7e56ce3552c7d196b32b1a8b4dc62a3c0e4 100644 --- a/hackfest/tfs-descriptors/device-all.json +++ b/hackfest/tfs-descriptors/hackfest1/device-all.json @@ -4,7 +4,7 @@ "device_id": {"device_uuid": {"uuid": "R1"}}, "device_type": "packet-router", "device_config": {"config_rules": [ - {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "10.0.2.15"}}, + {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "10.0.2.10"}}, {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "8301"}}, {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": { "username": "admin", "password": "admin", @@ -21,7 +21,7 @@ "device_id": {"device_uuid": {"uuid": "R2"}}, "device_type": "packet-router", "device_config": {"config_rules": [ - {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "10.0.2.15"}}, + {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "10.0.2.10"}}, {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "8302"}}, {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": { "username": "admin", "password": "admin", @@ -38,7 +38,7 @@ "device_id": {"device_uuid": {"uuid": "R3"}}, "device_type": "packet-router", "device_config": {"config_rules": [ - {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "10.0.2.15"}}, + {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "10.0.2.10"}}, {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "8303"}}, {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": { "username": "admin", "password": "admin", @@ -55,7 +55,7 @@ "device_id": {"device_uuid": {"uuid": "R4"}}, "device_type": "packet-router", "device_config": {"config_rules": [ - {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "10.0.2.15"}}, + {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "10.0.2.10"}}, {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "8304"}}, {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": { "username": "admin", "password": "admin", @@ -72,7 +72,7 @@ "device_id": {"device_uuid": {"uuid": "OLS"}}, "device_type": "open-line-system", "device_config": {"config_rules": [ - {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "10.0.2.15"}}, + {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "10.0.2.10"}}, {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "8080"}}, {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"timeout": 120}}} ]}, diff --git a/hackfest/tfs-descriptors/device-netconf-openconfig.json b/hackfest/tfs-descriptors/hackfest1/device-netconf-openconfig.json similarity index 100% rename from hackfest/tfs-descriptors/device-netconf-openconfig.json rename to hackfest/tfs-descriptors/hackfest1/device-netconf-openconfig.json diff --git a/hackfest/tfs-descriptors/device-tapi-ols.json b/hackfest/tfs-descriptors/hackfest1/device-tapi-ols.json similarity index 100% rename from hackfest/tfs-descriptors/device-tapi-ols.json rename to hackfest/tfs-descriptors/hackfest1/device-tapi-ols.json diff --git a/hackfest/tfs-descriptors/links.json b/hackfest/tfs-descriptors/hackfest1/links.json similarity index 100% rename from hackfest/tfs-descriptors/links.json rename to hackfest/tfs-descriptors/hackfest1/links.json diff --git a/hackfest/tfs-descriptors/service-l3vpn.json b/hackfest/tfs-descriptors/hackfest1/service-l3vpn.json similarity index 100% rename from hackfest/tfs-descriptors/service-l3vpn.json rename to hackfest/tfs-descriptors/hackfest1/service-l3vpn.json diff --git a/hackfest/tfs-descriptors/hackfest2/emulated-topology.json b/hackfest/tfs-descriptors/hackfest2/emulated-topology.json new file mode 100644 index 0000000000000000000000000000000000000000..6885c7d9082bfcb17447252636ea4efb0f500283 --- /dev/null +++ b/hackfest/tfs-descriptors/hackfest2/emulated-topology.json @@ -0,0 +1,210 @@ +{ + "contexts": [ + {"context_id": {"context_uuid": {"uuid": "admin"}}} + ], + "topologies": [ + {"topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "admin"}}} + ], + "devices": [ + { + "device_id": {"device_uuid": {"uuid": "R1"}}, "device_type": "emu-packet-router", "device_drivers": [0], + "device_endpoints": [], "device_operational_status": 1, "device_config": {"config_rules": [ + {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "127.0.0.1"}}, + {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, + {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/1"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/2"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/3"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/4"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/5"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/6"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "2/1"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "2/2"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "2/3"} + ]}}} + ]} + }, + { + "device_id": {"device_uuid": {"uuid": "R2"}}, "device_type": "emu-packet-router", "device_drivers": [0], + "device_endpoints": [], "device_operational_status": 1, "device_config": {"config_rules": [ + {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "127.0.0.1"}}, + {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, + {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/1"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/2"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/3"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/4"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/5"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/6"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "2/1"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "2/2"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "2/3"} + ]}}} + ]} + }, + { + "device_id": {"device_uuid": {"uuid": "R3"}}, "device_type": "emu-packet-router", "device_drivers": [0], + "device_endpoints": [], "device_operational_status": 1, "device_config": {"config_rules": [ + {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "127.0.0.1"}}, + {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, + {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/1"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/2"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/3"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/4"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/5"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/6"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "2/1"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "2/2"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "2/3"} + ]}}} + ]} + }, + { + "device_id": {"device_uuid": {"uuid": "R4"}}, "device_type": "emu-packet-router", "device_drivers": [0], + "device_endpoints": [], "device_operational_status": 1, "device_config": {"config_rules": [ + {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "127.0.0.1"}}, + {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, + {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/1"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/2"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/3"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/4"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/5"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/6"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "2/1"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "2/2"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "2/3"} + ]}}} + ]} + }, + { + "device_id": {"device_uuid": {"uuid": "R5"}}, "device_type": "emu-packet-router", "device_drivers": [0], + "device_endpoints": [], "device_operational_status": 1, "device_config": {"config_rules": [ + {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "127.0.0.1"}}, + {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, + {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/1"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/2"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/3"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/4"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/5"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/6"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "2/1"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "2/2"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "2/3"} + ]}}} + ]} + }, + { + "device_id": {"device_uuid": {"uuid": "R6"}}, "device_type": "emu-packet-router", "device_drivers": [0], + "device_endpoints": [], "device_operational_status": 1, "device_config": {"config_rules": [ + {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "127.0.0.1"}}, + {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, + {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/1"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/2"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/3"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/4"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/5"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/6"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "2/1"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "2/2"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "2/3"} + ]}}} + ]} + }, + { + "device_id": {"device_uuid": {"uuid": "R7"}}, "device_type": "emu-packet-router", "device_drivers": [0], + "device_endpoints": [], "device_operational_status": 1, "device_config": {"config_rules": [ + {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "127.0.0.1"}}, + {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, + {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/1"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/2"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "1/3"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "2/1"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "2/2"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "2/3"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "2/4"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "2/5"}, + {"sample_types": [101, 102, 201, 202], "type": "copper", "uuid": "2/6"} + ]}}} + ]} + } + ], + "links": [ + {"link_id": {"link_uuid": {"uuid": "R1==R2"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "R1"}}, "endpoint_uuid": {"uuid": "2/1"}}, + {"device_id": {"device_uuid": {"uuid": "R2"}}, "endpoint_uuid": {"uuid": "2/2"}} + ]}, + {"link_id": {"link_uuid": {"uuid": "R1==R6"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "R1"}}, "endpoint_uuid": {"uuid": "2/2"}}, + {"device_id": {"device_uuid": {"uuid": "R6"}}, "endpoint_uuid": {"uuid": "2/1"}} + ]}, + {"link_id": {"link_uuid": {"uuid": "R1==R7"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "R1"}}, "endpoint_uuid": {"uuid": "2/3"}}, + {"device_id": {"device_uuid": {"uuid": "R7"}}, "endpoint_uuid": {"uuid": "2/1"}} + ]}, + {"link_id": {"link_uuid": {"uuid": "R2==R1"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "R2"}}, "endpoint_uuid": {"uuid": "2/2"}}, + {"device_id": {"device_uuid": {"uuid": "R1"}}, "endpoint_uuid": {"uuid": "2/1"}} + ]}, + {"link_id": {"link_uuid": {"uuid": "R2==R3"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "R2"}}, "endpoint_uuid": {"uuid": "2/1"}}, + {"device_id": {"device_uuid": {"uuid": "R3"}}, "endpoint_uuid": {"uuid": "2/2"}} + ]}, + {"link_id": {"link_uuid": {"uuid": "R3==R2"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "R3"}}, "endpoint_uuid": {"uuid": "2/2"}}, + {"device_id": {"device_uuid": {"uuid": "R2"}}, "endpoint_uuid": {"uuid": "2/1"}} + ]}, + {"link_id": {"link_uuid": {"uuid": "R3==R4"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "R3"}}, "endpoint_uuid": {"uuid": "2/1"}}, + {"device_id": {"device_uuid": {"uuid": "R4"}}, "endpoint_uuid": {"uuid": "2/2"}} + ]}, + {"link_id": {"link_uuid": {"uuid": "R3==R7"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "R3"}}, "endpoint_uuid": {"uuid": "2/3"}}, + {"device_id": {"device_uuid": {"uuid": "R7"}}, "endpoint_uuid": {"uuid": "2/3"}} + ]}, + {"link_id": {"link_uuid": {"uuid": "R4==R3"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "R4"}}, "endpoint_uuid": {"uuid": "2/2"}}, + {"device_id": {"device_uuid": {"uuid": "R3"}}, "endpoint_uuid": {"uuid": "2/1"}} + ]}, + {"link_id": {"link_uuid": {"uuid": "R4==R5"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "R4"}}, "endpoint_uuid": {"uuid": "2/1"}}, + {"device_id": {"device_uuid": {"uuid": "R5"}}, "endpoint_uuid": {"uuid": "2/2"}} + ]}, + {"link_id": {"link_uuid": {"uuid": "R5==R4"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "R5"}}, "endpoint_uuid": {"uuid": "2/2"}}, + {"device_id": {"device_uuid": {"uuid": "R4"}}, "endpoint_uuid": {"uuid": "2/1"}} + ]}, + {"link_id": {"link_uuid": {"uuid": "R5==R6"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "R5"}}, "endpoint_uuid": {"uuid": "2/1"}}, + {"device_id": {"device_uuid": {"uuid": "R6"}}, "endpoint_uuid": {"uuid": "2/2"}} + ]}, + {"link_id": {"link_uuid": {"uuid": "R5==R7"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "R5"}}, "endpoint_uuid": {"uuid": "2/3"}}, + {"device_id": {"device_uuid": {"uuid": "R7"}}, "endpoint_uuid": {"uuid": "2/5"}} + ]}, + {"link_id": {"link_uuid": {"uuid": "R6==R1"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "R6"}}, "endpoint_uuid": {"uuid": "2/1"}}, + {"device_id": {"device_uuid": {"uuid": "R1"}}, "endpoint_uuid": {"uuid": "2/2"}} + ]}, + {"link_id": {"link_uuid": {"uuid": "R6==R5"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "R6"}}, "endpoint_uuid": {"uuid": "2/2"}}, + {"device_id": {"device_uuid": {"uuid": "R5"}}, "endpoint_uuid": {"uuid": "2/1"}} + ]}, + {"link_id": {"link_uuid": {"uuid": "R7==R1"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "R7"}}, "endpoint_uuid": {"uuid": "2/1"}}, + {"device_id": {"device_uuid": {"uuid": "R1"}}, "endpoint_uuid": {"uuid": "2/3"}} + ]}, + {"link_id": {"link_uuid": {"uuid": "R7==R3"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "R7"}}, "endpoint_uuid": {"uuid": "2/3"}}, + {"device_id": {"device_uuid": {"uuid": "R3"}}, "endpoint_uuid": {"uuid": "2/3"}} + ]}, + {"link_id": {"link_uuid": {"uuid": "R7==R5"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "R7"}}, "endpoint_uuid": {"uuid": "2/5"}}, + {"device_id": {"device_uuid": {"uuid": "R5"}}, "endpoint_uuid": {"uuid": "2/3"}} + ]} + ] +} diff --git a/hackfest/tfs-descriptors/hackfest2/emulated-topology.png b/hackfest/tfs-descriptors/hackfest2/emulated-topology.png new file mode 100644 index 0000000000000000000000000000000000000000..e8684e825cd8a92d58c58c785b45203f7b0abee2 Binary files /dev/null and b/hackfest/tfs-descriptors/hackfest2/emulated-topology.png differ diff --git a/hackfest/tfs-descriptors/hackfest2/l3-service.json b/hackfest/tfs-descriptors/hackfest2/l3-service.json new file mode 100644 index 0000000000000000000000000000000000000000..540d3a7a6744551ba13e59cd9ec2c23258e0c762 --- /dev/null +++ b/hackfest/tfs-descriptors/hackfest2/l3-service.json @@ -0,0 +1,44 @@ +{ + "services": [ + { + "service_id": { + "context_id": {"context_uuid": {"uuid": "admin"}}, + "service_uuid": {"uuid": "l3-service"} + }, + "service_type": 1, + "service_status": {"service_status": 1}, + "service_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "R1"}}, "endpoint_uuid": {"uuid": "1/2"}}, + {"device_id": {"device_uuid": {"uuid": "R4"}}, "endpoint_uuid": {"uuid": "1/2"}} + ], + "service_constraints": [ + {"custom": {"constraint_type": "bandwidth[gbps]", "constraint_value": "10.0"}}, + {"custom": {"constraint_type": "latency[ms]", "constraint_value": "15.2"}} + ], + "service_config": {"config_rules": [ + {"action": 1, "custom": {"resource_key": "/settings", "resource_value": { + "address_families": ["IPV4"], + "bgp_as": 65000, + "bgp_route_target": "65000:333", + "mtu": 1512 + }}}, + {"action": 1, "custom": {"resource_key": "/device[R1]/endpoint[1/2]/settings", "resource_value": { + "address_ip": "3.3.2.1", + "address_prefix": 24, + "route_distinguisher": "65000:123", + "router_id": "10.10.10.1", + "sub_interface_index": 400, + "vlan_id": 400 + }}}, + {"action": 1, "custom": {"resource_key": "/device[R4]/endpoint[1/2]/settings", "resource_value": { + "address_ip": "3.3.1.1", + "address_prefix": 24, + "route_distinguisher": "65000:123", + "router_id": "20.20.20.1", + "sub_interface_index": 400, + "vlan_id": 500 + }}} + ]} + } + ] +} diff --git a/manifests/automationservice.yaml b/manifests/automationservice.yaml index 73e6b1d7be076dbcf55014ae3accbc1e29e0c8e8..f4a4def176cd2b9f89d7ee4f10c0af48a08b9733 100644 --- a/manifests/automationservice.yaml +++ b/manifests/automationservice.yaml @@ -102,7 +102,7 @@ spec: cpu: 50m memory: 512Mi limits: - cpu: 500m + cpu: 2000m memory: 2048Mi --- apiVersion: autoscaling/v2 diff --git a/manifests/deviceservice.yaml b/manifests/deviceservice.yaml index 22c0f5f9d124b76d0e477dce35d14811204c1496..a99e3e5884745aa1971e5ad7f914901e38f75d47 100644 --- a/manifests/deviceservice.yaml +++ b/manifests/deviceservice.yaml @@ -40,6 +40,11 @@ spec: env: - name: LOG_LEVEL value: "INFO" + startupProbe: + exec: + command: ["/bin/grpc_health_probe", "-addr=:2020"] + failureThreshold: 30 + periodSeconds: 10 readinessProbe: exec: command: ["/bin/grpc_health_probe", "-addr=:2020"] diff --git a/manifests/interdomainservice.yaml b/manifests/interdomainservice.yaml index 067f9432749f7d2c986503b034e55a13c8f2b210..a235834025724cb11e6b26364f25ae9feb28fe8c 100644 --- a/manifests/interdomainservice.yaml +++ b/manifests/interdomainservice.yaml @@ -36,6 +36,8 @@ spec: env: - name: LOG_LEVEL value: "INFO" + - name: TOPOLOGY_ABSTRACTOR + value: "DISABLE" readinessProbe: exec: command: ["/bin/grpc_health_probe", "-addr=:10010"] diff --git a/manifests/l3_centralizedattackdetectorservice.yaml b/manifests/l3_centralizedattackdetectorservice.yaml index 594e21f4dbb1b10e1d859053c33785e2e59e4b46..8a3be69b672200120afb4bca3892dd0c08ec2d65 100644 --- a/manifests/l3_centralizedattackdetectorservice.yaml +++ b/manifests/l3_centralizedattackdetectorservice.yaml @@ -36,6 +36,14 @@ spec: env: - name: LOG_LEVEL value: "DEBUG" + - name: BATCH_SIZE + value: "256" + - name: CAD_CLASSIFICATION_THRESHOLD + value: "0.5" + - name: MONITORED_KPIS_TIME_INTERVAL_AGG + value: "60" + - name: TEST_ML_MODEL + value: "0" readinessProbe: exec: command: ["/bin/grpc_health_probe", "-addr=:10001"] diff --git a/manifests/monitoringservice.yaml b/manifests/monitoringservice.yaml index 4447a1427980be6554228087924bf8e4ca775758..dbcfa68a036e3323f42e423de14002ba85576171 100644 --- a/manifests/monitoringservice.yaml +++ b/manifests/monitoringservice.yaml @@ -48,11 +48,11 @@ spec: command: ["/bin/grpc_health_probe", "-addr=:7070"] resources: requests: - cpu: 50m - memory: 64Mi + cpu: 250m + memory: 256Mi limits: - cpu: 500m - memory: 512Mi + cpu: 1000m + memory: 1024Mi --- apiVersion: v1 kind: Service diff --git a/manifests/pathcompservice.yaml b/manifests/pathcompservice.yaml index 3ba12750b20a7093a570748e67a93922316a66f6..c85922d961ecc7b99e8fa2476b5e61db7ed52a9d 100644 --- a/manifests/pathcompservice.yaml +++ b/manifests/pathcompservice.yaml @@ -45,11 +45,11 @@ spec: command: ["/bin/grpc_health_probe", "-addr=:10020"] resources: requests: - cpu: 50m - memory: 64Mi + cpu: 250m + memory: 128Mi limits: - cpu: 500m - memory: 512Mi + cpu: 1000m + memory: 1024Mi - name: backend image: labs.etsi.org:5050/tfs/controller/pathcomp-backend:latest imagePullPolicy: Always @@ -69,10 +69,10 @@ spec: # timeoutSeconds: 5 resources: requests: - cpu: 100m + cpu: 250m memory: 256Mi limits: - cpu: 700m + cpu: 1000m memory: 1024Mi --- apiVersion: v1 diff --git a/manifests/policyservice.yaml b/manifests/policyservice.yaml index 72da09ecaf1de9d080d686c63c0f18c88f09e8b4..b34331724665e4788d2de327bb5160eb370fed96 100644 --- a/manifests/policyservice.yaml +++ b/manifests/policyservice.yaml @@ -106,7 +106,7 @@ spec: cpu: 50m memory: 512Mi limits: - cpu: 500m + cpu: 2000m memory: 2048Mi --- apiVersion: autoscaling/v2 @@ -126,4 +126,4 @@ spec: name: cpu target: type: Utilization - averageUtilization: 80 \ No newline at end of file + averageUtilization: 80 diff --git a/manifests/teservice.yaml b/manifests/teservice.yaml new file mode 100644 index 0000000000000000000000000000000000000000..15f1619df08069f00db883f0b918c17837c707d1 --- /dev/null +++ b/manifests/teservice.yaml @@ -0,0 +1,81 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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: teservice +spec: + selector: + matchLabels: + app: teservice + template: + metadata: + annotations: + config.linkerd.io/skip-inbound-ports: "4189" + labels: + app: teservice + spec: + terminationGracePeriodSeconds: 5 + shareProcessNamespace: true + containers: + - name: server + image: labs.etsi.org:5050/tfs/controller/te:latest + imagePullPolicy: Always + ports: + - containerPort: 10030 + env: + - name: ERLANG_LOGGER_LEVEL + value: "debug" + - name: ERLANG_COOKIE + value: "tfte-unsafe-cookie" + - name: ERLANG_NODE_NAME + valueFrom: + fieldRef: + fieldPath: metadata.name + - name: ERLANG_NODE_IP + valueFrom: + fieldRef: + fieldPath: status.podIP + readinessProbe: + exec: + command: ["/tfte/bin/tfte", "status"] + livenessProbe: + exec: + command: ["/tfte/bin/tfte", "status"] + resources: + requests: + cpu: 250m + memory: 512Mi + limits: + cpu: 700m + memory: 1024Mi +--- +apiVersion: v1 +kind: Service +metadata: + name: teservice +spec: + type: ClusterIP + selector: + app: teservice + ports: + - name: grpc + protocol: TCP + port: 10030 + targetPort: 10030 + - name: pcep + protocol: TCP + port: 4189 + targetPort: 4189 diff --git a/manifests/webuiservice.yaml b/manifests/webuiservice.yaml index b6ddfc0a91ae5316969079c517e148f63fb18b61..ba408bb40d4af74e6be53300395735786b9c843d 100644 --- a/manifests/webuiservice.yaml +++ b/manifests/webuiservice.yaml @@ -57,10 +57,10 @@ spec: resources: requests: cpu: 50m - memory: 64Mi + memory: 128Mi limits: - cpu: 500m - memory: 512Mi + cpu: 1000m + memory: 1024Mi - name: grafana image: grafana/grafana:8.5.22 imagePullPolicy: IfNotPresent diff --git a/my_deploy.sh b/my_deploy.sh index e3ad5e71ae58f8546ecf7f24bf2a3a4c0d03cb37..888fc98903eb665729d7e0843cf9e9fc8b60741d 100755 --- a/my_deploy.sh +++ b/my_deploy.sh @@ -22,18 +22,21 @@ export TFS_REGISTRY_IMAGES="http://localhost:32000/tfs/" # Set the list of components, separated by spaces, you want to build images for, and deploy. export TFS_COMPONENTS="context device pathcomp service slice compute webui load_generator" -# Uncoment to activate Monitoring +# Uncomment to activate Monitoring #export TFS_COMPONENTS="${TFS_COMPONENTS} monitoring" -# Uncoment to activate Automation and Policy Manager +# Uncomment to activate Automation and Policy Manager #export TFS_COMPONENTS="${TFS_COMPONENTS} automation policy" -# Uncoment to activate Optical CyberSecurity +# Uncomment to activate Optical CyberSecurity #export TFS_COMPONENTS="${TFS_COMPONENTS} dbscanserving opticalattackmitigator opticalattackdetector opticalattackmanager" -# Uncoment to activate L3 CyberSecurity +# Uncomment to activate L3 CyberSecurity #export TFS_COMPONENTS="${TFS_COMPONENTS} l3_attackmitigator l3_centralizedattackdetector" +# Uncomment to activate TE +#export TFS_COMPONENTS="${TFS_COMPONENTS} te" + # Set the tag you want to use for your images. export TFS_IMAGE_TAG="dev" @@ -41,9 +44,12 @@ export TFS_IMAGE_TAG="dev" export TFS_K8S_NAMESPACE="tfs" # Set additional manifest files to be applied after the deployment -export TFS_EXTRA_MANIFESTS="manifests/nginx_ingress_http.yaml manifests/servicemonitors.yaml" +export TFS_EXTRA_MANIFESTS="manifests/nginx_ingress_http.yaml" + +# Uncomment to monitor performance of components +export TFS_EXTRA_MANIFESTS="${TFS_EXTRA_MANIFESTS} manifests/servicemonitors.yaml" -# Uncoment when deploying Optical CyberSecurity +# Uncomment when deploying Optical CyberSecurity #export TFS_EXTRA_MANIFESTS="${TFS_EXTRA_MANIFESTS} manifests/cachingservice.yaml" # Set the new Grafana admin password diff --git a/proto/.gitignore b/proto/.gitignore index d1dea37b3a85abaa18b5bd65d3ec0e1d3c6fe9b6..4d6f9cbd73b283a2520ac926f56294a2aa060478 100644 --- a/proto/.gitignore +++ b/proto/.gitignore @@ -3,5 +3,8 @@ src/*/* # used to prevent breaking symbolic links from source code folders !src/*/.gitignore !src/python/__init__.py +!src/erlang/rebar.config +!src/erlang/rebar.lock +!src/erlang/src/tfpb.app.src uml/generated diff --git a/proto/context.proto b/proto/context.proto index 3104f1b545c02bab71c8638ebba03efdcbfe71ff..55a80470d40463742cc3e034ca9e933f4ff6c3f0 100644 --- a/proto/context.proto +++ b/proto/context.proto @@ -195,6 +195,7 @@ enum DeviceDriverEnum { DEVICEDRIVER_ONF_TR_352 = 5; DEVICEDRIVER_XR = 6; DEVICEDRIVER_IETF_L2VPN = 7; + DEVICEDRIVER_GNMI_OPENCONFIG = 8; } enum DeviceOperationalStatusEnum { @@ -272,6 +273,7 @@ enum ServiceTypeEnum { SERVICETYPE_L3NM = 1; SERVICETYPE_L2NM = 2; SERVICETYPE_TAPI_CONNECTIVITY_SERVICE = 3; + SERVICETYPE_TE = 4; } enum ServiceStatusEnum { @@ -494,6 +496,12 @@ message ConfigRule { // ----- Constraint ---------------------------------------------------------------------------------------------------- +enum ConstraintActionEnum { + CONSTRAINTACTION_UNDEFINED = 0; + CONSTRAINTACTION_SET = 1; + CONSTRAINTACTION_DELETE = 2; +} + message Constraint_Custom { string constraint_type = 1; string constraint_value = 2; @@ -564,16 +572,17 @@ message Constraint_Exclusions { } message Constraint { + ConstraintActionEnum action = 1; oneof constraint { - Constraint_Custom custom = 1; - Constraint_Schedule schedule = 2; - Constraint_EndPointLocation endpoint_location = 3; - Constraint_EndPointPriority endpoint_priority = 4; - Constraint_SLA_Capacity sla_capacity = 5; - Constraint_SLA_Latency sla_latency = 6; - Constraint_SLA_Availability sla_availability = 7; - Constraint_SLA_Isolation_level sla_isolation = 8; - Constraint_Exclusions exclusions = 9; + Constraint_Custom custom = 2; + Constraint_Schedule schedule = 3; + Constraint_EndPointLocation endpoint_location = 4; + Constraint_EndPointPriority endpoint_priority = 5; + Constraint_SLA_Capacity sla_capacity = 6; + Constraint_SLA_Latency sla_latency = 7; + Constraint_SLA_Availability sla_availability = 8; + Constraint_SLA_Isolation_level sla_isolation = 9; + Constraint_Exclusions exclusions = 10; } } diff --git a/proto/generate_code_erlang.sh b/proto/generate_code_erlang.sh new file mode 100755 index 0000000000000000000000000000000000000000..80fb977e44536482888d2963995fd811e95417fd --- /dev/null +++ b/proto/generate_code_erlang.sh @@ -0,0 +1,74 @@ +#!/bin/bash -eu +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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. + +set -e + +FORCE=0 +DEFAULT_ACTION="generate" + +usage() { + echo "Usage: $0 [-f] [clean|generate]" 1>&2 + echo "Options:" + echo " -f: Force regeneration of all protocol buffers" + exit 1; +} + +while getopts "fc" o; do + case "${o}" in + f) + FORCE=1 + ;; + *) + usage + ;; + esac +done +shift $((OPTIND-1)) + +ACTION=${1:-$DEFAULT_ACTION} +cd $(dirname $0) +ROOT=$(pwd) +ERLANG_PROTO_DIR="$ROOT/src/erlang" +BUILD_CHECK="$ERLANG_PROTO_DIR/.generated" + +tfpb_clean() { + rm -f "$BUILD_CHECK" + rm -rf "$ERLANG_PROTO_DIR/src/"*.erl + rm -rf "$ERLANG_PROTO_DIR/src/erlang/_build" +} + +tfpb_generate() { + if [[ -f "$BUILD_CHECK" && $FORCE != 1 ]]; then + echo "Protocol buffer code for Erlang already generated, use -f to force" + exit 0 + fi + + tfpb_clean + mkdir -p "$ERLANG_PROTO_DIR" + cd "$ERLANG_PROTO_DIR" + rebar3 compile + rebar3 grpc gen + rebar3 compile + touch "$BUILD_CHECK" + + echo "Protocol buffer code for Erlang generated" +} + +case "$ACTION" in + clean) tfpb_clean;; + generate) tfpb_generate;; + *) usage;; +esac + diff --git a/proto/interdomain.proto b/proto/interdomain.proto index 3e44fb4477c400e8ca278bda38a7af6d142cebe0..ca6a64b19d22c3b80f2a6e57d4aba36ae2a9b080 100644 --- a/proto/interdomain.proto +++ b/proto/interdomain.proto @@ -25,4 +25,5 @@ service InterdomainService { 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 ) {} + rpc DeleteSlice (context.SliceId ) returns (context.Empty ) {} } diff --git a/proto/l3_attackmitigator.proto b/proto/l3_attackmitigator.proto index 572d96f9e586dae4a124b1b9de1368b71fb9f0b7..d8ed4baf788a793b6b1451606760256db8ebe089 100644 --- a/proto/l3_attackmitigator.proto +++ b/proto/l3_attackmitigator.proto @@ -13,15 +13,14 @@ // limitations under the License. syntax = "proto3"; +package l3_attackmitigator; import "context.proto"; +import "l3_centralizedattackdetector.proto"; service L3Attackmitigator{ - // Perform Mitigation - rpc PerformMitigation (L3AttackmitigatorOutput) returns (context.Empty) {} - // Get Mitigation + rpc PerformMitigation (L3AttackmitigatorOutput) returns (l3_centralizedattackdetector.StatusMessage) {} rpc GetMitigation (context.Empty) returns (context.Empty) {} - // Get Configured ACL Rules rpc GetConfiguredACLRules (context.Empty) returns (ACLRules) {} } diff --git a/proto/l3_centralizedattackdetector.proto b/proto/l3_centralizedattackdetector.proto index ed99435aa7db6584b381079cb1e3d589fb9998b5..de967aea0812c611d7d969b2c3b20421446e927f 100644 --- a/proto/l3_centralizedattackdetector.proto +++ b/proto/l3_centralizedattackdetector.proto @@ -13,18 +13,23 @@ // limitations under the License. syntax = "proto3"; +package l3_centralizedattackdetector; import "context.proto"; service L3Centralizedattackdetector { // Analyze single input to the ML model in the CAD component - rpc AnalyzeConnectionStatistics (L3CentralizedattackdetectorMetrics) returns (Empty) {} + rpc AnalyzeConnectionStatistics (L3CentralizedattackdetectorMetrics) returns (StatusMessage) {} // Analyze a batch of inputs to the ML model in the CAD component - rpc AnalyzeBatchConnectionStatistics (L3CentralizedattackdetectorBatchInput) returns (Empty) {} + rpc AnalyzeBatchConnectionStatistics (L3CentralizedattackdetectorBatchInput) returns (StatusMessage) {} // Get the list of features used by the ML model in the CAD component - rpc GetFeaturesIds (Empty) returns (AutoFeatures) {} + rpc GetFeaturesIds (context.Empty) returns (AutoFeatures) {} + + // Sets the list of attack IPs in order to be used to compute the prediction accuracy of the + // ML model in the CAD component in case of testing the ML model. + rpc SetAttackIPs (AttackIPs) returns (context.Empty) {} } message Feature { @@ -63,6 +68,10 @@ message L3CentralizedattackdetectorBatchInput { repeated L3CentralizedattackdetectorMetrics metrics = 1; } -message Empty { +message StatusMessage { string message = 1; } + +message AttackIPs { + repeated string attack_ips = 1; +} \ No newline at end of file diff --git a/proto/policy_action.proto b/proto/policy_action.proto index 17dd721196c0ed407849aa23099477ea34d39ddd..d547e97790cf2cafe2e4cb9ec8c8b06d8a2e0404 100644 --- a/proto/policy_action.proto +++ b/proto/policy_action.proto @@ -26,6 +26,8 @@ enum PolicyRuleActionEnum { POLICYRULE_ACTION_SET_DEVICE_STATUS = 1; POLICYRULE_ACTION_ADD_SERVICE_CONFIGRULE = 2; POLICYRULE_ACTION_ADD_SERVICE_CONSTRAINT = 3; + POLICY_RULE_ACTION_CALL_SERVICE_RPC = 4; + POLICY_RULE_ACTION_RECALCULATE_PATH = 5; } // Action configuration @@ -37,4 +39,4 @@ message PolicyRuleActionConfig { // message PolicyRuleAction { // PolicyRuleActionEnum action = 1; // repeated string parameters = 2; -// } \ No newline at end of file +// } diff --git a/proto/src/erlang/.gitignore b/proto/src/erlang/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..b583d287f2c200fe88ad47c7e8d9cfcf15b0135c --- /dev/null +++ b/proto/src/erlang/.gitignore @@ -0,0 +1,5 @@ +* +!rebar.config +!rebar.lock +!src/ +!src/tfpb.app.src diff --git a/proto/src/erlang/rebar.config b/proto/src/erlang/rebar.config new file mode 100644 index 0000000000000000000000000000000000000000..55e139eabf9bf5e0bdcb66af889d78bdc8aa9c11 --- /dev/null +++ b/proto/src/erlang/rebar.config @@ -0,0 +1,21 @@ +% Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +% +% 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. + +{erl_opts, [debug_info]}. +{deps, [grpcbox]}. + +{grpc, [{protos, "../.."}, + {gpb_opts, [{i, "../.."}, {strbin, true}, {descriptor, true}, {module_name_suffix, "_pb"}]}]}. + +{plugins, [grpcbox_plugin]}. diff --git a/proto/src/erlang/rebar.lock b/proto/src/erlang/rebar.lock new file mode 100644 index 0000000000000000000000000000000000000000..d353eaf344ffe261be7200c1cb3a1ad76bf80703 --- /dev/null +++ b/proto/src/erlang/rebar.lock @@ -0,0 +1,23 @@ +{"1.2.0", +[{<<"acceptor_pool">>,{pkg,<<"acceptor_pool">>,<<"1.0.0">>},1}, + {<<"chatterbox">>,{pkg,<<"ts_chatterbox">>,<<"0.12.0">>},1}, + {<<"ctx">>,{pkg,<<"ctx">>,<<"0.6.0">>},1}, + {<<"gproc">>,{pkg,<<"gproc">>,<<"0.8.0">>},1}, + {<<"grpcbox">>,{pkg,<<"grpcbox">>,<<"0.15.0">>},0}, + {<<"hpack">>,{pkg,<<"hpack_erl">>,<<"0.2.3">>},2}]}. +[ +{pkg_hash,[ + {<<"acceptor_pool">>, <<"43C20D2ACAE35F0C2BCD64F9D2BDE267E459F0F3FD23DAB26485BF518C281B21">>}, + {<<"chatterbox">>, <<"4E54F199E15C0320B85372A24E35554A2CCFC4342E0B7CD8DAED9A04F9B8EF4A">>}, + {<<"ctx">>, <<"8FF88B70E6400C4DF90142E7F130625B82086077A45364A78D208ED3ED53C7FE">>}, + {<<"gproc">>, <<"CEA02C578589C61E5341FCE149EA36CCEF236CC2ECAC8691FBA408E7EA77EC2F">>}, + {<<"grpcbox">>, <<"97C7126296A091602D372EBF5860A04F7BC795B45B33A984CAD2B8E362774FD8">>}, + {<<"hpack">>, <<"17670F83FF984AE6CD74B1C456EDDE906D27FF013740EE4D9EFAA4F1BF999633">>}]}, +{pkg_hash_ext,[ + {<<"acceptor_pool">>, <<"0CBCD83FDC8B9AD2EEE2067EF8B91A14858A5883CB7CD800E6FCD5803E158788">>}, + {<<"chatterbox">>, <<"6478C161BC60244F41CD5847CC3ACCD26D997883E9F7FACD36FF24533B2FA579">>}, + {<<"ctx">>, <<"A14ED2D1B67723DBEBBE423B28D7615EB0BDCBA6FF28F2D1F1B0A7E1D4AA5FC2">>}, + {<<"gproc">>, <<"580ADAFA56463B75263EF5A5DF4C86AF321F68694E7786CB057FD805D1E2A7DE">>}, + {<<"grpcbox">>, <<"161ABE9E17E7D1982EFA6488ADEAA13C3E847A07984A6E6B224E553368918647">>}, + {<<"hpack">>, <<"06F580167C4B8B8A6429040DF36CC93BBA6D571FAEAEC1B28816523379CBB23A">>}]} +]. diff --git a/proto/src/erlang/src/tfpb.app.src b/proto/src/erlang/src/tfpb.app.src new file mode 100644 index 0000000000000000000000000000000000000000..097bdc5979ece9d9d02322c16bd97816460afc00 --- /dev/null +++ b/proto/src/erlang/src/tfpb.app.src @@ -0,0 +1,24 @@ +%% Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +%% +%% 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. + +{application, tfpb, + [{description, "Teraflow Erlang Protocol Buffers"}, + {vsn, "0.1.0"}, + {registered, []}, + {applications, [kernel, stdlib, grpcbox]}, + {env, []}, + {modules, []}, + {licenses, ["Apache 2.0"]}, + {links, []} + ]}. diff --git a/src/tests/scenario3/l3/complete_deploy.sh b/scripts/run_tests_locally-interdomain-compute-domains.sh similarity index 70% rename from src/tests/scenario3/l3/complete_deploy.sh rename to scripts/run_tests_locally-interdomain-compute-domains.sh index 5e8a2772c61ac2e96e5cf675468d27be2b940fe6..09fa4ce7ea6a4464ed5f821502e41c13c6248564 100755 --- a/src/tests/scenario3/l3/complete_deploy.sh +++ b/scripts/run_tests_locally-interdomain-compute-domains.sh @@ -13,11 +13,5 @@ # See the License for the specific language governing permissions and # limitations under the License. -./src/tests/ofc22/run_test_03_delete_service.sh -./src/tests/ofc22/run_test_04_cleanup.sh -source src/tests/ofc22/deploy_specs.sh -source my_deploy.sh -./deploy/all.sh -source tfs_runtime_env_vars.sh -ofc22/run_test_01_bootstrap.sh -ofc22/run_test_02_create_service.sh +source tfs_runtime_env_vars_dom1.sh +PYTHONPATH=./src pytest --log-level=INFO --verbose src/interdomain/tests/test_compute_domains.py diff --git a/src/tests/scenario3/l3/get_ml_model_info.sh b/scripts/run_tests_locally-interdomain-topology-abstractor.sh similarity index 69% rename from src/tests/scenario3/l3/get_ml_model_info.sh rename to scripts/run_tests_locally-interdomain-topology-abstractor.sh index 19fb1177a23c13e4cdffd2e8c75df3aad3502c04..1e1dc1767e6a6efbd01eb1cd559fc75dd30c2794 100755 --- a/src/tests/scenario3/l3/get_ml_model_info.sh +++ b/scripts/run_tests_locally-interdomain-topology-abstractor.sh @@ -13,10 +13,5 @@ # See the License for the specific language governing permissions and # limitations under the License. -pod=$(kubectl get pods -n "tfs" -l app=l3-centralizedattackdetectorservice | sed -n '2p' | cut -d " " -f1) -while true; do - kubectl -n "tfs" cp $pod:prediction_accuracy.txt ./prediction_accuracy.txt - clear - cat prediction_accuracy.txt | tail -n 10 - sleep 1 -done +source tfs_runtime_env_vars_dom2.sh +PYTHONPATH=./src pytest --log-level=INFO --verbose src/interdomain/tests/test_topology_abstractor.py diff --git a/src/automation/mvnw b/src/automation/mvnw old mode 100644 new mode 100755 diff --git a/src/automation/src/main/java/eu/teraflow/automation/AutomationGatewayImpl.java b/src/automation/src/main/java/eu/teraflow/automation/AutomationGatewayImpl.java index 2f9054cd8296579b3e391aae84ec16ad1f460bdb..217c76671cbb8524c7f0c0218e83fedc5e52bdb0 100644 --- a/src/automation/src/main/java/eu/teraflow/automation/AutomationGatewayImpl.java +++ b/src/automation/src/main/java/eu/teraflow/automation/AutomationGatewayImpl.java @@ -26,7 +26,6 @@ import eu.teraflow.automation.model.DeviceState; import io.quarkus.grpc.GrpcService; import io.smallrye.mutiny.Uni; import javax.inject.Inject; - import org.eclipse.microprofile.metrics.MetricUnits; import org.eclipse.microprofile.metrics.annotation.Counted; import org.eclipse.microprofile.metrics.annotation.Timed; diff --git a/src/automation/src/main/java/eu/teraflow/automation/AutomationServiceImpl.java b/src/automation/src/main/java/eu/teraflow/automation/AutomationServiceImpl.java index f25e0e2988dd2dd1e35243559821dc35d84bb1e0..017a101fb1a5b35b018a775d36f24480104f586f 100644 --- a/src/automation/src/main/java/eu/teraflow/automation/AutomationServiceImpl.java +++ b/src/automation/src/main/java/eu/teraflow/automation/AutomationServiceImpl.java @@ -28,7 +28,7 @@ import org.jboss.logging.Logger; @ApplicationScoped public class AutomationServiceImpl implements AutomationService { private static final Logger LOGGER = Logger.getLogger(AutomationServiceImpl.class); - //private static final String MESSAGE = "Retrieved %s"; + // private static final String MESSAGE = "Retrieved %s"; private final DeviceService deviceService; private final ContextService contextService; @@ -61,7 +61,7 @@ public class AutomationServiceImpl implements AutomationService { return; } - //LOGGER.infof(MESSAGE, device); + // LOGGER.infof(MESSAGE, device); final var initialConfiguration = deviceService.getInitialConfiguration(device.getDeviceId()); @@ -114,7 +114,7 @@ public class AutomationServiceImpl implements AutomationService { device.disableDevice(); LOGGER.infof("Disabled device [%s]", id); - //LOGGER.infof(MESSAGE, device); + // LOGGER.infof(MESSAGE, device); final var empty = deviceService.deleteDevice(device.getDeviceId()); @@ -150,7 +150,7 @@ public class AutomationServiceImpl implements AutomationService { return; } - //LOGGER.infof(MESSAGE, device); + // LOGGER.infof(MESSAGE, device); device.setDeviceConfiguration(deviceConfig); final var updatedDeviceIdUni = deviceService.configureDevice(device); diff --git a/src/automation/src/test/java/eu/teraflow/automation/ContextSubscriberTest.java b/src/automation/src/test/java/eu/teraflow/automation/ContextSubscriberTest.java index 84acd8b5d33c8e0b622a427f0952c0053aad3252..eb5f63e25d0f83417bcd461ce3aa9313a7eb417f 100644 --- a/src/automation/src/test/java/eu/teraflow/automation/ContextSubscriberTest.java +++ b/src/automation/src/test/java/eu/teraflow/automation/ContextSubscriberTest.java @@ -1,18 +1,18 @@ /* - * Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) - * - * 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. - */ +* Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +* +* 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.automation; diff --git a/src/automation/src/test/java/eu/teraflow/automation/MockAutomationConfiguration.java b/src/automation/src/test/java/eu/teraflow/automation/MockAutomationConfiguration.java index b3653edc8d148fc428775be0d7743c48ec45ae33..94110ebbcd8826b6fd73f451c799f3d8d79521f7 100644 --- a/src/automation/src/test/java/eu/teraflow/automation/MockAutomationConfiguration.java +++ b/src/automation/src/test/java/eu/teraflow/automation/MockAutomationConfiguration.java @@ -1,18 +1,18 @@ /* - * Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) - * - * 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. - */ +* Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +* +* 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.automation; diff --git a/src/automation/src/test/java/eu/teraflow/automation/SerializerTest.java b/src/automation/src/test/java/eu/teraflow/automation/SerializerTest.java index 0931054c682dede502fb9f22bf911439e52c2140..d2257d1b34e4753aff620e9bbc15d941f99ae3ba 100644 --- a/src/automation/src/test/java/eu/teraflow/automation/SerializerTest.java +++ b/src/automation/src/test/java/eu/teraflow/automation/SerializerTest.java @@ -1216,7 +1216,8 @@ class SerializerTest { ContextOuterClass.DeviceDriverEnum.DEVICEDRIVER_ONF_TR_352), Arguments.of(DeviceDriverEnum.XR, ContextOuterClass.DeviceDriverEnum.DEVICEDRIVER_XR), Arguments.of( - DeviceDriverEnum.IETF_L2VPN, ContextOuterClass.DeviceDriverEnum.DEVICEDRIVER_IETF_L2VPN), + DeviceDriverEnum.IETF_L2VPN, + ContextOuterClass.DeviceDriverEnum.DEVICEDRIVER_IETF_L2VPN), Arguments.of( DeviceDriverEnum.UNDEFINED, ContextOuterClass.DeviceDriverEnum.DEVICEDRIVER_UNDEFINED)); } diff --git a/src/automation/target/generated-sources/grpc/context/ContextOuterClass.java b/src/automation/target/generated-sources/grpc/context/ContextOuterClass.java index b1bccdeccf564b0d8d7bd2a8606f614b00ede972..a605e30de68ae66866a78d53863412937ceea890 100644 --- a/src/automation/target/generated-sources/grpc/context/ContextOuterClass.java +++ b/src/automation/target/generated-sources/grpc/context/ContextOuterClass.java @@ -181,6 +181,10 @@ public final class ContextOuterClass { * <code>DEVICEDRIVER_IETF_L2VPN = 7;</code> */ DEVICEDRIVER_IETF_L2VPN(7), + /** + * <code>DEVICEDRIVER_GNMI_OPENCONFIG = 8;</code> + */ + DEVICEDRIVER_GNMI_OPENCONFIG(8), UNRECOGNIZED(-1), ; @@ -220,6 +224,10 @@ public final class ContextOuterClass { * <code>DEVICEDRIVER_IETF_L2VPN = 7;</code> */ public static final int DEVICEDRIVER_IETF_L2VPN_VALUE = 7; + /** + * <code>DEVICEDRIVER_GNMI_OPENCONFIG = 8;</code> + */ + public static final int DEVICEDRIVER_GNMI_OPENCONFIG_VALUE = 8; public final int getNumber() { @@ -254,6 +262,7 @@ public final class ContextOuterClass { case 5: return DEVICEDRIVER_ONF_TR_352; case 6: return DEVICEDRIVER_XR; case 7: return DEVICEDRIVER_IETF_L2VPN; + case 8: return DEVICEDRIVER_GNMI_OPENCONFIG; default: return null; } } @@ -571,13 +580,17 @@ public final class ContextOuterClass { */ SERVICESTATUS_ACTIVE(2), /** - * <code>SERVICESTATUS_PENDING_REMOVAL = 3;</code> + * <code>SERVICESTATUS_UPDATING = 3;</code> + */ + SERVICESTATUS_UPDATING(3), + /** + * <code>SERVICESTATUS_PENDING_REMOVAL = 4;</code> */ - SERVICESTATUS_PENDING_REMOVAL(3), + SERVICESTATUS_PENDING_REMOVAL(4), /** - * <code>SERVICESTATUS_SLA_VIOLATED = 4;</code> + * <code>SERVICESTATUS_SLA_VIOLATED = 5;</code> */ - SERVICESTATUS_SLA_VIOLATED(4), + SERVICESTATUS_SLA_VIOLATED(5), UNRECOGNIZED(-1), ; @@ -594,13 +607,17 @@ public final class ContextOuterClass { */ public static final int SERVICESTATUS_ACTIVE_VALUE = 2; /** - * <code>SERVICESTATUS_PENDING_REMOVAL = 3;</code> + * <code>SERVICESTATUS_UPDATING = 3;</code> */ - public static final int SERVICESTATUS_PENDING_REMOVAL_VALUE = 3; + public static final int SERVICESTATUS_UPDATING_VALUE = 3; /** - * <code>SERVICESTATUS_SLA_VIOLATED = 4;</code> + * <code>SERVICESTATUS_PENDING_REMOVAL = 4;</code> */ - public static final int SERVICESTATUS_SLA_VIOLATED_VALUE = 4; + public static final int SERVICESTATUS_PENDING_REMOVAL_VALUE = 4; + /** + * <code>SERVICESTATUS_SLA_VIOLATED = 5;</code> + */ + public static final int SERVICESTATUS_SLA_VIOLATED_VALUE = 5; public final int getNumber() { @@ -630,8 +647,9 @@ public final class ContextOuterClass { case 0: return SERVICESTATUS_UNDEFINED; case 1: return SERVICESTATUS_PLANNED; case 2: return SERVICESTATUS_ACTIVE; - case 3: return SERVICESTATUS_PENDING_REMOVAL; - case 4: return SERVICESTATUS_SLA_VIOLATED; + case 3: return SERVICESTATUS_UPDATING; + case 4: return SERVICESTATUS_PENDING_REMOVAL; + case 5: return SERVICESTATUS_SLA_VIOLATED; default: return null; } } @@ -953,6 +971,127 @@ public final class ContextOuterClass { // @@protoc_insertion_point(enum_scope:context.ConfigActionEnum) } + /** + * <pre> + * ----- Constraint ---------------------------------------------------------------------------------------------------- + * </pre> + * + * Protobuf enum {@code context.ConstraintActionEnum} + */ + public enum ConstraintActionEnum + implements com.google.protobuf.ProtocolMessageEnum { + /** + * <code>CONSTRAINTACTION_UNDEFINED = 0;</code> + */ + CONSTRAINTACTION_UNDEFINED(0), + /** + * <code>CONSTRAINTACTION_SET = 1;</code> + */ + CONSTRAINTACTION_SET(1), + /** + * <code>CONSTRAINTACTION_DELETE = 2;</code> + */ + CONSTRAINTACTION_DELETE(2), + UNRECOGNIZED(-1), + ; + + /** + * <code>CONSTRAINTACTION_UNDEFINED = 0;</code> + */ + public static final int CONSTRAINTACTION_UNDEFINED_VALUE = 0; + /** + * <code>CONSTRAINTACTION_SET = 1;</code> + */ + public static final int CONSTRAINTACTION_SET_VALUE = 1; + /** + * <code>CONSTRAINTACTION_DELETE = 2;</code> + */ + public static final int CONSTRAINTACTION_DELETE_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; + } + + /** + * @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. + */ + @java.lang.Deprecated + public static ConstraintActionEnum valueOf(int value) { + return forNumber(value); + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + */ + public static ConstraintActionEnum forNumber(int value) { + switch (value) { + case 0: return CONSTRAINTACTION_UNDEFINED; + case 1: return CONSTRAINTACTION_SET; + case 2: return CONSTRAINTACTION_DELETE; + default: return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap<ConstraintActionEnum> + internalGetValueMap() { + return internalValueMap; + } + private static final com.google.protobuf.Internal.EnumLiteMap< + ConstraintActionEnum> internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap<ConstraintActionEnum>() { + public ConstraintActionEnum findValueByNumber(int number) { + return ConstraintActionEnum.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 context.ContextOuterClass.getDescriptor().getEnumTypes().get(7); + } + + private static final ConstraintActionEnum[] VALUES = values(); + + public static ConstraintActionEnum 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 ConstraintActionEnum(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:context.ConstraintActionEnum) + } + /** * Protobuf enum {@code context.IsolationLevelEnum} */ @@ -1098,7 +1237,7 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { - return context.ContextOuterClass.getDescriptor().getEnumTypes().get(7); + return context.ContextOuterClass.getDescriptor().getEnumTypes().get(8); } private static final IsolationLevelEnum[] VALUES = values(); @@ -15540,6 +15679,33 @@ public final class ContextOuterClass { */ context.ContextOuterClass.ComponentOrBuilder getComponentOrBuilder( int index); + + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + * @return Whether the controllerId field is set. + */ + boolean hasControllerId(); + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + * @return The controllerId. + */ + context.ContextOuterClass.DeviceId getControllerId(); + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + */ + context.ContextOuterClass.DeviceIdOrBuilder getControllerIdOrBuilder(); } /** * Protobuf type {@code context.Device} @@ -15678,6 +15844,19 @@ public final class ContextOuterClass { input.readMessage(context.ContextOuterClass.Component.parser(), extensionRegistry)); break; } + case 74: { + context.ContextOuterClass.DeviceId.Builder subBuilder = null; + if (controllerId_ != null) { + subBuilder = controllerId_.toBuilder(); + } + controllerId_ = input.readMessage(context.ContextOuterClass.DeviceId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(controllerId_); + controllerId_ = subBuilder.buildPartial(); + } + + break; + } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { @@ -16024,6 +16203,44 @@ public final class ContextOuterClass { return component_.get(index); } + public static final int CONTROLLER_ID_FIELD_NUMBER = 9; + private context.ContextOuterClass.DeviceId controllerId_; + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + * @return Whether the controllerId field is set. + */ + @java.lang.Override + public boolean hasControllerId() { + return controllerId_ != null; + } + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + * @return The controllerId. + */ + @java.lang.Override + public context.ContextOuterClass.DeviceId getControllerId() { + return controllerId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : controllerId_; + } + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + */ + @java.lang.Override + public context.ContextOuterClass.DeviceIdOrBuilder getControllerIdOrBuilder() { + return getControllerId(); + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -16067,6 +16284,9 @@ public final class ContextOuterClass { for (int i = 0; i < component_.size(); i++) { output.writeMessage(8, component_.get(i)); } + if (controllerId_ != null) { + output.writeMessage(9, getControllerId()); + } unknownFields.writeTo(output); } @@ -16114,6 +16334,10 @@ public final class ContextOuterClass { size += com.google.protobuf.CodedOutputStream .computeMessageSize(8, component_.get(i)); } + if (controllerId_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(9, getControllerId()); + } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; @@ -16149,6 +16373,11 @@ public final class ContextOuterClass { .equals(other.getDeviceEndpointsList())) return false; if (!getComponentList() .equals(other.getComponentList())) return false; + if (hasControllerId() != other.hasControllerId()) return false; + if (hasControllerId()) { + if (!getControllerId() + .equals(other.getControllerId())) return false; + } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -16186,6 +16415,10 @@ public final class ContextOuterClass { hash = (37 * hash) + COMPONENT_FIELD_NUMBER; hash = (53 * hash) + getComponentList().hashCode(); } + if (hasControllerId()) { + hash = (37 * hash) + CONTROLLER_ID_FIELD_NUMBER; + hash = (53 * hash) + getControllerId().hashCode(); + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; @@ -16353,6 +16586,12 @@ public final class ContextOuterClass { } else { componentBuilder_.clear(); } + if (controllerIdBuilder_ == null) { + controllerId_ = null; + } else { + controllerId_ = null; + controllerIdBuilder_ = null; + } return this; } @@ -16416,6 +16655,11 @@ public final class ContextOuterClass { } else { result.component_ = componentBuilder_.build(); } + if (controllerIdBuilder_ == null) { + result.controllerId_ = controllerId_; + } else { + result.controllerId_ = controllerIdBuilder_.build(); + } onBuilt(); return result; } @@ -16543,6 +16787,9 @@ public final class ContextOuterClass { } } } + if (other.hasControllerId()) { + mergeControllerId(other.getControllerId()); + } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; @@ -17708,6 +17955,161 @@ public final class ContextOuterClass { } return componentBuilder_; } + + private context.ContextOuterClass.DeviceId controllerId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> controllerIdBuilder_; + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + * @return Whether the controllerId field is set. + */ + public boolean hasControllerId() { + return controllerIdBuilder_ != null || controllerId_ != null; + } + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + * @return The controllerId. + */ + public context.ContextOuterClass.DeviceId getControllerId() { + if (controllerIdBuilder_ == null) { + return controllerId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : controllerId_; + } else { + return controllerIdBuilder_.getMessage(); + } + } + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + */ + public Builder setControllerId(context.ContextOuterClass.DeviceId value) { + if (controllerIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + controllerId_ = value; + onChanged(); + } else { + controllerIdBuilder_.setMessage(value); + } + + return this; + } + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + */ + public Builder setControllerId( + context.ContextOuterClass.DeviceId.Builder builderForValue) { + if (controllerIdBuilder_ == null) { + controllerId_ = builderForValue.build(); + onChanged(); + } else { + controllerIdBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + */ + public Builder mergeControllerId(context.ContextOuterClass.DeviceId value) { + if (controllerIdBuilder_ == null) { + if (controllerId_ != null) { + controllerId_ = + context.ContextOuterClass.DeviceId.newBuilder(controllerId_).mergeFrom(value).buildPartial(); + } else { + controllerId_ = value; + } + onChanged(); + } else { + controllerIdBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + */ + public Builder clearControllerId() { + if (controllerIdBuilder_ == null) { + controllerId_ = null; + onChanged(); + } else { + controllerId_ = null; + controllerIdBuilder_ = null; + } + + return this; + } + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + */ + public context.ContextOuterClass.DeviceId.Builder getControllerIdBuilder() { + + onChanged(); + return getControllerIdFieldBuilder().getBuilder(); + } + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + */ + public context.ContextOuterClass.DeviceIdOrBuilder getControllerIdOrBuilder() { + if (controllerIdBuilder_ != null) { + return controllerIdBuilder_.getMessageOrBuilder(); + } else { + return controllerId_ == null ? + context.ContextOuterClass.DeviceId.getDefaultInstance() : controllerId_; + } + } + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> + getControllerIdFieldBuilder() { + if (controllerIdBuilder_ == null) { + controllerIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder>( + getControllerId(), + getParentForChildren(), + isClean()); + controllerId_ = null; + } + return controllerIdBuilder_; + } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { @@ -20778,75 +21180,63 @@ public final class ContextOuterClass { } - public interface DeviceEventOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.DeviceEvent) + public interface DeviceFilterOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.DeviceFilter) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. + * <code>.context.DeviceIdList device_ids = 1;</code> + * @return Whether the deviceIds field is set. */ - boolean hasEvent(); + boolean hasDeviceIds(); /** - * <code>.context.Event event = 1;</code> - * @return The event. + * <code>.context.DeviceIdList device_ids = 1;</code> + * @return The deviceIds. */ - context.ContextOuterClass.Event getEvent(); + context.ContextOuterClass.DeviceIdList getDeviceIds(); /** - * <code>.context.Event event = 1;</code> + * <code>.context.DeviceIdList device_ids = 1;</code> */ - context.ContextOuterClass.EventOrBuilder getEventOrBuilder(); + context.ContextOuterClass.DeviceIdListOrBuilder getDeviceIdsOrBuilder(); /** - * <code>.context.DeviceId device_id = 2;</code> - * @return Whether the deviceId field is set. + * <code>bool include_endpoints = 2;</code> + * @return The includeEndpoints. */ - boolean hasDeviceId(); - /** - * <code>.context.DeviceId device_id = 2;</code> - * @return The deviceId. - */ - context.ContextOuterClass.DeviceId getDeviceId(); - /** - * <code>.context.DeviceId device_id = 2;</code> - */ - context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder(); + boolean getIncludeEndpoints(); /** - * <code>.context.DeviceConfig device_config = 3;</code> - * @return Whether the deviceConfig field is set. - */ - boolean hasDeviceConfig(); - /** - * <code>.context.DeviceConfig device_config = 3;</code> - * @return The deviceConfig. + * <code>bool include_config_rules = 3;</code> + * @return The includeConfigRules. */ - context.ContextOuterClass.DeviceConfig getDeviceConfig(); + boolean getIncludeConfigRules(); + /** - * <code>.context.DeviceConfig device_config = 3;</code> + * <code>bool include_components = 4;</code> + * @return The includeComponents. */ - context.ContextOuterClass.DeviceConfigOrBuilder getDeviceConfigOrBuilder(); + boolean getIncludeComponents(); } /** - * Protobuf type {@code context.DeviceEvent} + * Protobuf type {@code context.DeviceFilter} */ - public static final class DeviceEvent extends + public static final class DeviceFilter extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.DeviceEvent) - DeviceEventOrBuilder { + // @@protoc_insertion_point(message_implements:context.DeviceFilter) + DeviceFilterOrBuilder { private static final long serialVersionUID = 0L; - // Use DeviceEvent.newBuilder() to construct. - private DeviceEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use DeviceFilter.newBuilder() to construct. + private DeviceFilter(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private DeviceEvent() { + private DeviceFilter() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new DeviceEvent(); + return new DeviceFilter(); } @java.lang.Override @@ -20854,7 +21244,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private DeviceEvent( + private DeviceFilter( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -20873,42 +21263,31 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.Event.Builder subBuilder = null; - if (event_ != null) { - subBuilder = event_.toBuilder(); + context.ContextOuterClass.DeviceIdList.Builder subBuilder = null; + if (deviceIds_ != null) { + subBuilder = deviceIds_.toBuilder(); } - event_ = input.readMessage(context.ContextOuterClass.Event.parser(), extensionRegistry); + deviceIds_ = input.readMessage(context.ContextOuterClass.DeviceIdList.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(event_); - event_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(deviceIds_); + deviceIds_ = subBuilder.buildPartial(); } break; } - case 18: { - context.ContextOuterClass.DeviceId.Builder subBuilder = null; - if (deviceId_ != null) { - subBuilder = deviceId_.toBuilder(); - } - deviceId_ = input.readMessage(context.ContextOuterClass.DeviceId.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(deviceId_); - deviceId_ = subBuilder.buildPartial(); - } + case 16: { + includeEndpoints_ = input.readBool(); break; } - case 26: { - context.ContextOuterClass.DeviceConfig.Builder subBuilder = null; - if (deviceConfig_ != null) { - subBuilder = deviceConfig_.toBuilder(); - } - deviceConfig_ = input.readMessage(context.ContextOuterClass.DeviceConfig.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(deviceConfig_); - deviceConfig_ = subBuilder.buildPartial(); - } + case 24: { + + includeConfigRules_ = input.readBool(); + break; + } + case 32: { + includeComponents_ = input.readBool(); break; } default: { @@ -20932,93 +21311,74 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_DeviceEvent_descriptor; + return context.ContextOuterClass.internal_static_context_DeviceFilter_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_DeviceEvent_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_DeviceFilter_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.DeviceEvent.class, context.ContextOuterClass.DeviceEvent.Builder.class); + context.ContextOuterClass.DeviceFilter.class, context.ContextOuterClass.DeviceFilter.Builder.class); } - public static final int EVENT_FIELD_NUMBER = 1; - private context.ContextOuterClass.Event event_; + public static final int DEVICE_IDS_FIELD_NUMBER = 1; + private context.ContextOuterClass.DeviceIdList deviceIds_; /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. + * <code>.context.DeviceIdList device_ids = 1;</code> + * @return Whether the deviceIds field is set. */ @java.lang.Override - public boolean hasEvent() { - return event_ != null; + public boolean hasDeviceIds() { + return deviceIds_ != null; } /** - * <code>.context.Event event = 1;</code> - * @return The event. + * <code>.context.DeviceIdList device_ids = 1;</code> + * @return The deviceIds. */ @java.lang.Override - public context.ContextOuterClass.Event getEvent() { - return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; + public context.ContextOuterClass.DeviceIdList getDeviceIds() { + return deviceIds_ == null ? context.ContextOuterClass.DeviceIdList.getDefaultInstance() : deviceIds_; } /** - * <code>.context.Event event = 1;</code> + * <code>.context.DeviceIdList device_ids = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { - return getEvent(); + public context.ContextOuterClass.DeviceIdListOrBuilder getDeviceIdsOrBuilder() { + return getDeviceIds(); } - public static final int DEVICE_ID_FIELD_NUMBER = 2; - private context.ContextOuterClass.DeviceId deviceId_; - /** - * <code>.context.DeviceId device_id = 2;</code> - * @return Whether the deviceId field is set. - */ - @java.lang.Override - public boolean hasDeviceId() { - return deviceId_ != null; - } - /** - * <code>.context.DeviceId device_id = 2;</code> - * @return The deviceId. - */ - @java.lang.Override - public context.ContextOuterClass.DeviceId getDeviceId() { - return deviceId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; - } + public static final int INCLUDE_ENDPOINTS_FIELD_NUMBER = 2; + private boolean includeEndpoints_; /** - * <code>.context.DeviceId device_id = 2;</code> + * <code>bool include_endpoints = 2;</code> + * @return The includeEndpoints. */ @java.lang.Override - public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder() { - return getDeviceId(); + public boolean getIncludeEndpoints() { + return includeEndpoints_; } - public static final int DEVICE_CONFIG_FIELD_NUMBER = 3; - private context.ContextOuterClass.DeviceConfig deviceConfig_; - /** - * <code>.context.DeviceConfig device_config = 3;</code> - * @return Whether the deviceConfig field is set. - */ - @java.lang.Override - public boolean hasDeviceConfig() { - return deviceConfig_ != null; - } + public static final int INCLUDE_CONFIG_RULES_FIELD_NUMBER = 3; + private boolean includeConfigRules_; /** - * <code>.context.DeviceConfig device_config = 3;</code> - * @return The deviceConfig. + * <code>bool include_config_rules = 3;</code> + * @return The includeConfigRules. */ @java.lang.Override - public context.ContextOuterClass.DeviceConfig getDeviceConfig() { - return deviceConfig_ == null ? context.ContextOuterClass.DeviceConfig.getDefaultInstance() : deviceConfig_; + public boolean getIncludeConfigRules() { + return includeConfigRules_; } + + public static final int INCLUDE_COMPONENTS_FIELD_NUMBER = 4; + private boolean includeComponents_; /** - * <code>.context.DeviceConfig device_config = 3;</code> + * <code>bool include_components = 4;</code> + * @return The includeComponents. */ @java.lang.Override - public context.ContextOuterClass.DeviceConfigOrBuilder getDeviceConfigOrBuilder() { - return getDeviceConfig(); + public boolean getIncludeComponents() { + return includeComponents_; } private byte memoizedIsInitialized = -1; @@ -21035,14 +21395,17 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (event_ != null) { - output.writeMessage(1, getEvent()); + if (deviceIds_ != null) { + output.writeMessage(1, getDeviceIds()); } - if (deviceId_ != null) { - output.writeMessage(2, getDeviceId()); + if (includeEndpoints_ != false) { + output.writeBool(2, includeEndpoints_); } - if (deviceConfig_ != null) { - output.writeMessage(3, getDeviceConfig()); + if (includeConfigRules_ != false) { + output.writeBool(3, includeConfigRules_); + } + if (includeComponents_ != false) { + output.writeBool(4, includeComponents_); } unknownFields.writeTo(output); } @@ -21053,17 +21416,21 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (event_ != null) { + if (deviceIds_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getEvent()); + .computeMessageSize(1, getDeviceIds()); } - if (deviceId_ != null) { + if (includeEndpoints_ != false) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, getDeviceId()); + .computeBoolSize(2, includeEndpoints_); } - if (deviceConfig_ != null) { + if (includeConfigRules_ != false) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(3, getDeviceConfig()); + .computeBoolSize(3, includeConfigRules_); + } + if (includeComponents_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(4, includeComponents_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -21075,26 +21442,22 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.DeviceEvent)) { + if (!(obj instanceof context.ContextOuterClass.DeviceFilter)) { return super.equals(obj); } - context.ContextOuterClass.DeviceEvent other = (context.ContextOuterClass.DeviceEvent) obj; + context.ContextOuterClass.DeviceFilter other = (context.ContextOuterClass.DeviceFilter) obj; - if (hasEvent() != other.hasEvent()) return false; - if (hasEvent()) { - if (!getEvent() - .equals(other.getEvent())) return false; - } - if (hasDeviceId() != other.hasDeviceId()) return false; - if (hasDeviceId()) { - if (!getDeviceId() - .equals(other.getDeviceId())) return false; - } - if (hasDeviceConfig() != other.hasDeviceConfig()) return false; - if (hasDeviceConfig()) { - if (!getDeviceConfig() - .equals(other.getDeviceConfig())) return false; + if (hasDeviceIds() != other.hasDeviceIds()) return false; + if (hasDeviceIds()) { + if (!getDeviceIds() + .equals(other.getDeviceIds())) return false; } + if (getIncludeEndpoints() + != other.getIncludeEndpoints()) return false; + if (getIncludeConfigRules() + != other.getIncludeConfigRules()) return false; + if (getIncludeComponents() + != other.getIncludeComponents()) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -21106,86 +21469,87 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasEvent()) { - hash = (37 * hash) + EVENT_FIELD_NUMBER; - hash = (53 * hash) + getEvent().hashCode(); - } - if (hasDeviceId()) { - hash = (37 * hash) + DEVICE_ID_FIELD_NUMBER; - hash = (53 * hash) + getDeviceId().hashCode(); - } - if (hasDeviceConfig()) { - hash = (37 * hash) + DEVICE_CONFIG_FIELD_NUMBER; - hash = (53 * hash) + getDeviceConfig().hashCode(); + if (hasDeviceIds()) { + hash = (37 * hash) + DEVICE_IDS_FIELD_NUMBER; + hash = (53 * hash) + getDeviceIds().hashCode(); } + hash = (37 * hash) + INCLUDE_ENDPOINTS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getIncludeEndpoints()); + hash = (37 * hash) + INCLUDE_CONFIG_RULES_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getIncludeConfigRules()); + hash = (37 * hash) + INCLUDE_COMPONENTS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getIncludeComponents()); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.DeviceEvent parseFrom( + public static context.ContextOuterClass.DeviceFilter parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.DeviceEvent parseFrom( + public static context.ContextOuterClass.DeviceFilter parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.DeviceEvent parseFrom( + public static context.ContextOuterClass.DeviceFilter parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.DeviceEvent parseFrom( + public static context.ContextOuterClass.DeviceFilter parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.DeviceEvent parseFrom(byte[] data) + public static context.ContextOuterClass.DeviceFilter parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.DeviceEvent parseFrom( + public static context.ContextOuterClass.DeviceFilter parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.DeviceEvent parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.DeviceFilter parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.DeviceEvent parseFrom( + public static context.ContextOuterClass.DeviceFilter 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 context.ContextOuterClass.DeviceEvent parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.DeviceFilter parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.DeviceEvent parseDelimitedFrom( + public static context.ContextOuterClass.DeviceFilter 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 context.ContextOuterClass.DeviceEvent parseFrom( + public static context.ContextOuterClass.DeviceFilter parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.DeviceEvent parseFrom( + public static context.ContextOuterClass.DeviceFilter parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -21198,7 +21562,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.DeviceEvent prototype) { + public static Builder newBuilder(context.ContextOuterClass.DeviceFilter prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -21214,26 +21578,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.DeviceEvent} + * Protobuf type {@code context.DeviceFilter} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.DeviceEvent) - context.ContextOuterClass.DeviceEventOrBuilder { + // @@protoc_insertion_point(builder_implements:context.DeviceFilter) + context.ContextOuterClass.DeviceFilterOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_DeviceEvent_descriptor; + return context.ContextOuterClass.internal_static_context_DeviceFilter_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_DeviceEvent_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_DeviceFilter_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.DeviceEvent.class, context.ContextOuterClass.DeviceEvent.Builder.class); + context.ContextOuterClass.DeviceFilter.class, context.ContextOuterClass.DeviceFilter.Builder.class); } - // Construct using context.ContextOuterClass.DeviceEvent.newBuilder() + // Construct using context.ContextOuterClass.DeviceFilter.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -21251,41 +21615,35 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - if (eventBuilder_ == null) { - event_ = null; - } else { - event_ = null; - eventBuilder_ = null; - } - if (deviceIdBuilder_ == null) { - deviceId_ = null; - } else { - deviceId_ = null; - deviceIdBuilder_ = null; - } - if (deviceConfigBuilder_ == null) { - deviceConfig_ = null; + if (deviceIdsBuilder_ == null) { + deviceIds_ = null; } else { - deviceConfig_ = null; - deviceConfigBuilder_ = null; + deviceIds_ = null; + deviceIdsBuilder_ = null; } + includeEndpoints_ = false; + + includeConfigRules_ = false; + + includeComponents_ = false; + return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_DeviceEvent_descriptor; + return context.ContextOuterClass.internal_static_context_DeviceFilter_descriptor; } @java.lang.Override - public context.ContextOuterClass.DeviceEvent getDefaultInstanceForType() { - return context.ContextOuterClass.DeviceEvent.getDefaultInstance(); + public context.ContextOuterClass.DeviceFilter getDefaultInstanceForType() { + return context.ContextOuterClass.DeviceFilter.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.DeviceEvent build() { - context.ContextOuterClass.DeviceEvent result = buildPartial(); + public context.ContextOuterClass.DeviceFilter build() { + context.ContextOuterClass.DeviceFilter result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -21293,23 +21651,16 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.DeviceEvent buildPartial() { - context.ContextOuterClass.DeviceEvent result = new context.ContextOuterClass.DeviceEvent(this); - if (eventBuilder_ == null) { - result.event_ = event_; - } else { - result.event_ = eventBuilder_.build(); - } - if (deviceIdBuilder_ == null) { - result.deviceId_ = deviceId_; - } else { - result.deviceId_ = deviceIdBuilder_.build(); - } - if (deviceConfigBuilder_ == null) { - result.deviceConfig_ = deviceConfig_; + public context.ContextOuterClass.DeviceFilter buildPartial() { + context.ContextOuterClass.DeviceFilter result = new context.ContextOuterClass.DeviceFilter(this); + if (deviceIdsBuilder_ == null) { + result.deviceIds_ = deviceIds_; } else { - result.deviceConfig_ = deviceConfigBuilder_.build(); + result.deviceIds_ = deviceIdsBuilder_.build(); } + result.includeEndpoints_ = includeEndpoints_; + result.includeConfigRules_ = includeConfigRules_; + result.includeComponents_ = includeComponents_; onBuilt(); return result; } @@ -21348,24 +21699,27 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.DeviceEvent) { - return mergeFrom((context.ContextOuterClass.DeviceEvent)other); + if (other instanceof context.ContextOuterClass.DeviceFilter) { + return mergeFrom((context.ContextOuterClass.DeviceFilter)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.DeviceEvent other) { - if (other == context.ContextOuterClass.DeviceEvent.getDefaultInstance()) return this; - if (other.hasEvent()) { - mergeEvent(other.getEvent()); + public Builder mergeFrom(context.ContextOuterClass.DeviceFilter other) { + if (other == context.ContextOuterClass.DeviceFilter.getDefaultInstance()) return this; + if (other.hasDeviceIds()) { + mergeDeviceIds(other.getDeviceIds()); } - if (other.hasDeviceId()) { - mergeDeviceId(other.getDeviceId()); + if (other.getIncludeEndpoints() != false) { + setIncludeEndpoints(other.getIncludeEndpoints()); } - if (other.hasDeviceConfig()) { - mergeDeviceConfig(other.getDeviceConfig()); + if (other.getIncludeConfigRules() != false) { + setIncludeConfigRules(other.getIncludeConfigRules()); + } + if (other.getIncludeComponents() != false) { + setIncludeComponents(other.getIncludeComponents()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -21382,11 +21736,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.DeviceEvent parsedMessage = null; + context.ContextOuterClass.DeviceFilter parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.DeviceEvent) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.DeviceFilter) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -21396,361 +21750,216 @@ public final class ContextOuterClass { return this; } - private context.ContextOuterClass.Event event_; + private context.ContextOuterClass.DeviceIdList deviceIds_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> eventBuilder_; + context.ContextOuterClass.DeviceIdList, context.ContextOuterClass.DeviceIdList.Builder, context.ContextOuterClass.DeviceIdListOrBuilder> deviceIdsBuilder_; /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. + * <code>.context.DeviceIdList device_ids = 1;</code> + * @return Whether the deviceIds field is set. */ - public boolean hasEvent() { - return eventBuilder_ != null || event_ != null; + public boolean hasDeviceIds() { + return deviceIdsBuilder_ != null || deviceIds_ != null; } /** - * <code>.context.Event event = 1;</code> - * @return The event. + * <code>.context.DeviceIdList device_ids = 1;</code> + * @return The deviceIds. */ - public context.ContextOuterClass.Event getEvent() { - if (eventBuilder_ == null) { - return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; + public context.ContextOuterClass.DeviceIdList getDeviceIds() { + if (deviceIdsBuilder_ == null) { + return deviceIds_ == null ? context.ContextOuterClass.DeviceIdList.getDefaultInstance() : deviceIds_; } else { - return eventBuilder_.getMessage(); + return deviceIdsBuilder_.getMessage(); } } /** - * <code>.context.Event event = 1;</code> + * <code>.context.DeviceIdList device_ids = 1;</code> */ - public Builder setEvent(context.ContextOuterClass.Event value) { - if (eventBuilder_ == null) { + public Builder setDeviceIds(context.ContextOuterClass.DeviceIdList value) { + if (deviceIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - event_ = value; + deviceIds_ = value; onChanged(); } else { - eventBuilder_.setMessage(value); + deviceIdsBuilder_.setMessage(value); } return this; } /** - * <code>.context.Event event = 1;</code> + * <code>.context.DeviceIdList device_ids = 1;</code> */ - public Builder setEvent( - context.ContextOuterClass.Event.Builder builderForValue) { - if (eventBuilder_ == null) { - event_ = builderForValue.build(); + public Builder setDeviceIds( + context.ContextOuterClass.DeviceIdList.Builder builderForValue) { + if (deviceIdsBuilder_ == null) { + deviceIds_ = builderForValue.build(); onChanged(); } else { - eventBuilder_.setMessage(builderForValue.build()); + deviceIdsBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.Event event = 1;</code> + * <code>.context.DeviceIdList device_ids = 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 mergeDeviceIds(context.ContextOuterClass.DeviceIdList value) { + if (deviceIdsBuilder_ == null) { + if (deviceIds_ != null) { + deviceIds_ = + context.ContextOuterClass.DeviceIdList.newBuilder(deviceIds_).mergeFrom(value).buildPartial(); } else { - event_ = value; + deviceIds_ = value; } onChanged(); } else { - eventBuilder_.mergeFrom(value); + deviceIdsBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.Event event = 1;</code> + * <code>.context.DeviceIdList device_ids = 1;</code> */ - public Builder clearEvent() { - if (eventBuilder_ == null) { - event_ = null; + public Builder clearDeviceIds() { + if (deviceIdsBuilder_ == null) { + deviceIds_ = null; onChanged(); } else { - event_ = null; - eventBuilder_ = null; + deviceIds_ = null; + deviceIdsBuilder_ = null; } return this; } /** - * <code>.context.Event event = 1;</code> + * <code>.context.DeviceIdList device_ids = 1;</code> */ - public context.ContextOuterClass.Event.Builder getEventBuilder() { + public context.ContextOuterClass.DeviceIdList.Builder getDeviceIdsBuilder() { onChanged(); - return getEventFieldBuilder().getBuilder(); + return getDeviceIdsFieldBuilder().getBuilder(); } /** - * <code>.context.Event event = 1;</code> + * <code>.context.DeviceIdList device_ids = 1;</code> */ - public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { - if (eventBuilder_ != null) { - return eventBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.DeviceIdListOrBuilder getDeviceIdsOrBuilder() { + if (deviceIdsBuilder_ != null) { + return deviceIdsBuilder_.getMessageOrBuilder(); } else { - return event_ == null ? - context.ContextOuterClass.Event.getDefaultInstance() : event_; + return deviceIds_ == null ? + context.ContextOuterClass.DeviceIdList.getDefaultInstance() : deviceIds_; } } /** - * <code>.context.Event event = 1;</code> + * <code>.context.DeviceIdList device_ids = 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(), + context.ContextOuterClass.DeviceIdList, context.ContextOuterClass.DeviceIdList.Builder, context.ContextOuterClass.DeviceIdListOrBuilder> + getDeviceIdsFieldBuilder() { + if (deviceIdsBuilder_ == null) { + deviceIdsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceIdList, context.ContextOuterClass.DeviceIdList.Builder, context.ContextOuterClass.DeviceIdListOrBuilder>( + getDeviceIds(), getParentForChildren(), isClean()); - event_ = null; + deviceIds_ = null; } - return eventBuilder_; + return deviceIdsBuilder_; } - private context.ContextOuterClass.DeviceId deviceId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> deviceIdBuilder_; - /** - * <code>.context.DeviceId device_id = 2;</code> - * @return Whether the deviceId field is set. - */ - public boolean hasDeviceId() { - return deviceIdBuilder_ != null || deviceId_ != null; - } + private boolean includeEndpoints_ ; /** - * <code>.context.DeviceId device_id = 2;</code> - * @return The deviceId. + * <code>bool include_endpoints = 2;</code> + * @return The includeEndpoints. */ - public context.ContextOuterClass.DeviceId getDeviceId() { - if (deviceIdBuilder_ == null) { - return deviceId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; - } else { - return deviceIdBuilder_.getMessage(); - } + @java.lang.Override + public boolean getIncludeEndpoints() { + return includeEndpoints_; } /** - * <code>.context.DeviceId device_id = 2;</code> + * <code>bool include_endpoints = 2;</code> + * @param value The includeEndpoints to set. + * @return This builder for chaining. */ - public Builder setDeviceId(context.ContextOuterClass.DeviceId value) { - if (deviceIdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - deviceId_ = value; - onChanged(); - } else { - deviceIdBuilder_.setMessage(value); - } - + public Builder setIncludeEndpoints(boolean value) { + + includeEndpoints_ = value; + onChanged(); return this; } /** - * <code>.context.DeviceId device_id = 2;</code> + * <code>bool include_endpoints = 2;</code> + * @return This builder for chaining. */ - public Builder setDeviceId( - context.ContextOuterClass.DeviceId.Builder builderForValue) { - if (deviceIdBuilder_ == null) { - deviceId_ = builderForValue.build(); - onChanged(); - } else { - deviceIdBuilder_.setMessage(builderForValue.build()); - } - + public Builder clearIncludeEndpoints() { + + includeEndpoints_ = false; + onChanged(); return this; } - /** - * <code>.context.DeviceId device_id = 2;</code> - */ - public Builder mergeDeviceId(context.ContextOuterClass.DeviceId value) { - if (deviceIdBuilder_ == null) { - if (deviceId_ != null) { - deviceId_ = - context.ContextOuterClass.DeviceId.newBuilder(deviceId_).mergeFrom(value).buildPartial(); - } else { - deviceId_ = value; - } - onChanged(); - } else { - deviceIdBuilder_.mergeFrom(value); - } - return this; - } + private boolean includeConfigRules_ ; /** - * <code>.context.DeviceId device_id = 2;</code> + * <code>bool include_config_rules = 3;</code> + * @return The includeConfigRules. */ - public Builder clearDeviceId() { - if (deviceIdBuilder_ == null) { - deviceId_ = null; - onChanged(); - } else { - deviceId_ = null; - deviceIdBuilder_ = null; - } - - return this; + @java.lang.Override + public boolean getIncludeConfigRules() { + return includeConfigRules_; } /** - * <code>.context.DeviceId device_id = 2;</code> + * <code>bool include_config_rules = 3;</code> + * @param value The includeConfigRules to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.DeviceId.Builder getDeviceIdBuilder() { + public Builder setIncludeConfigRules(boolean value) { + includeConfigRules_ = value; onChanged(); - return getDeviceIdFieldBuilder().getBuilder(); - } - /** - * <code>.context.DeviceId device_id = 2;</code> - */ - public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder() { - if (deviceIdBuilder_ != null) { - return deviceIdBuilder_.getMessageOrBuilder(); - } else { - return deviceId_ == null ? - context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; - } - } - /** - * <code>.context.DeviceId device_id = 2;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> - getDeviceIdFieldBuilder() { - if (deviceIdBuilder_ == null) { - deviceIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder>( - getDeviceId(), - getParentForChildren(), - isClean()); - deviceId_ = null; - } - return deviceIdBuilder_; - } - - private context.ContextOuterClass.DeviceConfig deviceConfig_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.DeviceConfig, context.ContextOuterClass.DeviceConfig.Builder, context.ContextOuterClass.DeviceConfigOrBuilder> deviceConfigBuilder_; - /** - * <code>.context.DeviceConfig device_config = 3;</code> - * @return Whether the deviceConfig field is set. - */ - public boolean hasDeviceConfig() { - return deviceConfigBuilder_ != null || deviceConfig_ != null; - } - /** - * <code>.context.DeviceConfig device_config = 3;</code> - * @return The deviceConfig. - */ - public context.ContextOuterClass.DeviceConfig getDeviceConfig() { - if (deviceConfigBuilder_ == null) { - return deviceConfig_ == null ? context.ContextOuterClass.DeviceConfig.getDefaultInstance() : deviceConfig_; - } else { - return deviceConfigBuilder_.getMessage(); - } - } - /** - * <code>.context.DeviceConfig device_config = 3;</code> - */ - public Builder setDeviceConfig(context.ContextOuterClass.DeviceConfig value) { - if (deviceConfigBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - deviceConfig_ = value; - onChanged(); - } else { - deviceConfigBuilder_.setMessage(value); - } - return this; } /** - * <code>.context.DeviceConfig device_config = 3;</code> + * <code>bool include_config_rules = 3;</code> + * @return This builder for chaining. */ - public Builder setDeviceConfig( - context.ContextOuterClass.DeviceConfig.Builder builderForValue) { - if (deviceConfigBuilder_ == null) { - deviceConfig_ = builderForValue.build(); - onChanged(); - } else { - deviceConfigBuilder_.setMessage(builderForValue.build()); - } - + public Builder clearIncludeConfigRules() { + + includeConfigRules_ = false; + onChanged(); return this; } - /** - * <code>.context.DeviceConfig device_config = 3;</code> - */ - public Builder mergeDeviceConfig(context.ContextOuterClass.DeviceConfig value) { - if (deviceConfigBuilder_ == null) { - if (deviceConfig_ != null) { - deviceConfig_ = - context.ContextOuterClass.DeviceConfig.newBuilder(deviceConfig_).mergeFrom(value).buildPartial(); - } else { - deviceConfig_ = value; - } - onChanged(); - } else { - deviceConfigBuilder_.mergeFrom(value); - } - return this; - } + private boolean includeComponents_ ; /** - * <code>.context.DeviceConfig device_config = 3;</code> + * <code>bool include_components = 4;</code> + * @return The includeComponents. */ - public Builder clearDeviceConfig() { - if (deviceConfigBuilder_ == null) { - deviceConfig_ = null; - onChanged(); - } else { - deviceConfig_ = null; - deviceConfigBuilder_ = null; - } - - return this; + @java.lang.Override + public boolean getIncludeComponents() { + return includeComponents_; } /** - * <code>.context.DeviceConfig device_config = 3;</code> + * <code>bool include_components = 4;</code> + * @param value The includeComponents to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.DeviceConfig.Builder getDeviceConfigBuilder() { + public Builder setIncludeComponents(boolean value) { + includeComponents_ = value; onChanged(); - return getDeviceConfigFieldBuilder().getBuilder(); - } - /** - * <code>.context.DeviceConfig device_config = 3;</code> - */ - public context.ContextOuterClass.DeviceConfigOrBuilder getDeviceConfigOrBuilder() { - if (deviceConfigBuilder_ != null) { - return deviceConfigBuilder_.getMessageOrBuilder(); - } else { - return deviceConfig_ == null ? - context.ContextOuterClass.DeviceConfig.getDefaultInstance() : deviceConfig_; - } + return this; } /** - * <code>.context.DeviceConfig device_config = 3;</code> + * <code>bool include_components = 4;</code> + * @return This builder for chaining. */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.DeviceConfig, context.ContextOuterClass.DeviceConfig.Builder, context.ContextOuterClass.DeviceConfigOrBuilder> - getDeviceConfigFieldBuilder() { - if (deviceConfigBuilder_ == null) { - deviceConfigBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.DeviceConfig, context.ContextOuterClass.DeviceConfig.Builder, context.ContextOuterClass.DeviceConfigOrBuilder>( - getDeviceConfig(), - getParentForChildren(), - isClean()); - deviceConfig_ = null; - } - return deviceConfigBuilder_; + public Builder clearIncludeComponents() { + + includeComponents_ = false; + onChanged(); + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -21765,89 +21974,115 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.DeviceEvent) + // @@protoc_insertion_point(builder_scope:context.DeviceFilter) } - // @@protoc_insertion_point(class_scope:context.DeviceEvent) - private static final context.ContextOuterClass.DeviceEvent DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.DeviceFilter) + private static final context.ContextOuterClass.DeviceFilter DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.DeviceEvent(); + DEFAULT_INSTANCE = new context.ContextOuterClass.DeviceFilter(); } - public static context.ContextOuterClass.DeviceEvent getDefaultInstance() { + public static context.ContextOuterClass.DeviceFilter getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<DeviceEvent> - PARSER = new com.google.protobuf.AbstractParser<DeviceEvent>() { + private static final com.google.protobuf.Parser<DeviceFilter> + PARSER = new com.google.protobuf.AbstractParser<DeviceFilter>() { @java.lang.Override - public DeviceEvent parsePartialFrom( + public DeviceFilter parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new DeviceEvent(input, extensionRegistry); + return new DeviceFilter(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<DeviceEvent> parser() { + public static com.google.protobuf.Parser<DeviceFilter> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<DeviceEvent> getParserForType() { + public com.google.protobuf.Parser<DeviceFilter> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.DeviceEvent getDefaultInstanceForType() { + public context.ContextOuterClass.DeviceFilter getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface LinkIdOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.LinkId) + public interface DeviceEventOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.DeviceEvent) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.Uuid link_uuid = 1;</code> - * @return Whether the linkUuid field is set. + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. */ - boolean hasLinkUuid(); + boolean hasEvent(); /** - * <code>.context.Uuid link_uuid = 1;</code> - * @return The linkUuid. + * <code>.context.Event event = 1;</code> + * @return The event. */ - context.ContextOuterClass.Uuid getLinkUuid(); + context.ContextOuterClass.Event getEvent(); /** - * <code>.context.Uuid link_uuid = 1;</code> + * <code>.context.Event event = 1;</code> */ - context.ContextOuterClass.UuidOrBuilder getLinkUuidOrBuilder(); - } - /** - * <pre> - * ----- Link ---------------------------------------------------------------------------------------------------------- - * </pre> - * - * Protobuf type {@code context.LinkId} - */ - public static final class LinkId extends - com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.LinkId) - LinkIdOrBuilder { - private static final long serialVersionUID = 0L; - // Use LinkId.newBuilder() to construct. - private LinkId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + context.ContextOuterClass.EventOrBuilder getEventOrBuilder(); + + /** + * <code>.context.DeviceId device_id = 2;</code> + * @return Whether the deviceId field is set. + */ + boolean hasDeviceId(); + /** + * <code>.context.DeviceId device_id = 2;</code> + * @return The deviceId. + */ + context.ContextOuterClass.DeviceId getDeviceId(); + /** + * <code>.context.DeviceId device_id = 2;</code> + */ + context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder(); + + /** + * <code>.context.DeviceConfig device_config = 3;</code> + * @return Whether the deviceConfig field is set. + */ + boolean hasDeviceConfig(); + /** + * <code>.context.DeviceConfig device_config = 3;</code> + * @return The deviceConfig. + */ + context.ContextOuterClass.DeviceConfig getDeviceConfig(); + /** + * <code>.context.DeviceConfig device_config = 3;</code> + */ + context.ContextOuterClass.DeviceConfigOrBuilder getDeviceConfigOrBuilder(); + } + /** + * Protobuf type {@code context.DeviceEvent} + */ + public static final class DeviceEvent extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:context.DeviceEvent) + DeviceEventOrBuilder { + private static final long serialVersionUID = 0L; + // Use DeviceEvent.newBuilder() to construct. + private DeviceEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private LinkId() { + private DeviceEvent() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new LinkId(); + return new DeviceEvent(); } @java.lang.Override @@ -21855,7 +22090,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private LinkId( + private DeviceEvent( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -21874,14 +22109,40 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.Uuid.Builder subBuilder = null; - if (linkUuid_ != null) { - subBuilder = linkUuid_.toBuilder(); + context.ContextOuterClass.Event.Builder subBuilder = null; + if (event_ != null) { + subBuilder = event_.toBuilder(); } - linkUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); + event_ = input.readMessage(context.ContextOuterClass.Event.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(linkUuid_); - linkUuid_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(event_); + event_ = subBuilder.buildPartial(); + } + + break; + } + case 18: { + context.ContextOuterClass.DeviceId.Builder subBuilder = null; + if (deviceId_ != null) { + subBuilder = deviceId_.toBuilder(); + } + deviceId_ = input.readMessage(context.ContextOuterClass.DeviceId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(deviceId_); + deviceId_ = subBuilder.buildPartial(); + } + + break; + } + case 26: { + context.ContextOuterClass.DeviceConfig.Builder subBuilder = null; + if (deviceConfig_ != null) { + subBuilder = deviceConfig_.toBuilder(); + } + deviceConfig_ = input.readMessage(context.ContextOuterClass.DeviceConfig.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(deviceConfig_); + deviceConfig_ = subBuilder.buildPartial(); } break; @@ -21907,41 +22168,93 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_LinkId_descriptor; + return context.ContextOuterClass.internal_static_context_DeviceEvent_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_LinkId_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_DeviceEvent_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.LinkId.class, context.ContextOuterClass.LinkId.Builder.class); + context.ContextOuterClass.DeviceEvent.class, context.ContextOuterClass.DeviceEvent.Builder.class); } - public static final int LINK_UUID_FIELD_NUMBER = 1; - private context.ContextOuterClass.Uuid linkUuid_; + public static final int EVENT_FIELD_NUMBER = 1; + private context.ContextOuterClass.Event event_; /** - * <code>.context.Uuid link_uuid = 1;</code> - * @return Whether the linkUuid field is set. + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. */ @java.lang.Override - public boolean hasLinkUuid() { - return linkUuid_ != null; + public boolean hasEvent() { + return event_ != null; } /** - * <code>.context.Uuid link_uuid = 1;</code> - * @return The linkUuid. + * <code>.context.Event event = 1;</code> + * @return The event. */ @java.lang.Override - public context.ContextOuterClass.Uuid getLinkUuid() { - return linkUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : linkUuid_; + public context.ContextOuterClass.Event getEvent() { + return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; } /** - * <code>.context.Uuid link_uuid = 1;</code> + * <code>.context.Event event = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.UuidOrBuilder getLinkUuidOrBuilder() { - return getLinkUuid(); + public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { + return getEvent(); + } + + public static final int DEVICE_ID_FIELD_NUMBER = 2; + private context.ContextOuterClass.DeviceId deviceId_; + /** + * <code>.context.DeviceId device_id = 2;</code> + * @return Whether the deviceId field is set. + */ + @java.lang.Override + public boolean hasDeviceId() { + return deviceId_ != null; + } + /** + * <code>.context.DeviceId device_id = 2;</code> + * @return The deviceId. + */ + @java.lang.Override + public context.ContextOuterClass.DeviceId getDeviceId() { + return deviceId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; + } + /** + * <code>.context.DeviceId device_id = 2;</code> + */ + @java.lang.Override + public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder() { + return getDeviceId(); + } + + public static final int DEVICE_CONFIG_FIELD_NUMBER = 3; + private context.ContextOuterClass.DeviceConfig deviceConfig_; + /** + * <code>.context.DeviceConfig device_config = 3;</code> + * @return Whether the deviceConfig field is set. + */ + @java.lang.Override + public boolean hasDeviceConfig() { + return deviceConfig_ != null; + } + /** + * <code>.context.DeviceConfig device_config = 3;</code> + * @return The deviceConfig. + */ + @java.lang.Override + public context.ContextOuterClass.DeviceConfig getDeviceConfig() { + return deviceConfig_ == null ? context.ContextOuterClass.DeviceConfig.getDefaultInstance() : deviceConfig_; + } + /** + * <code>.context.DeviceConfig device_config = 3;</code> + */ + @java.lang.Override + public context.ContextOuterClass.DeviceConfigOrBuilder getDeviceConfigOrBuilder() { + return getDeviceConfig(); } private byte memoizedIsInitialized = -1; @@ -21958,8 +22271,14 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (linkUuid_ != null) { - output.writeMessage(1, getLinkUuid()); + if (event_ != null) { + output.writeMessage(1, getEvent()); + } + if (deviceId_ != null) { + output.writeMessage(2, getDeviceId()); + } + if (deviceConfig_ != null) { + output.writeMessage(3, getDeviceConfig()); } unknownFields.writeTo(output); } @@ -21970,9 +22289,17 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (linkUuid_ != null) { + if (event_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getLinkUuid()); + .computeMessageSize(1, getEvent()); + } + if (deviceId_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, getDeviceId()); + } + if (deviceConfig_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(3, getDeviceConfig()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -21984,15 +22311,25 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.LinkId)) { + if (!(obj instanceof context.ContextOuterClass.DeviceEvent)) { return super.equals(obj); } - context.ContextOuterClass.LinkId other = (context.ContextOuterClass.LinkId) obj; + context.ContextOuterClass.DeviceEvent other = (context.ContextOuterClass.DeviceEvent) obj; - if (hasLinkUuid() != other.hasLinkUuid()) return false; - if (hasLinkUuid()) { - if (!getLinkUuid() - .equals(other.getLinkUuid())) return false; + if (hasEvent() != other.hasEvent()) return false; + if (hasEvent()) { + if (!getEvent() + .equals(other.getEvent())) return false; + } + if (hasDeviceId() != other.hasDeviceId()) return false; + if (hasDeviceId()) { + if (!getDeviceId() + .equals(other.getDeviceId())) return false; + } + if (hasDeviceConfig() != other.hasDeviceConfig()) return false; + if (hasDeviceConfig()) { + if (!getDeviceConfig() + .equals(other.getDeviceConfig())) return false; } if (!unknownFields.equals(other.unknownFields)) return false; return true; @@ -22005,78 +22342,86 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasLinkUuid()) { - hash = (37 * hash) + LINK_UUID_FIELD_NUMBER; - hash = (53 * hash) + getLinkUuid().hashCode(); + if (hasEvent()) { + hash = (37 * hash) + EVENT_FIELD_NUMBER; + hash = (53 * hash) + getEvent().hashCode(); + } + if (hasDeviceId()) { + hash = (37 * hash) + DEVICE_ID_FIELD_NUMBER; + hash = (53 * hash) + getDeviceId().hashCode(); + } + if (hasDeviceConfig()) { + hash = (37 * hash) + DEVICE_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getDeviceConfig().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.LinkId parseFrom( + public static context.ContextOuterClass.DeviceEvent parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.LinkId parseFrom( + public static context.ContextOuterClass.DeviceEvent parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.LinkId parseFrom( + public static context.ContextOuterClass.DeviceEvent parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.LinkId parseFrom( + public static context.ContextOuterClass.DeviceEvent parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.LinkId parseFrom(byte[] data) + public static context.ContextOuterClass.DeviceEvent parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.LinkId parseFrom( + public static context.ContextOuterClass.DeviceEvent parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.LinkId parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.DeviceEvent parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.LinkId parseFrom( + public static context.ContextOuterClass.DeviceEvent 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 context.ContextOuterClass.LinkId parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.DeviceEvent parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.LinkId parseDelimitedFrom( + public static context.ContextOuterClass.DeviceEvent 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 context.ContextOuterClass.LinkId parseFrom( + public static context.ContextOuterClass.DeviceEvent parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.LinkId parseFrom( + public static context.ContextOuterClass.DeviceEvent parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -22089,7 +22434,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.LinkId prototype) { + public static Builder newBuilder(context.ContextOuterClass.DeviceEvent prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -22105,30 +22450,26 @@ public final class ContextOuterClass { return builder; } /** - * <pre> - * ----- Link ---------------------------------------------------------------------------------------------------------- - * </pre> - * - * Protobuf type {@code context.LinkId} + * Protobuf type {@code context.DeviceEvent} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.LinkId) - context.ContextOuterClass.LinkIdOrBuilder { + // @@protoc_insertion_point(builder_implements:context.DeviceEvent) + context.ContextOuterClass.DeviceEventOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_LinkId_descriptor; + return context.ContextOuterClass.internal_static_context_DeviceEvent_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_LinkId_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_DeviceEvent_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.LinkId.class, context.ContextOuterClass.LinkId.Builder.class); + context.ContextOuterClass.DeviceEvent.class, context.ContextOuterClass.DeviceEvent.Builder.class); } - // Construct using context.ContextOuterClass.LinkId.newBuilder() + // Construct using context.ContextOuterClass.DeviceEvent.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -22146,11 +22487,23 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - if (linkUuidBuilder_ == null) { - linkUuid_ = null; + if (eventBuilder_ == null) { + event_ = null; } else { - linkUuid_ = null; - linkUuidBuilder_ = null; + event_ = null; + eventBuilder_ = null; + } + if (deviceIdBuilder_ == null) { + deviceId_ = null; + } else { + deviceId_ = null; + deviceIdBuilder_ = null; + } + if (deviceConfigBuilder_ == null) { + deviceConfig_ = null; + } else { + deviceConfig_ = null; + deviceConfigBuilder_ = null; } return this; } @@ -22158,17 +22511,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_LinkId_descriptor; + return context.ContextOuterClass.internal_static_context_DeviceEvent_descriptor; } @java.lang.Override - public context.ContextOuterClass.LinkId getDefaultInstanceForType() { - return context.ContextOuterClass.LinkId.getDefaultInstance(); + public context.ContextOuterClass.DeviceEvent getDefaultInstanceForType() { + return context.ContextOuterClass.DeviceEvent.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.LinkId build() { - context.ContextOuterClass.LinkId result = buildPartial(); + public context.ContextOuterClass.DeviceEvent build() { + context.ContextOuterClass.DeviceEvent result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -22176,12 +22529,22 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.LinkId buildPartial() { - context.ContextOuterClass.LinkId result = new context.ContextOuterClass.LinkId(this); - if (linkUuidBuilder_ == null) { - result.linkUuid_ = linkUuid_; + public context.ContextOuterClass.DeviceEvent buildPartial() { + context.ContextOuterClass.DeviceEvent result = new context.ContextOuterClass.DeviceEvent(this); + if (eventBuilder_ == null) { + result.event_ = event_; } else { - result.linkUuid_ = linkUuidBuilder_.build(); + result.event_ = eventBuilder_.build(); + } + if (deviceIdBuilder_ == null) { + result.deviceId_ = deviceId_; + } else { + result.deviceId_ = deviceIdBuilder_.build(); + } + if (deviceConfigBuilder_ == null) { + result.deviceConfig_ = deviceConfig_; + } else { + result.deviceConfig_ = deviceConfigBuilder_.build(); } onBuilt(); return result; @@ -22221,18 +22584,24 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.LinkId) { - return mergeFrom((context.ContextOuterClass.LinkId)other); + if (other instanceof context.ContextOuterClass.DeviceEvent) { + return mergeFrom((context.ContextOuterClass.DeviceEvent)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.LinkId other) { - if (other == context.ContextOuterClass.LinkId.getDefaultInstance()) return this; - if (other.hasLinkUuid()) { - mergeLinkUuid(other.getLinkUuid()); + public Builder mergeFrom(context.ContextOuterClass.DeviceEvent other) { + if (other == context.ContextOuterClass.DeviceEvent.getDefaultInstance()) return this; + if (other.hasEvent()) { + mergeEvent(other.getEvent()); + } + if (other.hasDeviceId()) { + mergeDeviceId(other.getDeviceId()); + } + if (other.hasDeviceConfig()) { + mergeDeviceConfig(other.getDeviceConfig()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -22249,11 +22618,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.LinkId parsedMessage = null; + context.ContextOuterClass.DeviceEvent parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.LinkId) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.DeviceEvent) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -22263,254 +22632,458 @@ public final class ContextOuterClass { return this; } - private context.ContextOuterClass.Uuid linkUuid_; + private context.ContextOuterClass.Event event_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> linkUuidBuilder_; + context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> eventBuilder_; /** - * <code>.context.Uuid link_uuid = 1;</code> - * @return Whether the linkUuid field is set. + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. */ - public boolean hasLinkUuid() { - return linkUuidBuilder_ != null || linkUuid_ != null; + public boolean hasEvent() { + return eventBuilder_ != null || event_ != null; } /** - * <code>.context.Uuid link_uuid = 1;</code> - * @return The linkUuid. + * <code>.context.Event event = 1;</code> + * @return The event. */ - public context.ContextOuterClass.Uuid getLinkUuid() { - if (linkUuidBuilder_ == null) { - return linkUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : linkUuid_; + public context.ContextOuterClass.Event getEvent() { + if (eventBuilder_ == null) { + return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; } else { - return linkUuidBuilder_.getMessage(); + return eventBuilder_.getMessage(); } } /** - * <code>.context.Uuid link_uuid = 1;</code> + * <code>.context.Event event = 1;</code> */ - public Builder setLinkUuid(context.ContextOuterClass.Uuid value) { - if (linkUuidBuilder_ == null) { + public Builder setEvent(context.ContextOuterClass.Event value) { + if (eventBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - linkUuid_ = value; + event_ = value; onChanged(); } else { - linkUuidBuilder_.setMessage(value); + eventBuilder_.setMessage(value); } return this; } /** - * <code>.context.Uuid link_uuid = 1;</code> + * <code>.context.Event event = 1;</code> */ - public Builder setLinkUuid( - context.ContextOuterClass.Uuid.Builder builderForValue) { - if (linkUuidBuilder_ == null) { - linkUuid_ = builderForValue.build(); + public Builder setEvent( + context.ContextOuterClass.Event.Builder builderForValue) { + if (eventBuilder_ == null) { + event_ = builderForValue.build(); onChanged(); } else { - linkUuidBuilder_.setMessage(builderForValue.build()); + eventBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.Uuid link_uuid = 1;</code> + * <code>.context.Event event = 1;</code> */ - public Builder mergeLinkUuid(context.ContextOuterClass.Uuid value) { - if (linkUuidBuilder_ == null) { - if (linkUuid_ != null) { - linkUuid_ = - context.ContextOuterClass.Uuid.newBuilder(linkUuid_).mergeFrom(value).buildPartial(); + public Builder mergeEvent(context.ContextOuterClass.Event value) { + if (eventBuilder_ == null) { + if (event_ != null) { + event_ = + context.ContextOuterClass.Event.newBuilder(event_).mergeFrom(value).buildPartial(); } else { - linkUuid_ = value; + event_ = value; } onChanged(); } else { - linkUuidBuilder_.mergeFrom(value); + eventBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.Uuid link_uuid = 1;</code> + * <code>.context.Event event = 1;</code> */ - public Builder clearLinkUuid() { - if (linkUuidBuilder_ == null) { - linkUuid_ = null; + public Builder clearEvent() { + if (eventBuilder_ == null) { + event_ = null; onChanged(); } else { - linkUuid_ = null; - linkUuidBuilder_ = null; + event_ = null; + eventBuilder_ = null; } return this; } /** - * <code>.context.Uuid link_uuid = 1;</code> + * <code>.context.Event event = 1;</code> */ - public context.ContextOuterClass.Uuid.Builder getLinkUuidBuilder() { + public context.ContextOuterClass.Event.Builder getEventBuilder() { onChanged(); - return getLinkUuidFieldBuilder().getBuilder(); + return getEventFieldBuilder().getBuilder(); } /** - * <code>.context.Uuid link_uuid = 1;</code> + * <code>.context.Event event = 1;</code> */ - public context.ContextOuterClass.UuidOrBuilder getLinkUuidOrBuilder() { - if (linkUuidBuilder_ != null) { - return linkUuidBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { + if (eventBuilder_ != null) { + return eventBuilder_.getMessageOrBuilder(); } else { - return linkUuid_ == null ? - context.ContextOuterClass.Uuid.getDefaultInstance() : linkUuid_; + return event_ == null ? + context.ContextOuterClass.Event.getDefaultInstance() : event_; } } /** - * <code>.context.Uuid link_uuid = 1;</code> + * <code>.context.Event event = 1;</code> */ private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> - getLinkUuidFieldBuilder() { - if (linkUuidBuilder_ == null) { - linkUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>( - getLinkUuid(), + 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(), getParentForChildren(), isClean()); - linkUuid_ = null; + event_ = null; } - return linkUuidBuilder_; - } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); + return eventBuilder_; } - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); + private context.ContextOuterClass.DeviceId deviceId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> deviceIdBuilder_; + /** + * <code>.context.DeviceId device_id = 2;</code> + * @return Whether the deviceId field is set. + */ + public boolean hasDeviceId() { + return deviceIdBuilder_ != null || deviceId_ != null; + } + /** + * <code>.context.DeviceId device_id = 2;</code> + * @return The deviceId. + */ + public context.ContextOuterClass.DeviceId getDeviceId() { + if (deviceIdBuilder_ == null) { + return deviceId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; + } else { + return deviceIdBuilder_.getMessage(); + } } + /** + * <code>.context.DeviceId device_id = 2;</code> + */ + public Builder setDeviceId(context.ContextOuterClass.DeviceId value) { + if (deviceIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + deviceId_ = value; + onChanged(); + } else { + deviceIdBuilder_.setMessage(value); + } + return this; + } + /** + * <code>.context.DeviceId device_id = 2;</code> + */ + public Builder setDeviceId( + context.ContextOuterClass.DeviceId.Builder builderForValue) { + if (deviceIdBuilder_ == null) { + deviceId_ = builderForValue.build(); + onChanged(); + } else { + deviceIdBuilder_.setMessage(builderForValue.build()); + } - // @@protoc_insertion_point(builder_scope:context.LinkId) + return this; + } + /** + * <code>.context.DeviceId device_id = 2;</code> + */ + public Builder mergeDeviceId(context.ContextOuterClass.DeviceId value) { + if (deviceIdBuilder_ == null) { + if (deviceId_ != null) { + deviceId_ = + context.ContextOuterClass.DeviceId.newBuilder(deviceId_).mergeFrom(value).buildPartial(); + } else { + deviceId_ = value; + } + onChanged(); + } else { + deviceIdBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.context.DeviceId device_id = 2;</code> + */ + public Builder clearDeviceId() { + if (deviceIdBuilder_ == null) { + deviceId_ = null; + onChanged(); + } else { + deviceId_ = null; + deviceIdBuilder_ = null; + } + + return this; + } + /** + * <code>.context.DeviceId device_id = 2;</code> + */ + public context.ContextOuterClass.DeviceId.Builder getDeviceIdBuilder() { + + onChanged(); + return getDeviceIdFieldBuilder().getBuilder(); + } + /** + * <code>.context.DeviceId device_id = 2;</code> + */ + public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder() { + if (deviceIdBuilder_ != null) { + return deviceIdBuilder_.getMessageOrBuilder(); + } else { + return deviceId_ == null ? + context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; + } + } + /** + * <code>.context.DeviceId device_id = 2;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> + getDeviceIdFieldBuilder() { + if (deviceIdBuilder_ == null) { + deviceIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder>( + getDeviceId(), + getParentForChildren(), + isClean()); + deviceId_ = null; + } + return deviceIdBuilder_; + } + + private context.ContextOuterClass.DeviceConfig deviceConfig_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceConfig, context.ContextOuterClass.DeviceConfig.Builder, context.ContextOuterClass.DeviceConfigOrBuilder> deviceConfigBuilder_; + /** + * <code>.context.DeviceConfig device_config = 3;</code> + * @return Whether the deviceConfig field is set. + */ + public boolean hasDeviceConfig() { + return deviceConfigBuilder_ != null || deviceConfig_ != null; + } + /** + * <code>.context.DeviceConfig device_config = 3;</code> + * @return The deviceConfig. + */ + public context.ContextOuterClass.DeviceConfig getDeviceConfig() { + if (deviceConfigBuilder_ == null) { + return deviceConfig_ == null ? context.ContextOuterClass.DeviceConfig.getDefaultInstance() : deviceConfig_; + } else { + return deviceConfigBuilder_.getMessage(); + } + } + /** + * <code>.context.DeviceConfig device_config = 3;</code> + */ + public Builder setDeviceConfig(context.ContextOuterClass.DeviceConfig value) { + if (deviceConfigBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + deviceConfig_ = value; + onChanged(); + } else { + deviceConfigBuilder_.setMessage(value); + } + + return this; + } + /** + * <code>.context.DeviceConfig device_config = 3;</code> + */ + public Builder setDeviceConfig( + context.ContextOuterClass.DeviceConfig.Builder builderForValue) { + if (deviceConfigBuilder_ == null) { + deviceConfig_ = builderForValue.build(); + onChanged(); + } else { + deviceConfigBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.DeviceConfig device_config = 3;</code> + */ + public Builder mergeDeviceConfig(context.ContextOuterClass.DeviceConfig value) { + if (deviceConfigBuilder_ == null) { + if (deviceConfig_ != null) { + deviceConfig_ = + context.ContextOuterClass.DeviceConfig.newBuilder(deviceConfig_).mergeFrom(value).buildPartial(); + } else { + deviceConfig_ = value; + } + onChanged(); + } else { + deviceConfigBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.context.DeviceConfig device_config = 3;</code> + */ + public Builder clearDeviceConfig() { + if (deviceConfigBuilder_ == null) { + deviceConfig_ = null; + onChanged(); + } else { + deviceConfig_ = null; + deviceConfigBuilder_ = null; + } + + return this; + } + /** + * <code>.context.DeviceConfig device_config = 3;</code> + */ + public context.ContextOuterClass.DeviceConfig.Builder getDeviceConfigBuilder() { + + onChanged(); + return getDeviceConfigFieldBuilder().getBuilder(); + } + /** + * <code>.context.DeviceConfig device_config = 3;</code> + */ + public context.ContextOuterClass.DeviceConfigOrBuilder getDeviceConfigOrBuilder() { + if (deviceConfigBuilder_ != null) { + return deviceConfigBuilder_.getMessageOrBuilder(); + } else { + return deviceConfig_ == null ? + context.ContextOuterClass.DeviceConfig.getDefaultInstance() : deviceConfig_; + } + } + /** + * <code>.context.DeviceConfig device_config = 3;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceConfig, context.ContextOuterClass.DeviceConfig.Builder, context.ContextOuterClass.DeviceConfigOrBuilder> + getDeviceConfigFieldBuilder() { + if (deviceConfigBuilder_ == null) { + deviceConfigBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceConfig, context.ContextOuterClass.DeviceConfig.Builder, context.ContextOuterClass.DeviceConfigOrBuilder>( + getDeviceConfig(), + getParentForChildren(), + isClean()); + deviceConfig_ = null; + } + return deviceConfigBuilder_; + } + @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:context.DeviceEvent) } - // @@protoc_insertion_point(class_scope:context.LinkId) - private static final context.ContextOuterClass.LinkId DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.DeviceEvent) + private static final context.ContextOuterClass.DeviceEvent DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.LinkId(); + DEFAULT_INSTANCE = new context.ContextOuterClass.DeviceEvent(); } - public static context.ContextOuterClass.LinkId getDefaultInstance() { + public static context.ContextOuterClass.DeviceEvent getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<LinkId> - PARSER = new com.google.protobuf.AbstractParser<LinkId>() { + private static final com.google.protobuf.Parser<DeviceEvent> + PARSER = new com.google.protobuf.AbstractParser<DeviceEvent>() { @java.lang.Override - public LinkId parsePartialFrom( + public DeviceEvent parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new LinkId(input, extensionRegistry); + return new DeviceEvent(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<LinkId> parser() { + public static com.google.protobuf.Parser<DeviceEvent> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<LinkId> getParserForType() { + public com.google.protobuf.Parser<DeviceEvent> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.LinkId getDefaultInstanceForType() { + public context.ContextOuterClass.DeviceEvent getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface LinkOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Link) + public interface LinkIdOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.LinkId) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.LinkId link_id = 1;</code> - * @return Whether the linkId field is set. - */ - boolean hasLinkId(); - /** - * <code>.context.LinkId link_id = 1;</code> - * @return The linkId. - */ - context.ContextOuterClass.LinkId getLinkId(); - /** - * <code>.context.LinkId link_id = 1;</code> - */ - context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder(); - - /** - * <code>string name = 2;</code> - * @return The name. - */ - java.lang.String getName(); - /** - * <code>string name = 2;</code> - * @return The bytes for name. - */ - com.google.protobuf.ByteString - getNameBytes(); - - /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> - */ - java.util.List<context.ContextOuterClass.EndPointId> - getLinkEndpointIdsList(); - /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> - */ - context.ContextOuterClass.EndPointId getLinkEndpointIds(int index); - /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + * <code>.context.Uuid link_uuid = 1;</code> + * @return Whether the linkUuid field is set. */ - int getLinkEndpointIdsCount(); + boolean hasLinkUuid(); /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + * <code>.context.Uuid link_uuid = 1;</code> + * @return The linkUuid. */ - java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> - getLinkEndpointIdsOrBuilderList(); + context.ContextOuterClass.Uuid getLinkUuid(); /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + * <code>.context.Uuid link_uuid = 1;</code> */ - context.ContextOuterClass.EndPointIdOrBuilder getLinkEndpointIdsOrBuilder( - int index); + context.ContextOuterClass.UuidOrBuilder getLinkUuidOrBuilder(); } /** - * Protobuf type {@code context.Link} + * <pre> + * ----- Link ---------------------------------------------------------------------------------------------------------- + * </pre> + * + * Protobuf type {@code context.LinkId} */ - public static final class Link extends + public static final class LinkId extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Link) - LinkOrBuilder { + // @@protoc_insertion_point(message_implements:context.LinkId) + LinkIdOrBuilder { private static final long serialVersionUID = 0L; - // Use Link.newBuilder() to construct. - private Link(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use LinkId.newBuilder() to construct. + private LinkId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private Link() { - name_ = ""; - linkEndpointIds_ = java.util.Collections.emptyList(); + private LinkId() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new Link(); + return new LinkId(); } @java.lang.Override @@ -22518,7 +23091,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private Link( + private LinkId( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -22526,7 +23099,6 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } - int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -22538,33 +23110,18 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.LinkId.Builder subBuilder = null; - if (linkId_ != null) { - subBuilder = linkId_.toBuilder(); + context.ContextOuterClass.Uuid.Builder subBuilder = null; + if (linkUuid_ != null) { + subBuilder = linkUuid_.toBuilder(); } - linkId_ = input.readMessage(context.ContextOuterClass.LinkId.parser(), extensionRegistry); + linkUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(linkId_); - linkId_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(linkUuid_); + linkUuid_ = subBuilder.buildPartial(); } break; } - case 18: { - java.lang.String s = input.readStringRequireUtf8(); - - name_ = s; - break; - } - case 26: { - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - linkEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(); - mutable_bitField0_ |= 0x00000001; - } - linkEndpointIds_.add( - input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry)); - break; - } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { @@ -22580,128 +23137,47 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { - if (((mutable_bitField0_ & 0x00000001) != 0)) { - linkEndpointIds_ = java.util.Collections.unmodifiableList(linkEndpointIds_); - } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Link_descriptor; + return context.ContextOuterClass.internal_static_context_LinkId_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Link_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_LinkId_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Link.class, context.ContextOuterClass.Link.Builder.class); - } - - public static final int LINK_ID_FIELD_NUMBER = 1; - private context.ContextOuterClass.LinkId linkId_; - /** - * <code>.context.LinkId link_id = 1;</code> - * @return Whether the linkId field is set. - */ - @java.lang.Override - public boolean hasLinkId() { - return linkId_ != null; - } - /** - * <code>.context.LinkId link_id = 1;</code> - * @return The linkId. - */ - @java.lang.Override - public context.ContextOuterClass.LinkId getLinkId() { - return linkId_ == null ? context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_; - } - /** - * <code>.context.LinkId link_id = 1;</code> - */ - @java.lang.Override - public context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder() { - return getLinkId(); - } - - public static final int NAME_FIELD_NUMBER = 2; - private volatile java.lang.Object name_; - /** - * <code>string name = 2;</code> - * @return The name. - */ - @java.lang.Override - public java.lang.String getName() { - java.lang.Object ref = name_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - name_ = s; - return s; - } - } - /** - * <code>string name = 2;</code> - * @return The bytes for name. - */ - @java.lang.Override - public com.google.protobuf.ByteString - getNameBytes() { - java.lang.Object ref = name_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - name_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + context.ContextOuterClass.LinkId.class, context.ContextOuterClass.LinkId.Builder.class); } - public static final int LINK_ENDPOINT_IDS_FIELD_NUMBER = 3; - private java.util.List<context.ContextOuterClass.EndPointId> linkEndpointIds_; - /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> - */ - @java.lang.Override - public java.util.List<context.ContextOuterClass.EndPointId> getLinkEndpointIdsList() { - return linkEndpointIds_; - } - /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> - */ - @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> - getLinkEndpointIdsOrBuilderList() { - return linkEndpointIds_; - } + public static final int LINK_UUID_FIELD_NUMBER = 1; + private context.ContextOuterClass.Uuid linkUuid_; /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + * <code>.context.Uuid link_uuid = 1;</code> + * @return Whether the linkUuid field is set. */ @java.lang.Override - public int getLinkEndpointIdsCount() { - return linkEndpointIds_.size(); + public boolean hasLinkUuid() { + return linkUuid_ != null; } /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + * <code>.context.Uuid link_uuid = 1;</code> + * @return The linkUuid. */ @java.lang.Override - public context.ContextOuterClass.EndPointId getLinkEndpointIds(int index) { - return linkEndpointIds_.get(index); + public context.ContextOuterClass.Uuid getLinkUuid() { + return linkUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : linkUuid_; } /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + * <code>.context.Uuid link_uuid = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.EndPointIdOrBuilder getLinkEndpointIdsOrBuilder( - int index) { - return linkEndpointIds_.get(index); + public context.ContextOuterClass.UuidOrBuilder getLinkUuidOrBuilder() { + return getLinkUuid(); } private byte memoizedIsInitialized = -1; @@ -22718,14 +23194,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (linkId_ != null) { - output.writeMessage(1, getLinkId()); - } - if (!getNameBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_); - } - for (int i = 0; i < linkEndpointIds_.size(); i++) { - output.writeMessage(3, linkEndpointIds_.get(i)); + if (linkUuid_ != null) { + output.writeMessage(1, getLinkUuid()); } unknownFields.writeTo(output); } @@ -22736,16 +23206,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (linkId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getLinkId()); - } - if (!getNameBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_); - } - for (int i = 0; i < linkEndpointIds_.size(); i++) { + if (linkUuid_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(3, linkEndpointIds_.get(i)); + .computeMessageSize(1, getLinkUuid()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -22757,20 +23220,16 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.Link)) { + if (!(obj instanceof context.ContextOuterClass.LinkId)) { return super.equals(obj); } - context.ContextOuterClass.Link other = (context.ContextOuterClass.Link) obj; + context.ContextOuterClass.LinkId other = (context.ContextOuterClass.LinkId) obj; - if (hasLinkId() != other.hasLinkId()) return false; - if (hasLinkId()) { - if (!getLinkId() - .equals(other.getLinkId())) return false; + if (hasLinkUuid() != other.hasLinkUuid()) return false; + if (hasLinkUuid()) { + if (!getLinkUuid() + .equals(other.getLinkUuid())) return false; } - if (!getName() - .equals(other.getName())) return false; - if (!getLinkEndpointIdsList() - .equals(other.getLinkEndpointIdsList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -22782,84 +23241,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasLinkId()) { - hash = (37 * hash) + LINK_ID_FIELD_NUMBER; - hash = (53 * hash) + getLinkId().hashCode(); - } - hash = (37 * hash) + NAME_FIELD_NUMBER; - hash = (53 * hash) + getName().hashCode(); - if (getLinkEndpointIdsCount() > 0) { - hash = (37 * hash) + LINK_ENDPOINT_IDS_FIELD_NUMBER; - hash = (53 * hash) + getLinkEndpointIdsList().hashCode(); + if (hasLinkUuid()) { + hash = (37 * hash) + LINK_UUID_FIELD_NUMBER; + hash = (53 * hash) + getLinkUuid().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.Link parseFrom( + public static context.ContextOuterClass.LinkId parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Link parseFrom( + public static context.ContextOuterClass.LinkId parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Link parseFrom( + public static context.ContextOuterClass.LinkId parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Link parseFrom( + public static context.ContextOuterClass.LinkId parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Link parseFrom(byte[] data) + public static context.ContextOuterClass.LinkId parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Link parseFrom( + public static context.ContextOuterClass.LinkId parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Link parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.LinkId parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Link parseFrom( + public static context.ContextOuterClass.LinkId 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 context.ContextOuterClass.Link parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.LinkId parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.Link parseDelimitedFrom( + public static context.ContextOuterClass.LinkId 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 context.ContextOuterClass.Link parseFrom( + public static context.ContextOuterClass.LinkId parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Link parseFrom( + public static context.ContextOuterClass.LinkId parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -22872,7 +23325,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.Link prototype) { + public static Builder newBuilder(context.ContextOuterClass.LinkId prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -22888,26 +23341,30 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.Link} + * <pre> + * ----- Link ---------------------------------------------------------------------------------------------------------- + * </pre> + * + * Protobuf type {@code context.LinkId} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Link) - context.ContextOuterClass.LinkOrBuilder { + // @@protoc_insertion_point(builder_implements:context.LinkId) + context.ContextOuterClass.LinkIdOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Link_descriptor; + return context.ContextOuterClass.internal_static_context_LinkId_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Link_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_LinkId_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Link.class, context.ContextOuterClass.Link.Builder.class); + context.ContextOuterClass.LinkId.class, context.ContextOuterClass.LinkId.Builder.class); } - // Construct using context.ContextOuterClass.Link.newBuilder() + // Construct using context.ContextOuterClass.LinkId.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -22920,25 +23377,16 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getLinkEndpointIdsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (linkIdBuilder_ == null) { - linkId_ = null; - } else { - linkId_ = null; - linkIdBuilder_ = null; - } - name_ = ""; - - if (linkEndpointIdsBuilder_ == null) { - linkEndpointIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + if (linkUuidBuilder_ == null) { + linkUuid_ = null; } else { - linkEndpointIdsBuilder_.clear(); + linkUuid_ = null; + linkUuidBuilder_ = null; } return this; } @@ -22946,17 +23394,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Link_descriptor; + return context.ContextOuterClass.internal_static_context_LinkId_descriptor; } @java.lang.Override - public context.ContextOuterClass.Link getDefaultInstanceForType() { - return context.ContextOuterClass.Link.getDefaultInstance(); + public context.ContextOuterClass.LinkId getDefaultInstanceForType() { + return context.ContextOuterClass.LinkId.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.Link build() { - context.ContextOuterClass.Link result = buildPartial(); + public context.ContextOuterClass.LinkId build() { + context.ContextOuterClass.LinkId result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -22964,23 +23412,12 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.Link buildPartial() { - context.ContextOuterClass.Link result = new context.ContextOuterClass.Link(this); - int from_bitField0_ = bitField0_; - if (linkIdBuilder_ == null) { - result.linkId_ = linkId_; - } else { - result.linkId_ = linkIdBuilder_.build(); - } - result.name_ = name_; - if (linkEndpointIdsBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { - linkEndpointIds_ = java.util.Collections.unmodifiableList(linkEndpointIds_); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.linkEndpointIds_ = linkEndpointIds_; + public context.ContextOuterClass.LinkId buildPartial() { + context.ContextOuterClass.LinkId result = new context.ContextOuterClass.LinkId(this); + if (linkUuidBuilder_ == null) { + result.linkUuid_ = linkUuid_; } else { - result.linkEndpointIds_ = linkEndpointIdsBuilder_.build(); + result.linkUuid_ = linkUuidBuilder_.build(); } onBuilt(); return result; @@ -23020,48 +23457,18 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.Link) { - return mergeFrom((context.ContextOuterClass.Link)other); + if (other instanceof context.ContextOuterClass.LinkId) { + return mergeFrom((context.ContextOuterClass.LinkId)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.Link other) { - if (other == context.ContextOuterClass.Link.getDefaultInstance()) return this; - if (other.hasLinkId()) { - mergeLinkId(other.getLinkId()); - } - if (!other.getName().isEmpty()) { - name_ = other.name_; - onChanged(); - } - if (linkEndpointIdsBuilder_ == null) { - if (!other.linkEndpointIds_.isEmpty()) { - if (linkEndpointIds_.isEmpty()) { - linkEndpointIds_ = other.linkEndpointIds_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureLinkEndpointIdsIsMutable(); - linkEndpointIds_.addAll(other.linkEndpointIds_); - } - onChanged(); - } - } else { - if (!other.linkEndpointIds_.isEmpty()) { - if (linkEndpointIdsBuilder_.isEmpty()) { - linkEndpointIdsBuilder_.dispose(); - linkEndpointIdsBuilder_ = null; - linkEndpointIds_ = other.linkEndpointIds_; - bitField0_ = (bitField0_ & ~0x00000001); - linkEndpointIdsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getLinkEndpointIdsFieldBuilder() : null; - } else { - linkEndpointIdsBuilder_.addAllMessages(other.linkEndpointIds_); - } - } + public Builder mergeFrom(context.ContextOuterClass.LinkId other) { + if (other == context.ContextOuterClass.LinkId.getDefaultInstance()) return this; + if (other.hasLinkUuid()) { + mergeLinkUuid(other.getLinkUuid()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -23078,11 +23485,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.Link parsedMessage = null; + context.ContextOuterClass.LinkId parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Link) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.LinkId) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -23091,652 +23498,446 @@ public final class ContextOuterClass { } return this; } - private int bitField0_; - private context.ContextOuterClass.LinkId linkId_; + private context.ContextOuterClass.Uuid linkUuid_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> linkIdBuilder_; + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> linkUuidBuilder_; /** - * <code>.context.LinkId link_id = 1;</code> - * @return Whether the linkId field is set. + * <code>.context.Uuid link_uuid = 1;</code> + * @return Whether the linkUuid field is set. */ - public boolean hasLinkId() { - return linkIdBuilder_ != null || linkId_ != null; + public boolean hasLinkUuid() { + return linkUuidBuilder_ != null || linkUuid_ != null; } /** - * <code>.context.LinkId link_id = 1;</code> - * @return The linkId. + * <code>.context.Uuid link_uuid = 1;</code> + * @return The linkUuid. */ - public context.ContextOuterClass.LinkId getLinkId() { - if (linkIdBuilder_ == null) { - return linkId_ == null ? context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_; + public context.ContextOuterClass.Uuid getLinkUuid() { + if (linkUuidBuilder_ == null) { + return linkUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : linkUuid_; } else { - return linkIdBuilder_.getMessage(); + return linkUuidBuilder_.getMessage(); } } /** - * <code>.context.LinkId link_id = 1;</code> + * <code>.context.Uuid link_uuid = 1;</code> */ - public Builder setLinkId(context.ContextOuterClass.LinkId value) { - if (linkIdBuilder_ == null) { + public Builder setLinkUuid(context.ContextOuterClass.Uuid value) { + if (linkUuidBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - linkId_ = value; + linkUuid_ = value; onChanged(); } else { - linkIdBuilder_.setMessage(value); + linkUuidBuilder_.setMessage(value); } return this; } /** - * <code>.context.LinkId link_id = 1;</code> + * <code>.context.Uuid link_uuid = 1;</code> */ - public Builder setLinkId( - context.ContextOuterClass.LinkId.Builder builderForValue) { - if (linkIdBuilder_ == null) { - linkId_ = builderForValue.build(); + public Builder setLinkUuid( + context.ContextOuterClass.Uuid.Builder builderForValue) { + if (linkUuidBuilder_ == null) { + linkUuid_ = builderForValue.build(); onChanged(); } else { - linkIdBuilder_.setMessage(builderForValue.build()); + linkUuidBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.LinkId link_id = 1;</code> + * <code>.context.Uuid link_uuid = 1;</code> */ - public Builder mergeLinkId(context.ContextOuterClass.LinkId value) { - if (linkIdBuilder_ == null) { - if (linkId_ != null) { - linkId_ = - context.ContextOuterClass.LinkId.newBuilder(linkId_).mergeFrom(value).buildPartial(); + public Builder mergeLinkUuid(context.ContextOuterClass.Uuid value) { + if (linkUuidBuilder_ == null) { + if (linkUuid_ != null) { + linkUuid_ = + context.ContextOuterClass.Uuid.newBuilder(linkUuid_).mergeFrom(value).buildPartial(); } else { - linkId_ = value; + linkUuid_ = value; } onChanged(); } else { - linkIdBuilder_.mergeFrom(value); + linkUuidBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.LinkId link_id = 1;</code> + * <code>.context.Uuid link_uuid = 1;</code> */ - public Builder clearLinkId() { - if (linkIdBuilder_ == null) { - linkId_ = null; + public Builder clearLinkUuid() { + if (linkUuidBuilder_ == null) { + linkUuid_ = null; onChanged(); } else { - linkId_ = null; - linkIdBuilder_ = null; + linkUuid_ = null; + linkUuidBuilder_ = null; } return this; } /** - * <code>.context.LinkId link_id = 1;</code> + * <code>.context.Uuid link_uuid = 1;</code> */ - public context.ContextOuterClass.LinkId.Builder getLinkIdBuilder() { + public context.ContextOuterClass.Uuid.Builder getLinkUuidBuilder() { onChanged(); - return getLinkIdFieldBuilder().getBuilder(); + return getLinkUuidFieldBuilder().getBuilder(); } /** - * <code>.context.LinkId link_id = 1;</code> + * <code>.context.Uuid link_uuid = 1;</code> */ - public context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder() { - if (linkIdBuilder_ != null) { - return linkIdBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.UuidOrBuilder getLinkUuidOrBuilder() { + if (linkUuidBuilder_ != null) { + return linkUuidBuilder_.getMessageOrBuilder(); } else { - return linkId_ == null ? - context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_; + return linkUuid_ == null ? + context.ContextOuterClass.Uuid.getDefaultInstance() : linkUuid_; } } /** - * <code>.context.LinkId link_id = 1;</code> + * <code>.context.Uuid link_uuid = 1;</code> */ private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> - getLinkIdFieldBuilder() { - if (linkIdBuilder_ == null) { - linkIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder>( - getLinkId(), + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> + getLinkUuidFieldBuilder() { + if (linkUuidBuilder_ == null) { + linkUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>( + getLinkUuid(), getParentForChildren(), isClean()); - linkId_ = null; + linkUuid_ = null; } - return linkIdBuilder_; + return linkUuidBuilder_; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); } - private java.lang.Object name_ = ""; - /** - * <code>string name = 2;</code> - * @return The name. - */ - public java.lang.String getName() { - java.lang.Object ref = name_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - name_ = s; - return s; - } else { - return (java.lang.String) ref; - } + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); } - /** - * <code>string name = 2;</code> - * @return The bytes for name. - */ - public com.google.protobuf.ByteString - getNameBytes() { - java.lang.Object ref = name_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - name_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + + + // @@protoc_insertion_point(builder_scope:context.LinkId) + } + + // @@protoc_insertion_point(class_scope:context.LinkId) + private static final context.ContextOuterClass.LinkId DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new context.ContextOuterClass.LinkId(); + } + + public static context.ContextOuterClass.LinkId getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<LinkId> + PARSER = new com.google.protobuf.AbstractParser<LinkId>() { + @java.lang.Override + public LinkId parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new LinkId(input, extensionRegistry); } - /** - * <code>string name = 2;</code> - * @param value The name to set. - * @return This builder for chaining. - */ - public Builder setName( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + }; + + public static com.google.protobuf.Parser<LinkId> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<LinkId> getParserForType() { + return PARSER; + } + + @java.lang.Override + public context.ContextOuterClass.LinkId getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } - - name_ = value; - onChanged(); - return this; - } - /** - * <code>string name = 2;</code> - * @return This builder for chaining. - */ - public Builder clearName() { - - name_ = getDefaultInstance().getName(); - onChanged(); - return this; - } - /** - * <code>string name = 2;</code> - * @param value The bytes for name to set. - * @return This builder for chaining. - */ - public Builder setNameBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + + public interface LinkOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Link) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>.context.LinkId link_id = 1;</code> + * @return Whether the linkId field is set. + */ + boolean hasLinkId(); + /** + * <code>.context.LinkId link_id = 1;</code> + * @return The linkId. + */ + context.ContextOuterClass.LinkId getLinkId(); + /** + * <code>.context.LinkId link_id = 1;</code> + */ + context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder(); + + /** + * <code>string name = 2;</code> + * @return The name. + */ + java.lang.String getName(); + /** + * <code>string name = 2;</code> + * @return The bytes for name. + */ + com.google.protobuf.ByteString + getNameBytes(); + + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + java.util.List<context.ContextOuterClass.EndPointId> + getLinkEndpointIdsList(); + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + context.ContextOuterClass.EndPointId getLinkEndpointIds(int index); + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + int getLinkEndpointIdsCount(); + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getLinkEndpointIdsOrBuilderList(); + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + context.ContextOuterClass.EndPointIdOrBuilder getLinkEndpointIdsOrBuilder( + int index); } - checkByteStringIsUtf8(value); - - name_ = value; - onChanged(); - return this; - } + /** + * Protobuf type {@code context.Link} + */ + public static final class Link extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:context.Link) + LinkOrBuilder { + private static final long serialVersionUID = 0L; + // Use Link.newBuilder() to construct. + private Link(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private Link() { + name_ = ""; + linkEndpointIds_ = java.util.Collections.emptyList(); + } - private java.util.List<context.ContextOuterClass.EndPointId> linkEndpointIds_ = - java.util.Collections.emptyList(); - private void ensureLinkEndpointIdsIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - linkEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(linkEndpointIds_); - bitField0_ |= 0x00000001; - } + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new Link(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private Link( + 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: { + context.ContextOuterClass.LinkId.Builder subBuilder = null; + if (linkId_ != null) { + subBuilder = linkId_.toBuilder(); + } + linkId_ = input.readMessage(context.ContextOuterClass.LinkId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(linkId_); + linkId_ = subBuilder.buildPartial(); + } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> linkEndpointIdsBuilder_; + break; + } + case 18: { + java.lang.String s = input.readStringRequireUtf8(); - /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> - */ - public java.util.List<context.ContextOuterClass.EndPointId> getLinkEndpointIdsList() { - if (linkEndpointIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(linkEndpointIds_); - } else { - return linkEndpointIdsBuilder_.getMessageList(); - } - } - /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> - */ - public int getLinkEndpointIdsCount() { - if (linkEndpointIdsBuilder_ == null) { - return linkEndpointIds_.size(); - } else { - return linkEndpointIdsBuilder_.getCount(); + name_ = s; + break; + } + case 26: { + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + linkEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(); + mutable_bitField0_ |= 0x00000001; + } + linkEndpointIds_.add( + input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry)); + break; + } + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } } - } - /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> - */ - public context.ContextOuterClass.EndPointId getLinkEndpointIds(int index) { - if (linkEndpointIdsBuilder_ == null) { - return linkEndpointIds_.get(index); - } else { - return linkEndpointIdsBuilder_.getMessage(index); - } - } - /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> - */ - public Builder setLinkEndpointIds( - int index, context.ContextOuterClass.EndPointId value) { - if (linkEndpointIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureLinkEndpointIdsIsMutable(); - linkEndpointIds_.set(index, value); - onChanged(); - } else { - linkEndpointIdsBuilder_.setMessage(index, value); - } - return this; - } - /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> - */ - public Builder setLinkEndpointIds( - int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (linkEndpointIdsBuilder_ == null) { - ensureLinkEndpointIdsIsMutable(); - linkEndpointIds_.set(index, builderForValue.build()); - onChanged(); - } else { - linkEndpointIdsBuilder_.setMessage(index, builderForValue.build()); - } - return this; - } - /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> - */ - public Builder addLinkEndpointIds(context.ContextOuterClass.EndPointId value) { - if (linkEndpointIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureLinkEndpointIdsIsMutable(); - linkEndpointIds_.add(value); - onChanged(); - } else { - linkEndpointIdsBuilder_.addMessage(value); - } - return this; - } - /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> - */ - public Builder addLinkEndpointIds( - int index, context.ContextOuterClass.EndPointId value) { - if (linkEndpointIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureLinkEndpointIdsIsMutable(); - linkEndpointIds_.add(index, value); - onChanged(); - } else { - linkEndpointIdsBuilder_.addMessage(index, value); - } - return this; - } - /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> - */ - public Builder addLinkEndpointIds( - context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (linkEndpointIdsBuilder_ == null) { - ensureLinkEndpointIdsIsMutable(); - linkEndpointIds_.add(builderForValue.build()); - onChanged(); - } else { - linkEndpointIdsBuilder_.addMessage(builderForValue.build()); - } - return this; - } - /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> - */ - public Builder addLinkEndpointIds( - int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (linkEndpointIdsBuilder_ == null) { - ensureLinkEndpointIdsIsMutable(); - linkEndpointIds_.add(index, builderForValue.build()); - onChanged(); - } else { - linkEndpointIdsBuilder_.addMessage(index, builderForValue.build()); - } - return this; - } - /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> - */ - public Builder addAllLinkEndpointIds( - java.lang.Iterable<? extends context.ContextOuterClass.EndPointId> values) { - if (linkEndpointIdsBuilder_ == null) { - ensureLinkEndpointIdsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, linkEndpointIds_); - onChanged(); - } else { - linkEndpointIdsBuilder_.addAllMessages(values); - } - return this; - } - /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> - */ - public Builder clearLinkEndpointIds() { - if (linkEndpointIdsBuilder_ == null) { - linkEndpointIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - } else { - linkEndpointIdsBuilder_.clear(); - } - return this; - } - /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> - */ - public Builder removeLinkEndpointIds(int index) { - if (linkEndpointIdsBuilder_ == null) { - ensureLinkEndpointIdsIsMutable(); - linkEndpointIds_.remove(index); - onChanged(); - } else { - linkEndpointIdsBuilder_.remove(index); - } - return this; - } - /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> - */ - public context.ContextOuterClass.EndPointId.Builder getLinkEndpointIdsBuilder( - int index) { - return getLinkEndpointIdsFieldBuilder().getBuilder(index); - } - /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> - */ - public context.ContextOuterClass.EndPointIdOrBuilder getLinkEndpointIdsOrBuilder( - int index) { - if (linkEndpointIdsBuilder_ == null) { - return linkEndpointIds_.get(index); } else { - return linkEndpointIdsBuilder_.getMessageOrBuilder(index); - } - } - /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> - */ - public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> - getLinkEndpointIdsOrBuilderList() { - if (linkEndpointIdsBuilder_ != null) { - return linkEndpointIdsBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(linkEndpointIds_); - } - } - /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> - */ - public context.ContextOuterClass.EndPointId.Builder addLinkEndpointIdsBuilder() { - return getLinkEndpointIdsFieldBuilder().addBuilder( - context.ContextOuterClass.EndPointId.getDefaultInstance()); - } - /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> - */ - public context.ContextOuterClass.EndPointId.Builder addLinkEndpointIdsBuilder( - int index) { - return getLinkEndpointIdsFieldBuilder().addBuilder( - index, context.ContextOuterClass.EndPointId.getDefaultInstance()); - } - /** - * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> - */ - public java.util.List<context.ContextOuterClass.EndPointId.Builder> - getLinkEndpointIdsBuilderList() { - return getLinkEndpointIdsFieldBuilder().getBuilderList(); - } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> - getLinkEndpointIdsFieldBuilder() { - if (linkEndpointIdsBuilder_ == null) { - linkEndpointIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( - linkEndpointIds_, - ((bitField0_ & 0x00000001) != 0), - getParentForChildren(), - isClean()); - linkEndpointIds_ = null; + } 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)) { + linkEndpointIds_ = java.util.Collections.unmodifiableList(linkEndpointIds_); } - return linkEndpointIdsBuilder_; - } - @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:context.Link) - } - - // @@protoc_insertion_point(class_scope:context.Link) - private static final context.ContextOuterClass.Link DEFAULT_INSTANCE; - static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Link(); - } - - public static context.ContextOuterClass.Link getDefaultInstance() { - return DEFAULT_INSTANCE; - } - - private static final com.google.protobuf.Parser<Link> - PARSER = new com.google.protobuf.AbstractParser<Link>() { - @java.lang.Override - public Link parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return new Link(input, extensionRegistry); + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); } - }; - - public static com.google.protobuf.Parser<Link> parser() { - return PARSER; } - - @java.lang.Override - public com.google.protobuf.Parser<Link> getParserForType() { - return PARSER; + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_Link_descriptor; } @java.lang.Override - public context.ContextOuterClass.Link getDefaultInstanceForType() { - return DEFAULT_INSTANCE; + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_Link_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.Link.class, context.ContextOuterClass.Link.Builder.class); } - } - - public interface LinkIdListOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.LinkIdList) - com.google.protobuf.MessageOrBuilder { - - /** - * <code>repeated .context.LinkId link_ids = 1;</code> - */ - java.util.List<context.ContextOuterClass.LinkId> - getLinkIdsList(); - /** - * <code>repeated .context.LinkId link_ids = 1;</code> - */ - context.ContextOuterClass.LinkId getLinkIds(int index); + public static final int LINK_ID_FIELD_NUMBER = 1; + private context.ContextOuterClass.LinkId linkId_; /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>.context.LinkId link_id = 1;</code> + * @return Whether the linkId field is set. */ - int getLinkIdsCount(); + @java.lang.Override + public boolean hasLinkId() { + return linkId_ != null; + } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>.context.LinkId link_id = 1;</code> + * @return The linkId. */ - java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> - getLinkIdsOrBuilderList(); + @java.lang.Override + public context.ContextOuterClass.LinkId getLinkId() { + return linkId_ == null ? context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_; + } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>.context.LinkId link_id = 1;</code> */ - context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder( - int index); - } - /** - * Protobuf type {@code context.LinkIdList} - */ - public static final class LinkIdList extends - com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.LinkIdList) - LinkIdListOrBuilder { - private static final long serialVersionUID = 0L; - // Use LinkIdList.newBuilder() to construct. - private LinkIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { - super(builder); - } - private LinkIdList() { - linkIds_ = java.util.Collections.emptyList(); - } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new LinkIdList(); + public context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder() { + return getLinkId(); } + public static final int NAME_FIELD_NUMBER = 2; + private volatile java.lang.Object name_; + /** + * <code>string name = 2;</code> + * @return The name. + */ @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } - private LinkIdList( - 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)) { - linkIds_ = new java.util.ArrayList<context.ContextOuterClass.LinkId>(); - mutable_bitField0_ |= 0x00000001; - } - linkIds_.add( - input.readMessage(context.ContextOuterClass.LinkId.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)) { - linkIds_ = java.util.Collections.unmodifiableList(linkIds_); - } - this.unknownFields = unknownFields.build(); - makeExtensionsImmutable(); + public java.lang.String getName() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; } } - public static final com.google.protobuf.Descriptors.Descriptor - getDescriptor() { - return context.ContextOuterClass.internal_static_context_LinkIdList_descriptor; - } - + /** + * <code>string name = 2;</code> + * @return The bytes for name. + */ @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_LinkIdList_fieldAccessorTable - .ensureFieldAccessorsInitialized( - context.ContextOuterClass.LinkIdList.class, context.ContextOuterClass.LinkIdList.Builder.class); + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } - public static final int LINK_IDS_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.LinkId> linkIds_; + public static final int LINK_ENDPOINT_IDS_FIELD_NUMBER = 3; + private java.util.List<context.ContextOuterClass.EndPointId> linkEndpointIds_; /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> */ @java.lang.Override - public java.util.List<context.ContextOuterClass.LinkId> getLinkIdsList() { - return linkIds_; + public java.util.List<context.ContextOuterClass.EndPointId> getLinkEndpointIdsList() { + return linkEndpointIds_; } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> - getLinkIdsOrBuilderList() { - return linkIds_; + public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getLinkEndpointIdsOrBuilderList() { + return linkEndpointIds_; } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> */ @java.lang.Override - public int getLinkIdsCount() { - return linkIds_.size(); + public int getLinkEndpointIdsCount() { + return linkEndpointIds_.size(); } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> */ @java.lang.Override - public context.ContextOuterClass.LinkId getLinkIds(int index) { - return linkIds_.get(index); + public context.ContextOuterClass.EndPointId getLinkEndpointIds(int index) { + return linkEndpointIds_.get(index); } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> */ @java.lang.Override - public context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder( + public context.ContextOuterClass.EndPointIdOrBuilder getLinkEndpointIdsOrBuilder( int index) { - return linkIds_.get(index); + return linkEndpointIds_.get(index); } private byte memoizedIsInitialized = -1; @@ -23753,8 +23954,14 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < linkIds_.size(); i++) { - output.writeMessage(1, linkIds_.get(i)); + if (linkId_ != null) { + output.writeMessage(1, getLinkId()); + } + if (!getNameBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_); + } + for (int i = 0; i < linkEndpointIds_.size(); i++) { + output.writeMessage(3, linkEndpointIds_.get(i)); } unknownFields.writeTo(output); } @@ -23765,9 +23972,16 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < linkIds_.size(); i++) { + if (linkId_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, linkIds_.get(i)); + .computeMessageSize(1, getLinkId()); + } + if (!getNameBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_); + } + for (int i = 0; i < linkEndpointIds_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(3, linkEndpointIds_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -23779,13 +23993,20 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.LinkIdList)) { + if (!(obj instanceof context.ContextOuterClass.Link)) { return super.equals(obj); } - context.ContextOuterClass.LinkIdList other = (context.ContextOuterClass.LinkIdList) obj; + context.ContextOuterClass.Link other = (context.ContextOuterClass.Link) obj; - if (!getLinkIdsList() - .equals(other.getLinkIdsList())) return false; + if (hasLinkId() != other.hasLinkId()) return false; + if (hasLinkId()) { + if (!getLinkId() + .equals(other.getLinkId())) return false; + } + if (!getName() + .equals(other.getName())) return false; + if (!getLinkEndpointIdsList() + .equals(other.getLinkEndpointIdsList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -23797,78 +24018,84 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getLinkIdsCount() > 0) { - hash = (37 * hash) + LINK_IDS_FIELD_NUMBER; - hash = (53 * hash) + getLinkIdsList().hashCode(); + if (hasLinkId()) { + hash = (37 * hash) + LINK_ID_FIELD_NUMBER; + hash = (53 * hash) + getLinkId().hashCode(); + } + hash = (37 * hash) + NAME_FIELD_NUMBER; + hash = (53 * hash) + getName().hashCode(); + if (getLinkEndpointIdsCount() > 0) { + hash = (37 * hash) + LINK_ENDPOINT_IDS_FIELD_NUMBER; + hash = (53 * hash) + getLinkEndpointIdsList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.LinkIdList parseFrom( + public static context.ContextOuterClass.Link parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.LinkIdList parseFrom( + public static context.ContextOuterClass.Link parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.LinkIdList parseFrom( + public static context.ContextOuterClass.Link parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.LinkIdList parseFrom( + public static context.ContextOuterClass.Link parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.LinkIdList parseFrom(byte[] data) + public static context.ContextOuterClass.Link parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.LinkIdList parseFrom( + public static context.ContextOuterClass.Link parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.LinkIdList parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Link parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.LinkIdList parseFrom( + public static context.ContextOuterClass.Link 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 context.ContextOuterClass.LinkIdList parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Link parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.LinkIdList parseDelimitedFrom( + public static context.ContextOuterClass.Link 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 context.ContextOuterClass.LinkIdList parseFrom( + public static context.ContextOuterClass.Link parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.LinkIdList parseFrom( + public static context.ContextOuterClass.Link parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -23881,7 +24108,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.LinkIdList prototype) { + public static Builder newBuilder(context.ContextOuterClass.Link prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -23897,26 +24124,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.LinkIdList} + * Protobuf type {@code context.Link} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.LinkIdList) - context.ContextOuterClass.LinkIdListOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Link) + context.ContextOuterClass.LinkOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_LinkIdList_descriptor; + return context.ContextOuterClass.internal_static_context_Link_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_LinkIdList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Link_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.LinkIdList.class, context.ContextOuterClass.LinkIdList.Builder.class); + context.ContextOuterClass.Link.class, context.ContextOuterClass.Link.Builder.class); } - // Construct using context.ContextOuterClass.LinkIdList.newBuilder() + // Construct using context.ContextOuterClass.Link.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -23929,17 +24156,25 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getLinkIdsFieldBuilder(); + getLinkEndpointIdsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (linkIdsBuilder_ == null) { - linkIds_ = java.util.Collections.emptyList(); + if (linkIdBuilder_ == null) { + linkId_ = null; + } else { + linkId_ = null; + linkIdBuilder_ = null; + } + name_ = ""; + + if (linkEndpointIdsBuilder_ == null) { + linkEndpointIds_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); } else { - linkIdsBuilder_.clear(); + linkEndpointIdsBuilder_.clear(); } return this; } @@ -23947,17 +24182,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_LinkIdList_descriptor; + return context.ContextOuterClass.internal_static_context_Link_descriptor; } @java.lang.Override - public context.ContextOuterClass.LinkIdList getDefaultInstanceForType() { - return context.ContextOuterClass.LinkIdList.getDefaultInstance(); + public context.ContextOuterClass.Link getDefaultInstanceForType() { + return context.ContextOuterClass.Link.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.LinkIdList build() { - context.ContextOuterClass.LinkIdList result = buildPartial(); + public context.ContextOuterClass.Link build() { + context.ContextOuterClass.Link result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -23965,17 +24200,23 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.LinkIdList buildPartial() { - context.ContextOuterClass.LinkIdList result = new context.ContextOuterClass.LinkIdList(this); + public context.ContextOuterClass.Link buildPartial() { + context.ContextOuterClass.Link result = new context.ContextOuterClass.Link(this); int from_bitField0_ = bitField0_; - if (linkIdsBuilder_ == null) { + if (linkIdBuilder_ == null) { + result.linkId_ = linkId_; + } else { + result.linkId_ = linkIdBuilder_.build(); + } + result.name_ = name_; + if (linkEndpointIdsBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { - linkIds_ = java.util.Collections.unmodifiableList(linkIds_); + linkEndpointIds_ = java.util.Collections.unmodifiableList(linkEndpointIds_); bitField0_ = (bitField0_ & ~0x00000001); } - result.linkIds_ = linkIds_; + result.linkEndpointIds_ = linkEndpointIds_; } else { - result.linkIds_ = linkIdsBuilder_.build(); + result.linkEndpointIds_ = linkEndpointIdsBuilder_.build(); } onBuilt(); return result; @@ -24015,39 +24256,46 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.LinkIdList) { - return mergeFrom((context.ContextOuterClass.LinkIdList)other); + if (other instanceof context.ContextOuterClass.Link) { + return mergeFrom((context.ContextOuterClass.Link)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.LinkIdList other) { - if (other == context.ContextOuterClass.LinkIdList.getDefaultInstance()) return this; - if (linkIdsBuilder_ == null) { - if (!other.linkIds_.isEmpty()) { - if (linkIds_.isEmpty()) { - linkIds_ = other.linkIds_; + public Builder mergeFrom(context.ContextOuterClass.Link other) { + if (other == context.ContextOuterClass.Link.getDefaultInstance()) return this; + if (other.hasLinkId()) { + mergeLinkId(other.getLinkId()); + } + if (!other.getName().isEmpty()) { + name_ = other.name_; + onChanged(); + } + if (linkEndpointIdsBuilder_ == null) { + if (!other.linkEndpointIds_.isEmpty()) { + if (linkEndpointIds_.isEmpty()) { + linkEndpointIds_ = other.linkEndpointIds_; bitField0_ = (bitField0_ & ~0x00000001); } else { - ensureLinkIdsIsMutable(); - linkIds_.addAll(other.linkIds_); + ensureLinkEndpointIdsIsMutable(); + linkEndpointIds_.addAll(other.linkEndpointIds_); } onChanged(); } } else { - if (!other.linkIds_.isEmpty()) { - if (linkIdsBuilder_.isEmpty()) { - linkIdsBuilder_.dispose(); - linkIdsBuilder_ = null; - linkIds_ = other.linkIds_; + if (!other.linkEndpointIds_.isEmpty()) { + if (linkEndpointIdsBuilder_.isEmpty()) { + linkEndpointIdsBuilder_.dispose(); + linkEndpointIdsBuilder_ = null; + linkEndpointIds_ = other.linkEndpointIds_; bitField0_ = (bitField0_ & ~0x00000001); - linkIdsBuilder_ = + linkEndpointIdsBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getLinkIdsFieldBuilder() : null; + getLinkEndpointIdsFieldBuilder() : null; } else { - linkIdsBuilder_.addAllMessages(other.linkIds_); + linkEndpointIdsBuilder_.addAllMessages(other.linkEndpointIds_); } } } @@ -24066,11 +24314,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.LinkIdList parsedMessage = null; + context.ContextOuterClass.Link parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.LinkIdList) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.Link) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -24081,244 +24329,439 @@ public final class ContextOuterClass { } private int bitField0_; - private java.util.List<context.ContextOuterClass.LinkId> linkIds_ = + private context.ContextOuterClass.LinkId linkId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> linkIdBuilder_; + /** + * <code>.context.LinkId link_id = 1;</code> + * @return Whether the linkId field is set. + */ + public boolean hasLinkId() { + return linkIdBuilder_ != null || linkId_ != null; + } + /** + * <code>.context.LinkId link_id = 1;</code> + * @return The linkId. + */ + public context.ContextOuterClass.LinkId getLinkId() { + if (linkIdBuilder_ == null) { + return linkId_ == null ? context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_; + } else { + return linkIdBuilder_.getMessage(); + } + } + /** + * <code>.context.LinkId link_id = 1;</code> + */ + public Builder setLinkId(context.ContextOuterClass.LinkId value) { + if (linkIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + linkId_ = value; + onChanged(); + } else { + linkIdBuilder_.setMessage(value); + } + + return this; + } + /** + * <code>.context.LinkId link_id = 1;</code> + */ + public Builder setLinkId( + context.ContextOuterClass.LinkId.Builder builderForValue) { + if (linkIdBuilder_ == null) { + linkId_ = builderForValue.build(); + onChanged(); + } else { + linkIdBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.LinkId link_id = 1;</code> + */ + public Builder mergeLinkId(context.ContextOuterClass.LinkId value) { + if (linkIdBuilder_ == null) { + if (linkId_ != null) { + linkId_ = + context.ContextOuterClass.LinkId.newBuilder(linkId_).mergeFrom(value).buildPartial(); + } else { + linkId_ = value; + } + onChanged(); + } else { + linkIdBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.context.LinkId link_id = 1;</code> + */ + public Builder clearLinkId() { + if (linkIdBuilder_ == null) { + linkId_ = null; + onChanged(); + } else { + linkId_ = null; + linkIdBuilder_ = null; + } + + return this; + } + /** + * <code>.context.LinkId link_id = 1;</code> + */ + public context.ContextOuterClass.LinkId.Builder getLinkIdBuilder() { + + onChanged(); + return getLinkIdFieldBuilder().getBuilder(); + } + /** + * <code>.context.LinkId link_id = 1;</code> + */ + public context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder() { + if (linkIdBuilder_ != null) { + return linkIdBuilder_.getMessageOrBuilder(); + } else { + return linkId_ == null ? + context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_; + } + } + /** + * <code>.context.LinkId link_id = 1;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> + getLinkIdFieldBuilder() { + if (linkIdBuilder_ == null) { + linkIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder>( + getLinkId(), + getParentForChildren(), + isClean()); + linkId_ = null; + } + return linkIdBuilder_; + } + + private java.lang.Object name_ = ""; + /** + * <code>string name = 2;</code> + * @return The name. + */ + public java.lang.String getName() { + java.lang.Object ref = name_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * <code>string name = 2;</code> + * @return The bytes for name. + */ + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * <code>string name = 2;</code> + * @param value The name to set. + * @return This builder for chaining. + */ + public Builder setName( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + name_ = value; + onChanged(); + return this; + } + /** + * <code>string name = 2;</code> + * @return This builder for chaining. + */ + public Builder clearName() { + + name_ = getDefaultInstance().getName(); + onChanged(); + return this; + } + /** + * <code>string name = 2;</code> + * @param value The bytes for name to set. + * @return This builder for chaining. + */ + public Builder setNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + name_ = value; + onChanged(); + return this; + } + + private java.util.List<context.ContextOuterClass.EndPointId> linkEndpointIds_ = java.util.Collections.emptyList(); - private void ensureLinkIdsIsMutable() { + private void ensureLinkEndpointIdsIsMutable() { if (!((bitField0_ & 0x00000001) != 0)) { - linkIds_ = new java.util.ArrayList<context.ContextOuterClass.LinkId>(linkIds_); + linkEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(linkEndpointIds_); bitField0_ |= 0x00000001; } } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> linkIdsBuilder_; + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> linkEndpointIdsBuilder_; /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> */ - public java.util.List<context.ContextOuterClass.LinkId> getLinkIdsList() { - if (linkIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(linkIds_); + public java.util.List<context.ContextOuterClass.EndPointId> getLinkEndpointIdsList() { + if (linkEndpointIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(linkEndpointIds_); } else { - return linkIdsBuilder_.getMessageList(); + return linkEndpointIdsBuilder_.getMessageList(); } } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> */ - public int getLinkIdsCount() { - if (linkIdsBuilder_ == null) { - return linkIds_.size(); + public int getLinkEndpointIdsCount() { + if (linkEndpointIdsBuilder_ == null) { + return linkEndpointIds_.size(); } else { - return linkIdsBuilder_.getCount(); + return linkEndpointIdsBuilder_.getCount(); } } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> */ - public context.ContextOuterClass.LinkId getLinkIds(int index) { - if (linkIdsBuilder_ == null) { - return linkIds_.get(index); + public context.ContextOuterClass.EndPointId getLinkEndpointIds(int index) { + if (linkEndpointIdsBuilder_ == null) { + return linkEndpointIds_.get(index); } else { - return linkIdsBuilder_.getMessage(index); + return linkEndpointIdsBuilder_.getMessage(index); } } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> */ - public Builder setLinkIds( - int index, context.ContextOuterClass.LinkId value) { - if (linkIdsBuilder_ == null) { + public Builder setLinkEndpointIds( + int index, context.ContextOuterClass.EndPointId value) { + if (linkEndpointIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureLinkIdsIsMutable(); - linkIds_.set(index, value); + ensureLinkEndpointIdsIsMutable(); + linkEndpointIds_.set(index, value); onChanged(); } else { - linkIdsBuilder_.setMessage(index, value); + linkEndpointIdsBuilder_.setMessage(index, value); } return this; } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> */ - public Builder setLinkIds( - int index, context.ContextOuterClass.LinkId.Builder builderForValue) { - if (linkIdsBuilder_ == null) { - ensureLinkIdsIsMutable(); - linkIds_.set(index, builderForValue.build()); + public Builder setLinkEndpointIds( + int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (linkEndpointIdsBuilder_ == null) { + ensureLinkEndpointIdsIsMutable(); + linkEndpointIds_.set(index, builderForValue.build()); onChanged(); } else { - linkIdsBuilder_.setMessage(index, builderForValue.build()); + linkEndpointIdsBuilder_.setMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> */ - public Builder addLinkIds(context.ContextOuterClass.LinkId value) { - if (linkIdsBuilder_ == null) { + public Builder addLinkEndpointIds(context.ContextOuterClass.EndPointId value) { + if (linkEndpointIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureLinkIdsIsMutable(); - linkIds_.add(value); + ensureLinkEndpointIdsIsMutable(); + linkEndpointIds_.add(value); onChanged(); } else { - linkIdsBuilder_.addMessage(value); + linkEndpointIdsBuilder_.addMessage(value); } return this; } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> */ - public Builder addLinkIds( - int index, context.ContextOuterClass.LinkId value) { - if (linkIdsBuilder_ == null) { + public Builder addLinkEndpointIds( + int index, context.ContextOuterClass.EndPointId value) { + if (linkEndpointIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureLinkIdsIsMutable(); - linkIds_.add(index, value); + ensureLinkEndpointIdsIsMutable(); + linkEndpointIds_.add(index, value); onChanged(); } else { - linkIdsBuilder_.addMessage(index, value); + linkEndpointIdsBuilder_.addMessage(index, value); } return this; } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> */ - public Builder addLinkIds( - context.ContextOuterClass.LinkId.Builder builderForValue) { - if (linkIdsBuilder_ == null) { - ensureLinkIdsIsMutable(); - linkIds_.add(builderForValue.build()); + public Builder addLinkEndpointIds( + context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (linkEndpointIdsBuilder_ == null) { + ensureLinkEndpointIdsIsMutable(); + linkEndpointIds_.add(builderForValue.build()); onChanged(); } else { - linkIdsBuilder_.addMessage(builderForValue.build()); + linkEndpointIdsBuilder_.addMessage(builderForValue.build()); } return this; } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> */ - public Builder addLinkIds( - int index, context.ContextOuterClass.LinkId.Builder builderForValue) { - if (linkIdsBuilder_ == null) { - ensureLinkIdsIsMutable(); - linkIds_.add(index, builderForValue.build()); + public Builder addLinkEndpointIds( + int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (linkEndpointIdsBuilder_ == null) { + ensureLinkEndpointIdsIsMutable(); + linkEndpointIds_.add(index, builderForValue.build()); onChanged(); } else { - linkIdsBuilder_.addMessage(index, builderForValue.build()); + linkEndpointIdsBuilder_.addMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> */ - public Builder addAllLinkIds( - java.lang.Iterable<? extends context.ContextOuterClass.LinkId> values) { - if (linkIdsBuilder_ == null) { - ensureLinkIdsIsMutable(); + public Builder addAllLinkEndpointIds( + java.lang.Iterable<? extends context.ContextOuterClass.EndPointId> values) { + if (linkEndpointIdsBuilder_ == null) { + ensureLinkEndpointIdsIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, linkIds_); + values, linkEndpointIds_); onChanged(); } else { - linkIdsBuilder_.addAllMessages(values); + linkEndpointIdsBuilder_.addAllMessages(values); } return this; } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> */ - public Builder clearLinkIds() { - if (linkIdsBuilder_ == null) { - linkIds_ = java.util.Collections.emptyList(); + public Builder clearLinkEndpointIds() { + if (linkEndpointIdsBuilder_ == null) { + linkEndpointIds_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { - linkIdsBuilder_.clear(); + linkEndpointIdsBuilder_.clear(); } return this; } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> */ - public Builder removeLinkIds(int index) { - if (linkIdsBuilder_ == null) { - ensureLinkIdsIsMutable(); - linkIds_.remove(index); + public Builder removeLinkEndpointIds(int index) { + if (linkEndpointIdsBuilder_ == null) { + ensureLinkEndpointIdsIsMutable(); + linkEndpointIds_.remove(index); onChanged(); } else { - linkIdsBuilder_.remove(index); + linkEndpointIdsBuilder_.remove(index); } return this; } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> */ - public context.ContextOuterClass.LinkId.Builder getLinkIdsBuilder( + public context.ContextOuterClass.EndPointId.Builder getLinkEndpointIdsBuilder( int index) { - return getLinkIdsFieldBuilder().getBuilder(index); + return getLinkEndpointIdsFieldBuilder().getBuilder(index); } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> */ - public context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder( + public context.ContextOuterClass.EndPointIdOrBuilder getLinkEndpointIdsOrBuilder( int index) { - if (linkIdsBuilder_ == null) { - return linkIds_.get(index); } else { - return linkIdsBuilder_.getMessageOrBuilder(index); + if (linkEndpointIdsBuilder_ == null) { + return linkEndpointIds_.get(index); } else { + return linkEndpointIdsBuilder_.getMessageOrBuilder(index); } } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> */ - public java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> - getLinkIdsOrBuilderList() { - if (linkIdsBuilder_ != null) { - return linkIdsBuilder_.getMessageOrBuilderList(); + public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getLinkEndpointIdsOrBuilderList() { + if (linkEndpointIdsBuilder_ != null) { + return linkEndpointIdsBuilder_.getMessageOrBuilderList(); } else { - return java.util.Collections.unmodifiableList(linkIds_); + return java.util.Collections.unmodifiableList(linkEndpointIds_); } } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> */ - public context.ContextOuterClass.LinkId.Builder addLinkIdsBuilder() { - return getLinkIdsFieldBuilder().addBuilder( - context.ContextOuterClass.LinkId.getDefaultInstance()); - } + public context.ContextOuterClass.EndPointId.Builder addLinkEndpointIdsBuilder() { + return getLinkEndpointIdsFieldBuilder().addBuilder( + context.ContextOuterClass.EndPointId.getDefaultInstance()); + } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> */ - public context.ContextOuterClass.LinkId.Builder addLinkIdsBuilder( + public context.ContextOuterClass.EndPointId.Builder addLinkEndpointIdsBuilder( int index) { - return getLinkIdsFieldBuilder().addBuilder( - index, context.ContextOuterClass.LinkId.getDefaultInstance()); + return getLinkEndpointIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.EndPointId.getDefaultInstance()); } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> */ - public java.util.List<context.ContextOuterClass.LinkId.Builder> - getLinkIdsBuilderList() { - return getLinkIdsFieldBuilder().getBuilderList(); + public java.util.List<context.ContextOuterClass.EndPointId.Builder> + getLinkEndpointIdsBuilderList() { + return getLinkEndpointIdsFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> - getLinkIdsFieldBuilder() { - if (linkIdsBuilder_ == null) { - linkIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder>( - linkIds_, + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> + getLinkEndpointIdsFieldBuilder() { + if (linkEndpointIdsBuilder_ == null) { + linkEndpointIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( + linkEndpointIds_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); - linkIds_ = null; + linkEndpointIds_ = null; } - return linkIdsBuilder_; + return linkEndpointIdsBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -24333,95 +24776,95 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.LinkIdList) + // @@protoc_insertion_point(builder_scope:context.Link) } - // @@protoc_insertion_point(class_scope:context.LinkIdList) - private static final context.ContextOuterClass.LinkIdList DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Link) + private static final context.ContextOuterClass.Link DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.LinkIdList(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Link(); } - public static context.ContextOuterClass.LinkIdList getDefaultInstance() { + public static context.ContextOuterClass.Link getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<LinkIdList> - PARSER = new com.google.protobuf.AbstractParser<LinkIdList>() { + private static final com.google.protobuf.Parser<Link> + PARSER = new com.google.protobuf.AbstractParser<Link>() { @java.lang.Override - public LinkIdList parsePartialFrom( + public Link parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new LinkIdList(input, extensionRegistry); + return new Link(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<LinkIdList> parser() { + public static com.google.protobuf.Parser<Link> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<LinkIdList> getParserForType() { + public com.google.protobuf.Parser<Link> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.LinkIdList getDefaultInstanceForType() { + public context.ContextOuterClass.Link getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface LinkListOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.LinkList) + public interface LinkIdListOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.LinkIdList) com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ - java.util.List<context.ContextOuterClass.Link> - getLinksList(); + java.util.List<context.ContextOuterClass.LinkId> + getLinkIdsList(); /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ - context.ContextOuterClass.Link getLinks(int index); + context.ContextOuterClass.LinkId getLinkIds(int index); /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ - int getLinksCount(); + int getLinkIdsCount(); /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ - java.util.List<? extends context.ContextOuterClass.LinkOrBuilder> - getLinksOrBuilderList(); + java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> + getLinkIdsOrBuilderList(); /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ - context.ContextOuterClass.LinkOrBuilder getLinksOrBuilder( + context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder( int index); } /** - * Protobuf type {@code context.LinkList} + * Protobuf type {@code context.LinkIdList} */ - public static final class LinkList extends + public static final class LinkIdList extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.LinkList) - LinkListOrBuilder { + // @@protoc_insertion_point(message_implements:context.LinkIdList) + LinkIdListOrBuilder { private static final long serialVersionUID = 0L; - // Use LinkList.newBuilder() to construct. - private LinkList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use LinkIdList.newBuilder() to construct. + private LinkIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private LinkList() { - links_ = java.util.Collections.emptyList(); + private LinkIdList() { + linkIds_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new LinkList(); + return new LinkIdList(); } @java.lang.Override @@ -24429,7 +24872,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private LinkList( + private LinkIdList( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -24450,11 +24893,11 @@ public final class ContextOuterClass { break; case 10: { if (!((mutable_bitField0_ & 0x00000001) != 0)) { - links_ = new java.util.ArrayList<context.ContextOuterClass.Link>(); + linkIds_ = new java.util.ArrayList<context.ContextOuterClass.LinkId>(); mutable_bitField0_ |= 0x00000001; } - links_.add( - input.readMessage(context.ContextOuterClass.Link.parser(), extensionRegistry)); + linkIds_.add( + input.readMessage(context.ContextOuterClass.LinkId.parser(), extensionRegistry)); break; } default: { @@ -24473,7 +24916,7 @@ public final class ContextOuterClass { e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { - links_ = java.util.Collections.unmodifiableList(links_); + linkIds_ = java.util.Collections.unmodifiableList(linkIds_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); @@ -24481,55 +24924,55 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_LinkList_descriptor; + return context.ContextOuterClass.internal_static_context_LinkIdList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_LinkList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_LinkIdList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.LinkList.class, context.ContextOuterClass.LinkList.Builder.class); + context.ContextOuterClass.LinkIdList.class, context.ContextOuterClass.LinkIdList.Builder.class); } - public static final int LINKS_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.Link> links_; + public static final int LINK_IDS_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.LinkId> linkIds_; /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ @java.lang.Override - public java.util.List<context.ContextOuterClass.Link> getLinksList() { - return links_; + public java.util.List<context.ContextOuterClass.LinkId> getLinkIdsList() { + return linkIds_; } /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.LinkOrBuilder> - getLinksOrBuilderList() { - return links_; + public java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> + getLinkIdsOrBuilderList() { + return linkIds_; } /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ @java.lang.Override - public int getLinksCount() { - return links_.size(); + public int getLinkIdsCount() { + return linkIds_.size(); } /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.Link getLinks(int index) { - return links_.get(index); + public context.ContextOuterClass.LinkId getLinkIds(int index) { + return linkIds_.get(index); } /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.LinkOrBuilder getLinksOrBuilder( + public context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder( int index) { - return links_.get(index); + return linkIds_.get(index); } private byte memoizedIsInitialized = -1; @@ -24546,8 +24989,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < links_.size(); i++) { - output.writeMessage(1, links_.get(i)); + for (int i = 0; i < linkIds_.size(); i++) { + output.writeMessage(1, linkIds_.get(i)); } unknownFields.writeTo(output); } @@ -24558,9 +25001,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < links_.size(); i++) { + for (int i = 0; i < linkIds_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, links_.get(i)); + .computeMessageSize(1, linkIds_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -24572,13 +25015,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.LinkList)) { + if (!(obj instanceof context.ContextOuterClass.LinkIdList)) { return super.equals(obj); } - context.ContextOuterClass.LinkList other = (context.ContextOuterClass.LinkList) obj; + context.ContextOuterClass.LinkIdList other = (context.ContextOuterClass.LinkIdList) obj; - if (!getLinksList() - .equals(other.getLinksList())) return false; + if (!getLinkIdsList() + .equals(other.getLinkIdsList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -24590,78 +25033,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getLinksCount() > 0) { - hash = (37 * hash) + LINKS_FIELD_NUMBER; - hash = (53 * hash) + getLinksList().hashCode(); + if (getLinkIdsCount() > 0) { + hash = (37 * hash) + LINK_IDS_FIELD_NUMBER; + hash = (53 * hash) + getLinkIdsList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.LinkList parseFrom( + public static context.ContextOuterClass.LinkIdList parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.LinkList parseFrom( + public static context.ContextOuterClass.LinkIdList parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.LinkList parseFrom( + public static context.ContextOuterClass.LinkIdList parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.LinkList parseFrom( + public static context.ContextOuterClass.LinkIdList parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.LinkList parseFrom(byte[] data) + public static context.ContextOuterClass.LinkIdList parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.LinkList parseFrom( + public static context.ContextOuterClass.LinkIdList parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.LinkList parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.LinkIdList parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.LinkList parseFrom( + public static context.ContextOuterClass.LinkIdList 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 context.ContextOuterClass.LinkList parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.LinkIdList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.LinkList parseDelimitedFrom( + public static context.ContextOuterClass.LinkIdList 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 context.ContextOuterClass.LinkList parseFrom( + public static context.ContextOuterClass.LinkIdList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.LinkList parseFrom( + public static context.ContextOuterClass.LinkIdList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -24674,7 +25117,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.LinkList prototype) { + public static Builder newBuilder(context.ContextOuterClass.LinkIdList prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -24690,26 +25133,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.LinkList} + * Protobuf type {@code context.LinkIdList} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.LinkList) - context.ContextOuterClass.LinkListOrBuilder { + // @@protoc_insertion_point(builder_implements:context.LinkIdList) + context.ContextOuterClass.LinkIdListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_LinkList_descriptor; + return context.ContextOuterClass.internal_static_context_LinkIdList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_LinkList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_LinkIdList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.LinkList.class, context.ContextOuterClass.LinkList.Builder.class); + context.ContextOuterClass.LinkIdList.class, context.ContextOuterClass.LinkIdList.Builder.class); } - // Construct using context.ContextOuterClass.LinkList.newBuilder() + // Construct using context.ContextOuterClass.LinkIdList.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -24722,17 +25165,17 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getLinksFieldBuilder(); + getLinkIdsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (linksBuilder_ == null) { - links_ = java.util.Collections.emptyList(); + if (linkIdsBuilder_ == null) { + linkIds_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); } else { - linksBuilder_.clear(); + linkIdsBuilder_.clear(); } return this; } @@ -24740,17 +25183,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_LinkList_descriptor; + return context.ContextOuterClass.internal_static_context_LinkIdList_descriptor; } @java.lang.Override - public context.ContextOuterClass.LinkList getDefaultInstanceForType() { - return context.ContextOuterClass.LinkList.getDefaultInstance(); + public context.ContextOuterClass.LinkIdList getDefaultInstanceForType() { + return context.ContextOuterClass.LinkIdList.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.LinkList build() { - context.ContextOuterClass.LinkList result = buildPartial(); + public context.ContextOuterClass.LinkIdList build() { + context.ContextOuterClass.LinkIdList result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -24758,17 +25201,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.LinkList buildPartial() { - context.ContextOuterClass.LinkList result = new context.ContextOuterClass.LinkList(this); + public context.ContextOuterClass.LinkIdList buildPartial() { + context.ContextOuterClass.LinkIdList result = new context.ContextOuterClass.LinkIdList(this); int from_bitField0_ = bitField0_; - if (linksBuilder_ == null) { + if (linkIdsBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { - links_ = java.util.Collections.unmodifiableList(links_); + linkIds_ = java.util.Collections.unmodifiableList(linkIds_); bitField0_ = (bitField0_ & ~0x00000001); } - result.links_ = links_; + result.linkIds_ = linkIds_; } else { - result.links_ = linksBuilder_.build(); + result.linkIds_ = linkIdsBuilder_.build(); } onBuilt(); return result; @@ -24808,39 +25251,39 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.LinkList) { - return mergeFrom((context.ContextOuterClass.LinkList)other); + if (other instanceof context.ContextOuterClass.LinkIdList) { + return mergeFrom((context.ContextOuterClass.LinkIdList)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.LinkList other) { - if (other == context.ContextOuterClass.LinkList.getDefaultInstance()) return this; - if (linksBuilder_ == null) { - if (!other.links_.isEmpty()) { - if (links_.isEmpty()) { - links_ = other.links_; + public Builder mergeFrom(context.ContextOuterClass.LinkIdList other) { + if (other == context.ContextOuterClass.LinkIdList.getDefaultInstance()) return this; + if (linkIdsBuilder_ == null) { + if (!other.linkIds_.isEmpty()) { + if (linkIds_.isEmpty()) { + linkIds_ = other.linkIds_; bitField0_ = (bitField0_ & ~0x00000001); } else { - ensureLinksIsMutable(); - links_.addAll(other.links_); + ensureLinkIdsIsMutable(); + linkIds_.addAll(other.linkIds_); } onChanged(); } } else { - if (!other.links_.isEmpty()) { - if (linksBuilder_.isEmpty()) { - linksBuilder_.dispose(); - linksBuilder_ = null; - links_ = other.links_; + if (!other.linkIds_.isEmpty()) { + if (linkIdsBuilder_.isEmpty()) { + linkIdsBuilder_.dispose(); + linkIdsBuilder_ = null; + linkIds_ = other.linkIds_; bitField0_ = (bitField0_ & ~0x00000001); - linksBuilder_ = + linkIdsBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getLinksFieldBuilder() : null; + getLinkIdsFieldBuilder() : null; } else { - linksBuilder_.addAllMessages(other.links_); + linkIdsBuilder_.addAllMessages(other.linkIds_); } } } @@ -24859,11 +25302,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.LinkList parsedMessage = null; + context.ContextOuterClass.LinkIdList parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.LinkList) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.LinkIdList) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -24874,244 +25317,244 @@ public final class ContextOuterClass { } private int bitField0_; - private java.util.List<context.ContextOuterClass.Link> links_ = + private java.util.List<context.ContextOuterClass.LinkId> linkIds_ = java.util.Collections.emptyList(); - private void ensureLinksIsMutable() { + private void ensureLinkIdsIsMutable() { if (!((bitField0_ & 0x00000001) != 0)) { - links_ = new java.util.ArrayList<context.ContextOuterClass.Link>(links_); + linkIds_ = new java.util.ArrayList<context.ContextOuterClass.LinkId>(linkIds_); bitField0_ |= 0x00000001; } } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Link, context.ContextOuterClass.Link.Builder, context.ContextOuterClass.LinkOrBuilder> linksBuilder_; + context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> linkIdsBuilder_; /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ - public java.util.List<context.ContextOuterClass.Link> getLinksList() { - if (linksBuilder_ == null) { - return java.util.Collections.unmodifiableList(links_); + public java.util.List<context.ContextOuterClass.LinkId> getLinkIdsList() { + if (linkIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(linkIds_); } else { - return linksBuilder_.getMessageList(); + return linkIdsBuilder_.getMessageList(); } } /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ - public int getLinksCount() { - if (linksBuilder_ == null) { - return links_.size(); + public int getLinkIdsCount() { + if (linkIdsBuilder_ == null) { + return linkIds_.size(); } else { - return linksBuilder_.getCount(); + return linkIdsBuilder_.getCount(); } } /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ - public context.ContextOuterClass.Link getLinks(int index) { - if (linksBuilder_ == null) { - return links_.get(index); + public context.ContextOuterClass.LinkId getLinkIds(int index) { + if (linkIdsBuilder_ == null) { + return linkIds_.get(index); } else { - return linksBuilder_.getMessage(index); + return linkIdsBuilder_.getMessage(index); } } /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ - public Builder setLinks( - int index, context.ContextOuterClass.Link value) { - if (linksBuilder_ == null) { + public Builder setLinkIds( + int index, context.ContextOuterClass.LinkId value) { + if (linkIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureLinksIsMutable(); - links_.set(index, value); + ensureLinkIdsIsMutable(); + linkIds_.set(index, value); onChanged(); } else { - linksBuilder_.setMessage(index, value); + linkIdsBuilder_.setMessage(index, value); } return this; } /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ - public Builder setLinks( - int index, context.ContextOuterClass.Link.Builder builderForValue) { - if (linksBuilder_ == null) { - ensureLinksIsMutable(); - links_.set(index, builderForValue.build()); + public Builder setLinkIds( + int index, context.ContextOuterClass.LinkId.Builder builderForValue) { + if (linkIdsBuilder_ == null) { + ensureLinkIdsIsMutable(); + linkIds_.set(index, builderForValue.build()); onChanged(); } else { - linksBuilder_.setMessage(index, builderForValue.build()); + linkIdsBuilder_.setMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ - public Builder addLinks(context.ContextOuterClass.Link value) { - if (linksBuilder_ == null) { + public Builder addLinkIds(context.ContextOuterClass.LinkId value) { + if (linkIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureLinksIsMutable(); - links_.add(value); + ensureLinkIdsIsMutable(); + linkIds_.add(value); onChanged(); } else { - linksBuilder_.addMessage(value); + linkIdsBuilder_.addMessage(value); } return this; } /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ - public Builder addLinks( - int index, context.ContextOuterClass.Link value) { - if (linksBuilder_ == null) { + public Builder addLinkIds( + int index, context.ContextOuterClass.LinkId value) { + if (linkIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureLinksIsMutable(); - links_.add(index, value); + ensureLinkIdsIsMutable(); + linkIds_.add(index, value); onChanged(); } else { - linksBuilder_.addMessage(index, value); + linkIdsBuilder_.addMessage(index, value); } return this; } /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ - public Builder addLinks( - context.ContextOuterClass.Link.Builder builderForValue) { - if (linksBuilder_ == null) { - ensureLinksIsMutable(); - links_.add(builderForValue.build()); + public Builder addLinkIds( + context.ContextOuterClass.LinkId.Builder builderForValue) { + if (linkIdsBuilder_ == null) { + ensureLinkIdsIsMutable(); + linkIds_.add(builderForValue.build()); onChanged(); } else { - linksBuilder_.addMessage(builderForValue.build()); + linkIdsBuilder_.addMessage(builderForValue.build()); } return this; } /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ - public Builder addLinks( - int index, context.ContextOuterClass.Link.Builder builderForValue) { - if (linksBuilder_ == null) { - ensureLinksIsMutable(); - links_.add(index, builderForValue.build()); + public Builder addLinkIds( + int index, context.ContextOuterClass.LinkId.Builder builderForValue) { + if (linkIdsBuilder_ == null) { + ensureLinkIdsIsMutable(); + linkIds_.add(index, builderForValue.build()); onChanged(); } else { - linksBuilder_.addMessage(index, builderForValue.build()); + linkIdsBuilder_.addMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ - public Builder addAllLinks( - java.lang.Iterable<? extends context.ContextOuterClass.Link> values) { - if (linksBuilder_ == null) { - ensureLinksIsMutable(); + public Builder addAllLinkIds( + java.lang.Iterable<? extends context.ContextOuterClass.LinkId> values) { + if (linkIdsBuilder_ == null) { + ensureLinkIdsIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, links_); + values, linkIds_); onChanged(); } else { - linksBuilder_.addAllMessages(values); + linkIdsBuilder_.addAllMessages(values); } return this; } /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ - public Builder clearLinks() { - if (linksBuilder_ == null) { - links_ = java.util.Collections.emptyList(); + public Builder clearLinkIds() { + if (linkIdsBuilder_ == null) { + linkIds_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { - linksBuilder_.clear(); + linkIdsBuilder_.clear(); } return this; } /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ - public Builder removeLinks(int index) { - if (linksBuilder_ == null) { - ensureLinksIsMutable(); - links_.remove(index); + public Builder removeLinkIds(int index) { + if (linkIdsBuilder_ == null) { + ensureLinkIdsIsMutable(); + linkIds_.remove(index); onChanged(); } else { - linksBuilder_.remove(index); + linkIdsBuilder_.remove(index); } return this; } /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ - public context.ContextOuterClass.Link.Builder getLinksBuilder( + public context.ContextOuterClass.LinkId.Builder getLinkIdsBuilder( int index) { - return getLinksFieldBuilder().getBuilder(index); + return getLinkIdsFieldBuilder().getBuilder(index); } /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ - public context.ContextOuterClass.LinkOrBuilder getLinksOrBuilder( + public context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder( int index) { - if (linksBuilder_ == null) { - return links_.get(index); } else { - return linksBuilder_.getMessageOrBuilder(index); + if (linkIdsBuilder_ == null) { + return linkIds_.get(index); } else { + return linkIdsBuilder_.getMessageOrBuilder(index); } } /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ - public java.util.List<? extends context.ContextOuterClass.LinkOrBuilder> - getLinksOrBuilderList() { - if (linksBuilder_ != null) { - return linksBuilder_.getMessageOrBuilderList(); + public java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> + getLinkIdsOrBuilderList() { + if (linkIdsBuilder_ != null) { + return linkIdsBuilder_.getMessageOrBuilderList(); } else { - return java.util.Collections.unmodifiableList(links_); + return java.util.Collections.unmodifiableList(linkIds_); } } /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ - public context.ContextOuterClass.Link.Builder addLinksBuilder() { - return getLinksFieldBuilder().addBuilder( - context.ContextOuterClass.Link.getDefaultInstance()); + public context.ContextOuterClass.LinkId.Builder addLinkIdsBuilder() { + return getLinkIdsFieldBuilder().addBuilder( + context.ContextOuterClass.LinkId.getDefaultInstance()); } /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ - public context.ContextOuterClass.Link.Builder addLinksBuilder( + public context.ContextOuterClass.LinkId.Builder addLinkIdsBuilder( int index) { - return getLinksFieldBuilder().addBuilder( - index, context.ContextOuterClass.Link.getDefaultInstance()); + return getLinkIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.LinkId.getDefaultInstance()); } /** - * <code>repeated .context.Link links = 1;</code> + * <code>repeated .context.LinkId link_ids = 1;</code> */ - public java.util.List<context.ContextOuterClass.Link.Builder> - getLinksBuilderList() { - return getLinksFieldBuilder().getBuilderList(); + public java.util.List<context.ContextOuterClass.LinkId.Builder> + getLinkIdsBuilderList() { + return getLinkIdsFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Link, context.ContextOuterClass.Link.Builder, context.ContextOuterClass.LinkOrBuilder> - getLinksFieldBuilder() { - if (linksBuilder_ == null) { - linksBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Link, context.ContextOuterClass.Link.Builder, context.ContextOuterClass.LinkOrBuilder>( - links_, + context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> + getLinkIdsFieldBuilder() { + if (linkIdsBuilder_ == null) { + linkIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder>( + linkIds_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); - links_ = null; + linkIds_ = null; } - return linksBuilder_; + return linkIdsBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -25126,100 +25569,95 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.LinkList) + // @@protoc_insertion_point(builder_scope:context.LinkIdList) } - // @@protoc_insertion_point(class_scope:context.LinkList) - private static final context.ContextOuterClass.LinkList DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.LinkIdList) + private static final context.ContextOuterClass.LinkIdList DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.LinkList(); + DEFAULT_INSTANCE = new context.ContextOuterClass.LinkIdList(); } - public static context.ContextOuterClass.LinkList getDefaultInstance() { + public static context.ContextOuterClass.LinkIdList getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<LinkList> - PARSER = new com.google.protobuf.AbstractParser<LinkList>() { + private static final com.google.protobuf.Parser<LinkIdList> + PARSER = new com.google.protobuf.AbstractParser<LinkIdList>() { @java.lang.Override - public LinkList parsePartialFrom( + public LinkIdList parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new LinkList(input, extensionRegistry); + return new LinkIdList(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<LinkList> parser() { + public static com.google.protobuf.Parser<LinkIdList> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<LinkList> getParserForType() { + public com.google.protobuf.Parser<LinkIdList> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.LinkList getDefaultInstanceForType() { + public context.ContextOuterClass.LinkIdList getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface LinkEventOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.LinkEvent) + public interface LinkListOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.LinkList) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. - */ - boolean hasEvent(); - /** - * <code>.context.Event event = 1;</code> - * @return The event. + * <code>repeated .context.Link links = 1;</code> */ - context.ContextOuterClass.Event getEvent(); + java.util.List<context.ContextOuterClass.Link> + getLinksList(); /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.Link links = 1;</code> */ - context.ContextOuterClass.EventOrBuilder getEventOrBuilder(); - + context.ContextOuterClass.Link getLinks(int index); /** - * <code>.context.LinkId link_id = 2;</code> - * @return Whether the linkId field is set. + * <code>repeated .context.Link links = 1;</code> */ - boolean hasLinkId(); + int getLinksCount(); /** - * <code>.context.LinkId link_id = 2;</code> - * @return The linkId. + * <code>repeated .context.Link links = 1;</code> */ - context.ContextOuterClass.LinkId getLinkId(); + java.util.List<? extends context.ContextOuterClass.LinkOrBuilder> + getLinksOrBuilderList(); /** - * <code>.context.LinkId link_id = 2;</code> + * <code>repeated .context.Link links = 1;</code> */ - context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder(); + context.ContextOuterClass.LinkOrBuilder getLinksOrBuilder( + int index); } /** - * Protobuf type {@code context.LinkEvent} + * Protobuf type {@code context.LinkList} */ - public static final class LinkEvent extends + public static final class LinkList extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.LinkEvent) - LinkEventOrBuilder { + // @@protoc_insertion_point(message_implements:context.LinkList) + LinkListOrBuilder { private static final long serialVersionUID = 0L; - // Use LinkEvent.newBuilder() to construct. - private LinkEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use LinkList.newBuilder() to construct. + private LinkList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private LinkEvent() { + private LinkList() { + links_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new LinkEvent(); + return new LinkList(); } @java.lang.Override @@ -25227,7 +25665,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private LinkEvent( + private LinkList( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -25235,6 +25673,7 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } + int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -25246,29 +25685,12 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.Event.Builder subBuilder = null; - if (event_ != null) { - subBuilder = event_.toBuilder(); - } - event_ = input.readMessage(context.ContextOuterClass.Event.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(event_); - event_ = subBuilder.buildPartial(); - } - - break; - } - case 18: { - context.ContextOuterClass.LinkId.Builder subBuilder = null; - if (linkId_ != null) { - subBuilder = linkId_.toBuilder(); - } - linkId_ = input.readMessage(context.ContextOuterClass.LinkId.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(linkId_); - linkId_ = subBuilder.buildPartial(); + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + links_ = new java.util.ArrayList<context.ContextOuterClass.Link>(); + mutable_bitField0_ |= 0x00000001; } - + links_.add( + input.readMessage(context.ContextOuterClass.Link.parser(), extensionRegistry)); break; } default: { @@ -25286,73 +25708,64 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { + if (((mutable_bitField0_ & 0x00000001) != 0)) { + links_ = java.util.Collections.unmodifiableList(links_); + } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_LinkEvent_descriptor; + return context.ContextOuterClass.internal_static_context_LinkList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_LinkEvent_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_LinkList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.LinkEvent.class, context.ContextOuterClass.LinkEvent.Builder.class); + context.ContextOuterClass.LinkList.class, context.ContextOuterClass.LinkList.Builder.class); } - public static final int EVENT_FIELD_NUMBER = 1; - private context.ContextOuterClass.Event event_; - /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. - */ - @java.lang.Override - public boolean hasEvent() { - return event_ != null; - } + public static final int LINKS_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.Link> links_; /** - * <code>.context.Event event = 1;</code> - * @return The event. + * <code>repeated .context.Link links = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.Event getEvent() { - return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; + public java.util.List<context.ContextOuterClass.Link> getLinksList() { + return links_; } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.Link links = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { - return getEvent(); + public java.util.List<? extends context.ContextOuterClass.LinkOrBuilder> + getLinksOrBuilderList() { + return links_; } - - public static final int LINK_ID_FIELD_NUMBER = 2; - private context.ContextOuterClass.LinkId linkId_; /** - * <code>.context.LinkId link_id = 2;</code> - * @return Whether the linkId field is set. + * <code>repeated .context.Link links = 1;</code> */ @java.lang.Override - public boolean hasLinkId() { - return linkId_ != null; + public int getLinksCount() { + return links_.size(); } /** - * <code>.context.LinkId link_id = 2;</code> - * @return The linkId. + * <code>repeated .context.Link links = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.LinkId getLinkId() { - return linkId_ == null ? context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_; + public context.ContextOuterClass.Link getLinks(int index) { + return links_.get(index); } /** - * <code>.context.LinkId link_id = 2;</code> + * <code>repeated .context.Link links = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder() { - return getLinkId(); + public context.ContextOuterClass.LinkOrBuilder getLinksOrBuilder( + int index) { + return links_.get(index); } private byte memoizedIsInitialized = -1; @@ -25369,11 +25782,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (event_ != null) { - output.writeMessage(1, getEvent()); - } - if (linkId_ != null) { - output.writeMessage(2, getLinkId()); + for (int i = 0; i < links_.size(); i++) { + output.writeMessage(1, links_.get(i)); } unknownFields.writeTo(output); } @@ -25384,13 +25794,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (event_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getEvent()); - } - if (linkId_ != null) { + for (int i = 0; i < links_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, getLinkId()); + .computeMessageSize(1, links_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -25402,21 +25808,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.LinkEvent)) { + if (!(obj instanceof context.ContextOuterClass.LinkList)) { return super.equals(obj); } - context.ContextOuterClass.LinkEvent other = (context.ContextOuterClass.LinkEvent) obj; + context.ContextOuterClass.LinkList other = (context.ContextOuterClass.LinkList) obj; - if (hasEvent() != other.hasEvent()) return false; - if (hasEvent()) { - if (!getEvent() - .equals(other.getEvent())) return false; - } - if (hasLinkId() != other.hasLinkId()) return false; - if (hasLinkId()) { - if (!getLinkId() - .equals(other.getLinkId())) return false; - } + if (!getLinksList() + .equals(other.getLinksList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -25428,82 +25826,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasEvent()) { - hash = (37 * hash) + EVENT_FIELD_NUMBER; - hash = (53 * hash) + getEvent().hashCode(); - } - if (hasLinkId()) { - hash = (37 * hash) + LINK_ID_FIELD_NUMBER; - hash = (53 * hash) + getLinkId().hashCode(); + if (getLinksCount() > 0) { + hash = (37 * hash) + LINKS_FIELD_NUMBER; + hash = (53 * hash) + getLinksList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.LinkEvent parseFrom( + public static context.ContextOuterClass.LinkList parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.LinkEvent parseFrom( + public static context.ContextOuterClass.LinkList parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.LinkEvent parseFrom( + public static context.ContextOuterClass.LinkList parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.LinkEvent parseFrom( + public static context.ContextOuterClass.LinkList parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.LinkEvent parseFrom(byte[] data) + public static context.ContextOuterClass.LinkList parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.LinkEvent parseFrom( + public static context.ContextOuterClass.LinkList parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.LinkEvent parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.LinkList parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.LinkEvent parseFrom( + public static context.ContextOuterClass.LinkList 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 context.ContextOuterClass.LinkEvent parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.LinkList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.LinkEvent parseDelimitedFrom( + public static context.ContextOuterClass.LinkList 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 context.ContextOuterClass.LinkEvent parseFrom( + public static context.ContextOuterClass.LinkList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.LinkEvent parseFrom( + public static context.ContextOuterClass.LinkList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -25516,7 +25910,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.LinkEvent prototype) { + public static Builder newBuilder(context.ContextOuterClass.LinkList prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -25532,26 +25926,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.LinkEvent} + * Protobuf type {@code context.LinkList} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.LinkEvent) - context.ContextOuterClass.LinkEventOrBuilder { + // @@protoc_insertion_point(builder_implements:context.LinkList) + context.ContextOuterClass.LinkListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_LinkEvent_descriptor; + return context.ContextOuterClass.internal_static_context_LinkList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_LinkEvent_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_LinkList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.LinkEvent.class, context.ContextOuterClass.LinkEvent.Builder.class); + context.ContextOuterClass.LinkList.class, context.ContextOuterClass.LinkList.Builder.class); } - // Construct using context.ContextOuterClass.LinkEvent.newBuilder() + // Construct using context.ContextOuterClass.LinkList.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -25564,22 +25958,17 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { + getLinksFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (eventBuilder_ == null) { - event_ = null; - } else { - event_ = null; - eventBuilder_ = null; - } - if (linkIdBuilder_ == null) { - linkId_ = null; + if (linksBuilder_ == null) { + links_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); } else { - linkId_ = null; - linkIdBuilder_ = null; + linksBuilder_.clear(); } return this; } @@ -25587,17 +25976,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_LinkEvent_descriptor; + return context.ContextOuterClass.internal_static_context_LinkList_descriptor; } @java.lang.Override - public context.ContextOuterClass.LinkEvent getDefaultInstanceForType() { - return context.ContextOuterClass.LinkEvent.getDefaultInstance(); + public context.ContextOuterClass.LinkList getDefaultInstanceForType() { + return context.ContextOuterClass.LinkList.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.LinkEvent build() { - context.ContextOuterClass.LinkEvent result = buildPartial(); + public context.ContextOuterClass.LinkList build() { + context.ContextOuterClass.LinkList result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -25605,17 +25994,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.LinkEvent buildPartial() { - context.ContextOuterClass.LinkEvent result = new context.ContextOuterClass.LinkEvent(this); - if (eventBuilder_ == null) { - result.event_ = event_; - } else { - result.event_ = eventBuilder_.build(); - } - if (linkIdBuilder_ == null) { - result.linkId_ = linkId_; + public context.ContextOuterClass.LinkList buildPartial() { + context.ContextOuterClass.LinkList result = new context.ContextOuterClass.LinkList(this); + int from_bitField0_ = bitField0_; + if (linksBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + links_ = java.util.Collections.unmodifiableList(links_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.links_ = links_; } else { - result.linkId_ = linkIdBuilder_.build(); + result.links_ = linksBuilder_.build(); } onBuilt(); return result; @@ -25655,21 +26044,41 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.LinkEvent) { - return mergeFrom((context.ContextOuterClass.LinkEvent)other); + if (other instanceof context.ContextOuterClass.LinkList) { + return mergeFrom((context.ContextOuterClass.LinkList)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.LinkEvent other) { - if (other == context.ContextOuterClass.LinkEvent.getDefaultInstance()) return this; - if (other.hasEvent()) { - mergeEvent(other.getEvent()); - } - if (other.hasLinkId()) { - mergeLinkId(other.getLinkId()); + public Builder mergeFrom(context.ContextOuterClass.LinkList other) { + if (other == context.ContextOuterClass.LinkList.getDefaultInstance()) return this; + if (linksBuilder_ == null) { + if (!other.links_.isEmpty()) { + if (links_.isEmpty()) { + links_ = other.links_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureLinksIsMutable(); + links_.addAll(other.links_); + } + onChanged(); + } + } else { + if (!other.links_.isEmpty()) { + if (linksBuilder_.isEmpty()) { + linksBuilder_.dispose(); + linksBuilder_ = null; + links_ = other.links_; + bitField0_ = (bitField0_ & ~0x00000001); + linksBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getLinksFieldBuilder() : null; + } else { + linksBuilder_.addAllMessages(other.links_); + } + } } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -25686,11 +26095,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.LinkEvent parsedMessage = null; + context.ContextOuterClass.LinkList parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.LinkEvent) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.LinkList) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -25699,243 +26108,246 @@ public final class ContextOuterClass { } return this; } + private int bitField0_; + + private java.util.List<context.ContextOuterClass.Link> links_ = + java.util.Collections.emptyList(); + private void ensureLinksIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + links_ = new java.util.ArrayList<context.ContextOuterClass.Link>(links_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Link, context.ContextOuterClass.Link.Builder, context.ContextOuterClass.LinkOrBuilder> linksBuilder_; - private context.ContextOuterClass.Event event_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> eventBuilder_; /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. + * <code>repeated .context.Link links = 1;</code> */ - public boolean hasEvent() { - return eventBuilder_ != null || event_ != null; + public java.util.List<context.ContextOuterClass.Link> getLinksList() { + if (linksBuilder_ == null) { + return java.util.Collections.unmodifiableList(links_); + } else { + return linksBuilder_.getMessageList(); + } } /** - * <code>.context.Event event = 1;</code> - * @return The event. + * <code>repeated .context.Link links = 1;</code> */ - public context.ContextOuterClass.Event getEvent() { - if (eventBuilder_ == null) { - return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; + public int getLinksCount() { + if (linksBuilder_ == null) { + return links_.size(); } else { - return eventBuilder_.getMessage(); + return linksBuilder_.getCount(); } } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.Link links = 1;</code> */ - public Builder setEvent(context.ContextOuterClass.Event value) { - if (eventBuilder_ == null) { + public context.ContextOuterClass.Link getLinks(int index) { + if (linksBuilder_ == null) { + return links_.get(index); + } else { + return linksBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.Link links = 1;</code> + */ + public Builder setLinks( + int index, context.ContextOuterClass.Link value) { + if (linksBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - event_ = value; + ensureLinksIsMutable(); + links_.set(index, value); onChanged(); } else { - eventBuilder_.setMessage(value); + linksBuilder_.setMessage(index, value); } - return this; } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.Link links = 1;</code> */ - public Builder setEvent( - context.ContextOuterClass.Event.Builder builderForValue) { - if (eventBuilder_ == null) { - event_ = builderForValue.build(); + public Builder setLinks( + int index, context.ContextOuterClass.Link.Builder builderForValue) { + if (linksBuilder_ == null) { + ensureLinksIsMutable(); + links_.set(index, builderForValue.build()); onChanged(); } else { - eventBuilder_.setMessage(builderForValue.build()); + linksBuilder_.setMessage(index, builderForValue.build()); } - return this; } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.Link links = 1;</code> */ - public Builder mergeEvent(context.ContextOuterClass.Event value) { - if (eventBuilder_ == null) { - if (event_ != null) { - event_ = - context.ContextOuterClass.Event.newBuilder(event_).mergeFrom(value).buildPartial(); - } else { - event_ = value; + public Builder addLinks(context.ContextOuterClass.Link value) { + if (linksBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + ensureLinksIsMutable(); + links_.add(value); onChanged(); } else { - eventBuilder_.mergeFrom(value); + linksBuilder_.addMessage(value); } - return this; } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.Link links = 1;</code> */ - public Builder clearEvent() { - if (eventBuilder_ == null) { - event_ = null; + public Builder addLinks( + int index, context.ContextOuterClass.Link value) { + if (linksBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLinksIsMutable(); + links_.add(index, value); onChanged(); } else { - event_ = null; - eventBuilder_ = null; + linksBuilder_.addMessage(index, value); } - return this; } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.Link links = 1;</code> */ - public context.ContextOuterClass.Event.Builder getEventBuilder() { - - onChanged(); - return getEventFieldBuilder().getBuilder(); + public Builder addLinks( + context.ContextOuterClass.Link.Builder builderForValue) { + if (linksBuilder_ == null) { + ensureLinksIsMutable(); + links_.add(builderForValue.build()); + onChanged(); + } else { + linksBuilder_.addMessage(builderForValue.build()); + } + return this; } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.Link links = 1;</code> */ - public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { - if (eventBuilder_ != null) { - return eventBuilder_.getMessageOrBuilder(); + public Builder addLinks( + int index, context.ContextOuterClass.Link.Builder builderForValue) { + if (linksBuilder_ == null) { + ensureLinksIsMutable(); + links_.add(index, builderForValue.build()); + onChanged(); } else { - return event_ == null ? - context.ContextOuterClass.Event.getDefaultInstance() : event_; + linksBuilder_.addMessage(index, builderForValue.build()); } + return this; } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.Link links = 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(), - getParentForChildren(), - isClean()); - event_ = null; + public Builder addAllLinks( + java.lang.Iterable<? extends context.ContextOuterClass.Link> values) { + if (linksBuilder_ == null) { + ensureLinksIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, links_); + onChanged(); + } else { + linksBuilder_.addAllMessages(values); } - return eventBuilder_; + return this; } - - private context.ContextOuterClass.LinkId linkId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> linkIdBuilder_; /** - * <code>.context.LinkId link_id = 2;</code> - * @return Whether the linkId field is set. + * <code>repeated .context.Link links = 1;</code> */ - public boolean hasLinkId() { - return linkIdBuilder_ != null || linkId_ != null; - } - /** - * <code>.context.LinkId link_id = 2;</code> - * @return The linkId. - */ - public context.ContextOuterClass.LinkId getLinkId() { - if (linkIdBuilder_ == null) { - return linkId_ == null ? context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_; + public Builder clearLinks() { + if (linksBuilder_ == null) { + links_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); } else { - return linkIdBuilder_.getMessage(); + linksBuilder_.clear(); } + return this; } /** - * <code>.context.LinkId link_id = 2;</code> + * <code>repeated .context.Link links = 1;</code> */ - public Builder setLinkId(context.ContextOuterClass.LinkId value) { - if (linkIdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - linkId_ = value; + public Builder removeLinks(int index) { + if (linksBuilder_ == null) { + ensureLinksIsMutable(); + links_.remove(index); onChanged(); } else { - linkIdBuilder_.setMessage(value); + linksBuilder_.remove(index); } - return this; } /** - * <code>.context.LinkId link_id = 2;</code> + * <code>repeated .context.Link links = 1;</code> */ - public Builder setLinkId( - context.ContextOuterClass.LinkId.Builder builderForValue) { - if (linkIdBuilder_ == null) { - linkId_ = builderForValue.build(); - onChanged(); - } else { - linkIdBuilder_.setMessage(builderForValue.build()); - } - - return this; + public context.ContextOuterClass.Link.Builder getLinksBuilder( + int index) { + return getLinksFieldBuilder().getBuilder(index); } /** - * <code>.context.LinkId link_id = 2;</code> + * <code>repeated .context.Link links = 1;</code> */ - public Builder mergeLinkId(context.ContextOuterClass.LinkId value) { - if (linkIdBuilder_ == null) { - if (linkId_ != null) { - linkId_ = - context.ContextOuterClass.LinkId.newBuilder(linkId_).mergeFrom(value).buildPartial(); - } else { - linkId_ = value; - } - onChanged(); - } else { - linkIdBuilder_.mergeFrom(value); + public context.ContextOuterClass.LinkOrBuilder getLinksOrBuilder( + int index) { + if (linksBuilder_ == null) { + return links_.get(index); } else { + return linksBuilder_.getMessageOrBuilder(index); } - - return this; } /** - * <code>.context.LinkId link_id = 2;</code> + * <code>repeated .context.Link links = 1;</code> */ - public Builder clearLinkId() { - if (linkIdBuilder_ == null) { - linkId_ = null; - onChanged(); + public java.util.List<? extends context.ContextOuterClass.LinkOrBuilder> + getLinksOrBuilderList() { + if (linksBuilder_ != null) { + return linksBuilder_.getMessageOrBuilderList(); } else { - linkId_ = null; - linkIdBuilder_ = null; + return java.util.Collections.unmodifiableList(links_); } - - return this; } /** - * <code>.context.LinkId link_id = 2;</code> + * <code>repeated .context.Link links = 1;</code> */ - public context.ContextOuterClass.LinkId.Builder getLinkIdBuilder() { - - onChanged(); - return getLinkIdFieldBuilder().getBuilder(); + public context.ContextOuterClass.Link.Builder addLinksBuilder() { + return getLinksFieldBuilder().addBuilder( + context.ContextOuterClass.Link.getDefaultInstance()); } /** - * <code>.context.LinkId link_id = 2;</code> + * <code>repeated .context.Link links = 1;</code> */ - public context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder() { - if (linkIdBuilder_ != null) { - return linkIdBuilder_.getMessageOrBuilder(); - } else { - return linkId_ == null ? - context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_; - } + public context.ContextOuterClass.Link.Builder addLinksBuilder( + int index) { + return getLinksFieldBuilder().addBuilder( + index, context.ContextOuterClass.Link.getDefaultInstance()); } /** - * <code>.context.LinkId link_id = 2;</code> + * <code>repeated .context.Link links = 1;</code> */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> - getLinkIdFieldBuilder() { - if (linkIdBuilder_ == null) { - linkIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder>( - getLinkId(), + public java.util.List<context.ContextOuterClass.Link.Builder> + getLinksBuilderList() { + return getLinksFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Link, context.ContextOuterClass.Link.Builder, context.ContextOuterClass.LinkOrBuilder> + getLinksFieldBuilder() { + if (linksBuilder_ == null) { + linksBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Link, context.ContextOuterClass.Link.Builder, context.ContextOuterClass.LinkOrBuilder>( + links_, + ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); - linkId_ = null; + links_ = null; } - return linkIdBuilder_; + return linksBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -25950,104 +26362,100 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.LinkEvent) + // @@protoc_insertion_point(builder_scope:context.LinkList) } - // @@protoc_insertion_point(class_scope:context.LinkEvent) - private static final context.ContextOuterClass.LinkEvent DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.LinkList) + private static final context.ContextOuterClass.LinkList DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.LinkEvent(); + DEFAULT_INSTANCE = new context.ContextOuterClass.LinkList(); } - public static context.ContextOuterClass.LinkEvent getDefaultInstance() { + public static context.ContextOuterClass.LinkList getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<LinkEvent> - PARSER = new com.google.protobuf.AbstractParser<LinkEvent>() { + private static final com.google.protobuf.Parser<LinkList> + PARSER = new com.google.protobuf.AbstractParser<LinkList>() { @java.lang.Override - public LinkEvent parsePartialFrom( + public LinkList parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new LinkEvent(input, extensionRegistry); + return new LinkList(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<LinkEvent> parser() { + public static com.google.protobuf.Parser<LinkList> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<LinkEvent> getParserForType() { + public com.google.protobuf.Parser<LinkList> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.LinkEvent getDefaultInstanceForType() { + public context.ContextOuterClass.LinkList getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ServiceIdOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ServiceId) + public interface LinkEventOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.LinkEvent) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.ContextId context_id = 1;</code> - * @return Whether the contextId field is set. + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. */ - boolean hasContextId(); + boolean hasEvent(); /** - * <code>.context.ContextId context_id = 1;</code> - * @return The contextId. + * <code>.context.Event event = 1;</code> + * @return The event. */ - context.ContextOuterClass.ContextId getContextId(); + context.ContextOuterClass.Event getEvent(); /** - * <code>.context.ContextId context_id = 1;</code> + * <code>.context.Event event = 1;</code> */ - context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder(); + context.ContextOuterClass.EventOrBuilder getEventOrBuilder(); /** - * <code>.context.Uuid service_uuid = 2;</code> - * @return Whether the serviceUuid field is set. + * <code>.context.LinkId link_id = 2;</code> + * @return Whether the linkId field is set. */ - boolean hasServiceUuid(); + boolean hasLinkId(); /** - * <code>.context.Uuid service_uuid = 2;</code> - * @return The serviceUuid. + * <code>.context.LinkId link_id = 2;</code> + * @return The linkId. */ - context.ContextOuterClass.Uuid getServiceUuid(); + context.ContextOuterClass.LinkId getLinkId(); /** - * <code>.context.Uuid service_uuid = 2;</code> + * <code>.context.LinkId link_id = 2;</code> */ - context.ContextOuterClass.UuidOrBuilder getServiceUuidOrBuilder(); + context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder(); } /** - * <pre> - * ----- Service ------------------------------------------------------------------------------------------------------- - * </pre> - * - * Protobuf type {@code context.ServiceId} + * Protobuf type {@code context.LinkEvent} */ - public static final class ServiceId extends + public static final class LinkEvent extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ServiceId) - ServiceIdOrBuilder { + // @@protoc_insertion_point(message_implements:context.LinkEvent) + LinkEventOrBuilder { private static final long serialVersionUID = 0L; - // Use ServiceId.newBuilder() to construct. - private ServiceId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use LinkEvent.newBuilder() to construct. + private LinkEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ServiceId() { + private LinkEvent() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ServiceId(); + return new LinkEvent(); } @java.lang.Override @@ -26055,7 +26463,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ServiceId( + private LinkEvent( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -26074,27 +26482,27 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.ContextId.Builder subBuilder = null; - if (contextId_ != null) { - subBuilder = contextId_.toBuilder(); + context.ContextOuterClass.Event.Builder subBuilder = null; + if (event_ != null) { + subBuilder = event_.toBuilder(); } - contextId_ = input.readMessage(context.ContextOuterClass.ContextId.parser(), extensionRegistry); + event_ = input.readMessage(context.ContextOuterClass.Event.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(contextId_); - contextId_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(event_); + event_ = subBuilder.buildPartial(); } break; } case 18: { - context.ContextOuterClass.Uuid.Builder subBuilder = null; - if (serviceUuid_ != null) { - subBuilder = serviceUuid_.toBuilder(); + context.ContextOuterClass.LinkId.Builder subBuilder = null; + if (linkId_ != null) { + subBuilder = linkId_.toBuilder(); } - serviceUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); + linkId_ = input.readMessage(context.ContextOuterClass.LinkId.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(serviceUuid_); - serviceUuid_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(linkId_); + linkId_ = subBuilder.buildPartial(); } break; @@ -26120,67 +26528,67 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ServiceId_descriptor; + return context.ContextOuterClass.internal_static_context_LinkEvent_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ServiceId_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_LinkEvent_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ServiceId.class, context.ContextOuterClass.ServiceId.Builder.class); + context.ContextOuterClass.LinkEvent.class, context.ContextOuterClass.LinkEvent.Builder.class); } - public static final int CONTEXT_ID_FIELD_NUMBER = 1; - private context.ContextOuterClass.ContextId contextId_; + public static final int EVENT_FIELD_NUMBER = 1; + private context.ContextOuterClass.Event event_; /** - * <code>.context.ContextId context_id = 1;</code> - * @return Whether the contextId field is set. + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. */ @java.lang.Override - public boolean hasContextId() { - return contextId_ != null; + public boolean hasEvent() { + return event_ != null; } /** - * <code>.context.ContextId context_id = 1;</code> - * @return The contextId. + * <code>.context.Event event = 1;</code> + * @return The event. */ @java.lang.Override - public context.ContextOuterClass.ContextId getContextId() { - return contextId_ == null ? context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_; + public context.ContextOuterClass.Event getEvent() { + return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; } /** - * <code>.context.ContextId context_id = 1;</code> + * <code>.context.Event event = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder() { - return getContextId(); + public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { + return getEvent(); } - public static final int SERVICE_UUID_FIELD_NUMBER = 2; - private context.ContextOuterClass.Uuid serviceUuid_; + public static final int LINK_ID_FIELD_NUMBER = 2; + private context.ContextOuterClass.LinkId linkId_; /** - * <code>.context.Uuid service_uuid = 2;</code> - * @return Whether the serviceUuid field is set. + * <code>.context.LinkId link_id = 2;</code> + * @return Whether the linkId field is set. */ @java.lang.Override - public boolean hasServiceUuid() { - return serviceUuid_ != null; + public boolean hasLinkId() { + return linkId_ != null; } /** - * <code>.context.Uuid service_uuid = 2;</code> - * @return The serviceUuid. + * <code>.context.LinkId link_id = 2;</code> + * @return The linkId. */ @java.lang.Override - public context.ContextOuterClass.Uuid getServiceUuid() { - return serviceUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : serviceUuid_; + public context.ContextOuterClass.LinkId getLinkId() { + return linkId_ == null ? context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_; } /** - * <code>.context.Uuid service_uuid = 2;</code> + * <code>.context.LinkId link_id = 2;</code> */ @java.lang.Override - public context.ContextOuterClass.UuidOrBuilder getServiceUuidOrBuilder() { - return getServiceUuid(); + public context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder() { + return getLinkId(); } private byte memoizedIsInitialized = -1; @@ -26197,11 +26605,11 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (contextId_ != null) { - output.writeMessage(1, getContextId()); + if (event_ != null) { + output.writeMessage(1, getEvent()); } - if (serviceUuid_ != null) { - output.writeMessage(2, getServiceUuid()); + if (linkId_ != null) { + output.writeMessage(2, getLinkId()); } unknownFields.writeTo(output); } @@ -26212,13 +26620,13 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (contextId_ != null) { + if (event_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getContextId()); + .computeMessageSize(1, getEvent()); } - if (serviceUuid_ != null) { + if (linkId_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, getServiceUuid()); + .computeMessageSize(2, getLinkId()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -26230,20 +26638,20 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ServiceId)) { + if (!(obj instanceof context.ContextOuterClass.LinkEvent)) { return super.equals(obj); } - context.ContextOuterClass.ServiceId other = (context.ContextOuterClass.ServiceId) obj; + context.ContextOuterClass.LinkEvent other = (context.ContextOuterClass.LinkEvent) obj; - if (hasContextId() != other.hasContextId()) return false; - if (hasContextId()) { - if (!getContextId() - .equals(other.getContextId())) return false; + if (hasEvent() != other.hasEvent()) return false; + if (hasEvent()) { + if (!getEvent() + .equals(other.getEvent())) return false; } - if (hasServiceUuid() != other.hasServiceUuid()) return false; - if (hasServiceUuid()) { - if (!getServiceUuid() - .equals(other.getServiceUuid())) return false; + if (hasLinkId() != other.hasLinkId()) return false; + if (hasLinkId()) { + if (!getLinkId() + .equals(other.getLinkId())) return false; } if (!unknownFields.equals(other.unknownFields)) return false; return true; @@ -26256,82 +26664,82 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasContextId()) { - hash = (37 * hash) + CONTEXT_ID_FIELD_NUMBER; - hash = (53 * hash) + getContextId().hashCode(); + if (hasEvent()) { + hash = (37 * hash) + EVENT_FIELD_NUMBER; + hash = (53 * hash) + getEvent().hashCode(); } - if (hasServiceUuid()) { - hash = (37 * hash) + SERVICE_UUID_FIELD_NUMBER; - hash = (53 * hash) + getServiceUuid().hashCode(); + if (hasLinkId()) { + hash = (37 * hash) + LINK_ID_FIELD_NUMBER; + hash = (53 * hash) + getLinkId().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ServiceId parseFrom( + public static context.ContextOuterClass.LinkEvent parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceId parseFrom( + public static context.ContextOuterClass.LinkEvent parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceId parseFrom( + public static context.ContextOuterClass.LinkEvent parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceId parseFrom( + public static context.ContextOuterClass.LinkEvent parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceId parseFrom(byte[] data) + public static context.ContextOuterClass.LinkEvent parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceId parseFrom( + public static context.ContextOuterClass.LinkEvent parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceId parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.LinkEvent parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceId parseFrom( + public static context.ContextOuterClass.LinkEvent 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 context.ContextOuterClass.ServiceId parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.LinkEvent parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceId parseDelimitedFrom( + public static context.ContextOuterClass.LinkEvent 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 context.ContextOuterClass.ServiceId parseFrom( + public static context.ContextOuterClass.LinkEvent parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceId parseFrom( + public static context.ContextOuterClass.LinkEvent parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -26344,7 +26752,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ServiceId prototype) { + public static Builder newBuilder(context.ContextOuterClass.LinkEvent prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -26360,30 +26768,26 @@ public final class ContextOuterClass { return builder; } /** - * <pre> - * ----- Service ------------------------------------------------------------------------------------------------------- - * </pre> - * - * Protobuf type {@code context.ServiceId} + * Protobuf type {@code context.LinkEvent} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ServiceId) - context.ContextOuterClass.ServiceIdOrBuilder { + // @@protoc_insertion_point(builder_implements:context.LinkEvent) + context.ContextOuterClass.LinkEventOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ServiceId_descriptor; + return context.ContextOuterClass.internal_static_context_LinkEvent_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ServiceId_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_LinkEvent_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ServiceId.class, context.ContextOuterClass.ServiceId.Builder.class); + context.ContextOuterClass.LinkEvent.class, context.ContextOuterClass.LinkEvent.Builder.class); } - // Construct using context.ContextOuterClass.ServiceId.newBuilder() + // Construct using context.ContextOuterClass.LinkEvent.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -26401,17 +26805,17 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - if (contextIdBuilder_ == null) { - contextId_ = null; + if (eventBuilder_ == null) { + event_ = null; } else { - contextId_ = null; - contextIdBuilder_ = null; + event_ = null; + eventBuilder_ = null; } - if (serviceUuidBuilder_ == null) { - serviceUuid_ = null; + if (linkIdBuilder_ == null) { + linkId_ = null; } else { - serviceUuid_ = null; - serviceUuidBuilder_ = null; + linkId_ = null; + linkIdBuilder_ = null; } return this; } @@ -26419,17 +26823,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ServiceId_descriptor; + return context.ContextOuterClass.internal_static_context_LinkEvent_descriptor; } @java.lang.Override - public context.ContextOuterClass.ServiceId getDefaultInstanceForType() { - return context.ContextOuterClass.ServiceId.getDefaultInstance(); + public context.ContextOuterClass.LinkEvent getDefaultInstanceForType() { + return context.ContextOuterClass.LinkEvent.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ServiceId build() { - context.ContextOuterClass.ServiceId result = buildPartial(); + public context.ContextOuterClass.LinkEvent build() { + context.ContextOuterClass.LinkEvent result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -26437,17 +26841,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ServiceId buildPartial() { - context.ContextOuterClass.ServiceId result = new context.ContextOuterClass.ServiceId(this); - if (contextIdBuilder_ == null) { - result.contextId_ = contextId_; + public context.ContextOuterClass.LinkEvent buildPartial() { + context.ContextOuterClass.LinkEvent result = new context.ContextOuterClass.LinkEvent(this); + if (eventBuilder_ == null) { + result.event_ = event_; } else { - result.contextId_ = contextIdBuilder_.build(); + result.event_ = eventBuilder_.build(); } - if (serviceUuidBuilder_ == null) { - result.serviceUuid_ = serviceUuid_; + if (linkIdBuilder_ == null) { + result.linkId_ = linkId_; } else { - result.serviceUuid_ = serviceUuidBuilder_.build(); + result.linkId_ = linkIdBuilder_.build(); } onBuilt(); return result; @@ -26487,21 +26891,21 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ServiceId) { - return mergeFrom((context.ContextOuterClass.ServiceId)other); + if (other instanceof context.ContextOuterClass.LinkEvent) { + return mergeFrom((context.ContextOuterClass.LinkEvent)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ServiceId other) { - if (other == context.ContextOuterClass.ServiceId.getDefaultInstance()) return this; - if (other.hasContextId()) { - mergeContextId(other.getContextId()); + public Builder mergeFrom(context.ContextOuterClass.LinkEvent other) { + if (other == context.ContextOuterClass.LinkEvent.getDefaultInstance()) return this; + if (other.hasEvent()) { + mergeEvent(other.getEvent()); } - if (other.hasServiceUuid()) { - mergeServiceUuid(other.getServiceUuid()); + if (other.hasLinkId()) { + mergeLinkId(other.getLinkId()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -26518,11 +26922,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ServiceId parsedMessage = null; + context.ContextOuterClass.LinkEvent parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ServiceId) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.LinkEvent) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -26532,242 +26936,242 @@ public final class ContextOuterClass { return this; } - private context.ContextOuterClass.ContextId contextId_; + private context.ContextOuterClass.Event event_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder> contextIdBuilder_; + context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> eventBuilder_; /** - * <code>.context.ContextId context_id = 1;</code> - * @return Whether the contextId field is set. + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. */ - public boolean hasContextId() { - return contextIdBuilder_ != null || contextId_ != null; + public boolean hasEvent() { + return eventBuilder_ != null || event_ != null; } /** - * <code>.context.ContextId context_id = 1;</code> - * @return The contextId. + * <code>.context.Event event = 1;</code> + * @return The event. */ - public context.ContextOuterClass.ContextId getContextId() { - if (contextIdBuilder_ == null) { - return contextId_ == null ? context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_; + public context.ContextOuterClass.Event getEvent() { + if (eventBuilder_ == null) { + return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; } else { - return contextIdBuilder_.getMessage(); + return eventBuilder_.getMessage(); } } /** - * <code>.context.ContextId context_id = 1;</code> + * <code>.context.Event event = 1;</code> */ - public Builder setContextId(context.ContextOuterClass.ContextId value) { - if (contextIdBuilder_ == null) { + public Builder setEvent(context.ContextOuterClass.Event value) { + if (eventBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - contextId_ = value; + event_ = value; onChanged(); } else { - contextIdBuilder_.setMessage(value); + eventBuilder_.setMessage(value); } return this; } /** - * <code>.context.ContextId context_id = 1;</code> + * <code>.context.Event event = 1;</code> */ - public Builder setContextId( - context.ContextOuterClass.ContextId.Builder builderForValue) { - if (contextIdBuilder_ == null) { - contextId_ = builderForValue.build(); + public Builder setEvent( + context.ContextOuterClass.Event.Builder builderForValue) { + if (eventBuilder_ == null) { + event_ = builderForValue.build(); onChanged(); } else { - contextIdBuilder_.setMessage(builderForValue.build()); + eventBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.ContextId context_id = 1;</code> + * <code>.context.Event event = 1;</code> */ - public Builder mergeContextId(context.ContextOuterClass.ContextId value) { - if (contextIdBuilder_ == null) { - if (contextId_ != null) { - contextId_ = - context.ContextOuterClass.ContextId.newBuilder(contextId_).mergeFrom(value).buildPartial(); + public Builder mergeEvent(context.ContextOuterClass.Event value) { + if (eventBuilder_ == null) { + if (event_ != null) { + event_ = + context.ContextOuterClass.Event.newBuilder(event_).mergeFrom(value).buildPartial(); } else { - contextId_ = value; + event_ = value; } onChanged(); } else { - contextIdBuilder_.mergeFrom(value); + eventBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.ContextId context_id = 1;</code> + * <code>.context.Event event = 1;</code> */ - public Builder clearContextId() { - if (contextIdBuilder_ == null) { - contextId_ = null; - onChanged(); - } else { - contextId_ = null; - contextIdBuilder_ = null; + public Builder clearEvent() { + if (eventBuilder_ == null) { + event_ = null; + onChanged(); + } else { + event_ = null; + eventBuilder_ = null; } return this; } /** - * <code>.context.ContextId context_id = 1;</code> + * <code>.context.Event event = 1;</code> */ - public context.ContextOuterClass.ContextId.Builder getContextIdBuilder() { + public context.ContextOuterClass.Event.Builder getEventBuilder() { onChanged(); - return getContextIdFieldBuilder().getBuilder(); + return getEventFieldBuilder().getBuilder(); } /** - * <code>.context.ContextId context_id = 1;</code> + * <code>.context.Event event = 1;</code> */ - public context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder() { - if (contextIdBuilder_ != null) { - return contextIdBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { + if (eventBuilder_ != null) { + return eventBuilder_.getMessageOrBuilder(); } else { - return contextId_ == null ? - context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_; + return event_ == null ? + context.ContextOuterClass.Event.getDefaultInstance() : event_; } } /** - * <code>.context.ContextId context_id = 1;</code> + * <code>.context.Event event = 1;</code> */ private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder> - getContextIdFieldBuilder() { - if (contextIdBuilder_ == null) { - contextIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder>( - getContextId(), + 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(), getParentForChildren(), isClean()); - contextId_ = null; + event_ = null; } - return contextIdBuilder_; + return eventBuilder_; } - private context.ContextOuterClass.Uuid serviceUuid_; + private context.ContextOuterClass.LinkId linkId_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> serviceUuidBuilder_; + context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> linkIdBuilder_; /** - * <code>.context.Uuid service_uuid = 2;</code> - * @return Whether the serviceUuid field is set. + * <code>.context.LinkId link_id = 2;</code> + * @return Whether the linkId field is set. */ - public boolean hasServiceUuid() { - return serviceUuidBuilder_ != null || serviceUuid_ != null; + public boolean hasLinkId() { + return linkIdBuilder_ != null || linkId_ != null; } /** - * <code>.context.Uuid service_uuid = 2;</code> - * @return The serviceUuid. + * <code>.context.LinkId link_id = 2;</code> + * @return The linkId. */ - public context.ContextOuterClass.Uuid getServiceUuid() { - if (serviceUuidBuilder_ == null) { - return serviceUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : serviceUuid_; + public context.ContextOuterClass.LinkId getLinkId() { + if (linkIdBuilder_ == null) { + return linkId_ == null ? context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_; } else { - return serviceUuidBuilder_.getMessage(); + return linkIdBuilder_.getMessage(); } } /** - * <code>.context.Uuid service_uuid = 2;</code> + * <code>.context.LinkId link_id = 2;</code> */ - public Builder setServiceUuid(context.ContextOuterClass.Uuid value) { - if (serviceUuidBuilder_ == null) { + public Builder setLinkId(context.ContextOuterClass.LinkId value) { + if (linkIdBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - serviceUuid_ = value; + linkId_ = value; onChanged(); } else { - serviceUuidBuilder_.setMessage(value); + linkIdBuilder_.setMessage(value); } return this; } /** - * <code>.context.Uuid service_uuid = 2;</code> + * <code>.context.LinkId link_id = 2;</code> */ - public Builder setServiceUuid( - context.ContextOuterClass.Uuid.Builder builderForValue) { - if (serviceUuidBuilder_ == null) { - serviceUuid_ = builderForValue.build(); + public Builder setLinkId( + context.ContextOuterClass.LinkId.Builder builderForValue) { + if (linkIdBuilder_ == null) { + linkId_ = builderForValue.build(); onChanged(); } else { - serviceUuidBuilder_.setMessage(builderForValue.build()); + linkIdBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.Uuid service_uuid = 2;</code> + * <code>.context.LinkId link_id = 2;</code> */ - public Builder mergeServiceUuid(context.ContextOuterClass.Uuid value) { - if (serviceUuidBuilder_ == null) { - if (serviceUuid_ != null) { - serviceUuid_ = - context.ContextOuterClass.Uuid.newBuilder(serviceUuid_).mergeFrom(value).buildPartial(); + public Builder mergeLinkId(context.ContextOuterClass.LinkId value) { + if (linkIdBuilder_ == null) { + if (linkId_ != null) { + linkId_ = + context.ContextOuterClass.LinkId.newBuilder(linkId_).mergeFrom(value).buildPartial(); } else { - serviceUuid_ = value; + linkId_ = value; } onChanged(); } else { - serviceUuidBuilder_.mergeFrom(value); + linkIdBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.Uuid service_uuid = 2;</code> + * <code>.context.LinkId link_id = 2;</code> */ - public Builder clearServiceUuid() { - if (serviceUuidBuilder_ == null) { - serviceUuid_ = null; + public Builder clearLinkId() { + if (linkIdBuilder_ == null) { + linkId_ = null; onChanged(); } else { - serviceUuid_ = null; - serviceUuidBuilder_ = null; + linkId_ = null; + linkIdBuilder_ = null; } return this; } /** - * <code>.context.Uuid service_uuid = 2;</code> + * <code>.context.LinkId link_id = 2;</code> */ - public context.ContextOuterClass.Uuid.Builder getServiceUuidBuilder() { + public context.ContextOuterClass.LinkId.Builder getLinkIdBuilder() { onChanged(); - return getServiceUuidFieldBuilder().getBuilder(); + return getLinkIdFieldBuilder().getBuilder(); } /** - * <code>.context.Uuid service_uuid = 2;</code> + * <code>.context.LinkId link_id = 2;</code> */ - public context.ContextOuterClass.UuidOrBuilder getServiceUuidOrBuilder() { - if (serviceUuidBuilder_ != null) { - return serviceUuidBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder() { + if (linkIdBuilder_ != null) { + return linkIdBuilder_.getMessageOrBuilder(); } else { - return serviceUuid_ == null ? - context.ContextOuterClass.Uuid.getDefaultInstance() : serviceUuid_; + return linkId_ == null ? + context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_; } } /** - * <code>.context.Uuid service_uuid = 2;</code> + * <code>.context.LinkId link_id = 2;</code> */ private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> - getServiceUuidFieldBuilder() { - if (serviceUuidBuilder_ == null) { - serviceUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>( - getServiceUuid(), + context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> + getLinkIdFieldBuilder() { + if (linkIdBuilder_ == null) { + linkIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder>( + getLinkId(), getParentForChildren(), isClean()); - serviceUuid_ = null; + linkId_ = null; } - return serviceUuidBuilder_; + return linkIdBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -26782,205 +27186,104 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ServiceId) + // @@protoc_insertion_point(builder_scope:context.LinkEvent) } - // @@protoc_insertion_point(class_scope:context.ServiceId) - private static final context.ContextOuterClass.ServiceId DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.LinkEvent) + private static final context.ContextOuterClass.LinkEvent DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceId(); + DEFAULT_INSTANCE = new context.ContextOuterClass.LinkEvent(); } - public static context.ContextOuterClass.ServiceId getDefaultInstance() { + public static context.ContextOuterClass.LinkEvent getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ServiceId> - PARSER = new com.google.protobuf.AbstractParser<ServiceId>() { + private static final com.google.protobuf.Parser<LinkEvent> + PARSER = new com.google.protobuf.AbstractParser<LinkEvent>() { @java.lang.Override - public ServiceId parsePartialFrom( + public LinkEvent parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ServiceId(input, extensionRegistry); + return new LinkEvent(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ServiceId> parser() { + public static com.google.protobuf.Parser<LinkEvent> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ServiceId> getParserForType() { + public com.google.protobuf.Parser<LinkEvent> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ServiceId getDefaultInstanceForType() { + public context.ContextOuterClass.LinkEvent getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ServiceOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Service) + public interface ServiceIdOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ServiceId) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.ServiceId service_id = 1;</code> - * @return Whether the serviceId field is set. - */ - boolean hasServiceId(); - /** - * <code>.context.ServiceId service_id = 1;</code> - * @return The serviceId. - */ - context.ContextOuterClass.ServiceId getServiceId(); - /** - * <code>.context.ServiceId service_id = 1;</code> - */ - context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder(); - - /** - * <code>string name = 2;</code> - * @return The name. - */ - java.lang.String getName(); - /** - * <code>string name = 2;</code> - * @return The bytes for name. - */ - com.google.protobuf.ByteString - getNameBytes(); - - /** - * <code>.context.ServiceTypeEnum service_type = 3;</code> - * @return The enum numeric value on the wire for serviceType. - */ - int getServiceTypeValue(); - /** - * <code>.context.ServiceTypeEnum service_type = 3;</code> - * @return The serviceType. - */ - context.ContextOuterClass.ServiceTypeEnum getServiceType(); - - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> - */ - java.util.List<context.ContextOuterClass.EndPointId> - getServiceEndpointIdsList(); - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> - */ - context.ContextOuterClass.EndPointId getServiceEndpointIds(int index); - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> - */ - int getServiceEndpointIdsCount(); - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> - */ - java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> - getServiceEndpointIdsOrBuilderList(); - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> - */ - context.ContextOuterClass.EndPointIdOrBuilder getServiceEndpointIdsOrBuilder( - int index); - - /** - * <code>repeated .context.Constraint service_constraints = 5;</code> - */ - java.util.List<context.ContextOuterClass.Constraint> - getServiceConstraintsList(); - /** - * <code>repeated .context.Constraint service_constraints = 5;</code> - */ - context.ContextOuterClass.Constraint getServiceConstraints(int index); - /** - * <code>repeated .context.Constraint service_constraints = 5;</code> - */ - int getServiceConstraintsCount(); - /** - * <code>repeated .context.Constraint service_constraints = 5;</code> - */ - java.util.List<? extends context.ContextOuterClass.ConstraintOrBuilder> - getServiceConstraintsOrBuilderList(); - /** - * <code>repeated .context.Constraint service_constraints = 5;</code> - */ - context.ContextOuterClass.ConstraintOrBuilder getServiceConstraintsOrBuilder( - int index); - - /** - * <code>.context.ServiceStatus service_status = 6;</code> - * @return Whether the serviceStatus field is set. - */ - boolean hasServiceStatus(); - /** - * <code>.context.ServiceStatus service_status = 6;</code> - * @return The serviceStatus. - */ - context.ContextOuterClass.ServiceStatus getServiceStatus(); - /** - * <code>.context.ServiceStatus service_status = 6;</code> - */ - context.ContextOuterClass.ServiceStatusOrBuilder getServiceStatusOrBuilder(); - - /** - * <code>.context.ServiceConfig service_config = 7;</code> - * @return Whether the serviceConfig field is set. + * <code>.context.ContextId context_id = 1;</code> + * @return Whether the contextId field is set. */ - boolean hasServiceConfig(); + boolean hasContextId(); /** - * <code>.context.ServiceConfig service_config = 7;</code> - * @return The serviceConfig. + * <code>.context.ContextId context_id = 1;</code> + * @return The contextId. */ - context.ContextOuterClass.ServiceConfig getServiceConfig(); + context.ContextOuterClass.ContextId getContextId(); /** - * <code>.context.ServiceConfig service_config = 7;</code> + * <code>.context.ContextId context_id = 1;</code> */ - context.ContextOuterClass.ServiceConfigOrBuilder getServiceConfigOrBuilder(); + context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder(); /** - * <code>.context.Timestamp timestamp = 8;</code> - * @return Whether the timestamp field is set. + * <code>.context.Uuid service_uuid = 2;</code> + * @return Whether the serviceUuid field is set. */ - boolean hasTimestamp(); + boolean hasServiceUuid(); /** - * <code>.context.Timestamp timestamp = 8;</code> - * @return The timestamp. + * <code>.context.Uuid service_uuid = 2;</code> + * @return The serviceUuid. */ - context.ContextOuterClass.Timestamp getTimestamp(); + context.ContextOuterClass.Uuid getServiceUuid(); /** - * <code>.context.Timestamp timestamp = 8;</code> + * <code>.context.Uuid service_uuid = 2;</code> */ - context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder(); + context.ContextOuterClass.UuidOrBuilder getServiceUuidOrBuilder(); } /** - * Protobuf type {@code context.Service} + * <pre> + * ----- Service ------------------------------------------------------------------------------------------------------- + * </pre> + * + * Protobuf type {@code context.ServiceId} */ - public static final class Service extends + public static final class ServiceId extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Service) - ServiceOrBuilder { + // @@protoc_insertion_point(message_implements:context.ServiceId) + ServiceIdOrBuilder { private static final long serialVersionUID = 0L; - // Use Service.newBuilder() to construct. - private Service(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ServiceId.newBuilder() to construct. + private ServiceId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private Service() { - name_ = ""; - serviceType_ = 0; - serviceEndpointIds_ = java.util.Collections.emptyList(); - serviceConstraints_ = java.util.Collections.emptyList(); + private ServiceId() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new Service(); + return new ServiceId(); } @java.lang.Override @@ -26988,7 +27291,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private Service( + private ServiceId( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -26996,7 +27299,6 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } - int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -27008,83 +27310,27 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.ServiceId.Builder subBuilder = null; - if (serviceId_ != null) { - subBuilder = serviceId_.toBuilder(); + context.ContextOuterClass.ContextId.Builder subBuilder = null; + if (contextId_ != null) { + subBuilder = contextId_.toBuilder(); } - serviceId_ = input.readMessage(context.ContextOuterClass.ServiceId.parser(), extensionRegistry); + contextId_ = input.readMessage(context.ContextOuterClass.ContextId.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(serviceId_); - serviceId_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(contextId_); + contextId_ = subBuilder.buildPartial(); } break; } case 18: { - java.lang.String s = input.readStringRequireUtf8(); - - name_ = s; - break; - } - case 24: { - int rawValue = input.readEnum(); - - serviceType_ = rawValue; - break; - } - case 34: { - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - serviceEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(); - mutable_bitField0_ |= 0x00000001; - } - serviceEndpointIds_.add( - input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry)); - break; - } - case 42: { - if (!((mutable_bitField0_ & 0x00000002) != 0)) { - serviceConstraints_ = new java.util.ArrayList<context.ContextOuterClass.Constraint>(); - mutable_bitField0_ |= 0x00000002; - } - serviceConstraints_.add( - input.readMessage(context.ContextOuterClass.Constraint.parser(), extensionRegistry)); - break; - } - case 50: { - context.ContextOuterClass.ServiceStatus.Builder subBuilder = null; - if (serviceStatus_ != null) { - subBuilder = serviceStatus_.toBuilder(); - } - serviceStatus_ = input.readMessage(context.ContextOuterClass.ServiceStatus.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(serviceStatus_); - serviceStatus_ = subBuilder.buildPartial(); - } - - break; - } - case 58: { - context.ContextOuterClass.ServiceConfig.Builder subBuilder = null; - if (serviceConfig_ != null) { - subBuilder = serviceConfig_.toBuilder(); - } - serviceConfig_ = input.readMessage(context.ContextOuterClass.ServiceConfig.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(serviceConfig_); - serviceConfig_ = subBuilder.buildPartial(); - } - - break; - } - case 66: { - context.ContextOuterClass.Timestamp.Builder subBuilder = null; - if (timestamp_ != null) { - subBuilder = timestamp_.toBuilder(); + context.ContextOuterClass.Uuid.Builder subBuilder = null; + if (serviceUuid_ != null) { + subBuilder = serviceUuid_.toBuilder(); } - timestamp_ = input.readMessage(context.ContextOuterClass.Timestamp.parser(), extensionRegistry); + serviceUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(timestamp_); - timestamp_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(serviceUuid_); + serviceUuid_ = subBuilder.buildPartial(); } break; @@ -27104,268 +27350,73 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { - if (((mutable_bitField0_ & 0x00000001) != 0)) { - serviceEndpointIds_ = java.util.Collections.unmodifiableList(serviceEndpointIds_); - } - if (((mutable_bitField0_ & 0x00000002) != 0)) { - serviceConstraints_ = java.util.Collections.unmodifiableList(serviceConstraints_); - } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Service_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceId_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Service_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ServiceId_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Service.class, context.ContextOuterClass.Service.Builder.class); + context.ContextOuterClass.ServiceId.class, context.ContextOuterClass.ServiceId.Builder.class); } - public static final int SERVICE_ID_FIELD_NUMBER = 1; - private context.ContextOuterClass.ServiceId serviceId_; + public static final int CONTEXT_ID_FIELD_NUMBER = 1; + private context.ContextOuterClass.ContextId contextId_; /** - * <code>.context.ServiceId service_id = 1;</code> - * @return Whether the serviceId field is set. + * <code>.context.ContextId context_id = 1;</code> + * @return Whether the contextId field is set. */ @java.lang.Override - public boolean hasServiceId() { - return serviceId_ != null; + public boolean hasContextId() { + return contextId_ != null; } /** - * <code>.context.ServiceId service_id = 1;</code> - * @return The serviceId. + * <code>.context.ContextId context_id = 1;</code> + * @return The contextId. */ @java.lang.Override - public context.ContextOuterClass.ServiceId getServiceId() { - return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; + public context.ContextOuterClass.ContextId getContextId() { + return contextId_ == null ? context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_; } /** - * <code>.context.ServiceId service_id = 1;</code> + * <code>.context.ContextId context_id = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() { - return getServiceId(); + public context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder() { + return getContextId(); } - public static final int NAME_FIELD_NUMBER = 2; - private volatile java.lang.Object name_; + public static final int SERVICE_UUID_FIELD_NUMBER = 2; + private context.ContextOuterClass.Uuid serviceUuid_; /** - * <code>string name = 2;</code> - * @return The name. + * <code>.context.Uuid service_uuid = 2;</code> + * @return Whether the serviceUuid field is set. */ @java.lang.Override - public java.lang.String getName() { - java.lang.Object ref = name_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - name_ = s; - return s; - } + public boolean hasServiceUuid() { + return serviceUuid_ != null; } /** - * <code>string name = 2;</code> - * @return The bytes for name. + * <code>.context.Uuid service_uuid = 2;</code> + * @return The serviceUuid. */ @java.lang.Override - public com.google.protobuf.ByteString - getNameBytes() { - java.lang.Object ref = name_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - name_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public context.ContextOuterClass.Uuid getServiceUuid() { + return serviceUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : serviceUuid_; } - - public static final int SERVICE_TYPE_FIELD_NUMBER = 3; - private int serviceType_; /** - * <code>.context.ServiceTypeEnum service_type = 3;</code> - * @return The enum numeric value on the wire for serviceType. + * <code>.context.Uuid service_uuid = 2;</code> */ - @java.lang.Override public int getServiceTypeValue() { - return serviceType_; - } - /** - * <code>.context.ServiceTypeEnum service_type = 3;</code> - * @return The serviceType. - */ - @java.lang.Override public context.ContextOuterClass.ServiceTypeEnum getServiceType() { - @SuppressWarnings("deprecation") - context.ContextOuterClass.ServiceTypeEnum result = context.ContextOuterClass.ServiceTypeEnum.valueOf(serviceType_); - return result == null ? context.ContextOuterClass.ServiceTypeEnum.UNRECOGNIZED : result; - } - - public static final int SERVICE_ENDPOINT_IDS_FIELD_NUMBER = 4; - private java.util.List<context.ContextOuterClass.EndPointId> serviceEndpointIds_; - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> - */ - @java.lang.Override - public java.util.List<context.ContextOuterClass.EndPointId> getServiceEndpointIdsList() { - return serviceEndpointIds_; - } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> - */ - @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> - getServiceEndpointIdsOrBuilderList() { - return serviceEndpointIds_; - } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> - */ - @java.lang.Override - public int getServiceEndpointIdsCount() { - return serviceEndpointIds_.size(); - } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> - */ - @java.lang.Override - public context.ContextOuterClass.EndPointId getServiceEndpointIds(int index) { - return serviceEndpointIds_.get(index); - } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> - */ - @java.lang.Override - public context.ContextOuterClass.EndPointIdOrBuilder getServiceEndpointIdsOrBuilder( - int index) { - return serviceEndpointIds_.get(index); - } - - public static final int SERVICE_CONSTRAINTS_FIELD_NUMBER = 5; - private java.util.List<context.ContextOuterClass.Constraint> serviceConstraints_; - /** - * <code>repeated .context.Constraint service_constraints = 5;</code> - */ - @java.lang.Override - public java.util.List<context.ContextOuterClass.Constraint> getServiceConstraintsList() { - return serviceConstraints_; - } - /** - * <code>repeated .context.Constraint service_constraints = 5;</code> - */ - @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.ConstraintOrBuilder> - getServiceConstraintsOrBuilderList() { - return serviceConstraints_; - } - /** - * <code>repeated .context.Constraint service_constraints = 5;</code> - */ - @java.lang.Override - public int getServiceConstraintsCount() { - return serviceConstraints_.size(); - } - /** - * <code>repeated .context.Constraint service_constraints = 5;</code> - */ - @java.lang.Override - public context.ContextOuterClass.Constraint getServiceConstraints(int index) { - return serviceConstraints_.get(index); - } - /** - * <code>repeated .context.Constraint service_constraints = 5;</code> - */ - @java.lang.Override - public context.ContextOuterClass.ConstraintOrBuilder getServiceConstraintsOrBuilder( - int index) { - return serviceConstraints_.get(index); - } - - public static final int SERVICE_STATUS_FIELD_NUMBER = 6; - private context.ContextOuterClass.ServiceStatus serviceStatus_; - /** - * <code>.context.ServiceStatus service_status = 6;</code> - * @return Whether the serviceStatus field is set. - */ - @java.lang.Override - public boolean hasServiceStatus() { - return serviceStatus_ != null; - } - /** - * <code>.context.ServiceStatus service_status = 6;</code> - * @return The serviceStatus. - */ - @java.lang.Override - public context.ContextOuterClass.ServiceStatus getServiceStatus() { - return serviceStatus_ == null ? context.ContextOuterClass.ServiceStatus.getDefaultInstance() : serviceStatus_; - } - /** - * <code>.context.ServiceStatus service_status = 6;</code> - */ - @java.lang.Override - public context.ContextOuterClass.ServiceStatusOrBuilder getServiceStatusOrBuilder() { - return getServiceStatus(); - } - - public static final int SERVICE_CONFIG_FIELD_NUMBER = 7; - private context.ContextOuterClass.ServiceConfig serviceConfig_; - /** - * <code>.context.ServiceConfig service_config = 7;</code> - * @return Whether the serviceConfig field is set. - */ - @java.lang.Override - public boolean hasServiceConfig() { - return serviceConfig_ != null; - } - /** - * <code>.context.ServiceConfig service_config = 7;</code> - * @return The serviceConfig. - */ - @java.lang.Override - public context.ContextOuterClass.ServiceConfig getServiceConfig() { - return serviceConfig_ == null ? context.ContextOuterClass.ServiceConfig.getDefaultInstance() : serviceConfig_; - } - /** - * <code>.context.ServiceConfig service_config = 7;</code> - */ - @java.lang.Override - public context.ContextOuterClass.ServiceConfigOrBuilder getServiceConfigOrBuilder() { - return getServiceConfig(); - } - - public static final int TIMESTAMP_FIELD_NUMBER = 8; - private context.ContextOuterClass.Timestamp timestamp_; - /** - * <code>.context.Timestamp timestamp = 8;</code> - * @return Whether the timestamp field is set. - */ - @java.lang.Override - public boolean hasTimestamp() { - return timestamp_ != null; - } - /** - * <code>.context.Timestamp timestamp = 8;</code> - * @return The timestamp. - */ - @java.lang.Override - public context.ContextOuterClass.Timestamp getTimestamp() { - return timestamp_ == null ? context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_; - } - /** - * <code>.context.Timestamp timestamp = 8;</code> - */ - @java.lang.Override - public context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder() { - return getTimestamp(); + @java.lang.Override + public context.ContextOuterClass.UuidOrBuilder getServiceUuidOrBuilder() { + return getServiceUuid(); } private byte memoizedIsInitialized = -1; @@ -27382,29 +27433,11 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (serviceId_ != null) { - output.writeMessage(1, getServiceId()); - } - if (!getNameBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_); - } - if (serviceType_ != context.ContextOuterClass.ServiceTypeEnum.SERVICETYPE_UNKNOWN.getNumber()) { - output.writeEnum(3, serviceType_); - } - for (int i = 0; i < serviceEndpointIds_.size(); i++) { - output.writeMessage(4, serviceEndpointIds_.get(i)); - } - for (int i = 0; i < serviceConstraints_.size(); i++) { - output.writeMessage(5, serviceConstraints_.get(i)); - } - if (serviceStatus_ != null) { - output.writeMessage(6, getServiceStatus()); - } - if (serviceConfig_ != null) { - output.writeMessage(7, getServiceConfig()); + if (contextId_ != null) { + output.writeMessage(1, getContextId()); } - if (timestamp_ != null) { - output.writeMessage(8, getTimestamp()); + if (serviceUuid_ != null) { + output.writeMessage(2, getServiceUuid()); } unknownFields.writeTo(output); } @@ -27415,36 +27448,13 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (serviceId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getServiceId()); - } - if (!getNameBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_); - } - if (serviceType_ != context.ContextOuterClass.ServiceTypeEnum.SERVICETYPE_UNKNOWN.getNumber()) { - size += com.google.protobuf.CodedOutputStream - .computeEnumSize(3, serviceType_); - } - for (int i = 0; i < serviceEndpointIds_.size(); i++) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(4, serviceEndpointIds_.get(i)); - } - for (int i = 0; i < serviceConstraints_.size(); i++) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(5, serviceConstraints_.get(i)); - } - if (serviceStatus_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(6, getServiceStatus()); - } - if (serviceConfig_ != null) { + if (contextId_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(7, getServiceConfig()); + .computeMessageSize(1, getContextId()); } - if (timestamp_ != null) { + if (serviceUuid_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(8, getTimestamp()); + .computeMessageSize(2, getServiceUuid()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -27456,37 +27466,20 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.Service)) { + if (!(obj instanceof context.ContextOuterClass.ServiceId)) { return super.equals(obj); } - context.ContextOuterClass.Service other = (context.ContextOuterClass.Service) obj; + context.ContextOuterClass.ServiceId other = (context.ContextOuterClass.ServiceId) obj; - if (hasServiceId() != other.hasServiceId()) return false; - if (hasServiceId()) { - if (!getServiceId() - .equals(other.getServiceId())) return false; - } - if (!getName() - .equals(other.getName())) return false; - if (serviceType_ != other.serviceType_) return false; - if (!getServiceEndpointIdsList() - .equals(other.getServiceEndpointIdsList())) return false; - if (!getServiceConstraintsList() - .equals(other.getServiceConstraintsList())) return false; - if (hasServiceStatus() != other.hasServiceStatus()) return false; - if (hasServiceStatus()) { - if (!getServiceStatus() - .equals(other.getServiceStatus())) return false; - } - if (hasServiceConfig() != other.hasServiceConfig()) return false; - if (hasServiceConfig()) { - if (!getServiceConfig() - .equals(other.getServiceConfig())) return false; + if (hasContextId() != other.hasContextId()) return false; + if (hasContextId()) { + if (!getContextId() + .equals(other.getContextId())) return false; } - if (hasTimestamp() != other.hasTimestamp()) return false; - if (hasTimestamp()) { - if (!getTimestamp() - .equals(other.getTimestamp())) return false; + if (hasServiceUuid() != other.hasServiceUuid()) return false; + if (hasServiceUuid()) { + if (!getServiceUuid() + .equals(other.getServiceUuid())) return false; } if (!unknownFields.equals(other.unknownFields)) return false; return true; @@ -27499,102 +27492,82 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasServiceId()) { - hash = (37 * hash) + SERVICE_ID_FIELD_NUMBER; - hash = (53 * hash) + getServiceId().hashCode(); - } - hash = (37 * hash) + NAME_FIELD_NUMBER; - hash = (53 * hash) + getName().hashCode(); - hash = (37 * hash) + SERVICE_TYPE_FIELD_NUMBER; - hash = (53 * hash) + serviceType_; - if (getServiceEndpointIdsCount() > 0) { - hash = (37 * hash) + SERVICE_ENDPOINT_IDS_FIELD_NUMBER; - hash = (53 * hash) + getServiceEndpointIdsList().hashCode(); - } - if (getServiceConstraintsCount() > 0) { - hash = (37 * hash) + SERVICE_CONSTRAINTS_FIELD_NUMBER; - hash = (53 * hash) + getServiceConstraintsList().hashCode(); - } - if (hasServiceStatus()) { - hash = (37 * hash) + SERVICE_STATUS_FIELD_NUMBER; - hash = (53 * hash) + getServiceStatus().hashCode(); - } - if (hasServiceConfig()) { - hash = (37 * hash) + SERVICE_CONFIG_FIELD_NUMBER; - hash = (53 * hash) + getServiceConfig().hashCode(); + if (hasContextId()) { + hash = (37 * hash) + CONTEXT_ID_FIELD_NUMBER; + hash = (53 * hash) + getContextId().hashCode(); } - if (hasTimestamp()) { - hash = (37 * hash) + TIMESTAMP_FIELD_NUMBER; - hash = (53 * hash) + getTimestamp().hashCode(); + if (hasServiceUuid()) { + hash = (37 * hash) + SERVICE_UUID_FIELD_NUMBER; + hash = (53 * hash) + getServiceUuid().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.Service parseFrom( + public static context.ContextOuterClass.ServiceId parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Service parseFrom( + public static context.ContextOuterClass.ServiceId parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Service parseFrom( + public static context.ContextOuterClass.ServiceId parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Service parseFrom( + public static context.ContextOuterClass.ServiceId parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Service parseFrom(byte[] data) + public static context.ContextOuterClass.ServiceId parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Service parseFrom( + public static context.ContextOuterClass.ServiceId parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Service parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ServiceId parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Service parseFrom( + public static context.ContextOuterClass.ServiceId 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 context.ContextOuterClass.Service parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ServiceId parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.Service parseDelimitedFrom( + public static context.ContextOuterClass.ServiceId 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 context.ContextOuterClass.Service parseFrom( + public static context.ContextOuterClass.ServiceId parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Service parseFrom( + public static context.ContextOuterClass.ServiceId parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -27607,7 +27580,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.Service prototype) { + public static Builder newBuilder(context.ContextOuterClass.ServiceId prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -27623,26 +27596,30 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.Service} + * <pre> + * ----- Service ------------------------------------------------------------------------------------------------------- + * </pre> + * + * Protobuf type {@code context.ServiceId} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Service) - context.ContextOuterClass.ServiceOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ServiceId) + context.ContextOuterClass.ServiceIdOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Service_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceId_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Service_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ServiceId_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Service.class, context.ContextOuterClass.Service.Builder.class); + context.ContextOuterClass.ServiceId.class, context.ContextOuterClass.ServiceId.Builder.class); } - // Construct using context.ContextOuterClass.Service.newBuilder() + // Construct using context.ContextOuterClass.ServiceId.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -27655,52 +27632,22 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getServiceEndpointIdsFieldBuilder(); - getServiceConstraintsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (serviceIdBuilder_ == null) { - serviceId_ = null; - } else { - serviceId_ = null; - serviceIdBuilder_ = null; - } - name_ = ""; - - serviceType_ = 0; - - if (serviceEndpointIdsBuilder_ == null) { - serviceEndpointIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - } else { - serviceEndpointIdsBuilder_.clear(); - } - if (serviceConstraintsBuilder_ == null) { - serviceConstraints_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000002); - } else { - serviceConstraintsBuilder_.clear(); - } - if (serviceStatusBuilder_ == null) { - serviceStatus_ = null; - } else { - serviceStatus_ = null; - serviceStatusBuilder_ = null; - } - if (serviceConfigBuilder_ == null) { - serviceConfig_ = null; + if (contextIdBuilder_ == null) { + contextId_ = null; } else { - serviceConfig_ = null; - serviceConfigBuilder_ = null; + contextId_ = null; + contextIdBuilder_ = null; } - if (timestampBuilder_ == null) { - timestamp_ = null; + if (serviceUuidBuilder_ == null) { + serviceUuid_ = null; } else { - timestamp_ = null; - timestampBuilder_ = null; + serviceUuid_ = null; + serviceUuidBuilder_ = null; } return this; } @@ -27708,17 +27655,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Service_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceId_descriptor; } @java.lang.Override - public context.ContextOuterClass.Service getDefaultInstanceForType() { - return context.ContextOuterClass.Service.getDefaultInstance(); + public context.ContextOuterClass.ServiceId getDefaultInstanceForType() { + return context.ContextOuterClass.ServiceId.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.Service build() { - context.ContextOuterClass.Service result = buildPartial(); + public context.ContextOuterClass.ServiceId build() { + context.ContextOuterClass.ServiceId result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -27726,48 +27673,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.Service buildPartial() { - context.ContextOuterClass.Service result = new context.ContextOuterClass.Service(this); - int from_bitField0_ = bitField0_; - if (serviceIdBuilder_ == null) { - result.serviceId_ = serviceId_; - } else { - result.serviceId_ = serviceIdBuilder_.build(); - } - result.name_ = name_; - result.serviceType_ = serviceType_; - if (serviceEndpointIdsBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { - serviceEndpointIds_ = java.util.Collections.unmodifiableList(serviceEndpointIds_); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.serviceEndpointIds_ = serviceEndpointIds_; - } else { - result.serviceEndpointIds_ = serviceEndpointIdsBuilder_.build(); - } - if (serviceConstraintsBuilder_ == null) { - if (((bitField0_ & 0x00000002) != 0)) { - serviceConstraints_ = java.util.Collections.unmodifiableList(serviceConstraints_); - bitField0_ = (bitField0_ & ~0x00000002); - } - result.serviceConstraints_ = serviceConstraints_; - } else { - result.serviceConstraints_ = serviceConstraintsBuilder_.build(); - } - if (serviceStatusBuilder_ == null) { - result.serviceStatus_ = serviceStatus_; - } else { - result.serviceStatus_ = serviceStatusBuilder_.build(); - } - if (serviceConfigBuilder_ == null) { - result.serviceConfig_ = serviceConfig_; + public context.ContextOuterClass.ServiceId buildPartial() { + context.ContextOuterClass.ServiceId result = new context.ContextOuterClass.ServiceId(this); + if (contextIdBuilder_ == null) { + result.contextId_ = contextId_; } else { - result.serviceConfig_ = serviceConfigBuilder_.build(); + result.contextId_ = contextIdBuilder_.build(); } - if (timestampBuilder_ == null) { - result.timestamp_ = timestamp_; + if (serviceUuidBuilder_ == null) { + result.serviceUuid_ = serviceUuid_; } else { - result.timestamp_ = timestampBuilder_.build(); + result.serviceUuid_ = serviceUuidBuilder_.build(); } onBuilt(); return result; @@ -27807,560 +27723,1880 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.Service) { - return mergeFrom((context.ContextOuterClass.Service)other); + if (other instanceof context.ContextOuterClass.ServiceId) { + return mergeFrom((context.ContextOuterClass.ServiceId)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.Service other) { - if (other == context.ContextOuterClass.Service.getDefaultInstance()) return this; - if (other.hasServiceId()) { - mergeServiceId(other.getServiceId()); - } - if (!other.getName().isEmpty()) { - name_ = other.name_; - onChanged(); + public Builder mergeFrom(context.ContextOuterClass.ServiceId other) { + if (other == context.ContextOuterClass.ServiceId.getDefaultInstance()) return this; + if (other.hasContextId()) { + mergeContextId(other.getContextId()); } - if (other.serviceType_ != 0) { - setServiceTypeValue(other.getServiceTypeValue()); + if (other.hasServiceUuid()) { + mergeServiceUuid(other.getServiceUuid()); } - if (serviceEndpointIdsBuilder_ == null) { - if (!other.serviceEndpointIds_.isEmpty()) { - if (serviceEndpointIds_.isEmpty()) { - serviceEndpointIds_ = other.serviceEndpointIds_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureServiceEndpointIdsIsMutable(); - serviceEndpointIds_.addAll(other.serviceEndpointIds_); - } - onChanged(); - } - } else { - if (!other.serviceEndpointIds_.isEmpty()) { - if (serviceEndpointIdsBuilder_.isEmpty()) { - serviceEndpointIdsBuilder_.dispose(); - serviceEndpointIdsBuilder_ = null; - serviceEndpointIds_ = other.serviceEndpointIds_; - bitField0_ = (bitField0_ & ~0x00000001); - serviceEndpointIdsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getServiceEndpointIdsFieldBuilder() : null; - } else { - serviceEndpointIdsBuilder_.addAllMessages(other.serviceEndpointIds_); - } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @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 { + context.ContextOuterClass.ServiceId parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.ServiceId) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); } } - if (serviceConstraintsBuilder_ == null) { - if (!other.serviceConstraints_.isEmpty()) { - if (serviceConstraints_.isEmpty()) { - serviceConstraints_ = other.serviceConstraints_; - bitField0_ = (bitField0_ & ~0x00000002); - } else { - ensureServiceConstraintsIsMutable(); - serviceConstraints_.addAll(other.serviceConstraints_); - } - onChanged(); - } - } else { - if (!other.serviceConstraints_.isEmpty()) { - if (serviceConstraintsBuilder_.isEmpty()) { - serviceConstraintsBuilder_.dispose(); - serviceConstraintsBuilder_ = null; - serviceConstraints_ = other.serviceConstraints_; - bitField0_ = (bitField0_ & ~0x00000002); - serviceConstraintsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getServiceConstraintsFieldBuilder() : null; - } else { - serviceConstraintsBuilder_.addAllMessages(other.serviceConstraints_); - } - } - } - if (other.hasServiceStatus()) { - mergeServiceStatus(other.getServiceStatus()); - } - if (other.hasServiceConfig()) { - mergeServiceConfig(other.getServiceConfig()); - } - if (other.hasTimestamp()) { - mergeTimestamp(other.getTimestamp()); - } - this.mergeUnknownFields(other.unknownFields); - onChanged(); return this; } - @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 { - context.ContextOuterClass.Service parsedMessage = null; - try { - parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Service) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); - } - } - return this; - } - private int bitField0_; - - private context.ContextOuterClass.ServiceId serviceId_; + private context.ContextOuterClass.ContextId contextId_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> serviceIdBuilder_; + context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder> contextIdBuilder_; /** - * <code>.context.ServiceId service_id = 1;</code> - * @return Whether the serviceId field is set. + * <code>.context.ContextId context_id = 1;</code> + * @return Whether the contextId field is set. */ - public boolean hasServiceId() { - return serviceIdBuilder_ != null || serviceId_ != null; + public boolean hasContextId() { + return contextIdBuilder_ != null || contextId_ != null; } /** - * <code>.context.ServiceId service_id = 1;</code> - * @return The serviceId. + * <code>.context.ContextId context_id = 1;</code> + * @return The contextId. */ - public context.ContextOuterClass.ServiceId getServiceId() { - if (serviceIdBuilder_ == null) { - return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; + public context.ContextOuterClass.ContextId getContextId() { + if (contextIdBuilder_ == null) { + return contextId_ == null ? context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_; } else { - return serviceIdBuilder_.getMessage(); + return contextIdBuilder_.getMessage(); } } /** - * <code>.context.ServiceId service_id = 1;</code> + * <code>.context.ContextId context_id = 1;</code> */ - public Builder setServiceId(context.ContextOuterClass.ServiceId value) { - if (serviceIdBuilder_ == null) { + public Builder setContextId(context.ContextOuterClass.ContextId value) { + if (contextIdBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - serviceId_ = value; + contextId_ = value; onChanged(); } else { - serviceIdBuilder_.setMessage(value); + contextIdBuilder_.setMessage(value); } return this; } /** - * <code>.context.ServiceId service_id = 1;</code> + * <code>.context.ContextId context_id = 1;</code> */ - public Builder setServiceId( - context.ContextOuterClass.ServiceId.Builder builderForValue) { - if (serviceIdBuilder_ == null) { - serviceId_ = builderForValue.build(); + public Builder setContextId( + context.ContextOuterClass.ContextId.Builder builderForValue) { + if (contextIdBuilder_ == null) { + contextId_ = builderForValue.build(); onChanged(); } else { - serviceIdBuilder_.setMessage(builderForValue.build()); + contextIdBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.ServiceId service_id = 1;</code> + * <code>.context.ContextId context_id = 1;</code> */ - public Builder mergeServiceId(context.ContextOuterClass.ServiceId value) { - if (serviceIdBuilder_ == null) { - if (serviceId_ != null) { - serviceId_ = - context.ContextOuterClass.ServiceId.newBuilder(serviceId_).mergeFrom(value).buildPartial(); + public Builder mergeContextId(context.ContextOuterClass.ContextId value) { + if (contextIdBuilder_ == null) { + if (contextId_ != null) { + contextId_ = + context.ContextOuterClass.ContextId.newBuilder(contextId_).mergeFrom(value).buildPartial(); } else { - serviceId_ = value; + contextId_ = value; } onChanged(); } else { - serviceIdBuilder_.mergeFrom(value); + contextIdBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.ServiceId service_id = 1;</code> + * <code>.context.ContextId context_id = 1;</code> */ - public Builder clearServiceId() { - if (serviceIdBuilder_ == null) { - serviceId_ = null; + public Builder clearContextId() { + if (contextIdBuilder_ == null) { + contextId_ = null; onChanged(); } else { - serviceId_ = null; - serviceIdBuilder_ = null; + contextId_ = null; + contextIdBuilder_ = null; } return this; } /** - * <code>.context.ServiceId service_id = 1;</code> + * <code>.context.ContextId context_id = 1;</code> */ - public context.ContextOuterClass.ServiceId.Builder getServiceIdBuilder() { + public context.ContextOuterClass.ContextId.Builder getContextIdBuilder() { onChanged(); - return getServiceIdFieldBuilder().getBuilder(); + return getContextIdFieldBuilder().getBuilder(); } /** - * <code>.context.ServiceId service_id = 1;</code> + * <code>.context.ContextId context_id = 1;</code> */ - public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() { - if (serviceIdBuilder_ != null) { - return serviceIdBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder() { + if (contextIdBuilder_ != null) { + return contextIdBuilder_.getMessageOrBuilder(); } else { - return serviceId_ == null ? - context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; + return contextId_ == null ? + context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_; } } /** - * <code>.context.ServiceId service_id = 1;</code> + * <code>.context.ContextId context_id = 1;</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(), + context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder> + getContextIdFieldBuilder() { + if (contextIdBuilder_ == null) { + contextIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder>( + getContextId(), getParentForChildren(), isClean()); - serviceId_ = null; - } - return serviceIdBuilder_; - } - - private java.lang.Object name_ = ""; - /** - * <code>string name = 2;</code> - * @return The name. - */ - public java.lang.String getName() { - java.lang.Object ref = name_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - name_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - /** - * <code>string name = 2;</code> - * @return The bytes for name. - */ - public com.google.protobuf.ByteString - getNameBytes() { - java.lang.Object ref = name_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - name_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - /** - * <code>string name = 2;</code> - * @param value The name to set. - * @return This builder for chaining. - */ - public Builder setName( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - name_ = value; - onChanged(); - return this; - } - /** - * <code>string name = 2;</code> - * @return This builder for chaining. - */ - public Builder clearName() { - - name_ = getDefaultInstance().getName(); - onChanged(); - return this; - } - /** - * <code>string name = 2;</code> - * @param value The bytes for name to set. - * @return This builder for chaining. - */ - public Builder setNameBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - name_ = value; - onChanged(); - return this; - } - - private int serviceType_ = 0; - /** - * <code>.context.ServiceTypeEnum service_type = 3;</code> - * @return The enum numeric value on the wire for serviceType. - */ - @java.lang.Override public int getServiceTypeValue() { - return serviceType_; - } - /** - * <code>.context.ServiceTypeEnum service_type = 3;</code> - * @param value The enum numeric value on the wire for serviceType to set. - * @return This builder for chaining. - */ - public Builder setServiceTypeValue(int value) { - - serviceType_ = value; - onChanged(); - return this; - } - /** - * <code>.context.ServiceTypeEnum service_type = 3;</code> - * @return The serviceType. - */ - @java.lang.Override - public context.ContextOuterClass.ServiceTypeEnum getServiceType() { - @SuppressWarnings("deprecation") - context.ContextOuterClass.ServiceTypeEnum result = context.ContextOuterClass.ServiceTypeEnum.valueOf(serviceType_); - return result == null ? context.ContextOuterClass.ServiceTypeEnum.UNRECOGNIZED : result; - } - /** - * <code>.context.ServiceTypeEnum service_type = 3;</code> - * @param value The serviceType to set. - * @return This builder for chaining. - */ - public Builder setServiceType(context.ContextOuterClass.ServiceTypeEnum value) { - if (value == null) { - throw new NullPointerException(); + contextId_ = null; } - - serviceType_ = value.getNumber(); - onChanged(); - return this; - } - /** - * <code>.context.ServiceTypeEnum service_type = 3;</code> - * @return This builder for chaining. - */ - public Builder clearServiceType() { - - serviceType_ = 0; - onChanged(); - return this; - } - - private java.util.List<context.ContextOuterClass.EndPointId> serviceEndpointIds_ = - java.util.Collections.emptyList(); - private void ensureServiceEndpointIdsIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - serviceEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(serviceEndpointIds_); - bitField0_ |= 0x00000001; - } + return contextIdBuilder_; } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> serviceEndpointIdsBuilder_; - - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> - */ - public java.util.List<context.ContextOuterClass.EndPointId> getServiceEndpointIdsList() { - if (serviceEndpointIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(serviceEndpointIds_); - } else { - return serviceEndpointIdsBuilder_.getMessageList(); - } - } + private context.ContextOuterClass.Uuid serviceUuid_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> serviceUuidBuilder_; /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + * <code>.context.Uuid service_uuid = 2;</code> + * @return Whether the serviceUuid field is set. */ - public int getServiceEndpointIdsCount() { - if (serviceEndpointIdsBuilder_ == null) { - return serviceEndpointIds_.size(); - } else { - return serviceEndpointIdsBuilder_.getCount(); - } + public boolean hasServiceUuid() { + return serviceUuidBuilder_ != null || serviceUuid_ != null; } /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + * <code>.context.Uuid service_uuid = 2;</code> + * @return The serviceUuid. */ - public context.ContextOuterClass.EndPointId getServiceEndpointIds(int index) { - if (serviceEndpointIdsBuilder_ == null) { - return serviceEndpointIds_.get(index); + public context.ContextOuterClass.Uuid getServiceUuid() { + if (serviceUuidBuilder_ == null) { + return serviceUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : serviceUuid_; } else { - return serviceEndpointIdsBuilder_.getMessage(index); + return serviceUuidBuilder_.getMessage(); } } /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + * <code>.context.Uuid service_uuid = 2;</code> */ - public Builder setServiceEndpointIds( - int index, context.ContextOuterClass.EndPointId value) { - if (serviceEndpointIdsBuilder_ == null) { + public Builder setServiceUuid(context.ContextOuterClass.Uuid value) { + if (serviceUuidBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureServiceEndpointIdsIsMutable(); - serviceEndpointIds_.set(index, value); - onChanged(); - } else { - serviceEndpointIdsBuilder_.setMessage(index, value); - } - return this; - } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> - */ - public Builder setServiceEndpointIds( - int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (serviceEndpointIdsBuilder_ == null) { - ensureServiceEndpointIdsIsMutable(); - serviceEndpointIds_.set(index, builderForValue.build()); + serviceUuid_ = value; onChanged(); } else { - serviceEndpointIdsBuilder_.setMessage(index, builderForValue.build()); + serviceUuidBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + * <code>.context.Uuid service_uuid = 2;</code> */ - public Builder addServiceEndpointIds(context.ContextOuterClass.EndPointId value) { - if (serviceEndpointIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureServiceEndpointIdsIsMutable(); - serviceEndpointIds_.add(value); + public Builder setServiceUuid( + context.ContextOuterClass.Uuid.Builder builderForValue) { + if (serviceUuidBuilder_ == null) { + serviceUuid_ = builderForValue.build(); onChanged(); } else { - serviceEndpointIdsBuilder_.addMessage(value); + serviceUuidBuilder_.setMessage(builderForValue.build()); } + return this; } /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + * <code>.context.Uuid service_uuid = 2;</code> */ - public Builder addServiceEndpointIds( - int index, context.ContextOuterClass.EndPointId value) { - if (serviceEndpointIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + public Builder mergeServiceUuid(context.ContextOuterClass.Uuid value) { + if (serviceUuidBuilder_ == null) { + if (serviceUuid_ != null) { + serviceUuid_ = + context.ContextOuterClass.Uuid.newBuilder(serviceUuid_).mergeFrom(value).buildPartial(); + } else { + serviceUuid_ = value; } - ensureServiceEndpointIdsIsMutable(); - serviceEndpointIds_.add(index, value); - onChanged(); - } else { - serviceEndpointIdsBuilder_.addMessage(index, value); - } - return this; - } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> - */ - public Builder addServiceEndpointIds( - context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (serviceEndpointIdsBuilder_ == null) { - ensureServiceEndpointIdsIsMutable(); - serviceEndpointIds_.add(builderForValue.build()); onChanged(); } else { - serviceEndpointIdsBuilder_.addMessage(builderForValue.build()); + serviceUuidBuilder_.mergeFrom(value); } + return this; } /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + * <code>.context.Uuid service_uuid = 2;</code> */ - public Builder addServiceEndpointIds( - int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (serviceEndpointIdsBuilder_ == null) { - ensureServiceEndpointIdsIsMutable(); - serviceEndpointIds_.add(index, builderForValue.build()); + public Builder clearServiceUuid() { + if (serviceUuidBuilder_ == null) { + serviceUuid_ = null; onChanged(); } else { - serviceEndpointIdsBuilder_.addMessage(index, builderForValue.build()); + serviceUuid_ = null; + serviceUuidBuilder_ = null; } + return this; } /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + * <code>.context.Uuid service_uuid = 2;</code> */ - public Builder addAllServiceEndpointIds( - java.lang.Iterable<? extends context.ContextOuterClass.EndPointId> values) { - if (serviceEndpointIdsBuilder_ == null) { - ensureServiceEndpointIdsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, serviceEndpointIds_); - onChanged(); - } else { - serviceEndpointIdsBuilder_.addAllMessages(values); - } - return this; + public context.ContextOuterClass.Uuid.Builder getServiceUuidBuilder() { + + onChanged(); + return getServiceUuidFieldBuilder().getBuilder(); } /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + * <code>.context.Uuid service_uuid = 2;</code> */ - public Builder clearServiceEndpointIds() { - if (serviceEndpointIdsBuilder_ == null) { - serviceEndpointIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); + public context.ContextOuterClass.UuidOrBuilder getServiceUuidOrBuilder() { + if (serviceUuidBuilder_ != null) { + return serviceUuidBuilder_.getMessageOrBuilder(); } else { - serviceEndpointIdsBuilder_.clear(); + return serviceUuid_ == null ? + context.ContextOuterClass.Uuid.getDefaultInstance() : serviceUuid_; } - return this; } /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + * <code>.context.Uuid service_uuid = 2;</code> */ - public Builder removeServiceEndpointIds(int index) { - if (serviceEndpointIdsBuilder_ == null) { - ensureServiceEndpointIdsIsMutable(); - serviceEndpointIds_.remove(index); - onChanged(); - } else { - serviceEndpointIdsBuilder_.remove(index); + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> + getServiceUuidFieldBuilder() { + if (serviceUuidBuilder_ == null) { + serviceUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>( + getServiceUuid(), + getParentForChildren(), + isClean()); + serviceUuid_ = null; } - return this; + return serviceUuidBuilder_; } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> - */ - public context.ContextOuterClass.EndPointId.Builder getServiceEndpointIdsBuilder( - int index) { - return getServiceEndpointIdsFieldBuilder().getBuilder(index); + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> - */ - public context.ContextOuterClass.EndPointIdOrBuilder getServiceEndpointIdsOrBuilder( - int index) { - if (serviceEndpointIdsBuilder_ == null) { - return serviceEndpointIds_.get(index); } else { - return serviceEndpointIdsBuilder_.getMessageOrBuilder(index); - } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + + + // @@protoc_insertion_point(builder_scope:context.ServiceId) + } + + // @@protoc_insertion_point(class_scope:context.ServiceId) + private static final context.ContextOuterClass.ServiceId DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceId(); + } + + public static context.ContextOuterClass.ServiceId getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<ServiceId> + PARSER = new com.google.protobuf.AbstractParser<ServiceId>() { + @java.lang.Override + public ServiceId parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new ServiceId(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<ServiceId> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<ServiceId> getParserForType() { + return PARSER; + } + + @java.lang.Override + public context.ContextOuterClass.ServiceId getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface ServiceOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Service) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>.context.ServiceId service_id = 1;</code> + * @return Whether the serviceId field is set. + */ + boolean hasServiceId(); + /** + * <code>.context.ServiceId service_id = 1;</code> + * @return The serviceId. + */ + context.ContextOuterClass.ServiceId getServiceId(); + /** + * <code>.context.ServiceId service_id = 1;</code> + */ + context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder(); + + /** + * <code>string name = 2;</code> + * @return The name. + */ + java.lang.String getName(); + /** + * <code>string name = 2;</code> + * @return The bytes for name. + */ + com.google.protobuf.ByteString + getNameBytes(); + + /** + * <code>.context.ServiceTypeEnum service_type = 3;</code> + * @return The enum numeric value on the wire for serviceType. + */ + int getServiceTypeValue(); + /** + * <code>.context.ServiceTypeEnum service_type = 3;</code> + * @return The serviceType. + */ + context.ContextOuterClass.ServiceTypeEnum getServiceType(); + + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + java.util.List<context.ContextOuterClass.EndPointId> + getServiceEndpointIdsList(); + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + context.ContextOuterClass.EndPointId getServiceEndpointIds(int index); + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + int getServiceEndpointIdsCount(); + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getServiceEndpointIdsOrBuilderList(); + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + context.ContextOuterClass.EndPointIdOrBuilder getServiceEndpointIdsOrBuilder( + int index); + + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + java.util.List<context.ContextOuterClass.Constraint> + getServiceConstraintsList(); + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + context.ContextOuterClass.Constraint getServiceConstraints(int index); + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + int getServiceConstraintsCount(); + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + java.util.List<? extends context.ContextOuterClass.ConstraintOrBuilder> + getServiceConstraintsOrBuilderList(); + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + context.ContextOuterClass.ConstraintOrBuilder getServiceConstraintsOrBuilder( + int index); + + /** + * <code>.context.ServiceStatus service_status = 6;</code> + * @return Whether the serviceStatus field is set. + */ + boolean hasServiceStatus(); + /** + * <code>.context.ServiceStatus service_status = 6;</code> + * @return The serviceStatus. + */ + context.ContextOuterClass.ServiceStatus getServiceStatus(); + /** + * <code>.context.ServiceStatus service_status = 6;</code> + */ + context.ContextOuterClass.ServiceStatusOrBuilder getServiceStatusOrBuilder(); + + /** + * <code>.context.ServiceConfig service_config = 7;</code> + * @return Whether the serviceConfig field is set. + */ + boolean hasServiceConfig(); + /** + * <code>.context.ServiceConfig service_config = 7;</code> + * @return The serviceConfig. + */ + context.ContextOuterClass.ServiceConfig getServiceConfig(); + /** + * <code>.context.ServiceConfig service_config = 7;</code> + */ + context.ContextOuterClass.ServiceConfigOrBuilder getServiceConfigOrBuilder(); + + /** + * <code>.context.Timestamp timestamp = 8;</code> + * @return Whether the timestamp field is set. + */ + boolean hasTimestamp(); + /** + * <code>.context.Timestamp timestamp = 8;</code> + * @return The timestamp. + */ + context.ContextOuterClass.Timestamp getTimestamp(); + /** + * <code>.context.Timestamp timestamp = 8;</code> + */ + context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder(); + } + /** + * Protobuf type {@code context.Service} + */ + public static final class Service extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:context.Service) + ServiceOrBuilder { + private static final long serialVersionUID = 0L; + // Use Service.newBuilder() to construct. + private Service(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private Service() { + name_ = ""; + serviceType_ = 0; + serviceEndpointIds_ = java.util.Collections.emptyList(); + serviceConstraints_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new Service(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private Service( + 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: { + 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 18: { + java.lang.String s = input.readStringRequireUtf8(); + + name_ = s; + break; + } + case 24: { + int rawValue = input.readEnum(); + + serviceType_ = rawValue; + break; + } + case 34: { + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + serviceEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(); + mutable_bitField0_ |= 0x00000001; + } + serviceEndpointIds_.add( + input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry)); + break; + } + case 42: { + if (!((mutable_bitField0_ & 0x00000002) != 0)) { + serviceConstraints_ = new java.util.ArrayList<context.ContextOuterClass.Constraint>(); + mutable_bitField0_ |= 0x00000002; + } + serviceConstraints_.add( + input.readMessage(context.ContextOuterClass.Constraint.parser(), extensionRegistry)); + break; + } + case 50: { + context.ContextOuterClass.ServiceStatus.Builder subBuilder = null; + if (serviceStatus_ != null) { + subBuilder = serviceStatus_.toBuilder(); + } + serviceStatus_ = input.readMessage(context.ContextOuterClass.ServiceStatus.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(serviceStatus_); + serviceStatus_ = subBuilder.buildPartial(); + } + + break; + } + case 58: { + context.ContextOuterClass.ServiceConfig.Builder subBuilder = null; + if (serviceConfig_ != null) { + subBuilder = serviceConfig_.toBuilder(); + } + serviceConfig_ = input.readMessage(context.ContextOuterClass.ServiceConfig.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(serviceConfig_); + serviceConfig_ = subBuilder.buildPartial(); + } + + break; + } + case 66: { + context.ContextOuterClass.Timestamp.Builder subBuilder = null; + if (timestamp_ != null) { + subBuilder = timestamp_.toBuilder(); + } + timestamp_ = input.readMessage(context.ContextOuterClass.Timestamp.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(timestamp_); + timestamp_ = subBuilder.buildPartial(); + } + + 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)) { + serviceEndpointIds_ = java.util.Collections.unmodifiableList(serviceEndpointIds_); + } + if (((mutable_bitField0_ & 0x00000002) != 0)) { + serviceConstraints_ = java.util.Collections.unmodifiableList(serviceConstraints_); + } + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_Service_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_Service_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.Service.class, context.ContextOuterClass.Service.Builder.class); + } + + public static final int SERVICE_ID_FIELD_NUMBER = 1; + private context.ContextOuterClass.ServiceId serviceId_; + /** + * <code>.context.ServiceId service_id = 1;</code> + * @return Whether the serviceId field is set. + */ + @java.lang.Override + public boolean hasServiceId() { + return serviceId_ != null; + } + /** + * <code>.context.ServiceId service_id = 1;</code> + * @return The serviceId. + */ + @java.lang.Override + public context.ContextOuterClass.ServiceId getServiceId() { + return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; + } + /** + * <code>.context.ServiceId service_id = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() { + return getServiceId(); + } + + public static final int NAME_FIELD_NUMBER = 2; + private volatile java.lang.Object name_; + /** + * <code>string name = 2;</code> + * @return The name. + */ + @java.lang.Override + public java.lang.String getName() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } + } + /** + * <code>string name = 2;</code> + * @return The bytes for name. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SERVICE_TYPE_FIELD_NUMBER = 3; + private int serviceType_; + /** + * <code>.context.ServiceTypeEnum service_type = 3;</code> + * @return The enum numeric value on the wire for serviceType. + */ + @java.lang.Override public int getServiceTypeValue() { + return serviceType_; + } + /** + * <code>.context.ServiceTypeEnum service_type = 3;</code> + * @return The serviceType. + */ + @java.lang.Override public context.ContextOuterClass.ServiceTypeEnum getServiceType() { + @SuppressWarnings("deprecation") + context.ContextOuterClass.ServiceTypeEnum result = context.ContextOuterClass.ServiceTypeEnum.valueOf(serviceType_); + return result == null ? context.ContextOuterClass.ServiceTypeEnum.UNRECOGNIZED : result; + } + + public static final int SERVICE_ENDPOINT_IDS_FIELD_NUMBER = 4; + private java.util.List<context.ContextOuterClass.EndPointId> serviceEndpointIds_; + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + @java.lang.Override + public java.util.List<context.ContextOuterClass.EndPointId> getServiceEndpointIdsList() { + return serviceEndpointIds_; + } + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getServiceEndpointIdsOrBuilderList() { + return serviceEndpointIds_; + } + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + @java.lang.Override + public int getServiceEndpointIdsCount() { + return serviceEndpointIds_.size(); + } + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + @java.lang.Override + public context.ContextOuterClass.EndPointId getServiceEndpointIds(int index) { + return serviceEndpointIds_.get(index); + } + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + @java.lang.Override + public context.ContextOuterClass.EndPointIdOrBuilder getServiceEndpointIdsOrBuilder( + int index) { + return serviceEndpointIds_.get(index); + } + + public static final int SERVICE_CONSTRAINTS_FIELD_NUMBER = 5; + private java.util.List<context.ContextOuterClass.Constraint> serviceConstraints_; + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + @java.lang.Override + public java.util.List<context.ContextOuterClass.Constraint> getServiceConstraintsList() { + return serviceConstraints_; + } + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.ConstraintOrBuilder> + getServiceConstraintsOrBuilderList() { + return serviceConstraints_; + } + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + @java.lang.Override + public int getServiceConstraintsCount() { + return serviceConstraints_.size(); + } + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + @java.lang.Override + public context.ContextOuterClass.Constraint getServiceConstraints(int index) { + return serviceConstraints_.get(index); + } + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ConstraintOrBuilder getServiceConstraintsOrBuilder( + int index) { + return serviceConstraints_.get(index); + } + + public static final int SERVICE_STATUS_FIELD_NUMBER = 6; + private context.ContextOuterClass.ServiceStatus serviceStatus_; + /** + * <code>.context.ServiceStatus service_status = 6;</code> + * @return Whether the serviceStatus field is set. + */ + @java.lang.Override + public boolean hasServiceStatus() { + return serviceStatus_ != null; + } + /** + * <code>.context.ServiceStatus service_status = 6;</code> + * @return The serviceStatus. + */ + @java.lang.Override + public context.ContextOuterClass.ServiceStatus getServiceStatus() { + return serviceStatus_ == null ? context.ContextOuterClass.ServiceStatus.getDefaultInstance() : serviceStatus_; + } + /** + * <code>.context.ServiceStatus service_status = 6;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ServiceStatusOrBuilder getServiceStatusOrBuilder() { + return getServiceStatus(); + } + + public static final int SERVICE_CONFIG_FIELD_NUMBER = 7; + private context.ContextOuterClass.ServiceConfig serviceConfig_; + /** + * <code>.context.ServiceConfig service_config = 7;</code> + * @return Whether the serviceConfig field is set. + */ + @java.lang.Override + public boolean hasServiceConfig() { + return serviceConfig_ != null; + } + /** + * <code>.context.ServiceConfig service_config = 7;</code> + * @return The serviceConfig. + */ + @java.lang.Override + public context.ContextOuterClass.ServiceConfig getServiceConfig() { + return serviceConfig_ == null ? context.ContextOuterClass.ServiceConfig.getDefaultInstance() : serviceConfig_; + } + /** + * <code>.context.ServiceConfig service_config = 7;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ServiceConfigOrBuilder getServiceConfigOrBuilder() { + return getServiceConfig(); + } + + public static final int TIMESTAMP_FIELD_NUMBER = 8; + private context.ContextOuterClass.Timestamp timestamp_; + /** + * <code>.context.Timestamp timestamp = 8;</code> + * @return Whether the timestamp field is set. + */ + @java.lang.Override + public boolean hasTimestamp() { + return timestamp_ != null; + } + /** + * <code>.context.Timestamp timestamp = 8;</code> + * @return The timestamp. + */ + @java.lang.Override + public context.ContextOuterClass.Timestamp getTimestamp() { + return timestamp_ == null ? context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_; + } + /** + * <code>.context.Timestamp timestamp = 8;</code> + */ + @java.lang.Override + public context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder() { + return getTimestamp(); + } + + 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 (serviceId_ != null) { + output.writeMessage(1, getServiceId()); + } + if (!getNameBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_); + } + if (serviceType_ != context.ContextOuterClass.ServiceTypeEnum.SERVICETYPE_UNKNOWN.getNumber()) { + output.writeEnum(3, serviceType_); + } + for (int i = 0; i < serviceEndpointIds_.size(); i++) { + output.writeMessage(4, serviceEndpointIds_.get(i)); + } + for (int i = 0; i < serviceConstraints_.size(); i++) { + output.writeMessage(5, serviceConstraints_.get(i)); + } + if (serviceStatus_ != null) { + output.writeMessage(6, getServiceStatus()); + } + if (serviceConfig_ != null) { + output.writeMessage(7, getServiceConfig()); + } + if (timestamp_ != null) { + output.writeMessage(8, getTimestamp()); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (serviceId_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getServiceId()); + } + if (!getNameBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_); + } + if (serviceType_ != context.ContextOuterClass.ServiceTypeEnum.SERVICETYPE_UNKNOWN.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(3, serviceType_); + } + for (int i = 0; i < serviceEndpointIds_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(4, serviceEndpointIds_.get(i)); + } + for (int i = 0; i < serviceConstraints_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(5, serviceConstraints_.get(i)); + } + if (serviceStatus_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(6, getServiceStatus()); + } + if (serviceConfig_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(7, getServiceConfig()); + } + if (timestamp_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(8, getTimestamp()); + } + 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 context.ContextOuterClass.Service)) { + return super.equals(obj); + } + context.ContextOuterClass.Service other = (context.ContextOuterClass.Service) obj; + + if (hasServiceId() != other.hasServiceId()) return false; + if (hasServiceId()) { + if (!getServiceId() + .equals(other.getServiceId())) return false; + } + if (!getName() + .equals(other.getName())) return false; + if (serviceType_ != other.serviceType_) return false; + if (!getServiceEndpointIdsList() + .equals(other.getServiceEndpointIdsList())) return false; + if (!getServiceConstraintsList() + .equals(other.getServiceConstraintsList())) return false; + if (hasServiceStatus() != other.hasServiceStatus()) return false; + if (hasServiceStatus()) { + if (!getServiceStatus() + .equals(other.getServiceStatus())) return false; + } + if (hasServiceConfig() != other.hasServiceConfig()) return false; + if (hasServiceConfig()) { + if (!getServiceConfig() + .equals(other.getServiceConfig())) return false; + } + if (hasTimestamp() != other.hasTimestamp()) return false; + if (hasTimestamp()) { + if (!getTimestamp() + .equals(other.getTimestamp())) 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 (hasServiceId()) { + hash = (37 * hash) + SERVICE_ID_FIELD_NUMBER; + hash = (53 * hash) + getServiceId().hashCode(); + } + hash = (37 * hash) + NAME_FIELD_NUMBER; + hash = (53 * hash) + getName().hashCode(); + hash = (37 * hash) + SERVICE_TYPE_FIELD_NUMBER; + hash = (53 * hash) + serviceType_; + if (getServiceEndpointIdsCount() > 0) { + hash = (37 * hash) + SERVICE_ENDPOINT_IDS_FIELD_NUMBER; + hash = (53 * hash) + getServiceEndpointIdsList().hashCode(); + } + if (getServiceConstraintsCount() > 0) { + hash = (37 * hash) + SERVICE_CONSTRAINTS_FIELD_NUMBER; + hash = (53 * hash) + getServiceConstraintsList().hashCode(); + } + if (hasServiceStatus()) { + hash = (37 * hash) + SERVICE_STATUS_FIELD_NUMBER; + hash = (53 * hash) + getServiceStatus().hashCode(); + } + if (hasServiceConfig()) { + hash = (37 * hash) + SERVICE_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getServiceConfig().hashCode(); + } + if (hasTimestamp()) { + hash = (37 * hash) + TIMESTAMP_FIELD_NUMBER; + hash = (53 * hash) + getTimestamp().hashCode(); + } + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static context.ContextOuterClass.Service parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.Service parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.Service parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.Service parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.Service parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.Service parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.Service parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.Service 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 context.ContextOuterClass.Service parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static context.ContextOuterClass.Service 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 context.ContextOuterClass.Service parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.Service 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(context.ContextOuterClass.Service 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; + } + /** + * Protobuf type {@code context.Service} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:context.Service) + context.ContextOuterClass.ServiceOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_Service_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_Service_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.Service.class, context.ContextOuterClass.Service.Builder.class); + } + + // Construct using context.ContextOuterClass.Service.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getServiceEndpointIdsFieldBuilder(); + getServiceConstraintsFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + if (serviceIdBuilder_ == null) { + serviceId_ = null; + } else { + serviceId_ = null; + serviceIdBuilder_ = null; + } + name_ = ""; + + serviceType_ = 0; + + if (serviceEndpointIdsBuilder_ == null) { + serviceEndpointIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + } else { + serviceEndpointIdsBuilder_.clear(); + } + if (serviceConstraintsBuilder_ == null) { + serviceConstraints_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + } else { + serviceConstraintsBuilder_.clear(); + } + if (serviceStatusBuilder_ == null) { + serviceStatus_ = null; + } else { + serviceStatus_ = null; + serviceStatusBuilder_ = null; + } + if (serviceConfigBuilder_ == null) { + serviceConfig_ = null; + } else { + serviceConfig_ = null; + serviceConfigBuilder_ = null; + } + if (timestampBuilder_ == null) { + timestamp_ = null; + } else { + timestamp_ = null; + timestampBuilder_ = null; + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return context.ContextOuterClass.internal_static_context_Service_descriptor; + } + + @java.lang.Override + public context.ContextOuterClass.Service getDefaultInstanceForType() { + return context.ContextOuterClass.Service.getDefaultInstance(); + } + + @java.lang.Override + public context.ContextOuterClass.Service build() { + context.ContextOuterClass.Service result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public context.ContextOuterClass.Service buildPartial() { + context.ContextOuterClass.Service result = new context.ContextOuterClass.Service(this); + int from_bitField0_ = bitField0_; + if (serviceIdBuilder_ == null) { + result.serviceId_ = serviceId_; + } else { + result.serviceId_ = serviceIdBuilder_.build(); + } + result.name_ = name_; + result.serviceType_ = serviceType_; + if (serviceEndpointIdsBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + serviceEndpointIds_ = java.util.Collections.unmodifiableList(serviceEndpointIds_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.serviceEndpointIds_ = serviceEndpointIds_; + } else { + result.serviceEndpointIds_ = serviceEndpointIdsBuilder_.build(); + } + if (serviceConstraintsBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0)) { + serviceConstraints_ = java.util.Collections.unmodifiableList(serviceConstraints_); + bitField0_ = (bitField0_ & ~0x00000002); + } + result.serviceConstraints_ = serviceConstraints_; + } else { + result.serviceConstraints_ = serviceConstraintsBuilder_.build(); + } + if (serviceStatusBuilder_ == null) { + result.serviceStatus_ = serviceStatus_; + } else { + result.serviceStatus_ = serviceStatusBuilder_.build(); + } + if (serviceConfigBuilder_ == null) { + result.serviceConfig_ = serviceConfig_; + } else { + result.serviceConfig_ = serviceConfigBuilder_.build(); + } + if (timestampBuilder_ == null) { + result.timestamp_ = timestamp_; + } else { + result.timestamp_ = timestampBuilder_.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 context.ContextOuterClass.Service) { + return mergeFrom((context.ContextOuterClass.Service)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(context.ContextOuterClass.Service other) { + if (other == context.ContextOuterClass.Service.getDefaultInstance()) return this; + if (other.hasServiceId()) { + mergeServiceId(other.getServiceId()); + } + if (!other.getName().isEmpty()) { + name_ = other.name_; + onChanged(); + } + if (other.serviceType_ != 0) { + setServiceTypeValue(other.getServiceTypeValue()); + } + if (serviceEndpointIdsBuilder_ == null) { + if (!other.serviceEndpointIds_.isEmpty()) { + if (serviceEndpointIds_.isEmpty()) { + serviceEndpointIds_ = other.serviceEndpointIds_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureServiceEndpointIdsIsMutable(); + serviceEndpointIds_.addAll(other.serviceEndpointIds_); + } + onChanged(); + } + } else { + if (!other.serviceEndpointIds_.isEmpty()) { + if (serviceEndpointIdsBuilder_.isEmpty()) { + serviceEndpointIdsBuilder_.dispose(); + serviceEndpointIdsBuilder_ = null; + serviceEndpointIds_ = other.serviceEndpointIds_; + bitField0_ = (bitField0_ & ~0x00000001); + serviceEndpointIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getServiceEndpointIdsFieldBuilder() : null; + } else { + serviceEndpointIdsBuilder_.addAllMessages(other.serviceEndpointIds_); + } + } + } + if (serviceConstraintsBuilder_ == null) { + if (!other.serviceConstraints_.isEmpty()) { + if (serviceConstraints_.isEmpty()) { + serviceConstraints_ = other.serviceConstraints_; + bitField0_ = (bitField0_ & ~0x00000002); + } else { + ensureServiceConstraintsIsMutable(); + serviceConstraints_.addAll(other.serviceConstraints_); + } + onChanged(); + } + } else { + if (!other.serviceConstraints_.isEmpty()) { + if (serviceConstraintsBuilder_.isEmpty()) { + serviceConstraintsBuilder_.dispose(); + serviceConstraintsBuilder_ = null; + serviceConstraints_ = other.serviceConstraints_; + bitField0_ = (bitField0_ & ~0x00000002); + serviceConstraintsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getServiceConstraintsFieldBuilder() : null; + } else { + serviceConstraintsBuilder_.addAllMessages(other.serviceConstraints_); + } + } + } + if (other.hasServiceStatus()) { + mergeServiceStatus(other.getServiceStatus()); + } + if (other.hasServiceConfig()) { + mergeServiceConfig(other.getServiceConfig()); + } + if (other.hasTimestamp()) { + mergeTimestamp(other.getTimestamp()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @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 { + context.ContextOuterClass.Service parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.Service) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + private context.ContextOuterClass.ServiceId serviceId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> serviceIdBuilder_; + /** + * <code>.context.ServiceId service_id = 1;</code> + * @return Whether the serviceId field is set. + */ + public boolean hasServiceId() { + return serviceIdBuilder_ != null || serviceId_ != null; + } + /** + * <code>.context.ServiceId service_id = 1;</code> + * @return The serviceId. + */ + public context.ContextOuterClass.ServiceId getServiceId() { + if (serviceIdBuilder_ == null) { + return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; + } else { + return serviceIdBuilder_.getMessage(); + } + } + /** + * <code>.context.ServiceId service_id = 1;</code> + */ + public Builder setServiceId(context.ContextOuterClass.ServiceId value) { + if (serviceIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + serviceId_ = value; + onChanged(); + } else { + serviceIdBuilder_.setMessage(value); + } + + return this; + } + /** + * <code>.context.ServiceId service_id = 1;</code> + */ + public Builder setServiceId( + context.ContextOuterClass.ServiceId.Builder builderForValue) { + if (serviceIdBuilder_ == null) { + serviceId_ = builderForValue.build(); + onChanged(); + } else { + serviceIdBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.ServiceId service_id = 1;</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); + } + + return this; + } + /** + * <code>.context.ServiceId service_id = 1;</code> + */ + public Builder clearServiceId() { + if (serviceIdBuilder_ == null) { + serviceId_ = null; + onChanged(); + } else { + serviceId_ = null; + serviceIdBuilder_ = null; + } + + return this; + } + /** + * <code>.context.ServiceId service_id = 1;</code> + */ + public context.ContextOuterClass.ServiceId.Builder getServiceIdBuilder() { + + onChanged(); + return getServiceIdFieldBuilder().getBuilder(); + } + /** + * <code>.context.ServiceId service_id = 1;</code> + */ + public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() { + if (serviceIdBuilder_ != null) { + return serviceIdBuilder_.getMessageOrBuilder(); + } else { + return serviceId_ == null ? + context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; + } + } + /** + * <code>.context.ServiceId service_id = 1;</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_; + } + + private java.lang.Object name_ = ""; + /** + * <code>string name = 2;</code> + * @return The name. + */ + public java.lang.String getName() { + java.lang.Object ref = name_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * <code>string name = 2;</code> + * @return The bytes for name. + */ + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * <code>string name = 2;</code> + * @param value The name to set. + * @return This builder for chaining. + */ + public Builder setName( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + name_ = value; + onChanged(); + return this; + } + /** + * <code>string name = 2;</code> + * @return This builder for chaining. + */ + public Builder clearName() { + + name_ = getDefaultInstance().getName(); + onChanged(); + return this; + } + /** + * <code>string name = 2;</code> + * @param value The bytes for name to set. + * @return This builder for chaining. + */ + public Builder setNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + name_ = value; + onChanged(); + return this; + } + + private int serviceType_ = 0; + /** + * <code>.context.ServiceTypeEnum service_type = 3;</code> + * @return The enum numeric value on the wire for serviceType. + */ + @java.lang.Override public int getServiceTypeValue() { + return serviceType_; + } + /** + * <code>.context.ServiceTypeEnum service_type = 3;</code> + * @param value The enum numeric value on the wire for serviceType to set. + * @return This builder for chaining. + */ + public Builder setServiceTypeValue(int value) { + + serviceType_ = value; + onChanged(); + return this; + } + /** + * <code>.context.ServiceTypeEnum service_type = 3;</code> + * @return The serviceType. + */ + @java.lang.Override + public context.ContextOuterClass.ServiceTypeEnum getServiceType() { + @SuppressWarnings("deprecation") + context.ContextOuterClass.ServiceTypeEnum result = context.ContextOuterClass.ServiceTypeEnum.valueOf(serviceType_); + return result == null ? context.ContextOuterClass.ServiceTypeEnum.UNRECOGNIZED : result; + } + /** + * <code>.context.ServiceTypeEnum service_type = 3;</code> + * @param value The serviceType to set. + * @return This builder for chaining. + */ + public Builder setServiceType(context.ContextOuterClass.ServiceTypeEnum value) { + if (value == null) { + throw new NullPointerException(); + } + + serviceType_ = value.getNumber(); + onChanged(); + return this; + } + /** + * <code>.context.ServiceTypeEnum service_type = 3;</code> + * @return This builder for chaining. + */ + public Builder clearServiceType() { + + serviceType_ = 0; + onChanged(); + return this; + } + + private java.util.List<context.ContextOuterClass.EndPointId> serviceEndpointIds_ = + java.util.Collections.emptyList(); + private void ensureServiceEndpointIdsIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + serviceEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(serviceEndpointIds_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> serviceEndpointIdsBuilder_; + + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + public java.util.List<context.ContextOuterClass.EndPointId> getServiceEndpointIdsList() { + if (serviceEndpointIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(serviceEndpointIds_); + } else { + return serviceEndpointIdsBuilder_.getMessageList(); + } + } + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + public int getServiceEndpointIdsCount() { + if (serviceEndpointIdsBuilder_ == null) { + return serviceEndpointIds_.size(); + } else { + return serviceEndpointIdsBuilder_.getCount(); + } + } + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + public context.ContextOuterClass.EndPointId getServiceEndpointIds(int index) { + if (serviceEndpointIdsBuilder_ == null) { + return serviceEndpointIds_.get(index); + } else { + return serviceEndpointIdsBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + public Builder setServiceEndpointIds( + int index, context.ContextOuterClass.EndPointId value) { + if (serviceEndpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureServiceEndpointIdsIsMutable(); + serviceEndpointIds_.set(index, value); + onChanged(); + } else { + serviceEndpointIdsBuilder_.setMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + public Builder setServiceEndpointIds( + int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (serviceEndpointIdsBuilder_ == null) { + ensureServiceEndpointIdsIsMutable(); + serviceEndpointIds_.set(index, builderForValue.build()); + onChanged(); + } else { + serviceEndpointIdsBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + public Builder addServiceEndpointIds(context.ContextOuterClass.EndPointId value) { + if (serviceEndpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureServiceEndpointIdsIsMutable(); + serviceEndpointIds_.add(value); + onChanged(); + } else { + serviceEndpointIdsBuilder_.addMessage(value); + } + return this; + } + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + public Builder addServiceEndpointIds( + int index, context.ContextOuterClass.EndPointId value) { + if (serviceEndpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureServiceEndpointIdsIsMutable(); + serviceEndpointIds_.add(index, value); + onChanged(); + } else { + serviceEndpointIdsBuilder_.addMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + public Builder addServiceEndpointIds( + context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (serviceEndpointIdsBuilder_ == null) { + ensureServiceEndpointIdsIsMutable(); + serviceEndpointIds_.add(builderForValue.build()); + onChanged(); + } else { + serviceEndpointIdsBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + public Builder addServiceEndpointIds( + int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (serviceEndpointIdsBuilder_ == null) { + ensureServiceEndpointIdsIsMutable(); + serviceEndpointIds_.add(index, builderForValue.build()); + onChanged(); + } else { + serviceEndpointIdsBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + public Builder addAllServiceEndpointIds( + java.lang.Iterable<? extends context.ContextOuterClass.EndPointId> values) { + if (serviceEndpointIdsBuilder_ == null) { + ensureServiceEndpointIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, serviceEndpointIds_); + onChanged(); + } else { + serviceEndpointIdsBuilder_.addAllMessages(values); + } + return this; + } + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + public Builder clearServiceEndpointIds() { + if (serviceEndpointIdsBuilder_ == null) { + serviceEndpointIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + serviceEndpointIdsBuilder_.clear(); + } + return this; + } + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + public Builder removeServiceEndpointIds(int index) { + if (serviceEndpointIdsBuilder_ == null) { + ensureServiceEndpointIdsIsMutable(); + serviceEndpointIds_.remove(index); + onChanged(); + } else { + serviceEndpointIdsBuilder_.remove(index); + } + return this; + } + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + public context.ContextOuterClass.EndPointId.Builder getServiceEndpointIdsBuilder( + int index) { + return getServiceEndpointIdsFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + public context.ContextOuterClass.EndPointIdOrBuilder getServiceEndpointIdsOrBuilder( + int index) { + if (serviceEndpointIdsBuilder_ == null) { + return serviceEndpointIds_.get(index); } else { + return serviceEndpointIdsBuilder_.getMessageOrBuilder(index); + } + } + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> */ public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> getServiceEndpointIdsOrBuilderList() { @@ -28965,43 +30201,568 @@ public final class ContextOuterClass { timestamp_ = null; timestampBuilder_ = null; } - + + return this; + } + /** + * <code>.context.Timestamp timestamp = 8;</code> + */ + public context.ContextOuterClass.Timestamp.Builder getTimestampBuilder() { + + onChanged(); + return getTimestampFieldBuilder().getBuilder(); + } + /** + * <code>.context.Timestamp timestamp = 8;</code> + */ + public context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder() { + if (timestampBuilder_ != null) { + return timestampBuilder_.getMessageOrBuilder(); + } else { + return timestamp_ == null ? + context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_; + } + } + /** + * <code>.context.Timestamp timestamp = 8;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> + getTimestampFieldBuilder() { + if (timestampBuilder_ == null) { + timestampBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder>( + getTimestamp(), + getParentForChildren(), + isClean()); + timestamp_ = null; + } + return timestampBuilder_; + } + @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:context.Service) + } + + // @@protoc_insertion_point(class_scope:context.Service) + private static final context.ContextOuterClass.Service DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new context.ContextOuterClass.Service(); + } + + public static context.ContextOuterClass.Service getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<Service> + PARSER = new com.google.protobuf.AbstractParser<Service>() { + @java.lang.Override + public Service parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new Service(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<Service> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<Service> getParserForType() { + return PARSER; + } + + @java.lang.Override + public context.ContextOuterClass.Service getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface ServiceStatusOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ServiceStatus) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>.context.ServiceStatusEnum service_status = 1;</code> + * @return The enum numeric value on the wire for serviceStatus. + */ + int getServiceStatusValue(); + /** + * <code>.context.ServiceStatusEnum service_status = 1;</code> + * @return The serviceStatus. + */ + context.ContextOuterClass.ServiceStatusEnum getServiceStatus(); + } + /** + * Protobuf type {@code context.ServiceStatus} + */ + public static final class ServiceStatus extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:context.ServiceStatus) + ServiceStatusOrBuilder { + private static final long serialVersionUID = 0L; + // Use ServiceStatus.newBuilder() to construct. + private ServiceStatus(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private ServiceStatus() { + serviceStatus_ = 0; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new ServiceStatus(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private ServiceStatus( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + 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 8: { + int rawValue = input.readEnum(); + + serviceStatus_ = rawValue; + 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 { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_ServiceStatus_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_ServiceStatus_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.ServiceStatus.class, context.ContextOuterClass.ServiceStatus.Builder.class); + } + + public static final int SERVICE_STATUS_FIELD_NUMBER = 1; + private int serviceStatus_; + /** + * <code>.context.ServiceStatusEnum service_status = 1;</code> + * @return The enum numeric value on the wire for serviceStatus. + */ + @java.lang.Override public int getServiceStatusValue() { + return serviceStatus_; + } + /** + * <code>.context.ServiceStatusEnum service_status = 1;</code> + * @return The serviceStatus. + */ + @java.lang.Override public context.ContextOuterClass.ServiceStatusEnum getServiceStatus() { + @SuppressWarnings("deprecation") + context.ContextOuterClass.ServiceStatusEnum result = context.ContextOuterClass.ServiceStatusEnum.valueOf(serviceStatus_); + return result == null ? context.ContextOuterClass.ServiceStatusEnum.UNRECOGNIZED : result; + } + + 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 (serviceStatus_ != context.ContextOuterClass.ServiceStatusEnum.SERVICESTATUS_UNDEFINED.getNumber()) { + output.writeEnum(1, serviceStatus_); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (serviceStatus_ != context.ContextOuterClass.ServiceStatusEnum.SERVICESTATUS_UNDEFINED.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(1, serviceStatus_); + } + 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 context.ContextOuterClass.ServiceStatus)) { + return super.equals(obj); + } + context.ContextOuterClass.ServiceStatus other = (context.ContextOuterClass.ServiceStatus) obj; + + if (serviceStatus_ != other.serviceStatus_) 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(); + hash = (37 * hash) + SERVICE_STATUS_FIELD_NUMBER; + hash = (53 * hash) + serviceStatus_; + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static context.ContextOuterClass.ServiceStatus parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.ServiceStatus parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.ServiceStatus parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.ServiceStatus parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.ServiceStatus parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.ServiceStatus parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.ServiceStatus parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.ServiceStatus 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 context.ContextOuterClass.ServiceStatus parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static context.ContextOuterClass.ServiceStatus 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 context.ContextOuterClass.ServiceStatus parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.ServiceStatus 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(context.ContextOuterClass.ServiceStatus 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; + } + /** + * Protobuf type {@code context.ServiceStatus} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:context.ServiceStatus) + context.ContextOuterClass.ServiceStatusOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_ServiceStatus_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_ServiceStatus_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.ServiceStatus.class, context.ContextOuterClass.ServiceStatus.Builder.class); + } + + // Construct using context.ContextOuterClass.ServiceStatus.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + serviceStatus_ = 0; + + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return context.ContextOuterClass.internal_static_context_ServiceStatus_descriptor; + } + + @java.lang.Override + public context.ContextOuterClass.ServiceStatus getDefaultInstanceForType() { + return context.ContextOuterClass.ServiceStatus.getDefaultInstance(); + } + + @java.lang.Override + public context.ContextOuterClass.ServiceStatus build() { + context.ContextOuterClass.ServiceStatus result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public context.ContextOuterClass.ServiceStatus buildPartial() { + context.ContextOuterClass.ServiceStatus result = new context.ContextOuterClass.ServiceStatus(this); + result.serviceStatus_ = serviceStatus_; + 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 context.ContextOuterClass.ServiceStatus) { + return mergeFrom((context.ContextOuterClass.ServiceStatus)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(context.ContextOuterClass.ServiceStatus other) { + if (other == context.ContextOuterClass.ServiceStatus.getDefaultInstance()) return this; + if (other.serviceStatus_ != 0) { + setServiceStatusValue(other.getServiceStatusValue()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @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 { + context.ContextOuterClass.ServiceStatus parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.ServiceStatus) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } return this; } + + private int serviceStatus_ = 0; /** - * <code>.context.Timestamp timestamp = 8;</code> + * <code>.context.ServiceStatusEnum service_status = 1;</code> + * @return The enum numeric value on the wire for serviceStatus. */ - public context.ContextOuterClass.Timestamp.Builder getTimestampBuilder() { + @java.lang.Override public int getServiceStatusValue() { + return serviceStatus_; + } + /** + * <code>.context.ServiceStatusEnum service_status = 1;</code> + * @param value The enum numeric value on the wire for serviceStatus to set. + * @return This builder for chaining. + */ + public Builder setServiceStatusValue(int value) { + serviceStatus_ = value; onChanged(); - return getTimestampFieldBuilder().getBuilder(); + return this; } /** - * <code>.context.Timestamp timestamp = 8;</code> + * <code>.context.ServiceStatusEnum service_status = 1;</code> + * @return The serviceStatus. */ - public context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder() { - if (timestampBuilder_ != null) { - return timestampBuilder_.getMessageOrBuilder(); - } else { - return timestamp_ == null ? - context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_; - } + @java.lang.Override + public context.ContextOuterClass.ServiceStatusEnum getServiceStatus() { + @SuppressWarnings("deprecation") + context.ContextOuterClass.ServiceStatusEnum result = context.ContextOuterClass.ServiceStatusEnum.valueOf(serviceStatus_); + return result == null ? context.ContextOuterClass.ServiceStatusEnum.UNRECOGNIZED : result; } /** - * <code>.context.Timestamp timestamp = 8;</code> + * <code>.context.ServiceStatusEnum service_status = 1;</code> + * @param value The serviceStatus to set. + * @return This builder for chaining. */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> - getTimestampFieldBuilder() { - if (timestampBuilder_ == null) { - timestampBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder>( - getTimestamp(), - getParentForChildren(), - isClean()); - timestamp_ = null; + public Builder setServiceStatus(context.ContextOuterClass.ServiceStatusEnum value) { + if (value == null) { + throw new NullPointerException(); } - return timestampBuilder_; + + serviceStatus_ = value.getNumber(); + onChanged(); + return this; + } + /** + * <code>.context.ServiceStatusEnum service_status = 1;</code> + * @return This builder for chaining. + */ + public Builder clearServiceStatus() { + + serviceStatus_ = 0; + onChanged(); + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -29016,82 +30777,95 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.Service) + // @@protoc_insertion_point(builder_scope:context.ServiceStatus) } - // @@protoc_insertion_point(class_scope:context.Service) - private static final context.ContextOuterClass.Service DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ServiceStatus) + private static final context.ContextOuterClass.ServiceStatus DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Service(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceStatus(); } - public static context.ContextOuterClass.Service getDefaultInstance() { + public static context.ContextOuterClass.ServiceStatus getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<Service> - PARSER = new com.google.protobuf.AbstractParser<Service>() { + private static final com.google.protobuf.Parser<ServiceStatus> + PARSER = new com.google.protobuf.AbstractParser<ServiceStatus>() { @java.lang.Override - public Service parsePartialFrom( + public ServiceStatus parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new Service(input, extensionRegistry); + return new ServiceStatus(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<Service> parser() { + public static com.google.protobuf.Parser<ServiceStatus> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<Service> getParserForType() { + public com.google.protobuf.Parser<ServiceStatus> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.Service getDefaultInstanceForType() { + public context.ContextOuterClass.ServiceStatus getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ServiceStatusOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ServiceStatus) + public interface ServiceConfigOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ServiceConfig) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.ServiceStatusEnum service_status = 1;</code> - * @return The enum numeric value on the wire for serviceStatus. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - int getServiceStatusValue(); + java.util.List<context.ContextOuterClass.ConfigRule> + getConfigRulesList(); /** - * <code>.context.ServiceStatusEnum service_status = 1;</code> - * @return The serviceStatus. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - context.ContextOuterClass.ServiceStatusEnum getServiceStatus(); + context.ContextOuterClass.ConfigRule getConfigRules(int index); + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + int getConfigRulesCount(); + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> + getConfigRulesOrBuilderList(); + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( + int index); } /** - * Protobuf type {@code context.ServiceStatus} + * Protobuf type {@code context.ServiceConfig} */ - public static final class ServiceStatus extends + public static final class ServiceConfig extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ServiceStatus) - ServiceStatusOrBuilder { + // @@protoc_insertion_point(message_implements:context.ServiceConfig) + ServiceConfigOrBuilder { private static final long serialVersionUID = 0L; - // Use ServiceStatus.newBuilder() to construct. - private ServiceStatus(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ServiceConfig.newBuilder() to construct. + private ServiceConfig(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ServiceStatus() { - serviceStatus_ = 0; + private ServiceConfig() { + configRules_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ServiceStatus(); + return new ServiceConfig(); } @java.lang.Override @@ -29099,7 +30873,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ServiceStatus( + private ServiceConfig( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -29107,6 +30881,7 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } + int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -29117,10 +30892,13 @@ public final class ContextOuterClass { case 0: done = true; break; - case 8: { - int rawValue = input.readEnum(); - - serviceStatus_ = rawValue; + case 10: { + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + configRules_ = new java.util.ArrayList<context.ContextOuterClass.ConfigRule>(); + mutable_bitField0_ |= 0x00000001; + } + configRules_.add( + input.readMessage(context.ContextOuterClass.ConfigRule.parser(), extensionRegistry)); break; } default: { @@ -29138,40 +30916,64 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { + if (((mutable_bitField0_ & 0x00000001) != 0)) { + configRules_ = java.util.Collections.unmodifiableList(configRules_); + } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ServiceStatus_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceConfig_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ServiceStatus_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ServiceConfig_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ServiceStatus.class, context.ContextOuterClass.ServiceStatus.Builder.class); + context.ContextOuterClass.ServiceConfig.class, context.ContextOuterClass.ServiceConfig.Builder.class); } - public static final int SERVICE_STATUS_FIELD_NUMBER = 1; - private int serviceStatus_; + public static final int CONFIG_RULES_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.ConfigRule> configRules_; /** - * <code>.context.ServiceStatusEnum service_status = 1;</code> - * @return The enum numeric value on the wire for serviceStatus. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - @java.lang.Override public int getServiceStatusValue() { - return serviceStatus_; + @java.lang.Override + public java.util.List<context.ContextOuterClass.ConfigRule> getConfigRulesList() { + return configRules_; } /** - * <code>.context.ServiceStatusEnum service_status = 1;</code> - * @return The serviceStatus. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - @java.lang.Override public context.ContextOuterClass.ServiceStatusEnum getServiceStatus() { - @SuppressWarnings("deprecation") - context.ContextOuterClass.ServiceStatusEnum result = context.ContextOuterClass.ServiceStatusEnum.valueOf(serviceStatus_); - return result == null ? context.ContextOuterClass.ServiceStatusEnum.UNRECOGNIZED : result; + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> + getConfigRulesOrBuilderList() { + return configRules_; + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + @java.lang.Override + public int getConfigRulesCount() { + return configRules_.size(); + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ConfigRule getConfigRules(int index) { + return configRules_.get(index); + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( + int index) { + return configRules_.get(index); } private byte memoizedIsInitialized = -1; @@ -29188,8 +30990,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (serviceStatus_ != context.ContextOuterClass.ServiceStatusEnum.SERVICESTATUS_UNDEFINED.getNumber()) { - output.writeEnum(1, serviceStatus_); + for (int i = 0; i < configRules_.size(); i++) { + output.writeMessage(1, configRules_.get(i)); } unknownFields.writeTo(output); } @@ -29200,9 +31002,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (serviceStatus_ != context.ContextOuterClass.ServiceStatusEnum.SERVICESTATUS_UNDEFINED.getNumber()) { + for (int i = 0; i < configRules_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeEnumSize(1, serviceStatus_); + .computeMessageSize(1, configRules_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -29214,12 +31016,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ServiceStatus)) { + if (!(obj instanceof context.ContextOuterClass.ServiceConfig)) { return super.equals(obj); } - context.ContextOuterClass.ServiceStatus other = (context.ContextOuterClass.ServiceStatus) obj; + context.ContextOuterClass.ServiceConfig other = (context.ContextOuterClass.ServiceConfig) obj; - if (serviceStatus_ != other.serviceStatus_) return false; + if (!getConfigRulesList() + .equals(other.getConfigRulesList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -29231,76 +31034,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + SERVICE_STATUS_FIELD_NUMBER; - hash = (53 * hash) + serviceStatus_; + if (getConfigRulesCount() > 0) { + hash = (37 * hash) + CONFIG_RULES_FIELD_NUMBER; + hash = (53 * hash) + getConfigRulesList().hashCode(); + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ServiceStatus parseFrom( + public static context.ContextOuterClass.ServiceConfig parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceStatus parseFrom( + public static context.ContextOuterClass.ServiceConfig parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceStatus parseFrom( + public static context.ContextOuterClass.ServiceConfig parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceStatus parseFrom( + public static context.ContextOuterClass.ServiceConfig parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceStatus parseFrom(byte[] data) + public static context.ContextOuterClass.ServiceConfig parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceStatus parseFrom( + public static context.ContextOuterClass.ServiceConfig parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceStatus parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ServiceConfig parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceStatus parseFrom( + public static context.ContextOuterClass.ServiceConfig 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 context.ContextOuterClass.ServiceStatus parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ServiceConfig parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceStatus parseDelimitedFrom( + public static context.ContextOuterClass.ServiceConfig 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 context.ContextOuterClass.ServiceStatus parseFrom( + public static context.ContextOuterClass.ServiceConfig parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceStatus parseFrom( + public static context.ContextOuterClass.ServiceConfig parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -29313,7 +31118,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ServiceStatus prototype) { + public static Builder newBuilder(context.ContextOuterClass.ServiceConfig prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -29329,26 +31134,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ServiceStatus} + * Protobuf type {@code context.ServiceConfig} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ServiceStatus) - context.ContextOuterClass.ServiceStatusOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ServiceConfig) + context.ContextOuterClass.ServiceConfigOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ServiceStatus_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceConfig_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ServiceStatus_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ServiceConfig_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ServiceStatus.class, context.ContextOuterClass.ServiceStatus.Builder.class); + context.ContextOuterClass.ServiceConfig.class, context.ContextOuterClass.ServiceConfig.Builder.class); } - // Construct using context.ContextOuterClass.ServiceStatus.newBuilder() + // Construct using context.ContextOuterClass.ServiceConfig.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -29361,30 +31166,35 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { + getConfigRulesFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - serviceStatus_ = 0; - + if (configRulesBuilder_ == null) { + configRules_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + } else { + configRulesBuilder_.clear(); + } return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ServiceStatus_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceConfig_descriptor; } @java.lang.Override - public context.ContextOuterClass.ServiceStatus getDefaultInstanceForType() { - return context.ContextOuterClass.ServiceStatus.getDefaultInstance(); + public context.ContextOuterClass.ServiceConfig getDefaultInstanceForType() { + return context.ContextOuterClass.ServiceConfig.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ServiceStatus build() { - context.ContextOuterClass.ServiceStatus result = buildPartial(); + public context.ContextOuterClass.ServiceConfig build() { + context.ContextOuterClass.ServiceConfig result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -29392,9 +31202,18 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ServiceStatus buildPartial() { - context.ContextOuterClass.ServiceStatus result = new context.ContextOuterClass.ServiceStatus(this); - result.serviceStatus_ = serviceStatus_; + public context.ContextOuterClass.ServiceConfig buildPartial() { + context.ContextOuterClass.ServiceConfig result = new context.ContextOuterClass.ServiceConfig(this); + int from_bitField0_ = bitField0_; + if (configRulesBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + configRules_ = java.util.Collections.unmodifiableList(configRules_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.configRules_ = configRules_; + } else { + result.configRules_ = configRulesBuilder_.build(); + } onBuilt(); return result; } @@ -29433,100 +31252,310 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ServiceStatus) { - return mergeFrom((context.ContextOuterClass.ServiceStatus)other); + if (other instanceof context.ContextOuterClass.ServiceConfig) { + return mergeFrom((context.ContextOuterClass.ServiceConfig)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ServiceStatus other) { - if (other == context.ContextOuterClass.ServiceStatus.getDefaultInstance()) return this; - if (other.serviceStatus_ != 0) { - setServiceStatusValue(other.getServiceStatusValue()); + public Builder mergeFrom(context.ContextOuterClass.ServiceConfig other) { + if (other == context.ContextOuterClass.ServiceConfig.getDefaultInstance()) return this; + if (configRulesBuilder_ == null) { + if (!other.configRules_.isEmpty()) { + if (configRules_.isEmpty()) { + configRules_ = other.configRules_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureConfigRulesIsMutable(); + configRules_.addAll(other.configRules_); + } + onChanged(); + } + } else { + if (!other.configRules_.isEmpty()) { + if (configRulesBuilder_.isEmpty()) { + configRulesBuilder_.dispose(); + configRulesBuilder_ = null; + configRules_ = other.configRules_; + bitField0_ = (bitField0_ & ~0x00000001); + configRulesBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getConfigRulesFieldBuilder() : null; + } else { + configRulesBuilder_.addAllMessages(other.configRules_); + } + } + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @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 { + context.ContextOuterClass.ServiceConfig parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.ServiceConfig) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + private java.util.List<context.ContextOuterClass.ConfigRule> configRules_ = + java.util.Collections.emptyList(); + private void ensureConfigRulesIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + configRules_ = new java.util.ArrayList<context.ContextOuterClass.ConfigRule>(configRules_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder> configRulesBuilder_; + + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public java.util.List<context.ContextOuterClass.ConfigRule> getConfigRulesList() { + if (configRulesBuilder_ == null) { + return java.util.Collections.unmodifiableList(configRules_); + } else { + return configRulesBuilder_.getMessageList(); + } + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public int getConfigRulesCount() { + if (configRulesBuilder_ == null) { + return configRules_.size(); + } else { + return configRulesBuilder_.getCount(); + } + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public context.ContextOuterClass.ConfigRule getConfigRules(int index) { + if (configRulesBuilder_ == null) { + return configRules_.get(index); + } else { + return configRulesBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public Builder setConfigRules( + int index, context.ContextOuterClass.ConfigRule value) { + if (configRulesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConfigRulesIsMutable(); + configRules_.set(index, value); + onChanged(); + } else { + configRulesBuilder_.setMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public Builder setConfigRules( + int index, context.ContextOuterClass.ConfigRule.Builder builderForValue) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + configRules_.set(index, builderForValue.build()); + onChanged(); + } else { + configRulesBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public Builder addConfigRules(context.ContextOuterClass.ConfigRule value) { + if (configRulesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConfigRulesIsMutable(); + configRules_.add(value); + onChanged(); + } else { + configRulesBuilder_.addMessage(value); + } + return this; + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public Builder addConfigRules( + int index, context.ContextOuterClass.ConfigRule value) { + if (configRulesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConfigRulesIsMutable(); + configRules_.add(index, value); + onChanged(); + } else { + configRulesBuilder_.addMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public Builder addConfigRules( + context.ContextOuterClass.ConfigRule.Builder builderForValue) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + configRules_.add(builderForValue.build()); + onChanged(); + } else { + configRulesBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public Builder addConfigRules( + int index, context.ContextOuterClass.ConfigRule.Builder builderForValue) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + configRules_.add(index, builderForValue.build()); + onChanged(); + } else { + configRulesBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public Builder addAllConfigRules( + java.lang.Iterable<? extends context.ContextOuterClass.ConfigRule> values) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, configRules_); + onChanged(); + } else { + configRulesBuilder_.addAllMessages(values); } - this.mergeUnknownFields(other.unknownFields); - onChanged(); return this; } - - @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 { - context.ContextOuterClass.ServiceStatus parsedMessage = null; - try { - parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ServiceStatus) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); - } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public Builder clearConfigRules() { + if (configRulesBuilder_ == null) { + configRules_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + configRulesBuilder_.clear(); } return this; } - - private int serviceStatus_ = 0; /** - * <code>.context.ServiceStatusEnum service_status = 1;</code> - * @return The enum numeric value on the wire for serviceStatus. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - @java.lang.Override public int getServiceStatusValue() { - return serviceStatus_; + public Builder removeConfigRules(int index) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + configRules_.remove(index); + onChanged(); + } else { + configRulesBuilder_.remove(index); + } + return this; } /** - * <code>.context.ServiceStatusEnum service_status = 1;</code> - * @param value The enum numeric value on the wire for serviceStatus to set. - * @return This builder for chaining. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public Builder setServiceStatusValue(int value) { - - serviceStatus_ = value; - onChanged(); - return this; + public context.ContextOuterClass.ConfigRule.Builder getConfigRulesBuilder( + int index) { + return getConfigRulesFieldBuilder().getBuilder(index); } /** - * <code>.context.ServiceStatusEnum service_status = 1;</code> - * @return The serviceStatus. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - @java.lang.Override - public context.ContextOuterClass.ServiceStatusEnum getServiceStatus() { - @SuppressWarnings("deprecation") - context.ContextOuterClass.ServiceStatusEnum result = context.ContextOuterClass.ServiceStatusEnum.valueOf(serviceStatus_); - return result == null ? context.ContextOuterClass.ServiceStatusEnum.UNRECOGNIZED : result; + public context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( + int index) { + if (configRulesBuilder_ == null) { + return configRules_.get(index); } else { + return configRulesBuilder_.getMessageOrBuilder(index); + } } /** - * <code>.context.ServiceStatusEnum service_status = 1;</code> - * @param value The serviceStatus to set. - * @return This builder for chaining. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public Builder setServiceStatus(context.ContextOuterClass.ServiceStatusEnum value) { - if (value == null) { - throw new NullPointerException(); + public java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> + getConfigRulesOrBuilderList() { + if (configRulesBuilder_ != null) { + return configRulesBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(configRules_); } - - serviceStatus_ = value.getNumber(); - onChanged(); - return this; } /** - * <code>.context.ServiceStatusEnum service_status = 1;</code> - * @return This builder for chaining. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public Builder clearServiceStatus() { - - serviceStatus_ = 0; - onChanged(); - return this; + public context.ContextOuterClass.ConfigRule.Builder addConfigRulesBuilder() { + return getConfigRulesFieldBuilder().addBuilder( + context.ContextOuterClass.ConfigRule.getDefaultInstance()); + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public context.ContextOuterClass.ConfigRule.Builder addConfigRulesBuilder( + int index) { + return getConfigRulesFieldBuilder().addBuilder( + index, context.ContextOuterClass.ConfigRule.getDefaultInstance()); + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public java.util.List<context.ContextOuterClass.ConfigRule.Builder> + getConfigRulesBuilderList() { + return getConfigRulesFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder> + getConfigRulesFieldBuilder() { + if (configRulesBuilder_ == null) { + configRulesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder>( + configRules_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + configRules_ = null; + } + return configRulesBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -29541,95 +31570,95 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ServiceStatus) + // @@protoc_insertion_point(builder_scope:context.ServiceConfig) } - // @@protoc_insertion_point(class_scope:context.ServiceStatus) - private static final context.ContextOuterClass.ServiceStatus DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ServiceConfig) + private static final context.ContextOuterClass.ServiceConfig DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceStatus(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceConfig(); } - public static context.ContextOuterClass.ServiceStatus getDefaultInstance() { + public static context.ContextOuterClass.ServiceConfig getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ServiceStatus> - PARSER = new com.google.protobuf.AbstractParser<ServiceStatus>() { + private static final com.google.protobuf.Parser<ServiceConfig> + PARSER = new com.google.protobuf.AbstractParser<ServiceConfig>() { @java.lang.Override - public ServiceStatus parsePartialFrom( + public ServiceConfig parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ServiceStatus(input, extensionRegistry); + return new ServiceConfig(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ServiceStatus> parser() { + public static com.google.protobuf.Parser<ServiceConfig> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ServiceStatus> getParserForType() { + public com.google.protobuf.Parser<ServiceConfig> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ServiceStatus getDefaultInstanceForType() { + public context.ContextOuterClass.ServiceConfig getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ServiceConfigOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ServiceConfig) + public interface ServiceIdListOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ServiceIdList) com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - java.util.List<context.ContextOuterClass.ConfigRule> - getConfigRulesList(); + java.util.List<context.ContextOuterClass.ServiceId> + getServiceIdsList(); /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - context.ContextOuterClass.ConfigRule getConfigRules(int index); + context.ContextOuterClass.ServiceId getServiceIds(int index); /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - int getConfigRulesCount(); + int getServiceIdsCount(); /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> - getConfigRulesOrBuilderList(); + java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> + getServiceIdsOrBuilderList(); /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( + context.ContextOuterClass.ServiceIdOrBuilder getServiceIdsOrBuilder( int index); } /** - * Protobuf type {@code context.ServiceConfig} + * Protobuf type {@code context.ServiceIdList} */ - public static final class ServiceConfig extends + public static final class ServiceIdList extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ServiceConfig) - ServiceConfigOrBuilder { + // @@protoc_insertion_point(message_implements:context.ServiceIdList) + ServiceIdListOrBuilder { private static final long serialVersionUID = 0L; - // Use ServiceConfig.newBuilder() to construct. - private ServiceConfig(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ServiceIdList.newBuilder() to construct. + private ServiceIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ServiceConfig() { - configRules_ = java.util.Collections.emptyList(); + private ServiceIdList() { + serviceIds_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ServiceConfig(); + return new ServiceIdList(); } @java.lang.Override @@ -29637,7 +31666,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ServiceConfig( + private ServiceIdList( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -29658,11 +31687,11 @@ public final class ContextOuterClass { break; case 10: { if (!((mutable_bitField0_ & 0x00000001) != 0)) { - configRules_ = new java.util.ArrayList<context.ContextOuterClass.ConfigRule>(); + serviceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(); mutable_bitField0_ |= 0x00000001; } - configRules_.add( - input.readMessage(context.ContextOuterClass.ConfigRule.parser(), extensionRegistry)); + serviceIds_.add( + input.readMessage(context.ContextOuterClass.ServiceId.parser(), extensionRegistry)); break; } default: { @@ -29681,7 +31710,7 @@ public final class ContextOuterClass { e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { - configRules_ = java.util.Collections.unmodifiableList(configRules_); + serviceIds_ = java.util.Collections.unmodifiableList(serviceIds_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); @@ -29689,55 +31718,55 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ServiceConfig_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceIdList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ServiceConfig_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ServiceIdList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ServiceConfig.class, context.ContextOuterClass.ServiceConfig.Builder.class); + context.ContextOuterClass.ServiceIdList.class, context.ContextOuterClass.ServiceIdList.Builder.class); } - public static final int CONFIG_RULES_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.ConfigRule> configRules_; + public static final int SERVICE_IDS_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.ServiceId> serviceIds_; /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ @java.lang.Override - public java.util.List<context.ContextOuterClass.ConfigRule> getConfigRulesList() { - return configRules_; + public java.util.List<context.ContextOuterClass.ServiceId> getServiceIdsList() { + return serviceIds_; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> - getConfigRulesOrBuilderList() { - return configRules_; + public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> + getServiceIdsOrBuilderList() { + return serviceIds_; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ @java.lang.Override - public int getConfigRulesCount() { - return configRules_.size(); + public int getServiceIdsCount() { + return serviceIds_.size(); } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.ConfigRule getConfigRules(int index) { - return configRules_.get(index); + public context.ContextOuterClass.ServiceId getServiceIds(int index) { + return serviceIds_.get(index); } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( + public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdsOrBuilder( int index) { - return configRules_.get(index); + return serviceIds_.get(index); } private byte memoizedIsInitialized = -1; @@ -29754,8 +31783,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < configRules_.size(); i++) { - output.writeMessage(1, configRules_.get(i)); + for (int i = 0; i < serviceIds_.size(); i++) { + output.writeMessage(1, serviceIds_.get(i)); } unknownFields.writeTo(output); } @@ -29766,9 +31795,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < configRules_.size(); i++) { + for (int i = 0; i < serviceIds_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, configRules_.get(i)); + .computeMessageSize(1, serviceIds_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -29780,13 +31809,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ServiceConfig)) { + if (!(obj instanceof context.ContextOuterClass.ServiceIdList)) { return super.equals(obj); } - context.ContextOuterClass.ServiceConfig other = (context.ContextOuterClass.ServiceConfig) obj; + context.ContextOuterClass.ServiceIdList other = (context.ContextOuterClass.ServiceIdList) obj; - if (!getConfigRulesList() - .equals(other.getConfigRulesList())) return false; + if (!getServiceIdsList() + .equals(other.getServiceIdsList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -29798,78 +31827,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getConfigRulesCount() > 0) { - hash = (37 * hash) + CONFIG_RULES_FIELD_NUMBER; - hash = (53 * hash) + getConfigRulesList().hashCode(); + if (getServiceIdsCount() > 0) { + hash = (37 * hash) + SERVICE_IDS_FIELD_NUMBER; + hash = (53 * hash) + getServiceIdsList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ServiceConfig parseFrom( + public static context.ContextOuterClass.ServiceIdList parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceConfig parseFrom( + public static context.ContextOuterClass.ServiceIdList parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceConfig parseFrom( + public static context.ContextOuterClass.ServiceIdList parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceConfig parseFrom( + public static context.ContextOuterClass.ServiceIdList parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceConfig parseFrom(byte[] data) + public static context.ContextOuterClass.ServiceIdList parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceConfig parseFrom( + public static context.ContextOuterClass.ServiceIdList parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceConfig parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ServiceIdList parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceConfig parseFrom( + public static context.ContextOuterClass.ServiceIdList 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 context.ContextOuterClass.ServiceConfig parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ServiceIdList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceConfig parseDelimitedFrom( + public static context.ContextOuterClass.ServiceIdList 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 context.ContextOuterClass.ServiceConfig parseFrom( + public static context.ContextOuterClass.ServiceIdList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceConfig parseFrom( + public static context.ContextOuterClass.ServiceIdList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -29882,7 +31911,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ServiceConfig prototype) { + public static Builder newBuilder(context.ContextOuterClass.ServiceIdList prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -29898,26 +31927,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ServiceConfig} + * Protobuf type {@code context.ServiceIdList} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ServiceConfig) - context.ContextOuterClass.ServiceConfigOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ServiceIdList) + context.ContextOuterClass.ServiceIdListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ServiceConfig_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceIdList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ServiceConfig_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ServiceIdList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ServiceConfig.class, context.ContextOuterClass.ServiceConfig.Builder.class); + context.ContextOuterClass.ServiceIdList.class, context.ContextOuterClass.ServiceIdList.Builder.class); } - // Construct using context.ContextOuterClass.ServiceConfig.newBuilder() + // Construct using context.ContextOuterClass.ServiceIdList.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -29930,17 +31959,17 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getConfigRulesFieldBuilder(); + getServiceIdsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (configRulesBuilder_ == null) { - configRules_ = java.util.Collections.emptyList(); + if (serviceIdsBuilder_ == null) { + serviceIds_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); } else { - configRulesBuilder_.clear(); + serviceIdsBuilder_.clear(); } return this; } @@ -29948,17 +31977,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ServiceConfig_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceIdList_descriptor; } @java.lang.Override - public context.ContextOuterClass.ServiceConfig getDefaultInstanceForType() { - return context.ContextOuterClass.ServiceConfig.getDefaultInstance(); + public context.ContextOuterClass.ServiceIdList getDefaultInstanceForType() { + return context.ContextOuterClass.ServiceIdList.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ServiceConfig build() { - context.ContextOuterClass.ServiceConfig result = buildPartial(); + public context.ContextOuterClass.ServiceIdList build() { + context.ContextOuterClass.ServiceIdList result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -29966,17 +31995,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ServiceConfig buildPartial() { - context.ContextOuterClass.ServiceConfig result = new context.ContextOuterClass.ServiceConfig(this); + public context.ContextOuterClass.ServiceIdList buildPartial() { + context.ContextOuterClass.ServiceIdList result = new context.ContextOuterClass.ServiceIdList(this); int from_bitField0_ = bitField0_; - if (configRulesBuilder_ == null) { + if (serviceIdsBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { - configRules_ = java.util.Collections.unmodifiableList(configRules_); + serviceIds_ = java.util.Collections.unmodifiableList(serviceIds_); bitField0_ = (bitField0_ & ~0x00000001); } - result.configRules_ = configRules_; + result.serviceIds_ = serviceIds_; } else { - result.configRules_ = configRulesBuilder_.build(); + result.serviceIds_ = serviceIdsBuilder_.build(); } onBuilt(); return result; @@ -30016,39 +32045,39 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ServiceConfig) { - return mergeFrom((context.ContextOuterClass.ServiceConfig)other); + if (other instanceof context.ContextOuterClass.ServiceIdList) { + return mergeFrom((context.ContextOuterClass.ServiceIdList)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ServiceConfig other) { - if (other == context.ContextOuterClass.ServiceConfig.getDefaultInstance()) return this; - if (configRulesBuilder_ == null) { - if (!other.configRules_.isEmpty()) { - if (configRules_.isEmpty()) { - configRules_ = other.configRules_; + public Builder mergeFrom(context.ContextOuterClass.ServiceIdList other) { + if (other == context.ContextOuterClass.ServiceIdList.getDefaultInstance()) return this; + if (serviceIdsBuilder_ == null) { + if (!other.serviceIds_.isEmpty()) { + if (serviceIds_.isEmpty()) { + serviceIds_ = other.serviceIds_; bitField0_ = (bitField0_ & ~0x00000001); } else { - ensureConfigRulesIsMutable(); - configRules_.addAll(other.configRules_); + ensureServiceIdsIsMutable(); + serviceIds_.addAll(other.serviceIds_); } onChanged(); } } else { - if (!other.configRules_.isEmpty()) { - if (configRulesBuilder_.isEmpty()) { - configRulesBuilder_.dispose(); - configRulesBuilder_ = null; - configRules_ = other.configRules_; + if (!other.serviceIds_.isEmpty()) { + if (serviceIdsBuilder_.isEmpty()) { + serviceIdsBuilder_.dispose(); + serviceIdsBuilder_ = null; + serviceIds_ = other.serviceIds_; bitField0_ = (bitField0_ & ~0x00000001); - configRulesBuilder_ = + serviceIdsBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getConfigRulesFieldBuilder() : null; + getServiceIdsFieldBuilder() : null; } else { - configRulesBuilder_.addAllMessages(other.configRules_); + serviceIdsBuilder_.addAllMessages(other.serviceIds_); } } } @@ -30067,11 +32096,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ServiceConfig parsedMessage = null; + context.ContextOuterClass.ServiceIdList parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ServiceConfig) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ServiceIdList) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -30082,244 +32111,244 @@ public final class ContextOuterClass { } private int bitField0_; - private java.util.List<context.ContextOuterClass.ConfigRule> configRules_ = + private java.util.List<context.ContextOuterClass.ServiceId> serviceIds_ = java.util.Collections.emptyList(); - private void ensureConfigRulesIsMutable() { + private void ensureServiceIdsIsMutable() { if (!((bitField0_ & 0x00000001) != 0)) { - configRules_ = new java.util.ArrayList<context.ContextOuterClass.ConfigRule>(configRules_); + serviceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(serviceIds_); bitField0_ |= 0x00000001; } } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder> configRulesBuilder_; + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> serviceIdsBuilder_; /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public java.util.List<context.ContextOuterClass.ConfigRule> getConfigRulesList() { - if (configRulesBuilder_ == null) { - return java.util.Collections.unmodifiableList(configRules_); + public java.util.List<context.ContextOuterClass.ServiceId> getServiceIdsList() { + if (serviceIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(serviceIds_); } else { - return configRulesBuilder_.getMessageList(); + return serviceIdsBuilder_.getMessageList(); } } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public int getConfigRulesCount() { - if (configRulesBuilder_ == null) { - return configRules_.size(); + public int getServiceIdsCount() { + if (serviceIdsBuilder_ == null) { + return serviceIds_.size(); } else { - return configRulesBuilder_.getCount(); + return serviceIdsBuilder_.getCount(); } } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public context.ContextOuterClass.ConfigRule getConfigRules(int index) { - if (configRulesBuilder_ == null) { - return configRules_.get(index); + public context.ContextOuterClass.ServiceId getServiceIds(int index) { + if (serviceIdsBuilder_ == null) { + return serviceIds_.get(index); } else { - return configRulesBuilder_.getMessage(index); + return serviceIdsBuilder_.getMessage(index); } } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public Builder setConfigRules( - int index, context.ContextOuterClass.ConfigRule value) { - if (configRulesBuilder_ == null) { + public Builder setServiceIds( + int index, context.ContextOuterClass.ServiceId value) { + if (serviceIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureConfigRulesIsMutable(); - configRules_.set(index, value); + ensureServiceIdsIsMutable(); + serviceIds_.set(index, value); onChanged(); } else { - configRulesBuilder_.setMessage(index, value); + serviceIdsBuilder_.setMessage(index, value); } return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public Builder setConfigRules( - int index, context.ContextOuterClass.ConfigRule.Builder builderForValue) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); - configRules_.set(index, builderForValue.build()); + public Builder setServiceIds( + int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { + if (serviceIdsBuilder_ == null) { + ensureServiceIdsIsMutable(); + serviceIds_.set(index, builderForValue.build()); onChanged(); } else { - configRulesBuilder_.setMessage(index, builderForValue.build()); + serviceIdsBuilder_.setMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public Builder addConfigRules(context.ContextOuterClass.ConfigRule value) { - if (configRulesBuilder_ == null) { + public Builder addServiceIds(context.ContextOuterClass.ServiceId value) { + if (serviceIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureConfigRulesIsMutable(); - configRules_.add(value); + ensureServiceIdsIsMutable(); + serviceIds_.add(value); onChanged(); } else { - configRulesBuilder_.addMessage(value); + serviceIdsBuilder_.addMessage(value); } return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public Builder addConfigRules( - int index, context.ContextOuterClass.ConfigRule value) { - if (configRulesBuilder_ == null) { + public Builder addServiceIds( + int index, context.ContextOuterClass.ServiceId value) { + if (serviceIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureConfigRulesIsMutable(); - configRules_.add(index, value); + ensureServiceIdsIsMutable(); + serviceIds_.add(index, value); onChanged(); } else { - configRulesBuilder_.addMessage(index, value); + serviceIdsBuilder_.addMessage(index, value); } return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public Builder addConfigRules( - context.ContextOuterClass.ConfigRule.Builder builderForValue) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); - configRules_.add(builderForValue.build()); + public Builder addServiceIds( + context.ContextOuterClass.ServiceId.Builder builderForValue) { + if (serviceIdsBuilder_ == null) { + ensureServiceIdsIsMutable(); + serviceIds_.add(builderForValue.build()); onChanged(); } else { - configRulesBuilder_.addMessage(builderForValue.build()); + serviceIdsBuilder_.addMessage(builderForValue.build()); } return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public Builder addConfigRules( - int index, context.ContextOuterClass.ConfigRule.Builder builderForValue) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); - configRules_.add(index, builderForValue.build()); + public Builder addServiceIds( + int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { + if (serviceIdsBuilder_ == null) { + ensureServiceIdsIsMutable(); + serviceIds_.add(index, builderForValue.build()); onChanged(); } else { - configRulesBuilder_.addMessage(index, builderForValue.build()); + serviceIdsBuilder_.addMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> - */ - public Builder addAllConfigRules( - java.lang.Iterable<? extends context.ContextOuterClass.ConfigRule> values) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); + * <code>repeated .context.ServiceId service_ids = 1;</code> + */ + public Builder addAllServiceIds( + java.lang.Iterable<? extends context.ContextOuterClass.ServiceId> values) { + if (serviceIdsBuilder_ == null) { + ensureServiceIdsIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, configRules_); + values, serviceIds_); onChanged(); } else { - configRulesBuilder_.addAllMessages(values); + serviceIdsBuilder_.addAllMessages(values); } return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public Builder clearConfigRules() { - if (configRulesBuilder_ == null) { - configRules_ = java.util.Collections.emptyList(); + public Builder clearServiceIds() { + if (serviceIdsBuilder_ == null) { + serviceIds_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { - configRulesBuilder_.clear(); + serviceIdsBuilder_.clear(); } return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public Builder removeConfigRules(int index) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); - configRules_.remove(index); + public Builder removeServiceIds(int index) { + if (serviceIdsBuilder_ == null) { + ensureServiceIdsIsMutable(); + serviceIds_.remove(index); onChanged(); } else { - configRulesBuilder_.remove(index); + serviceIdsBuilder_.remove(index); } return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public context.ContextOuterClass.ConfigRule.Builder getConfigRulesBuilder( + public context.ContextOuterClass.ServiceId.Builder getServiceIdsBuilder( int index) { - return getConfigRulesFieldBuilder().getBuilder(index); + return getServiceIdsFieldBuilder().getBuilder(index); } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( + public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdsOrBuilder( int index) { - if (configRulesBuilder_ == null) { - return configRules_.get(index); } else { - return configRulesBuilder_.getMessageOrBuilder(index); + if (serviceIdsBuilder_ == null) { + return serviceIds_.get(index); } else { + return serviceIdsBuilder_.getMessageOrBuilder(index); } } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> - getConfigRulesOrBuilderList() { - if (configRulesBuilder_ != null) { - return configRulesBuilder_.getMessageOrBuilderList(); + public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> + getServiceIdsOrBuilderList() { + if (serviceIdsBuilder_ != null) { + return serviceIdsBuilder_.getMessageOrBuilderList(); } else { - return java.util.Collections.unmodifiableList(configRules_); + return java.util.Collections.unmodifiableList(serviceIds_); } } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public context.ContextOuterClass.ConfigRule.Builder addConfigRulesBuilder() { - return getConfigRulesFieldBuilder().addBuilder( - context.ContextOuterClass.ConfigRule.getDefaultInstance()); + public context.ContextOuterClass.ServiceId.Builder addServiceIdsBuilder() { + return getServiceIdsFieldBuilder().addBuilder( + context.ContextOuterClass.ServiceId.getDefaultInstance()); } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public context.ContextOuterClass.ConfigRule.Builder addConfigRulesBuilder( + public context.ContextOuterClass.ServiceId.Builder addServiceIdsBuilder( int index) { - return getConfigRulesFieldBuilder().addBuilder( - index, context.ContextOuterClass.ConfigRule.getDefaultInstance()); + return getServiceIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.ServiceId.getDefaultInstance()); } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public java.util.List<context.ContextOuterClass.ConfigRule.Builder> - getConfigRulesBuilderList() { - return getConfigRulesFieldBuilder().getBuilderList(); + public java.util.List<context.ContextOuterClass.ServiceId.Builder> + getServiceIdsBuilderList() { + return getServiceIdsFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder> - getConfigRulesFieldBuilder() { - if (configRulesBuilder_ == null) { - configRulesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder>( - configRules_, + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> + getServiceIdsFieldBuilder() { + if (serviceIdsBuilder_ == null) { + serviceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder>( + serviceIds_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); - configRules_ = null; + serviceIds_ = null; } - return configRulesBuilder_; + return serviceIdsBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -30334,95 +32363,95 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ServiceConfig) + // @@protoc_insertion_point(builder_scope:context.ServiceIdList) } - // @@protoc_insertion_point(class_scope:context.ServiceConfig) - private static final context.ContextOuterClass.ServiceConfig DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ServiceIdList) + private static final context.ContextOuterClass.ServiceIdList DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceConfig(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceIdList(); } - public static context.ContextOuterClass.ServiceConfig getDefaultInstance() { + public static context.ContextOuterClass.ServiceIdList getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ServiceConfig> - PARSER = new com.google.protobuf.AbstractParser<ServiceConfig>() { + private static final com.google.protobuf.Parser<ServiceIdList> + PARSER = new com.google.protobuf.AbstractParser<ServiceIdList>() { @java.lang.Override - public ServiceConfig parsePartialFrom( + public ServiceIdList parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ServiceConfig(input, extensionRegistry); + return new ServiceIdList(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ServiceConfig> parser() { + public static com.google.protobuf.Parser<ServiceIdList> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ServiceConfig> getParserForType() { + public com.google.protobuf.Parser<ServiceIdList> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ServiceConfig getDefaultInstanceForType() { + public context.ContextOuterClass.ServiceIdList getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ServiceIdListOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ServiceIdList) + public interface ServiceListOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ServiceList) com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - java.util.List<context.ContextOuterClass.ServiceId> - getServiceIdsList(); + java.util.List<context.ContextOuterClass.Service> + getServicesList(); /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - context.ContextOuterClass.ServiceId getServiceIds(int index); + context.ContextOuterClass.Service getServices(int index); /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - int getServiceIdsCount(); + int getServicesCount(); /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> - getServiceIdsOrBuilderList(); + java.util.List<? extends context.ContextOuterClass.ServiceOrBuilder> + getServicesOrBuilderList(); /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - context.ContextOuterClass.ServiceIdOrBuilder getServiceIdsOrBuilder( + context.ContextOuterClass.ServiceOrBuilder getServicesOrBuilder( int index); } /** - * Protobuf type {@code context.ServiceIdList} + * Protobuf type {@code context.ServiceList} */ - public static final class ServiceIdList extends + public static final class ServiceList extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ServiceIdList) - ServiceIdListOrBuilder { + // @@protoc_insertion_point(message_implements:context.ServiceList) + ServiceListOrBuilder { private static final long serialVersionUID = 0L; - // Use ServiceIdList.newBuilder() to construct. - private ServiceIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ServiceList.newBuilder() to construct. + private ServiceList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ServiceIdList() { - serviceIds_ = java.util.Collections.emptyList(); + private ServiceList() { + services_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ServiceIdList(); + return new ServiceList(); } @java.lang.Override @@ -30430,7 +32459,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ServiceIdList( + private ServiceList( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -30451,11 +32480,11 @@ public final class ContextOuterClass { break; case 10: { if (!((mutable_bitField0_ & 0x00000001) != 0)) { - serviceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(); + services_ = new java.util.ArrayList<context.ContextOuterClass.Service>(); mutable_bitField0_ |= 0x00000001; } - serviceIds_.add( - input.readMessage(context.ContextOuterClass.ServiceId.parser(), extensionRegistry)); + services_.add( + input.readMessage(context.ContextOuterClass.Service.parser(), extensionRegistry)); break; } default: { @@ -30474,7 +32503,7 @@ public final class ContextOuterClass { e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { - serviceIds_ = java.util.Collections.unmodifiableList(serviceIds_); + services_ = java.util.Collections.unmodifiableList(services_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); @@ -30482,55 +32511,55 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ServiceIdList_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ServiceIdList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ServiceList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ServiceIdList.class, context.ContextOuterClass.ServiceIdList.Builder.class); + context.ContextOuterClass.ServiceList.class, context.ContextOuterClass.ServiceList.Builder.class); } - public static final int SERVICE_IDS_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.ServiceId> serviceIds_; + public static final int SERVICES_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.Service> services_; /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ @java.lang.Override - public java.util.List<context.ContextOuterClass.ServiceId> getServiceIdsList() { - return serviceIds_; + public java.util.List<context.ContextOuterClass.Service> getServicesList() { + return services_; } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> - getServiceIdsOrBuilderList() { - return serviceIds_; + public java.util.List<? extends context.ContextOuterClass.ServiceOrBuilder> + getServicesOrBuilderList() { + return services_; } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ @java.lang.Override - public int getServiceIdsCount() { - return serviceIds_.size(); + public int getServicesCount() { + return services_.size(); } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.ServiceId getServiceIds(int index) { - return serviceIds_.get(index); + public context.ContextOuterClass.Service getServices(int index) { + return services_.get(index); } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdsOrBuilder( + public context.ContextOuterClass.ServiceOrBuilder getServicesOrBuilder( int index) { - return serviceIds_.get(index); + return services_.get(index); } private byte memoizedIsInitialized = -1; @@ -30547,8 +32576,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < serviceIds_.size(); i++) { - output.writeMessage(1, serviceIds_.get(i)); + for (int i = 0; i < services_.size(); i++) { + output.writeMessage(1, services_.get(i)); } unknownFields.writeTo(output); } @@ -30559,9 +32588,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < serviceIds_.size(); i++) { + for (int i = 0; i < services_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, serviceIds_.get(i)); + .computeMessageSize(1, services_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -30573,13 +32602,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ServiceIdList)) { + if (!(obj instanceof context.ContextOuterClass.ServiceList)) { return super.equals(obj); } - context.ContextOuterClass.ServiceIdList other = (context.ContextOuterClass.ServiceIdList) obj; + context.ContextOuterClass.ServiceList other = (context.ContextOuterClass.ServiceList) obj; - if (!getServiceIdsList() - .equals(other.getServiceIdsList())) return false; + if (!getServicesList() + .equals(other.getServicesList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -30591,78 +32620,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getServiceIdsCount() > 0) { - hash = (37 * hash) + SERVICE_IDS_FIELD_NUMBER; - hash = (53 * hash) + getServiceIdsList().hashCode(); + if (getServicesCount() > 0) { + hash = (37 * hash) + SERVICES_FIELD_NUMBER; + hash = (53 * hash) + getServicesList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ServiceIdList parseFrom( + public static context.ContextOuterClass.ServiceList parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceIdList parseFrom( + public static context.ContextOuterClass.ServiceList parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceIdList parseFrom( + public static context.ContextOuterClass.ServiceList parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceIdList parseFrom( + public static context.ContextOuterClass.ServiceList parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceIdList parseFrom(byte[] data) + public static context.ContextOuterClass.ServiceList parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceIdList parseFrom( + public static context.ContextOuterClass.ServiceList parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceIdList parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ServiceList parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceIdList parseFrom( + public static context.ContextOuterClass.ServiceList 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 context.ContextOuterClass.ServiceIdList parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ServiceList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceIdList parseDelimitedFrom( + public static context.ContextOuterClass.ServiceList 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 context.ContextOuterClass.ServiceIdList parseFrom( + public static context.ContextOuterClass.ServiceList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceIdList parseFrom( + public static context.ContextOuterClass.ServiceList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -30675,7 +32704,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ServiceIdList prototype) { + public static Builder newBuilder(context.ContextOuterClass.ServiceList prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -30691,26 +32720,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ServiceIdList} + * Protobuf type {@code context.ServiceList} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ServiceIdList) - context.ContextOuterClass.ServiceIdListOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ServiceList) + context.ContextOuterClass.ServiceListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ServiceIdList_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ServiceIdList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ServiceList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ServiceIdList.class, context.ContextOuterClass.ServiceIdList.Builder.class); + context.ContextOuterClass.ServiceList.class, context.ContextOuterClass.ServiceList.Builder.class); } - // Construct using context.ContextOuterClass.ServiceIdList.newBuilder() + // Construct using context.ContextOuterClass.ServiceList.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -30723,17 +32752,17 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getServiceIdsFieldBuilder(); + getServicesFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (serviceIdsBuilder_ == null) { - serviceIds_ = java.util.Collections.emptyList(); + if (servicesBuilder_ == null) { + services_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); } else { - serviceIdsBuilder_.clear(); + servicesBuilder_.clear(); } return this; } @@ -30741,17 +32770,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ServiceIdList_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceList_descriptor; } @java.lang.Override - public context.ContextOuterClass.ServiceIdList getDefaultInstanceForType() { - return context.ContextOuterClass.ServiceIdList.getDefaultInstance(); + public context.ContextOuterClass.ServiceList getDefaultInstanceForType() { + return context.ContextOuterClass.ServiceList.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ServiceIdList build() { - context.ContextOuterClass.ServiceIdList result = buildPartial(); + public context.ContextOuterClass.ServiceList build() { + context.ContextOuterClass.ServiceList result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -30759,17 +32788,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ServiceIdList buildPartial() { - context.ContextOuterClass.ServiceIdList result = new context.ContextOuterClass.ServiceIdList(this); + public context.ContextOuterClass.ServiceList buildPartial() { + context.ContextOuterClass.ServiceList result = new context.ContextOuterClass.ServiceList(this); int from_bitField0_ = bitField0_; - if (serviceIdsBuilder_ == null) { + if (servicesBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { - serviceIds_ = java.util.Collections.unmodifiableList(serviceIds_); + services_ = java.util.Collections.unmodifiableList(services_); bitField0_ = (bitField0_ & ~0x00000001); } - result.serviceIds_ = serviceIds_; + result.services_ = services_; } else { - result.serviceIds_ = serviceIdsBuilder_.build(); + result.services_ = servicesBuilder_.build(); } onBuilt(); return result; @@ -30809,39 +32838,39 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ServiceIdList) { - return mergeFrom((context.ContextOuterClass.ServiceIdList)other); + if (other instanceof context.ContextOuterClass.ServiceList) { + return mergeFrom((context.ContextOuterClass.ServiceList)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ServiceIdList other) { - if (other == context.ContextOuterClass.ServiceIdList.getDefaultInstance()) return this; - if (serviceIdsBuilder_ == null) { - if (!other.serviceIds_.isEmpty()) { - if (serviceIds_.isEmpty()) { - serviceIds_ = other.serviceIds_; + public Builder mergeFrom(context.ContextOuterClass.ServiceList other) { + if (other == context.ContextOuterClass.ServiceList.getDefaultInstance()) return this; + if (servicesBuilder_ == null) { + if (!other.services_.isEmpty()) { + if (services_.isEmpty()) { + services_ = other.services_; bitField0_ = (bitField0_ & ~0x00000001); } else { - ensureServiceIdsIsMutable(); - serviceIds_.addAll(other.serviceIds_); + ensureServicesIsMutable(); + services_.addAll(other.services_); } onChanged(); } } else { - if (!other.serviceIds_.isEmpty()) { - if (serviceIdsBuilder_.isEmpty()) { - serviceIdsBuilder_.dispose(); - serviceIdsBuilder_ = null; - serviceIds_ = other.serviceIds_; + if (!other.services_.isEmpty()) { + if (servicesBuilder_.isEmpty()) { + servicesBuilder_.dispose(); + servicesBuilder_ = null; + services_ = other.services_; bitField0_ = (bitField0_ & ~0x00000001); - serviceIdsBuilder_ = + servicesBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getServiceIdsFieldBuilder() : null; + getServicesFieldBuilder() : null; } else { - serviceIdsBuilder_.addAllMessages(other.serviceIds_); + servicesBuilder_.addAllMessages(other.services_); } } } @@ -30860,11 +32889,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ServiceIdList parsedMessage = null; + context.ContextOuterClass.ServiceList parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ServiceIdList) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ServiceList) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -30875,244 +32904,244 @@ public final class ContextOuterClass { } private int bitField0_; - private java.util.List<context.ContextOuterClass.ServiceId> serviceIds_ = + private java.util.List<context.ContextOuterClass.Service> services_ = java.util.Collections.emptyList(); - private void ensureServiceIdsIsMutable() { + private void ensureServicesIsMutable() { if (!((bitField0_ & 0x00000001) != 0)) { - serviceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(serviceIds_); + services_ = new java.util.ArrayList<context.ContextOuterClass.Service>(services_); bitField0_ |= 0x00000001; } } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> serviceIdsBuilder_; + context.ContextOuterClass.Service, context.ContextOuterClass.Service.Builder, context.ContextOuterClass.ServiceOrBuilder> servicesBuilder_; /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public java.util.List<context.ContextOuterClass.ServiceId> getServiceIdsList() { - if (serviceIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(serviceIds_); + public java.util.List<context.ContextOuterClass.Service> getServicesList() { + if (servicesBuilder_ == null) { + return java.util.Collections.unmodifiableList(services_); } else { - return serviceIdsBuilder_.getMessageList(); + return servicesBuilder_.getMessageList(); } } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public int getServiceIdsCount() { - if (serviceIdsBuilder_ == null) { - return serviceIds_.size(); + public int getServicesCount() { + if (servicesBuilder_ == null) { + return services_.size(); } else { - return serviceIdsBuilder_.getCount(); + return servicesBuilder_.getCount(); } } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public context.ContextOuterClass.ServiceId getServiceIds(int index) { - if (serviceIdsBuilder_ == null) { - return serviceIds_.get(index); + public context.ContextOuterClass.Service getServices(int index) { + if (servicesBuilder_ == null) { + return services_.get(index); } else { - return serviceIdsBuilder_.getMessage(index); + return servicesBuilder_.getMessage(index); } } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public Builder setServiceIds( - int index, context.ContextOuterClass.ServiceId value) { - if (serviceIdsBuilder_ == null) { + public Builder setServices( + int index, context.ContextOuterClass.Service value) { + if (servicesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureServiceIdsIsMutable(); - serviceIds_.set(index, value); + ensureServicesIsMutable(); + services_.set(index, value); onChanged(); } else { - serviceIdsBuilder_.setMessage(index, value); + servicesBuilder_.setMessage(index, value); } return this; } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public Builder setServiceIds( - int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { - if (serviceIdsBuilder_ == null) { - ensureServiceIdsIsMutable(); - serviceIds_.set(index, builderForValue.build()); + public Builder setServices( + int index, context.ContextOuterClass.Service.Builder builderForValue) { + if (servicesBuilder_ == null) { + ensureServicesIsMutable(); + services_.set(index, builderForValue.build()); onChanged(); } else { - serviceIdsBuilder_.setMessage(index, builderForValue.build()); + servicesBuilder_.setMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public Builder addServiceIds(context.ContextOuterClass.ServiceId value) { - if (serviceIdsBuilder_ == null) { + public Builder addServices(context.ContextOuterClass.Service value) { + if (servicesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureServiceIdsIsMutable(); - serviceIds_.add(value); + ensureServicesIsMutable(); + services_.add(value); onChanged(); } else { - serviceIdsBuilder_.addMessage(value); + servicesBuilder_.addMessage(value); } return this; } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public Builder addServiceIds( - int index, context.ContextOuterClass.ServiceId value) { - if (serviceIdsBuilder_ == null) { + public Builder addServices( + int index, context.ContextOuterClass.Service value) { + if (servicesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureServiceIdsIsMutable(); - serviceIds_.add(index, value); + ensureServicesIsMutable(); + services_.add(index, value); onChanged(); } else { - serviceIdsBuilder_.addMessage(index, value); + servicesBuilder_.addMessage(index, value); } return this; } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public Builder addServiceIds( - context.ContextOuterClass.ServiceId.Builder builderForValue) { - if (serviceIdsBuilder_ == null) { - ensureServiceIdsIsMutable(); - serviceIds_.add(builderForValue.build()); + public Builder addServices( + context.ContextOuterClass.Service.Builder builderForValue) { + if (servicesBuilder_ == null) { + ensureServicesIsMutable(); + services_.add(builderForValue.build()); onChanged(); } else { - serviceIdsBuilder_.addMessage(builderForValue.build()); + servicesBuilder_.addMessage(builderForValue.build()); } return this; } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public Builder addServiceIds( - int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { - if (serviceIdsBuilder_ == null) { - ensureServiceIdsIsMutable(); - serviceIds_.add(index, builderForValue.build()); + public Builder addServices( + int index, context.ContextOuterClass.Service.Builder builderForValue) { + if (servicesBuilder_ == null) { + ensureServicesIsMutable(); + services_.add(index, builderForValue.build()); onChanged(); } else { - serviceIdsBuilder_.addMessage(index, builderForValue.build()); + servicesBuilder_.addMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public Builder addAllServiceIds( - java.lang.Iterable<? extends context.ContextOuterClass.ServiceId> values) { - if (serviceIdsBuilder_ == null) { - ensureServiceIdsIsMutable(); + public Builder addAllServices( + java.lang.Iterable<? extends context.ContextOuterClass.Service> values) { + if (servicesBuilder_ == null) { + ensureServicesIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, serviceIds_); + values, services_); onChanged(); } else { - serviceIdsBuilder_.addAllMessages(values); + servicesBuilder_.addAllMessages(values); } return this; } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public Builder clearServiceIds() { - if (serviceIdsBuilder_ == null) { - serviceIds_ = java.util.Collections.emptyList(); + public Builder clearServices() { + if (servicesBuilder_ == null) { + services_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { - serviceIdsBuilder_.clear(); + servicesBuilder_.clear(); } return this; } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public Builder removeServiceIds(int index) { - if (serviceIdsBuilder_ == null) { - ensureServiceIdsIsMutable(); - serviceIds_.remove(index); + public Builder removeServices(int index) { + if (servicesBuilder_ == null) { + ensureServicesIsMutable(); + services_.remove(index); onChanged(); } else { - serviceIdsBuilder_.remove(index); + servicesBuilder_.remove(index); } return this; } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public context.ContextOuterClass.ServiceId.Builder getServiceIdsBuilder( + public context.ContextOuterClass.Service.Builder getServicesBuilder( int index) { - return getServiceIdsFieldBuilder().getBuilder(index); + return getServicesFieldBuilder().getBuilder(index); } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdsOrBuilder( + public context.ContextOuterClass.ServiceOrBuilder getServicesOrBuilder( int index) { - if (serviceIdsBuilder_ == null) { - return serviceIds_.get(index); } else { - return serviceIdsBuilder_.getMessageOrBuilder(index); + if (servicesBuilder_ == null) { + return services_.get(index); } else { + return servicesBuilder_.getMessageOrBuilder(index); } } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> - getServiceIdsOrBuilderList() { - if (serviceIdsBuilder_ != null) { - return serviceIdsBuilder_.getMessageOrBuilderList(); + public java.util.List<? extends context.ContextOuterClass.ServiceOrBuilder> + getServicesOrBuilderList() { + if (servicesBuilder_ != null) { + return servicesBuilder_.getMessageOrBuilderList(); } else { - return java.util.Collections.unmodifiableList(serviceIds_); + return java.util.Collections.unmodifiableList(services_); } } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public context.ContextOuterClass.ServiceId.Builder addServiceIdsBuilder() { - return getServiceIdsFieldBuilder().addBuilder( - context.ContextOuterClass.ServiceId.getDefaultInstance()); + public context.ContextOuterClass.Service.Builder addServicesBuilder() { + return getServicesFieldBuilder().addBuilder( + context.ContextOuterClass.Service.getDefaultInstance()); } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public context.ContextOuterClass.ServiceId.Builder addServiceIdsBuilder( + public context.ContextOuterClass.Service.Builder addServicesBuilder( int index) { - return getServiceIdsFieldBuilder().addBuilder( - index, context.ContextOuterClass.ServiceId.getDefaultInstance()); + return getServicesFieldBuilder().addBuilder( + index, context.ContextOuterClass.Service.getDefaultInstance()); } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public java.util.List<context.ContextOuterClass.ServiceId.Builder> - getServiceIdsBuilderList() { - return getServiceIdsFieldBuilder().getBuilderList(); + public java.util.List<context.ContextOuterClass.Service.Builder> + getServicesBuilderList() { + return getServicesFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> - getServiceIdsFieldBuilder() { - if (serviceIdsBuilder_ == null) { - serviceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder>( - serviceIds_, + context.ContextOuterClass.Service, context.ContextOuterClass.Service.Builder, context.ContextOuterClass.ServiceOrBuilder> + getServicesFieldBuilder() { + if (servicesBuilder_ == null) { + servicesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Service, context.ContextOuterClass.Service.Builder, context.ContextOuterClass.ServiceOrBuilder>( + services_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); - serviceIds_ = null; + services_ = null; } - return serviceIdsBuilder_; + return servicesBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -31127,95 +33156,103 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ServiceIdList) + // @@protoc_insertion_point(builder_scope:context.ServiceList) } - // @@protoc_insertion_point(class_scope:context.ServiceIdList) - private static final context.ContextOuterClass.ServiceIdList DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ServiceList) + private static final context.ContextOuterClass.ServiceList DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceIdList(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceList(); } - public static context.ContextOuterClass.ServiceIdList getDefaultInstance() { + public static context.ContextOuterClass.ServiceList getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ServiceIdList> - PARSER = new com.google.protobuf.AbstractParser<ServiceIdList>() { + private static final com.google.protobuf.Parser<ServiceList> + PARSER = new com.google.protobuf.AbstractParser<ServiceList>() { @java.lang.Override - public ServiceIdList parsePartialFrom( + public ServiceList parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ServiceIdList(input, extensionRegistry); + return new ServiceList(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ServiceIdList> parser() { + public static com.google.protobuf.Parser<ServiceList> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ServiceIdList> getParserForType() { + public com.google.protobuf.Parser<ServiceList> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ServiceIdList getDefaultInstanceForType() { + public context.ContextOuterClass.ServiceList getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ServiceListOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ServiceList) + public interface ServiceFilterOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ServiceFilter) com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .context.Service services = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> + * @return Whether the serviceIds field is set. */ - java.util.List<context.ContextOuterClass.Service> - getServicesList(); + boolean hasServiceIds(); /** - * <code>repeated .context.Service services = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> + * @return The serviceIds. */ - context.ContextOuterClass.Service getServices(int index); + context.ContextOuterClass.ServiceIdList getServiceIds(); /** - * <code>repeated .context.Service services = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> */ - int getServicesCount(); + context.ContextOuterClass.ServiceIdListOrBuilder getServiceIdsOrBuilder(); + /** - * <code>repeated .context.Service services = 1;</code> + * <code>bool include_endpoint_ids = 2;</code> + * @return The includeEndpointIds. */ - java.util.List<? extends context.ContextOuterClass.ServiceOrBuilder> - getServicesOrBuilderList(); + boolean getIncludeEndpointIds(); + /** - * <code>repeated .context.Service services = 1;</code> + * <code>bool include_constraints = 3;</code> + * @return The includeConstraints. */ - context.ContextOuterClass.ServiceOrBuilder getServicesOrBuilder( - int index); + boolean getIncludeConstraints(); + + /** + * <code>bool include_config_rules = 4;</code> + * @return The includeConfigRules. + */ + boolean getIncludeConfigRules(); } /** - * Protobuf type {@code context.ServiceList} + * Protobuf type {@code context.ServiceFilter} */ - public static final class ServiceList extends + public static final class ServiceFilter extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ServiceList) - ServiceListOrBuilder { + // @@protoc_insertion_point(message_implements:context.ServiceFilter) + ServiceFilterOrBuilder { private static final long serialVersionUID = 0L; - // Use ServiceList.newBuilder() to construct. - private ServiceList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ServiceFilter.newBuilder() to construct. + private ServiceFilter(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ServiceList() { - services_ = java.util.Collections.emptyList(); + private ServiceFilter() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ServiceList(); + return new ServiceFilter(); } @java.lang.Override @@ -31223,7 +33260,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ServiceList( + private ServiceFilter( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -31231,7 +33268,6 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } - int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -31243,12 +33279,31 @@ public final class ContextOuterClass { done = true; break; case 10: { - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - services_ = new java.util.ArrayList<context.ContextOuterClass.Service>(); - mutable_bitField0_ |= 0x00000001; + context.ContextOuterClass.ServiceIdList.Builder subBuilder = null; + if (serviceIds_ != null) { + subBuilder = serviceIds_.toBuilder(); } - services_.add( - input.readMessage(context.ContextOuterClass.Service.parser(), extensionRegistry)); + serviceIds_ = input.readMessage(context.ContextOuterClass.ServiceIdList.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(serviceIds_); + serviceIds_ = subBuilder.buildPartial(); + } + + break; + } + case 16: { + + includeEndpointIds_ = input.readBool(); + break; + } + case 24: { + + includeConstraints_ = input.readBool(); + break; + } + case 32: { + + includeConfigRules_ = input.readBool(); break; } default: { @@ -31266,64 +33321,80 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { - if (((mutable_bitField0_ & 0x00000001) != 0)) { - services_ = java.util.Collections.unmodifiableList(services_); - } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ServiceList_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceFilter_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ServiceList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ServiceFilter_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ServiceList.class, context.ContextOuterClass.ServiceList.Builder.class); + context.ContextOuterClass.ServiceFilter.class, context.ContextOuterClass.ServiceFilter.Builder.class); } - public static final int SERVICES_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.Service> services_; + public static final int SERVICE_IDS_FIELD_NUMBER = 1; + private context.ContextOuterClass.ServiceIdList serviceIds_; /** - * <code>repeated .context.Service services = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> + * @return Whether the serviceIds field is set. */ @java.lang.Override - public java.util.List<context.ContextOuterClass.Service> getServicesList() { - return services_; + public boolean hasServiceIds() { + return serviceIds_ != null; } /** - * <code>repeated .context.Service services = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> + * @return The serviceIds. */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.ServiceOrBuilder> - getServicesOrBuilderList() { - return services_; + public context.ContextOuterClass.ServiceIdList getServiceIds() { + return serviceIds_ == null ? context.ContextOuterClass.ServiceIdList.getDefaultInstance() : serviceIds_; } /** - * <code>repeated .context.Service services = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> */ @java.lang.Override - public int getServicesCount() { - return services_.size(); + public context.ContextOuterClass.ServiceIdListOrBuilder getServiceIdsOrBuilder() { + return getServiceIds(); } + + public static final int INCLUDE_ENDPOINT_IDS_FIELD_NUMBER = 2; + private boolean includeEndpointIds_; /** - * <code>repeated .context.Service services = 1;</code> + * <code>bool include_endpoint_ids = 2;</code> + * @return The includeEndpointIds. */ @java.lang.Override - public context.ContextOuterClass.Service getServices(int index) { - return services_.get(index); + public boolean getIncludeEndpointIds() { + return includeEndpointIds_; } + + public static final int INCLUDE_CONSTRAINTS_FIELD_NUMBER = 3; + private boolean includeConstraints_; /** - * <code>repeated .context.Service services = 1;</code> + * <code>bool include_constraints = 3;</code> + * @return The includeConstraints. */ @java.lang.Override - public context.ContextOuterClass.ServiceOrBuilder getServicesOrBuilder( - int index) { - return services_.get(index); + public boolean getIncludeConstraints() { + return includeConstraints_; + } + + public static final int INCLUDE_CONFIG_RULES_FIELD_NUMBER = 4; + private boolean includeConfigRules_; + /** + * <code>bool include_config_rules = 4;</code> + * @return The includeConfigRules. + */ + @java.lang.Override + public boolean getIncludeConfigRules() { + return includeConfigRules_; } private byte memoizedIsInitialized = -1; @@ -31340,8 +33411,17 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < services_.size(); i++) { - output.writeMessage(1, services_.get(i)); + if (serviceIds_ != null) { + output.writeMessage(1, getServiceIds()); + } + if (includeEndpointIds_ != false) { + output.writeBool(2, includeEndpointIds_); + } + if (includeConstraints_ != false) { + output.writeBool(3, includeConstraints_); + } + if (includeConfigRules_ != false) { + output.writeBool(4, includeConfigRules_); } unknownFields.writeTo(output); } @@ -31352,9 +33432,21 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < services_.size(); i++) { + if (serviceIds_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, services_.get(i)); + .computeMessageSize(1, getServiceIds()); + } + if (includeEndpointIds_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(2, includeEndpointIds_); + } + if (includeConstraints_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(3, includeConstraints_); + } + if (includeConfigRules_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(4, includeConfigRules_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -31366,13 +33458,22 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ServiceList)) { + if (!(obj instanceof context.ContextOuterClass.ServiceFilter)) { return super.equals(obj); } - context.ContextOuterClass.ServiceList other = (context.ContextOuterClass.ServiceList) obj; + context.ContextOuterClass.ServiceFilter other = (context.ContextOuterClass.ServiceFilter) obj; - if (!getServicesList() - .equals(other.getServicesList())) return false; + if (hasServiceIds() != other.hasServiceIds()) return false; + if (hasServiceIds()) { + if (!getServiceIds() + .equals(other.getServiceIds())) return false; + } + if (getIncludeEndpointIds() + != other.getIncludeEndpointIds()) return false; + if (getIncludeConstraints() + != other.getIncludeConstraints()) return false; + if (getIncludeConfigRules() + != other.getIncludeConfigRules()) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -31384,78 +33485,87 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getServicesCount() > 0) { - hash = (37 * hash) + SERVICES_FIELD_NUMBER; - hash = (53 * hash) + getServicesList().hashCode(); + if (hasServiceIds()) { + hash = (37 * hash) + SERVICE_IDS_FIELD_NUMBER; + hash = (53 * hash) + getServiceIds().hashCode(); } + hash = (37 * hash) + INCLUDE_ENDPOINT_IDS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getIncludeEndpointIds()); + hash = (37 * hash) + INCLUDE_CONSTRAINTS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getIncludeConstraints()); + hash = (37 * hash) + INCLUDE_CONFIG_RULES_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getIncludeConfigRules()); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ServiceList parseFrom( + public static context.ContextOuterClass.ServiceFilter parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceList parseFrom( + public static context.ContextOuterClass.ServiceFilter parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceList parseFrom( + public static context.ContextOuterClass.ServiceFilter parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceList parseFrom( + public static context.ContextOuterClass.ServiceFilter parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceList parseFrom(byte[] data) + public static context.ContextOuterClass.ServiceFilter parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceList parseFrom( + public static context.ContextOuterClass.ServiceFilter parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceList parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ServiceFilter parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceList parseFrom( + public static context.ContextOuterClass.ServiceFilter 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 context.ContextOuterClass.ServiceList parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ServiceFilter parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceList parseDelimitedFrom( + public static context.ContextOuterClass.ServiceFilter 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 context.ContextOuterClass.ServiceList parseFrom( + public static context.ContextOuterClass.ServiceFilter parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceList parseFrom( + public static context.ContextOuterClass.ServiceFilter parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -31468,7 +33578,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ServiceList prototype) { + public static Builder newBuilder(context.ContextOuterClass.ServiceFilter prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -31484,26 +33594,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ServiceList} + * Protobuf type {@code context.ServiceFilter} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ServiceList) - context.ContextOuterClass.ServiceListOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ServiceFilter) + context.ContextOuterClass.ServiceFilterOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ServiceList_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceFilter_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ServiceList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ServiceFilter_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ServiceList.class, context.ContextOuterClass.ServiceList.Builder.class); + context.ContextOuterClass.ServiceFilter.class, context.ContextOuterClass.ServiceFilter.Builder.class); } - // Construct using context.ContextOuterClass.ServiceList.newBuilder() + // Construct using context.ContextOuterClass.ServiceFilter.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -31516,35 +33626,40 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getServicesFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (servicesBuilder_ == null) { - services_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + if (serviceIdsBuilder_ == null) { + serviceIds_ = null; } else { - servicesBuilder_.clear(); + serviceIds_ = null; + serviceIdsBuilder_ = null; } + includeEndpointIds_ = false; + + includeConstraints_ = false; + + includeConfigRules_ = false; + return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ServiceList_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceFilter_descriptor; } @java.lang.Override - public context.ContextOuterClass.ServiceList getDefaultInstanceForType() { - return context.ContextOuterClass.ServiceList.getDefaultInstance(); + public context.ContextOuterClass.ServiceFilter getDefaultInstanceForType() { + return context.ContextOuterClass.ServiceFilter.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ServiceList build() { - context.ContextOuterClass.ServiceList result = buildPartial(); + public context.ContextOuterClass.ServiceFilter build() { + context.ContextOuterClass.ServiceFilter result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -31552,18 +33667,16 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ServiceList buildPartial() { - context.ContextOuterClass.ServiceList result = new context.ContextOuterClass.ServiceList(this); - int from_bitField0_ = bitField0_; - if (servicesBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { - services_ = java.util.Collections.unmodifiableList(services_); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.services_ = services_; + public context.ContextOuterClass.ServiceFilter buildPartial() { + context.ContextOuterClass.ServiceFilter result = new context.ContextOuterClass.ServiceFilter(this); + if (serviceIdsBuilder_ == null) { + result.serviceIds_ = serviceIds_; } else { - result.services_ = servicesBuilder_.build(); + result.serviceIds_ = serviceIdsBuilder_.build(); } + result.includeEndpointIds_ = includeEndpointIds_; + result.includeConstraints_ = includeConstraints_; + result.includeConfigRules_ = includeConfigRules_; onBuilt(); return result; } @@ -31602,41 +33715,27 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ServiceList) { - return mergeFrom((context.ContextOuterClass.ServiceList)other); + if (other instanceof context.ContextOuterClass.ServiceFilter) { + return mergeFrom((context.ContextOuterClass.ServiceFilter)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ServiceList other) { - if (other == context.ContextOuterClass.ServiceList.getDefaultInstance()) return this; - if (servicesBuilder_ == null) { - if (!other.services_.isEmpty()) { - if (services_.isEmpty()) { - services_ = other.services_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureServicesIsMutable(); - services_.addAll(other.services_); - } - onChanged(); - } - } else { - if (!other.services_.isEmpty()) { - if (servicesBuilder_.isEmpty()) { - servicesBuilder_.dispose(); - servicesBuilder_ = null; - services_ = other.services_; - bitField0_ = (bitField0_ & ~0x00000001); - servicesBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getServicesFieldBuilder() : null; - } else { - servicesBuilder_.addAllMessages(other.services_); - } - } + public Builder mergeFrom(context.ContextOuterClass.ServiceFilter other) { + if (other == context.ContextOuterClass.ServiceFilter.getDefaultInstance()) return this; + if (other.hasServiceIds()) { + mergeServiceIds(other.getServiceIds()); + } + if (other.getIncludeEndpointIds() != false) { + setIncludeEndpointIds(other.getIncludeEndpointIds()); + } + if (other.getIncludeConstraints() != false) { + setIncludeConstraints(other.getIncludeConstraints()); + } + if (other.getIncludeConfigRules() != false) { + setIncludeConfigRules(other.getIncludeConfigRules()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -31653,11 +33752,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ServiceList parsedMessage = null; + context.ContextOuterClass.ServiceFilter parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ServiceList) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ServiceFilter) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -31666,246 +33765,217 @@ public final class ContextOuterClass { } return this; } - private int bitField0_; - - private java.util.List<context.ContextOuterClass.Service> services_ = - java.util.Collections.emptyList(); - private void ensureServicesIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - services_ = new java.util.ArrayList<context.ContextOuterClass.Service>(services_); - bitField0_ |= 0x00000001; - } - } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Service, context.ContextOuterClass.Service.Builder, context.ContextOuterClass.ServiceOrBuilder> servicesBuilder_; - - /** - * <code>repeated .context.Service services = 1;</code> - */ - public java.util.List<context.ContextOuterClass.Service> getServicesList() { - if (servicesBuilder_ == null) { - return java.util.Collections.unmodifiableList(services_); - } else { - return servicesBuilder_.getMessageList(); - } - } + private context.ContextOuterClass.ServiceIdList serviceIds_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ServiceIdList, context.ContextOuterClass.ServiceIdList.Builder, context.ContextOuterClass.ServiceIdListOrBuilder> serviceIdsBuilder_; /** - * <code>repeated .context.Service services = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> + * @return Whether the serviceIds field is set. */ - public int getServicesCount() { - if (servicesBuilder_ == null) { - return services_.size(); - } else { - return servicesBuilder_.getCount(); - } + public boolean hasServiceIds() { + return serviceIdsBuilder_ != null || serviceIds_ != null; } /** - * <code>repeated .context.Service services = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> + * @return The serviceIds. */ - public context.ContextOuterClass.Service getServices(int index) { - if (servicesBuilder_ == null) { - return services_.get(index); + public context.ContextOuterClass.ServiceIdList getServiceIds() { + if (serviceIdsBuilder_ == null) { + return serviceIds_ == null ? context.ContextOuterClass.ServiceIdList.getDefaultInstance() : serviceIds_; } else { - return servicesBuilder_.getMessage(index); + return serviceIdsBuilder_.getMessage(); } } /** - * <code>repeated .context.Service services = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> */ - public Builder setServices( - int index, context.ContextOuterClass.Service value) { - if (servicesBuilder_ == null) { + public Builder setServiceIds(context.ContextOuterClass.ServiceIdList value) { + if (serviceIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureServicesIsMutable(); - services_.set(index, value); + serviceIds_ = value; onChanged(); } else { - servicesBuilder_.setMessage(index, value); + serviceIdsBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.Service services = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> */ - public Builder setServices( - int index, context.ContextOuterClass.Service.Builder builderForValue) { - if (servicesBuilder_ == null) { - ensureServicesIsMutable(); - services_.set(index, builderForValue.build()); + public Builder setServiceIds( + context.ContextOuterClass.ServiceIdList.Builder builderForValue) { + if (serviceIdsBuilder_ == null) { + serviceIds_ = builderForValue.build(); onChanged(); } else { - servicesBuilder_.setMessage(index, builderForValue.build()); + serviceIdsBuilder_.setMessage(builderForValue.build()); } + return this; } /** - * <code>repeated .context.Service services = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> */ - public Builder addServices(context.ContextOuterClass.Service value) { - if (servicesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + public Builder mergeServiceIds(context.ContextOuterClass.ServiceIdList value) { + if (serviceIdsBuilder_ == null) { + if (serviceIds_ != null) { + serviceIds_ = + context.ContextOuterClass.ServiceIdList.newBuilder(serviceIds_).mergeFrom(value).buildPartial(); + } else { + serviceIds_ = value; } - ensureServicesIsMutable(); - services_.add(value); onChanged(); } else { - servicesBuilder_.addMessage(value); + serviceIdsBuilder_.mergeFrom(value); } + return this; } /** - * <code>repeated .context.Service services = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> */ - public Builder addServices( - int index, context.ContextOuterClass.Service value) { - if (servicesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureServicesIsMutable(); - services_.add(index, value); + public Builder clearServiceIds() { + if (serviceIdsBuilder_ == null) { + serviceIds_ = null; onChanged(); } else { - servicesBuilder_.addMessage(index, value); + serviceIds_ = null; + serviceIdsBuilder_ = null; } + return this; } /** - * <code>repeated .context.Service services = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> */ - public Builder addServices( - context.ContextOuterClass.Service.Builder builderForValue) { - if (servicesBuilder_ == null) { - ensureServicesIsMutable(); - services_.add(builderForValue.build()); - onChanged(); - } else { - servicesBuilder_.addMessage(builderForValue.build()); - } - return this; + public context.ContextOuterClass.ServiceIdList.Builder getServiceIdsBuilder() { + + onChanged(); + return getServiceIdsFieldBuilder().getBuilder(); } /** - * <code>repeated .context.Service services = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> */ - public Builder addServices( - int index, context.ContextOuterClass.Service.Builder builderForValue) { - if (servicesBuilder_ == null) { - ensureServicesIsMutable(); - services_.add(index, builderForValue.build()); - onChanged(); + public context.ContextOuterClass.ServiceIdListOrBuilder getServiceIdsOrBuilder() { + if (serviceIdsBuilder_ != null) { + return serviceIdsBuilder_.getMessageOrBuilder(); } else { - servicesBuilder_.addMessage(index, builderForValue.build()); + return serviceIds_ == null ? + context.ContextOuterClass.ServiceIdList.getDefaultInstance() : serviceIds_; } - return this; } /** - * <code>repeated .context.Service services = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> */ - public Builder addAllServices( - java.lang.Iterable<? extends context.ContextOuterClass.Service> values) { - if (servicesBuilder_ == null) { - ensureServicesIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, services_); - onChanged(); - } else { - servicesBuilder_.addAllMessages(values); + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ServiceIdList, context.ContextOuterClass.ServiceIdList.Builder, context.ContextOuterClass.ServiceIdListOrBuilder> + getServiceIdsFieldBuilder() { + if (serviceIdsBuilder_ == null) { + serviceIdsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ServiceIdList, context.ContextOuterClass.ServiceIdList.Builder, context.ContextOuterClass.ServiceIdListOrBuilder>( + getServiceIds(), + getParentForChildren(), + isClean()); + serviceIds_ = null; } - return this; + return serviceIdsBuilder_; } + + private boolean includeEndpointIds_ ; /** - * <code>repeated .context.Service services = 1;</code> + * <code>bool include_endpoint_ids = 2;</code> + * @return The includeEndpointIds. */ - public Builder clearServices() { - if (servicesBuilder_ == null) { - services_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - } else { - servicesBuilder_.clear(); - } - return this; + @java.lang.Override + public boolean getIncludeEndpointIds() { + return includeEndpointIds_; } /** - * <code>repeated .context.Service services = 1;</code> + * <code>bool include_endpoint_ids = 2;</code> + * @param value The includeEndpointIds to set. + * @return This builder for chaining. */ - public Builder removeServices(int index) { - if (servicesBuilder_ == null) { - ensureServicesIsMutable(); - services_.remove(index); - onChanged(); - } else { - servicesBuilder_.remove(index); - } + public Builder setIncludeEndpointIds(boolean value) { + + includeEndpointIds_ = value; + onChanged(); return this; } /** - * <code>repeated .context.Service services = 1;</code> + * <code>bool include_endpoint_ids = 2;</code> + * @return This builder for chaining. */ - public context.ContextOuterClass.Service.Builder getServicesBuilder( - int index) { - return getServicesFieldBuilder().getBuilder(index); + public Builder clearIncludeEndpointIds() { + + includeEndpointIds_ = false; + onChanged(); + return this; } + + private boolean includeConstraints_ ; /** - * <code>repeated .context.Service services = 1;</code> + * <code>bool include_constraints = 3;</code> + * @return The includeConstraints. */ - public context.ContextOuterClass.ServiceOrBuilder getServicesOrBuilder( - int index) { - if (servicesBuilder_ == null) { - return services_.get(index); } else { - return servicesBuilder_.getMessageOrBuilder(index); - } + @java.lang.Override + public boolean getIncludeConstraints() { + return includeConstraints_; } /** - * <code>repeated .context.Service services = 1;</code> + * <code>bool include_constraints = 3;</code> + * @param value The includeConstraints to set. + * @return This builder for chaining. */ - public java.util.List<? extends context.ContextOuterClass.ServiceOrBuilder> - getServicesOrBuilderList() { - if (servicesBuilder_ != null) { - return servicesBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(services_); - } + public Builder setIncludeConstraints(boolean value) { + + includeConstraints_ = value; + onChanged(); + return this; } /** - * <code>repeated .context.Service services = 1;</code> + * <code>bool include_constraints = 3;</code> + * @return This builder for chaining. */ - public context.ContextOuterClass.Service.Builder addServicesBuilder() { - return getServicesFieldBuilder().addBuilder( - context.ContextOuterClass.Service.getDefaultInstance()); + public Builder clearIncludeConstraints() { + + includeConstraints_ = false; + onChanged(); + return this; } + + private boolean includeConfigRules_ ; /** - * <code>repeated .context.Service services = 1;</code> + * <code>bool include_config_rules = 4;</code> + * @return The includeConfigRules. */ - public context.ContextOuterClass.Service.Builder addServicesBuilder( - int index) { - return getServicesFieldBuilder().addBuilder( - index, context.ContextOuterClass.Service.getDefaultInstance()); + @java.lang.Override + public boolean getIncludeConfigRules() { + return includeConfigRules_; } /** - * <code>repeated .context.Service services = 1;</code> + * <code>bool include_config_rules = 4;</code> + * @param value The includeConfigRules to set. + * @return This builder for chaining. */ - public java.util.List<context.ContextOuterClass.Service.Builder> - getServicesBuilderList() { - return getServicesFieldBuilder().getBuilderList(); + public Builder setIncludeConfigRules(boolean value) { + + includeConfigRules_ = value; + onChanged(); + return this; } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Service, context.ContextOuterClass.Service.Builder, context.ContextOuterClass.ServiceOrBuilder> - getServicesFieldBuilder() { - if (servicesBuilder_ == null) { - servicesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Service, context.ContextOuterClass.Service.Builder, context.ContextOuterClass.ServiceOrBuilder>( - services_, - ((bitField0_ & 0x00000001) != 0), - getParentForChildren(), - isClean()); - services_ = null; - } - return servicesBuilder_; + /** + * <code>bool include_config_rules = 4;</code> + * @return This builder for chaining. + */ + public Builder clearIncludeConfigRules() { + + includeConfigRules_ = false; + onChanged(); + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -31920,41 +33990,41 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ServiceList) + // @@protoc_insertion_point(builder_scope:context.ServiceFilter) } - // @@protoc_insertion_point(class_scope:context.ServiceList) - private static final context.ContextOuterClass.ServiceList DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ServiceFilter) + private static final context.ContextOuterClass.ServiceFilter DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceList(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceFilter(); } - public static context.ContextOuterClass.ServiceList getDefaultInstance() { + public static context.ContextOuterClass.ServiceFilter getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ServiceList> - PARSER = new com.google.protobuf.AbstractParser<ServiceList>() { + private static final com.google.protobuf.Parser<ServiceFilter> + PARSER = new com.google.protobuf.AbstractParser<ServiceFilter>() { @java.lang.Override - public ServiceList parsePartialFrom( + public ServiceFilter parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ServiceList(input, extensionRegistry); + return new ServiceFilter(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ServiceList> parser() { + public static com.google.protobuf.Parser<ServiceFilter> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ServiceList> getParserForType() { + public com.google.protobuf.Parser<ServiceFilter> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ServiceList getDefaultInstanceForType() { + public context.ContextOuterClass.ServiceFilter getDefaultInstanceForType() { return DEFAULT_INSTANCE; } @@ -34273,2369 +36343,3665 @@ public final class ContextOuterClass { public context.ContextOuterClass.SliceConfig getSliceConfig() { return sliceConfig_ == null ? context.ContextOuterClass.SliceConfig.getDefaultInstance() : sliceConfig_; } - /** - * <code>.context.SliceConfig slice_config = 8;</code> - */ - @java.lang.Override - public context.ContextOuterClass.SliceConfigOrBuilder getSliceConfigOrBuilder() { - return getSliceConfig(); + /** + * <code>.context.SliceConfig slice_config = 8;</code> + */ + @java.lang.Override + public context.ContextOuterClass.SliceConfigOrBuilder getSliceConfigOrBuilder() { + return getSliceConfig(); + } + + public static final int SLICE_OWNER_FIELD_NUMBER = 9; + private context.ContextOuterClass.SliceOwner sliceOwner_; + /** + * <code>.context.SliceOwner slice_owner = 9;</code> + * @return Whether the sliceOwner field is set. + */ + @java.lang.Override + public boolean hasSliceOwner() { + return sliceOwner_ != null; + } + /** + * <code>.context.SliceOwner slice_owner = 9;</code> + * @return The sliceOwner. + */ + @java.lang.Override + public context.ContextOuterClass.SliceOwner getSliceOwner() { + return sliceOwner_ == null ? context.ContextOuterClass.SliceOwner.getDefaultInstance() : sliceOwner_; + } + /** + * <code>.context.SliceOwner slice_owner = 9;</code> + */ + @java.lang.Override + public context.ContextOuterClass.SliceOwnerOrBuilder getSliceOwnerOrBuilder() { + return getSliceOwner(); + } + + public static final int TIMESTAMP_FIELD_NUMBER = 10; + private context.ContextOuterClass.Timestamp timestamp_; + /** + * <code>.context.Timestamp timestamp = 10;</code> + * @return Whether the timestamp field is set. + */ + @java.lang.Override + public boolean hasTimestamp() { + return timestamp_ != null; + } + /** + * <code>.context.Timestamp timestamp = 10;</code> + * @return The timestamp. + */ + @java.lang.Override + public context.ContextOuterClass.Timestamp getTimestamp() { + return timestamp_ == null ? context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_; + } + /** + * <code>.context.Timestamp timestamp = 10;</code> + */ + @java.lang.Override + public context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder() { + return getTimestamp(); + } + + 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 (sliceId_ != null) { + output.writeMessage(1, getSliceId()); + } + if (!getNameBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_); + } + for (int i = 0; i < sliceEndpointIds_.size(); i++) { + output.writeMessage(3, sliceEndpointIds_.get(i)); + } + for (int i = 0; i < sliceConstraints_.size(); i++) { + output.writeMessage(4, sliceConstraints_.get(i)); + } + for (int i = 0; i < sliceServiceIds_.size(); i++) { + output.writeMessage(5, sliceServiceIds_.get(i)); + } + for (int i = 0; i < sliceSubsliceIds_.size(); i++) { + output.writeMessage(6, sliceSubsliceIds_.get(i)); + } + if (sliceStatus_ != null) { + output.writeMessage(7, getSliceStatus()); + } + if (sliceConfig_ != null) { + output.writeMessage(8, getSliceConfig()); + } + if (sliceOwner_ != null) { + output.writeMessage(9, getSliceOwner()); + } + if (timestamp_ != null) { + output.writeMessage(10, getTimestamp()); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (sliceId_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getSliceId()); + } + if (!getNameBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_); + } + for (int i = 0; i < sliceEndpointIds_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(3, sliceEndpointIds_.get(i)); + } + for (int i = 0; i < sliceConstraints_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(4, sliceConstraints_.get(i)); + } + for (int i = 0; i < sliceServiceIds_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(5, sliceServiceIds_.get(i)); + } + for (int i = 0; i < sliceSubsliceIds_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(6, sliceSubsliceIds_.get(i)); + } + if (sliceStatus_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(7, getSliceStatus()); + } + if (sliceConfig_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(8, getSliceConfig()); + } + if (sliceOwner_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(9, getSliceOwner()); + } + if (timestamp_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(10, getTimestamp()); + } + 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 context.ContextOuterClass.Slice)) { + return super.equals(obj); + } + context.ContextOuterClass.Slice other = (context.ContextOuterClass.Slice) obj; + + if (hasSliceId() != other.hasSliceId()) return false; + if (hasSliceId()) { + if (!getSliceId() + .equals(other.getSliceId())) return false; + } + if (!getName() + .equals(other.getName())) return false; + if (!getSliceEndpointIdsList() + .equals(other.getSliceEndpointIdsList())) return false; + if (!getSliceConstraintsList() + .equals(other.getSliceConstraintsList())) return false; + if (!getSliceServiceIdsList() + .equals(other.getSliceServiceIdsList())) return false; + if (!getSliceSubsliceIdsList() + .equals(other.getSliceSubsliceIdsList())) return false; + if (hasSliceStatus() != other.hasSliceStatus()) return false; + if (hasSliceStatus()) { + if (!getSliceStatus() + .equals(other.getSliceStatus())) return false; + } + if (hasSliceConfig() != other.hasSliceConfig()) return false; + if (hasSliceConfig()) { + if (!getSliceConfig() + .equals(other.getSliceConfig())) return false; + } + if (hasSliceOwner() != other.hasSliceOwner()) return false; + if (hasSliceOwner()) { + if (!getSliceOwner() + .equals(other.getSliceOwner())) return false; + } + if (hasTimestamp() != other.hasTimestamp()) return false; + if (hasTimestamp()) { + if (!getTimestamp() + .equals(other.getTimestamp())) 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 (hasSliceId()) { + hash = (37 * hash) + SLICE_ID_FIELD_NUMBER; + hash = (53 * hash) + getSliceId().hashCode(); + } + hash = (37 * hash) + NAME_FIELD_NUMBER; + hash = (53 * hash) + getName().hashCode(); + if (getSliceEndpointIdsCount() > 0) { + hash = (37 * hash) + SLICE_ENDPOINT_IDS_FIELD_NUMBER; + hash = (53 * hash) + getSliceEndpointIdsList().hashCode(); + } + if (getSliceConstraintsCount() > 0) { + hash = (37 * hash) + SLICE_CONSTRAINTS_FIELD_NUMBER; + hash = (53 * hash) + getSliceConstraintsList().hashCode(); + } + if (getSliceServiceIdsCount() > 0) { + hash = (37 * hash) + SLICE_SERVICE_IDS_FIELD_NUMBER; + hash = (53 * hash) + getSliceServiceIdsList().hashCode(); + } + if (getSliceSubsliceIdsCount() > 0) { + hash = (37 * hash) + SLICE_SUBSLICE_IDS_FIELD_NUMBER; + hash = (53 * hash) + getSliceSubsliceIdsList().hashCode(); + } + if (hasSliceStatus()) { + hash = (37 * hash) + SLICE_STATUS_FIELD_NUMBER; + hash = (53 * hash) + getSliceStatus().hashCode(); + } + if (hasSliceConfig()) { + hash = (37 * hash) + SLICE_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getSliceConfig().hashCode(); + } + if (hasSliceOwner()) { + hash = (37 * hash) + SLICE_OWNER_FIELD_NUMBER; + hash = (53 * hash) + getSliceOwner().hashCode(); + } + if (hasTimestamp()) { + hash = (37 * hash) + TIMESTAMP_FIELD_NUMBER; + hash = (53 * hash) + getTimestamp().hashCode(); + } + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static context.ContextOuterClass.Slice parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.Slice parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.Slice parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.Slice parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.Slice parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.Slice parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.Slice parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.Slice 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 context.ContextOuterClass.Slice parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static context.ContextOuterClass.Slice 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 context.ContextOuterClass.Slice parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.Slice parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); } - public static final int SLICE_OWNER_FIELD_NUMBER = 9; - private context.ContextOuterClass.SliceOwner sliceOwner_; - /** - * <code>.context.SliceOwner slice_owner = 9;</code> - * @return Whether the sliceOwner field is set. - */ @java.lang.Override - public boolean hasSliceOwner() { - return sliceOwner_ != null; + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); } - /** - * <code>.context.SliceOwner slice_owner = 9;</code> - * @return The sliceOwner. - */ - @java.lang.Override - public context.ContextOuterClass.SliceOwner getSliceOwner() { - return sliceOwner_ == null ? context.ContextOuterClass.SliceOwner.getDefaultInstance() : sliceOwner_; + public static Builder newBuilder(context.ContextOuterClass.Slice prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } - /** - * <code>.context.SliceOwner slice_owner = 9;</code> - */ @java.lang.Override - public context.ContextOuterClass.SliceOwnerOrBuilder getSliceOwnerOrBuilder() { - return getSliceOwner(); + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); } - public static final int TIMESTAMP_FIELD_NUMBER = 10; - private context.ContextOuterClass.Timestamp timestamp_; - /** - * <code>.context.Timestamp timestamp = 10;</code> - * @return Whether the timestamp field is set. - */ - @java.lang.Override - public boolean hasTimestamp() { - return timestamp_ != null; - } - /** - * <code>.context.Timestamp timestamp = 10;</code> - * @return The timestamp. - */ @java.lang.Override - public context.ContextOuterClass.Timestamp getTimestamp() { - return timestamp_ == null ? context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_; + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; } /** - * <code>.context.Timestamp timestamp = 10;</code> + * Protobuf type {@code context.Slice} */ - @java.lang.Override - public context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder() { - return getTimestamp(); - } - - 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 (sliceId_ != null) { - output.writeMessage(1, getSliceId()); - } - if (!getNameBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_); + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:context.Slice) + context.ContextOuterClass.SliceOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_Slice_descriptor; } - for (int i = 0; i < sliceEndpointIds_.size(); i++) { - output.writeMessage(3, sliceEndpointIds_.get(i)); + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_Slice_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.Slice.class, context.ContextOuterClass.Slice.Builder.class); } - for (int i = 0; i < sliceConstraints_.size(); i++) { - output.writeMessage(4, sliceConstraints_.get(i)); + + // Construct using context.ContextOuterClass.Slice.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); } - for (int i = 0; i < sliceServiceIds_.size(); i++) { - output.writeMessage(5, sliceServiceIds_.get(i)); + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); } - for (int i = 0; i < sliceSubsliceIds_.size(); i++) { - output.writeMessage(6, sliceSubsliceIds_.get(i)); + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getSliceEndpointIdsFieldBuilder(); + getSliceConstraintsFieldBuilder(); + getSliceServiceIdsFieldBuilder(); + getSliceSubsliceIdsFieldBuilder(); + } } - if (sliceStatus_ != null) { - output.writeMessage(7, getSliceStatus()); + @java.lang.Override + public Builder clear() { + super.clear(); + if (sliceIdBuilder_ == null) { + sliceId_ = null; + } else { + sliceId_ = null; + sliceIdBuilder_ = null; + } + name_ = ""; + + if (sliceEndpointIdsBuilder_ == null) { + sliceEndpointIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + } else { + sliceEndpointIdsBuilder_.clear(); + } + if (sliceConstraintsBuilder_ == null) { + sliceConstraints_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + } else { + sliceConstraintsBuilder_.clear(); + } + if (sliceServiceIdsBuilder_ == null) { + sliceServiceIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + } else { + sliceServiceIdsBuilder_.clear(); + } + if (sliceSubsliceIdsBuilder_ == null) { + sliceSubsliceIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000008); + } else { + sliceSubsliceIdsBuilder_.clear(); + } + if (sliceStatusBuilder_ == null) { + sliceStatus_ = null; + } else { + sliceStatus_ = null; + sliceStatusBuilder_ = null; + } + if (sliceConfigBuilder_ == null) { + sliceConfig_ = null; + } else { + sliceConfig_ = null; + sliceConfigBuilder_ = null; + } + if (sliceOwnerBuilder_ == null) { + sliceOwner_ = null; + } else { + sliceOwner_ = null; + sliceOwnerBuilder_ = null; + } + if (timestampBuilder_ == null) { + timestamp_ = null; + } else { + timestamp_ = null; + timestampBuilder_ = null; + } + return this; } - if (sliceConfig_ != null) { - output.writeMessage(8, getSliceConfig()); + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return context.ContextOuterClass.internal_static_context_Slice_descriptor; } - if (sliceOwner_ != null) { - output.writeMessage(9, getSliceOwner()); + + @java.lang.Override + public context.ContextOuterClass.Slice getDefaultInstanceForType() { + return context.ContextOuterClass.Slice.getDefaultInstance(); } - if (timestamp_ != null) { - output.writeMessage(10, getTimestamp()); + + @java.lang.Override + public context.ContextOuterClass.Slice build() { + context.ContextOuterClass.Slice result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; } - unknownFields.writeTo(output); - } - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; + @java.lang.Override + public context.ContextOuterClass.Slice buildPartial() { + context.ContextOuterClass.Slice result = new context.ContextOuterClass.Slice(this); + int from_bitField0_ = bitField0_; + if (sliceIdBuilder_ == null) { + result.sliceId_ = sliceId_; + } else { + result.sliceId_ = sliceIdBuilder_.build(); + } + result.name_ = name_; + if (sliceEndpointIdsBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + sliceEndpointIds_ = java.util.Collections.unmodifiableList(sliceEndpointIds_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.sliceEndpointIds_ = sliceEndpointIds_; + } else { + result.sliceEndpointIds_ = sliceEndpointIdsBuilder_.build(); + } + if (sliceConstraintsBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0)) { + sliceConstraints_ = java.util.Collections.unmodifiableList(sliceConstraints_); + bitField0_ = (bitField0_ & ~0x00000002); + } + result.sliceConstraints_ = sliceConstraints_; + } else { + result.sliceConstraints_ = sliceConstraintsBuilder_.build(); + } + if (sliceServiceIdsBuilder_ == null) { + if (((bitField0_ & 0x00000004) != 0)) { + sliceServiceIds_ = java.util.Collections.unmodifiableList(sliceServiceIds_); + bitField0_ = (bitField0_ & ~0x00000004); + } + result.sliceServiceIds_ = sliceServiceIds_; + } else { + result.sliceServiceIds_ = sliceServiceIdsBuilder_.build(); + } + if (sliceSubsliceIdsBuilder_ == null) { + if (((bitField0_ & 0x00000008) != 0)) { + sliceSubsliceIds_ = java.util.Collections.unmodifiableList(sliceSubsliceIds_); + bitField0_ = (bitField0_ & ~0x00000008); + } + result.sliceSubsliceIds_ = sliceSubsliceIds_; + } else { + result.sliceSubsliceIds_ = sliceSubsliceIdsBuilder_.build(); + } + if (sliceStatusBuilder_ == null) { + result.sliceStatus_ = sliceStatus_; + } else { + result.sliceStatus_ = sliceStatusBuilder_.build(); + } + if (sliceConfigBuilder_ == null) { + result.sliceConfig_ = sliceConfig_; + } else { + result.sliceConfig_ = sliceConfigBuilder_.build(); + } + if (sliceOwnerBuilder_ == null) { + result.sliceOwner_ = sliceOwner_; + } else { + result.sliceOwner_ = sliceOwnerBuilder_.build(); + } + if (timestampBuilder_ == null) { + result.timestamp_ = timestamp_; + } else { + result.timestamp_ = timestampBuilder_.build(); + } + onBuilt(); + return result; + } - size = 0; - if (sliceId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getSliceId()); + @java.lang.Override + public Builder clone() { + return super.clone(); } - if (!getNameBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_); + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); } - for (int i = 0; i < sliceEndpointIds_.size(); i++) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(3, sliceEndpointIds_.get(i)); + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); } - for (int i = 0; i < sliceConstraints_.size(); i++) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(4, sliceConstraints_.get(i)); + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); } - for (int i = 0; i < sliceServiceIds_.size(); i++) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(5, sliceServiceIds_.get(i)); + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); } - for (int i = 0; i < sliceSubsliceIds_.size(); i++) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(6, sliceSubsliceIds_.get(i)); + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); } - if (sliceStatus_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(7, getSliceStatus()); + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof context.ContextOuterClass.Slice) { + return mergeFrom((context.ContextOuterClass.Slice)other); + } else { + super.mergeFrom(other); + return this; + } } - if (sliceConfig_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(8, getSliceConfig()); + + public Builder mergeFrom(context.ContextOuterClass.Slice other) { + if (other == context.ContextOuterClass.Slice.getDefaultInstance()) return this; + if (other.hasSliceId()) { + mergeSliceId(other.getSliceId()); + } + if (!other.getName().isEmpty()) { + name_ = other.name_; + onChanged(); + } + if (sliceEndpointIdsBuilder_ == null) { + if (!other.sliceEndpointIds_.isEmpty()) { + if (sliceEndpointIds_.isEmpty()) { + sliceEndpointIds_ = other.sliceEndpointIds_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureSliceEndpointIdsIsMutable(); + sliceEndpointIds_.addAll(other.sliceEndpointIds_); + } + onChanged(); + } + } else { + if (!other.sliceEndpointIds_.isEmpty()) { + if (sliceEndpointIdsBuilder_.isEmpty()) { + sliceEndpointIdsBuilder_.dispose(); + sliceEndpointIdsBuilder_ = null; + sliceEndpointIds_ = other.sliceEndpointIds_; + bitField0_ = (bitField0_ & ~0x00000001); + sliceEndpointIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getSliceEndpointIdsFieldBuilder() : null; + } else { + sliceEndpointIdsBuilder_.addAllMessages(other.sliceEndpointIds_); + } + } + } + if (sliceConstraintsBuilder_ == null) { + if (!other.sliceConstraints_.isEmpty()) { + if (sliceConstraints_.isEmpty()) { + sliceConstraints_ = other.sliceConstraints_; + bitField0_ = (bitField0_ & ~0x00000002); + } else { + ensureSliceConstraintsIsMutable(); + sliceConstraints_.addAll(other.sliceConstraints_); + } + onChanged(); + } + } else { + if (!other.sliceConstraints_.isEmpty()) { + if (sliceConstraintsBuilder_.isEmpty()) { + sliceConstraintsBuilder_.dispose(); + sliceConstraintsBuilder_ = null; + sliceConstraints_ = other.sliceConstraints_; + bitField0_ = (bitField0_ & ~0x00000002); + sliceConstraintsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getSliceConstraintsFieldBuilder() : null; + } else { + sliceConstraintsBuilder_.addAllMessages(other.sliceConstraints_); + } + } + } + if (sliceServiceIdsBuilder_ == null) { + if (!other.sliceServiceIds_.isEmpty()) { + if (sliceServiceIds_.isEmpty()) { + sliceServiceIds_ = other.sliceServiceIds_; + bitField0_ = (bitField0_ & ~0x00000004); + } else { + ensureSliceServiceIdsIsMutable(); + sliceServiceIds_.addAll(other.sliceServiceIds_); + } + onChanged(); + } + } else { + if (!other.sliceServiceIds_.isEmpty()) { + if (sliceServiceIdsBuilder_.isEmpty()) { + sliceServiceIdsBuilder_.dispose(); + sliceServiceIdsBuilder_ = null; + sliceServiceIds_ = other.sliceServiceIds_; + bitField0_ = (bitField0_ & ~0x00000004); + sliceServiceIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getSliceServiceIdsFieldBuilder() : null; + } else { + sliceServiceIdsBuilder_.addAllMessages(other.sliceServiceIds_); + } + } + } + if (sliceSubsliceIdsBuilder_ == null) { + if (!other.sliceSubsliceIds_.isEmpty()) { + if (sliceSubsliceIds_.isEmpty()) { + sliceSubsliceIds_ = other.sliceSubsliceIds_; + bitField0_ = (bitField0_ & ~0x00000008); + } else { + ensureSliceSubsliceIdsIsMutable(); + sliceSubsliceIds_.addAll(other.sliceSubsliceIds_); + } + onChanged(); + } + } else { + if (!other.sliceSubsliceIds_.isEmpty()) { + if (sliceSubsliceIdsBuilder_.isEmpty()) { + sliceSubsliceIdsBuilder_.dispose(); + sliceSubsliceIdsBuilder_ = null; + sliceSubsliceIds_ = other.sliceSubsliceIds_; + bitField0_ = (bitField0_ & ~0x00000008); + sliceSubsliceIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getSliceSubsliceIdsFieldBuilder() : null; + } else { + sliceSubsliceIdsBuilder_.addAllMessages(other.sliceSubsliceIds_); + } + } + } + if (other.hasSliceStatus()) { + mergeSliceStatus(other.getSliceStatus()); + } + if (other.hasSliceConfig()) { + mergeSliceConfig(other.getSliceConfig()); + } + if (other.hasSliceOwner()) { + mergeSliceOwner(other.getSliceOwner()); + } + if (other.hasTimestamp()) { + mergeTimestamp(other.getTimestamp()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; } - if (sliceOwner_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(9, getSliceOwner()); + + @java.lang.Override + public final boolean isInitialized() { + return true; } - if (timestamp_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(10, getTimestamp()); + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + context.ContextOuterClass.Slice parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.Slice) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + private context.ContextOuterClass.SliceId sliceId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> sliceIdBuilder_; + /** + * <code>.context.SliceId slice_id = 1;</code> + * @return Whether the sliceId field is set. + */ + public boolean hasSliceId() { + return sliceIdBuilder_ != null || sliceId_ != null; } - size += unknownFields.getSerializedSize(); - memoizedSize = size; - return size; - } + /** + * <code>.context.SliceId slice_id = 1;</code> + * @return The sliceId. + */ + public context.ContextOuterClass.SliceId getSliceId() { + if (sliceIdBuilder_ == null) { + return sliceId_ == null ? context.ContextOuterClass.SliceId.getDefaultInstance() : sliceId_; + } else { + return sliceIdBuilder_.getMessage(); + } + } + /** + * <code>.context.SliceId slice_id = 1;</code> + */ + public Builder setSliceId(context.ContextOuterClass.SliceId value) { + if (sliceIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + sliceId_ = value; + onChanged(); + } else { + sliceIdBuilder_.setMessage(value); + } - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; + return this; } - if (!(obj instanceof context.ContextOuterClass.Slice)) { - return super.equals(obj); + /** + * <code>.context.SliceId slice_id = 1;</code> + */ + public Builder setSliceId( + context.ContextOuterClass.SliceId.Builder builderForValue) { + if (sliceIdBuilder_ == null) { + sliceId_ = builderForValue.build(); + onChanged(); + } else { + sliceIdBuilder_.setMessage(builderForValue.build()); + } + + return this; } - context.ContextOuterClass.Slice other = (context.ContextOuterClass.Slice) obj; + /** + * <code>.context.SliceId slice_id = 1;</code> + */ + public Builder mergeSliceId(context.ContextOuterClass.SliceId value) { + if (sliceIdBuilder_ == null) { + if (sliceId_ != null) { + sliceId_ = + context.ContextOuterClass.SliceId.newBuilder(sliceId_).mergeFrom(value).buildPartial(); + } else { + sliceId_ = value; + } + onChanged(); + } else { + sliceIdBuilder_.mergeFrom(value); + } - if (hasSliceId() != other.hasSliceId()) return false; - if (hasSliceId()) { - if (!getSliceId() - .equals(other.getSliceId())) return false; + return this; } - if (!getName() - .equals(other.getName())) return false; - if (!getSliceEndpointIdsList() - .equals(other.getSliceEndpointIdsList())) return false; - if (!getSliceConstraintsList() - .equals(other.getSliceConstraintsList())) return false; - if (!getSliceServiceIdsList() - .equals(other.getSliceServiceIdsList())) return false; - if (!getSliceSubsliceIdsList() - .equals(other.getSliceSubsliceIdsList())) return false; - if (hasSliceStatus() != other.hasSliceStatus()) return false; - if (hasSliceStatus()) { - if (!getSliceStatus() - .equals(other.getSliceStatus())) return false; + /** + * <code>.context.SliceId slice_id = 1;</code> + */ + public Builder clearSliceId() { + if (sliceIdBuilder_ == null) { + sliceId_ = null; + onChanged(); + } else { + sliceId_ = null; + sliceIdBuilder_ = null; + } + + return this; } - if (hasSliceConfig() != other.hasSliceConfig()) return false; - if (hasSliceConfig()) { - if (!getSliceConfig() - .equals(other.getSliceConfig())) return false; + /** + * <code>.context.SliceId slice_id = 1;</code> + */ + public context.ContextOuterClass.SliceId.Builder getSliceIdBuilder() { + + onChanged(); + return getSliceIdFieldBuilder().getBuilder(); } - if (hasSliceOwner() != other.hasSliceOwner()) return false; - if (hasSliceOwner()) { - if (!getSliceOwner() - .equals(other.getSliceOwner())) return false; + /** + * <code>.context.SliceId slice_id = 1;</code> + */ + public context.ContextOuterClass.SliceIdOrBuilder getSliceIdOrBuilder() { + if (sliceIdBuilder_ != null) { + return sliceIdBuilder_.getMessageOrBuilder(); + } else { + return sliceId_ == null ? + context.ContextOuterClass.SliceId.getDefaultInstance() : sliceId_; + } } - if (hasTimestamp() != other.hasTimestamp()) return false; - if (hasTimestamp()) { - if (!getTimestamp() - .equals(other.getTimestamp())) return false; + /** + * <code>.context.SliceId slice_id = 1;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> + getSliceIdFieldBuilder() { + if (sliceIdBuilder_ == null) { + sliceIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder>( + getSliceId(), + getParentForChildren(), + isClean()); + sliceId_ = null; + } + return sliceIdBuilder_; } - if (!unknownFields.equals(other.unknownFields)) return false; - return true; - } - @java.lang.Override - public int hashCode() { - if (memoizedHashCode != 0) { - return memoizedHashCode; + private java.lang.Object name_ = ""; + /** + * <code>string name = 2;</code> + * @return The name. + */ + public java.lang.String getName() { + java.lang.Object ref = name_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } else { + return (java.lang.String) ref; + } } - int hash = 41; - hash = (19 * hash) + getDescriptor().hashCode(); - if (hasSliceId()) { - hash = (37 * hash) + SLICE_ID_FIELD_NUMBER; - hash = (53 * hash) + getSliceId().hashCode(); + /** + * <code>string name = 2;</code> + * @return The bytes for name. + */ + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } - hash = (37 * hash) + NAME_FIELD_NUMBER; - hash = (53 * hash) + getName().hashCode(); - if (getSliceEndpointIdsCount() > 0) { - hash = (37 * hash) + SLICE_ENDPOINT_IDS_FIELD_NUMBER; - hash = (53 * hash) + getSliceEndpointIdsList().hashCode(); + /** + * <code>string name = 2;</code> + * @param value The name to set. + * @return This builder for chaining. + */ + public Builder setName( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + name_ = value; + onChanged(); + return this; } - if (getSliceConstraintsCount() > 0) { - hash = (37 * hash) + SLICE_CONSTRAINTS_FIELD_NUMBER; - hash = (53 * hash) + getSliceConstraintsList().hashCode(); + /** + * <code>string name = 2;</code> + * @return This builder for chaining. + */ + public Builder clearName() { + + name_ = getDefaultInstance().getName(); + onChanged(); + return this; } - if (getSliceServiceIdsCount() > 0) { - hash = (37 * hash) + SLICE_SERVICE_IDS_FIELD_NUMBER; - hash = (53 * hash) + getSliceServiceIdsList().hashCode(); + /** + * <code>string name = 2;</code> + * @param value The bytes for name to set. + * @return This builder for chaining. + */ + public Builder setNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + name_ = value; + onChanged(); + return this; } - if (getSliceSubsliceIdsCount() > 0) { - hash = (37 * hash) + SLICE_SUBSLICE_IDS_FIELD_NUMBER; - hash = (53 * hash) + getSliceSubsliceIdsList().hashCode(); + + private java.util.List<context.ContextOuterClass.EndPointId> sliceEndpointIds_ = + java.util.Collections.emptyList(); + private void ensureSliceEndpointIdsIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + sliceEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(sliceEndpointIds_); + bitField0_ |= 0x00000001; + } } - if (hasSliceStatus()) { - hash = (37 * hash) + SLICE_STATUS_FIELD_NUMBER; - hash = (53 * hash) + getSliceStatus().hashCode(); + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> sliceEndpointIdsBuilder_; + + /** + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + */ + public java.util.List<context.ContextOuterClass.EndPointId> getSliceEndpointIdsList() { + if (sliceEndpointIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(sliceEndpointIds_); + } else { + return sliceEndpointIdsBuilder_.getMessageList(); + } } - if (hasSliceConfig()) { - hash = (37 * hash) + SLICE_CONFIG_FIELD_NUMBER; - hash = (53 * hash) + getSliceConfig().hashCode(); + /** + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + */ + public int getSliceEndpointIdsCount() { + if (sliceEndpointIdsBuilder_ == null) { + return sliceEndpointIds_.size(); + } else { + return sliceEndpointIdsBuilder_.getCount(); + } } - if (hasSliceOwner()) { - hash = (37 * hash) + SLICE_OWNER_FIELD_NUMBER; - hash = (53 * hash) + getSliceOwner().hashCode(); + /** + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointId getSliceEndpointIds(int index) { + if (sliceEndpointIdsBuilder_ == null) { + return sliceEndpointIds_.get(index); + } else { + return sliceEndpointIdsBuilder_.getMessage(index); + } } - if (hasTimestamp()) { - hash = (37 * hash) + TIMESTAMP_FIELD_NUMBER; - hash = (53 * hash) + getTimestamp().hashCode(); + /** + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + */ + public Builder setSliceEndpointIds( + int index, context.ContextOuterClass.EndPointId value) { + if (sliceEndpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSliceEndpointIdsIsMutable(); + sliceEndpointIds_.set(index, value); + onChanged(); + } else { + sliceEndpointIdsBuilder_.setMessage(index, value); + } + return this; } - hash = (29 * hash) + unknownFields.hashCode(); - memoizedHashCode = hash; - return hash; - } - - public static context.ContextOuterClass.Slice parseFrom( - java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static context.ContextOuterClass.Slice parseFrom( - java.nio.ByteBuffer data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static context.ContextOuterClass.Slice parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static context.ContextOuterClass.Slice parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static context.ContextOuterClass.Slice parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static context.ContextOuterClass.Slice parseFrom( - byte[] data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static context.ContextOuterClass.Slice parseFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseWithIOException(PARSER, input); - } - public static context.ContextOuterClass.Slice 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 context.ContextOuterClass.Slice parseDelimitedFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseDelimitedWithIOException(PARSER, input); - } - public static context.ContextOuterClass.Slice 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 context.ContextOuterClass.Slice parseFrom( - com.google.protobuf.CodedInputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseWithIOException(PARSER, input); - } - public static context.ContextOuterClass.Slice 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(context.ContextOuterClass.Slice 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; - } - /** - * Protobuf type {@code context.Slice} - */ - public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Slice) - context.ContextOuterClass.SliceOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor - getDescriptor() { - return context.ContextOuterClass.internal_static_context_Slice_descriptor; + /** + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + */ + public Builder setSliceEndpointIds( + int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (sliceEndpointIdsBuilder_ == null) { + ensureSliceEndpointIdsIsMutable(); + sliceEndpointIds_.set(index, builderForValue.build()); + onChanged(); + } else { + sliceEndpointIdsBuilder_.setMessage(index, builderForValue.build()); + } + return this; } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Slice_fieldAccessorTable - .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Slice.class, context.ContextOuterClass.Slice.Builder.class); + /** + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + */ + public Builder addSliceEndpointIds(context.ContextOuterClass.EndPointId value) { + if (sliceEndpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSliceEndpointIdsIsMutable(); + sliceEndpointIds_.add(value); + onChanged(); + } else { + sliceEndpointIdsBuilder_.addMessage(value); + } + return this; } - - // Construct using context.ContextOuterClass.Slice.newBuilder() - private Builder() { - maybeForceBuilderInitialization(); + /** + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + */ + public Builder addSliceEndpointIds( + int index, context.ContextOuterClass.EndPointId value) { + if (sliceEndpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSliceEndpointIdsIsMutable(); + sliceEndpointIds_.add(index, value); + onChanged(); + } else { + sliceEndpointIdsBuilder_.addMessage(index, value); + } + return this; } - - private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - super(parent); - maybeForceBuilderInitialization(); + /** + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + */ + public Builder addSliceEndpointIds( + context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (sliceEndpointIdsBuilder_ == null) { + ensureSliceEndpointIdsIsMutable(); + sliceEndpointIds_.add(builderForValue.build()); + onChanged(); + } else { + sliceEndpointIdsBuilder_.addMessage(builderForValue.build()); + } + return this; } - private void maybeForceBuilderInitialization() { - if (com.google.protobuf.GeneratedMessageV3 - .alwaysUseFieldBuilders) { - getSliceEndpointIdsFieldBuilder(); - getSliceConstraintsFieldBuilder(); - getSliceServiceIdsFieldBuilder(); - getSliceSubsliceIdsFieldBuilder(); + /** + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + */ + public Builder addSliceEndpointIds( + int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (sliceEndpointIdsBuilder_ == null) { + ensureSliceEndpointIdsIsMutable(); + sliceEndpointIds_.add(index, builderForValue.build()); + onChanged(); + } else { + sliceEndpointIdsBuilder_.addMessage(index, builderForValue.build()); } + return this; } - @java.lang.Override - public Builder clear() { - super.clear(); - if (sliceIdBuilder_ == null) { - sliceId_ = null; + /** + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + */ + public Builder addAllSliceEndpointIds( + java.lang.Iterable<? extends context.ContextOuterClass.EndPointId> values) { + if (sliceEndpointIdsBuilder_ == null) { + ensureSliceEndpointIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, sliceEndpointIds_); + onChanged(); } else { - sliceId_ = null; - sliceIdBuilder_ = null; + sliceEndpointIdsBuilder_.addAllMessages(values); } - name_ = ""; - + return this; + } + /** + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + */ + public Builder clearSliceEndpointIds() { if (sliceEndpointIdsBuilder_ == null) { sliceEndpointIds_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); } else { sliceEndpointIdsBuilder_.clear(); } - if (sliceConstraintsBuilder_ == null) { - sliceConstraints_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000002); - } else { - sliceConstraintsBuilder_.clear(); - } - if (sliceServiceIdsBuilder_ == null) { - sliceServiceIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000004); - } else { - sliceServiceIdsBuilder_.clear(); - } - if (sliceSubsliceIdsBuilder_ == null) { - sliceSubsliceIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000008); - } else { - sliceSubsliceIdsBuilder_.clear(); - } - if (sliceStatusBuilder_ == null) { - sliceStatus_ = null; + return this; + } + /** + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + */ + public Builder removeSliceEndpointIds(int index) { + if (sliceEndpointIdsBuilder_ == null) { + ensureSliceEndpointIdsIsMutable(); + sliceEndpointIds_.remove(index); + onChanged(); } else { - sliceStatus_ = null; - sliceStatusBuilder_ = null; + sliceEndpointIdsBuilder_.remove(index); } - if (sliceConfigBuilder_ == null) { - sliceConfig_ = null; - } else { - sliceConfig_ = null; - sliceConfigBuilder_ = null; + return this; + } + /** + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointId.Builder getSliceEndpointIdsBuilder( + int index) { + return getSliceEndpointIdsFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointIdOrBuilder getSliceEndpointIdsOrBuilder( + int index) { + if (sliceEndpointIdsBuilder_ == null) { + return sliceEndpointIds_.get(index); } else { + return sliceEndpointIdsBuilder_.getMessageOrBuilder(index); } - if (sliceOwnerBuilder_ == null) { - sliceOwner_ = null; + } + /** + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + */ + public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getSliceEndpointIdsOrBuilderList() { + if (sliceEndpointIdsBuilder_ != null) { + return sliceEndpointIdsBuilder_.getMessageOrBuilderList(); } else { - sliceOwner_ = null; - sliceOwnerBuilder_ = null; + return java.util.Collections.unmodifiableList(sliceEndpointIds_); } - if (timestampBuilder_ == null) { - timestamp_ = null; - } else { - timestamp_ = null; - timestampBuilder_ = null; + } + /** + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointId.Builder addSliceEndpointIdsBuilder() { + return getSliceEndpointIdsFieldBuilder().addBuilder( + context.ContextOuterClass.EndPointId.getDefaultInstance()); + } + /** + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointId.Builder addSliceEndpointIdsBuilder( + int index) { + return getSliceEndpointIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.EndPointId.getDefaultInstance()); + } + /** + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + */ + public java.util.List<context.ContextOuterClass.EndPointId.Builder> + getSliceEndpointIdsBuilderList() { + return getSliceEndpointIdsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> + getSliceEndpointIdsFieldBuilder() { + if (sliceEndpointIdsBuilder_ == null) { + sliceEndpointIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( + sliceEndpointIds_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + sliceEndpointIds_ = null; } - return this; + return sliceEndpointIdsBuilder_; } - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor - getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Slice_descriptor; + private java.util.List<context.ContextOuterClass.Constraint> sliceConstraints_ = + java.util.Collections.emptyList(); + private void ensureSliceConstraintsIsMutable() { + if (!((bitField0_ & 0x00000002) != 0)) { + sliceConstraints_ = new java.util.ArrayList<context.ContextOuterClass.Constraint>(sliceConstraints_); + bitField0_ |= 0x00000002; + } } - @java.lang.Override - public context.ContextOuterClass.Slice getDefaultInstanceForType() { - return context.ContextOuterClass.Slice.getDefaultInstance(); - } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Constraint, context.ContextOuterClass.Constraint.Builder, context.ContextOuterClass.ConstraintOrBuilder> sliceConstraintsBuilder_; - @java.lang.Override - public context.ContextOuterClass.Slice build() { - context.ContextOuterClass.Slice result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public java.util.List<context.ContextOuterClass.Constraint> getSliceConstraintsList() { + if (sliceConstraintsBuilder_ == null) { + return java.util.Collections.unmodifiableList(sliceConstraints_); + } else { + return sliceConstraintsBuilder_.getMessageList(); } - return result; } - - @java.lang.Override - public context.ContextOuterClass.Slice buildPartial() { - context.ContextOuterClass.Slice result = new context.ContextOuterClass.Slice(this); - int from_bitField0_ = bitField0_; - if (sliceIdBuilder_ == null) { - result.sliceId_ = sliceId_; + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public int getSliceConstraintsCount() { + if (sliceConstraintsBuilder_ == null) { + return sliceConstraints_.size(); } else { - result.sliceId_ = sliceIdBuilder_.build(); + return sliceConstraintsBuilder_.getCount(); } - result.name_ = name_; - if (sliceEndpointIdsBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { - sliceEndpointIds_ = java.util.Collections.unmodifiableList(sliceEndpointIds_); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.sliceEndpointIds_ = sliceEndpointIds_; + } + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public context.ContextOuterClass.Constraint getSliceConstraints(int index) { + if (sliceConstraintsBuilder_ == null) { + return sliceConstraints_.get(index); } else { - result.sliceEndpointIds_ = sliceEndpointIdsBuilder_.build(); + return sliceConstraintsBuilder_.getMessage(index); } + } + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public Builder setSliceConstraints( + int index, context.ContextOuterClass.Constraint value) { if (sliceConstraintsBuilder_ == null) { - if (((bitField0_ & 0x00000002) != 0)) { - sliceConstraints_ = java.util.Collections.unmodifiableList(sliceConstraints_); - bitField0_ = (bitField0_ & ~0x00000002); + if (value == null) { + throw new NullPointerException(); } - result.sliceConstraints_ = sliceConstraints_; + ensureSliceConstraintsIsMutable(); + sliceConstraints_.set(index, value); + onChanged(); } else { - result.sliceConstraints_ = sliceConstraintsBuilder_.build(); + sliceConstraintsBuilder_.setMessage(index, value); } - if (sliceServiceIdsBuilder_ == null) { - if (((bitField0_ & 0x00000004) != 0)) { - sliceServiceIds_ = java.util.Collections.unmodifiableList(sliceServiceIds_); - bitField0_ = (bitField0_ & ~0x00000004); - } - result.sliceServiceIds_ = sliceServiceIds_; + return this; + } + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public Builder setSliceConstraints( + int index, context.ContextOuterClass.Constraint.Builder builderForValue) { + if (sliceConstraintsBuilder_ == null) { + ensureSliceConstraintsIsMutable(); + sliceConstraints_.set(index, builderForValue.build()); + onChanged(); } else { - result.sliceServiceIds_ = sliceServiceIdsBuilder_.build(); + sliceConstraintsBuilder_.setMessage(index, builderForValue.build()); } - if (sliceSubsliceIdsBuilder_ == null) { - if (((bitField0_ & 0x00000008) != 0)) { - sliceSubsliceIds_ = java.util.Collections.unmodifiableList(sliceSubsliceIds_); - bitField0_ = (bitField0_ & ~0x00000008); + return this; + } + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public Builder addSliceConstraints(context.ContextOuterClass.Constraint value) { + if (sliceConstraintsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } - result.sliceSubsliceIds_ = sliceSubsliceIds_; - } else { - result.sliceSubsliceIds_ = sliceSubsliceIdsBuilder_.build(); - } - if (sliceStatusBuilder_ == null) { - result.sliceStatus_ = sliceStatus_; + ensureSliceConstraintsIsMutable(); + sliceConstraints_.add(value); + onChanged(); } else { - result.sliceStatus_ = sliceStatusBuilder_.build(); + sliceConstraintsBuilder_.addMessage(value); } - if (sliceConfigBuilder_ == null) { - result.sliceConfig_ = sliceConfig_; + return this; + } + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public Builder addSliceConstraints( + int index, context.ContextOuterClass.Constraint value) { + if (sliceConstraintsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSliceConstraintsIsMutable(); + sliceConstraints_.add(index, value); + onChanged(); } else { - result.sliceConfig_ = sliceConfigBuilder_.build(); + sliceConstraintsBuilder_.addMessage(index, value); } - if (sliceOwnerBuilder_ == null) { - result.sliceOwner_ = sliceOwner_; + return this; + } + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public Builder addSliceConstraints( + context.ContextOuterClass.Constraint.Builder builderForValue) { + if (sliceConstraintsBuilder_ == null) { + ensureSliceConstraintsIsMutable(); + sliceConstraints_.add(builderForValue.build()); + onChanged(); } else { - result.sliceOwner_ = sliceOwnerBuilder_.build(); + sliceConstraintsBuilder_.addMessage(builderForValue.build()); } - if (timestampBuilder_ == null) { - result.timestamp_ = timestamp_; + return this; + } + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public Builder addSliceConstraints( + int index, context.ContextOuterClass.Constraint.Builder builderForValue) { + if (sliceConstraintsBuilder_ == null) { + ensureSliceConstraintsIsMutable(); + sliceConstraints_.add(index, builderForValue.build()); + onChanged(); } else { - result.timestamp_ = timestampBuilder_.build(); + sliceConstraintsBuilder_.addMessage(index, builderForValue.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); + return this; } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.Slice) { - return mergeFrom((context.ContextOuterClass.Slice)other); + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public Builder addAllSliceConstraints( + java.lang.Iterable<? extends context.ContextOuterClass.Constraint> values) { + if (sliceConstraintsBuilder_ == null) { + ensureSliceConstraintsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, sliceConstraints_); + onChanged(); } else { - super.mergeFrom(other); - return this; + sliceConstraintsBuilder_.addAllMessages(values); } + return this; } - - public Builder mergeFrom(context.ContextOuterClass.Slice other) { - if (other == context.ContextOuterClass.Slice.getDefaultInstance()) return this; - if (other.hasSliceId()) { - mergeSliceId(other.getSliceId()); - } - if (!other.getName().isEmpty()) { - name_ = other.name_; + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public Builder clearSliceConstraints() { + if (sliceConstraintsBuilder_ == null) { + sliceConstraints_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); onChanged(); - } - if (sliceEndpointIdsBuilder_ == null) { - if (!other.sliceEndpointIds_.isEmpty()) { - if (sliceEndpointIds_.isEmpty()) { - sliceEndpointIds_ = other.sliceEndpointIds_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureSliceEndpointIdsIsMutable(); - sliceEndpointIds_.addAll(other.sliceEndpointIds_); - } - onChanged(); - } } else { - if (!other.sliceEndpointIds_.isEmpty()) { - if (sliceEndpointIdsBuilder_.isEmpty()) { - sliceEndpointIdsBuilder_.dispose(); - sliceEndpointIdsBuilder_ = null; - sliceEndpointIds_ = other.sliceEndpointIds_; - bitField0_ = (bitField0_ & ~0x00000001); - sliceEndpointIdsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getSliceEndpointIdsFieldBuilder() : null; - } else { - sliceEndpointIdsBuilder_.addAllMessages(other.sliceEndpointIds_); - } - } + sliceConstraintsBuilder_.clear(); } + return this; + } + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public Builder removeSliceConstraints(int index) { if (sliceConstraintsBuilder_ == null) { - if (!other.sliceConstraints_.isEmpty()) { - if (sliceConstraints_.isEmpty()) { - sliceConstraints_ = other.sliceConstraints_; - bitField0_ = (bitField0_ & ~0x00000002); - } else { - ensureSliceConstraintsIsMutable(); - sliceConstraints_.addAll(other.sliceConstraints_); - } - onChanged(); - } + ensureSliceConstraintsIsMutable(); + sliceConstraints_.remove(index); + onChanged(); } else { - if (!other.sliceConstraints_.isEmpty()) { - if (sliceConstraintsBuilder_.isEmpty()) { - sliceConstraintsBuilder_.dispose(); - sliceConstraintsBuilder_ = null; - sliceConstraints_ = other.sliceConstraints_; - bitField0_ = (bitField0_ & ~0x00000002); - sliceConstraintsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getSliceConstraintsFieldBuilder() : null; - } else { - sliceConstraintsBuilder_.addAllMessages(other.sliceConstraints_); - } - } + sliceConstraintsBuilder_.remove(index); } - if (sliceServiceIdsBuilder_ == null) { - if (!other.sliceServiceIds_.isEmpty()) { - if (sliceServiceIds_.isEmpty()) { - sliceServiceIds_ = other.sliceServiceIds_; - bitField0_ = (bitField0_ & ~0x00000004); - } else { - ensureSliceServiceIdsIsMutable(); - sliceServiceIds_.addAll(other.sliceServiceIds_); - } - onChanged(); - } - } else { - if (!other.sliceServiceIds_.isEmpty()) { - if (sliceServiceIdsBuilder_.isEmpty()) { - sliceServiceIdsBuilder_.dispose(); - sliceServiceIdsBuilder_ = null; - sliceServiceIds_ = other.sliceServiceIds_; - bitField0_ = (bitField0_ & ~0x00000004); - sliceServiceIdsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getSliceServiceIdsFieldBuilder() : null; - } else { - sliceServiceIdsBuilder_.addAllMessages(other.sliceServiceIds_); - } - } + return this; + } + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public context.ContextOuterClass.Constraint.Builder getSliceConstraintsBuilder( + int index) { + return getSliceConstraintsFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public context.ContextOuterClass.ConstraintOrBuilder getSliceConstraintsOrBuilder( + int index) { + if (sliceConstraintsBuilder_ == null) { + return sliceConstraints_.get(index); } else { + return sliceConstraintsBuilder_.getMessageOrBuilder(index); } - if (sliceSubsliceIdsBuilder_ == null) { - if (!other.sliceSubsliceIds_.isEmpty()) { - if (sliceSubsliceIds_.isEmpty()) { - sliceSubsliceIds_ = other.sliceSubsliceIds_; - bitField0_ = (bitField0_ & ~0x00000008); - } else { - ensureSliceSubsliceIdsIsMutable(); - sliceSubsliceIds_.addAll(other.sliceSubsliceIds_); - } - onChanged(); - } + } + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public java.util.List<? extends context.ContextOuterClass.ConstraintOrBuilder> + getSliceConstraintsOrBuilderList() { + if (sliceConstraintsBuilder_ != null) { + return sliceConstraintsBuilder_.getMessageOrBuilderList(); } else { - if (!other.sliceSubsliceIds_.isEmpty()) { - if (sliceSubsliceIdsBuilder_.isEmpty()) { - sliceSubsliceIdsBuilder_.dispose(); - sliceSubsliceIdsBuilder_ = null; - sliceSubsliceIds_ = other.sliceSubsliceIds_; - bitField0_ = (bitField0_ & ~0x00000008); - sliceSubsliceIdsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getSliceSubsliceIdsFieldBuilder() : null; - } else { - sliceSubsliceIdsBuilder_.addAllMessages(other.sliceSubsliceIds_); - } - } - } - if (other.hasSliceStatus()) { - mergeSliceStatus(other.getSliceStatus()); - } - if (other.hasSliceConfig()) { - mergeSliceConfig(other.getSliceConfig()); - } - if (other.hasSliceOwner()) { - mergeSliceOwner(other.getSliceOwner()); + return java.util.Collections.unmodifiableList(sliceConstraints_); } - if (other.hasTimestamp()) { - mergeTimestamp(other.getTimestamp()); + } + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public context.ContextOuterClass.Constraint.Builder addSliceConstraintsBuilder() { + return getSliceConstraintsFieldBuilder().addBuilder( + context.ContextOuterClass.Constraint.getDefaultInstance()); + } + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public context.ContextOuterClass.Constraint.Builder addSliceConstraintsBuilder( + int index) { + return getSliceConstraintsFieldBuilder().addBuilder( + index, context.ContextOuterClass.Constraint.getDefaultInstance()); + } + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public java.util.List<context.ContextOuterClass.Constraint.Builder> + getSliceConstraintsBuilderList() { + return getSliceConstraintsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Constraint, context.ContextOuterClass.Constraint.Builder, context.ContextOuterClass.ConstraintOrBuilder> + getSliceConstraintsFieldBuilder() { + if (sliceConstraintsBuilder_ == null) { + sliceConstraintsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Constraint, context.ContextOuterClass.Constraint.Builder, context.ContextOuterClass.ConstraintOrBuilder>( + sliceConstraints_, + ((bitField0_ & 0x00000002) != 0), + getParentForChildren(), + isClean()); + sliceConstraints_ = null; } - this.mergeUnknownFields(other.unknownFields); - onChanged(); - return this; + return sliceConstraintsBuilder_; } - @java.lang.Override - public final boolean isInitialized() { - return true; + private java.util.List<context.ContextOuterClass.ServiceId> sliceServiceIds_ = + java.util.Collections.emptyList(); + private void ensureSliceServiceIdsIsMutable() { + if (!((bitField0_ & 0x00000004) != 0)) { + sliceServiceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(sliceServiceIds_); + bitField0_ |= 0x00000004; + } } - @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - context.ContextOuterClass.Slice parsedMessage = null; - try { - parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Slice) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); - } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> sliceServiceIdsBuilder_; + + /** + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + */ + public java.util.List<context.ContextOuterClass.ServiceId> getSliceServiceIdsList() { + if (sliceServiceIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(sliceServiceIds_); + } else { + return sliceServiceIdsBuilder_.getMessageList(); } - return this; } - private int bitField0_; - - private context.ContextOuterClass.SliceId sliceId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> sliceIdBuilder_; /** - * <code>.context.SliceId slice_id = 1;</code> - * @return Whether the sliceId field is set. + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ - public boolean hasSliceId() { - return sliceIdBuilder_ != null || sliceId_ != null; + public int getSliceServiceIdsCount() { + if (sliceServiceIdsBuilder_ == null) { + return sliceServiceIds_.size(); + } else { + return sliceServiceIdsBuilder_.getCount(); + } } /** - * <code>.context.SliceId slice_id = 1;</code> - * @return The sliceId. + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ - public context.ContextOuterClass.SliceId getSliceId() { - if (sliceIdBuilder_ == null) { - return sliceId_ == null ? context.ContextOuterClass.SliceId.getDefaultInstance() : sliceId_; + public context.ContextOuterClass.ServiceId getSliceServiceIds(int index) { + if (sliceServiceIdsBuilder_ == null) { + return sliceServiceIds_.get(index); } else { - return sliceIdBuilder_.getMessage(); + return sliceServiceIdsBuilder_.getMessage(index); } } /** - * <code>.context.SliceId slice_id = 1;</code> + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ - public Builder setSliceId(context.ContextOuterClass.SliceId value) { - if (sliceIdBuilder_ == null) { + public Builder setSliceServiceIds( + int index, context.ContextOuterClass.ServiceId value) { + if (sliceServiceIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - sliceId_ = value; + ensureSliceServiceIdsIsMutable(); + sliceServiceIds_.set(index, value); onChanged(); } else { - sliceIdBuilder_.setMessage(value); + sliceServiceIdsBuilder_.setMessage(index, value); } - return this; } /** - * <code>.context.SliceId slice_id = 1;</code> + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ - public Builder setSliceId( - context.ContextOuterClass.SliceId.Builder builderForValue) { - if (sliceIdBuilder_ == null) { - sliceId_ = builderForValue.build(); + public Builder setSliceServiceIds( + int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { + if (sliceServiceIdsBuilder_ == null) { + ensureSliceServiceIdsIsMutable(); + sliceServiceIds_.set(index, builderForValue.build()); onChanged(); } else { - sliceIdBuilder_.setMessage(builderForValue.build()); + sliceServiceIdsBuilder_.setMessage(index, builderForValue.build()); } - return this; } /** - * <code>.context.SliceId slice_id = 1;</code> + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ - public Builder mergeSliceId(context.ContextOuterClass.SliceId value) { - if (sliceIdBuilder_ == null) { - if (sliceId_ != null) { - sliceId_ = - context.ContextOuterClass.SliceId.newBuilder(sliceId_).mergeFrom(value).buildPartial(); - } else { - sliceId_ = value; + public Builder addSliceServiceIds(context.ContextOuterClass.ServiceId value) { + if (sliceServiceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + ensureSliceServiceIdsIsMutable(); + sliceServiceIds_.add(value); onChanged(); } else { - sliceIdBuilder_.mergeFrom(value); + sliceServiceIdsBuilder_.addMessage(value); } - return this; } /** - * <code>.context.SliceId slice_id = 1;</code> + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ - public Builder clearSliceId() { - if (sliceIdBuilder_ == null) { - sliceId_ = null; + public Builder addSliceServiceIds( + int index, context.ContextOuterClass.ServiceId value) { + if (sliceServiceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSliceServiceIdsIsMutable(); + sliceServiceIds_.add(index, value); onChanged(); } else { - sliceId_ = null; - sliceIdBuilder_ = null; + sliceServiceIdsBuilder_.addMessage(index, value); } - return this; } /** - * <code>.context.SliceId slice_id = 1;</code> + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ - public context.ContextOuterClass.SliceId.Builder getSliceIdBuilder() { - - onChanged(); - return getSliceIdFieldBuilder().getBuilder(); + public Builder addSliceServiceIds( + context.ContextOuterClass.ServiceId.Builder builderForValue) { + if (sliceServiceIdsBuilder_ == null) { + ensureSliceServiceIdsIsMutable(); + sliceServiceIds_.add(builderForValue.build()); + onChanged(); + } else { + sliceServiceIdsBuilder_.addMessage(builderForValue.build()); + } + return this; } /** - * <code>.context.SliceId slice_id = 1;</code> + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ - public context.ContextOuterClass.SliceIdOrBuilder getSliceIdOrBuilder() { - if (sliceIdBuilder_ != null) { - return sliceIdBuilder_.getMessageOrBuilder(); + public Builder addSliceServiceIds( + int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { + if (sliceServiceIdsBuilder_ == null) { + ensureSliceServiceIdsIsMutable(); + sliceServiceIds_.add(index, builderForValue.build()); + onChanged(); } else { - return sliceId_ == null ? - context.ContextOuterClass.SliceId.getDefaultInstance() : sliceId_; + sliceServiceIdsBuilder_.addMessage(index, builderForValue.build()); } + return this; } /** - * <code>.context.SliceId slice_id = 1;</code> + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> - getSliceIdFieldBuilder() { - if (sliceIdBuilder_ == null) { - sliceIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder>( - getSliceId(), - getParentForChildren(), - isClean()); - sliceId_ = null; + public Builder addAllSliceServiceIds( + java.lang.Iterable<? extends context.ContextOuterClass.ServiceId> values) { + if (sliceServiceIdsBuilder_ == null) { + ensureSliceServiceIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, sliceServiceIds_); + onChanged(); + } else { + sliceServiceIdsBuilder_.addAllMessages(values); } - return sliceIdBuilder_; + return this; } - - private java.lang.Object name_ = ""; /** - * <code>string name = 2;</code> - * @return The name. + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ - public java.lang.String getName() { - java.lang.Object ref = name_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - name_ = s; - return s; + public Builder clearSliceServiceIds() { + if (sliceServiceIdsBuilder_ == null) { + sliceServiceIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); } else { - return (java.lang.String) ref; + sliceServiceIdsBuilder_.clear(); } + return this; } /** - * <code>string name = 2;</code> - * @return The bytes for name. + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ - public com.google.protobuf.ByteString - getNameBytes() { - java.lang.Object ref = name_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - name_ = b; - return b; + public Builder removeSliceServiceIds(int index) { + if (sliceServiceIdsBuilder_ == null) { + ensureSliceServiceIdsIsMutable(); + sliceServiceIds_.remove(index); + onChanged(); } else { - return (com.google.protobuf.ByteString) ref; + sliceServiceIdsBuilder_.remove(index); } + return this; } /** - * <code>string name = 2;</code> - * @param value The name to set. - * @return This builder for chaining. + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ - public Builder setName( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - name_ = value; - onChanged(); - return this; + public context.ContextOuterClass.ServiceId.Builder getSliceServiceIdsBuilder( + int index) { + return getSliceServiceIdsFieldBuilder().getBuilder(index); } /** - * <code>string name = 2;</code> - * @return This builder for chaining. + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ - public Builder clearName() { - - name_ = getDefaultInstance().getName(); - onChanged(); - return this; + public context.ContextOuterClass.ServiceIdOrBuilder getSliceServiceIdsOrBuilder( + int index) { + if (sliceServiceIdsBuilder_ == null) { + return sliceServiceIds_.get(index); } else { + return sliceServiceIdsBuilder_.getMessageOrBuilder(index); + } } /** - * <code>string name = 2;</code> - * @param value The bytes for name to set. - * @return This builder for chaining. + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ - public Builder setNameBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - name_ = value; - onChanged(); - return this; + public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> + getSliceServiceIdsOrBuilderList() { + if (sliceServiceIdsBuilder_ != null) { + return sliceServiceIdsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(sliceServiceIds_); + } + } + /** + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + */ + public context.ContextOuterClass.ServiceId.Builder addSliceServiceIdsBuilder() { + return getSliceServiceIdsFieldBuilder().addBuilder( + context.ContextOuterClass.ServiceId.getDefaultInstance()); + } + /** + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + */ + public context.ContextOuterClass.ServiceId.Builder addSliceServiceIdsBuilder( + int index) { + return getSliceServiceIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.ServiceId.getDefaultInstance()); + } + /** + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + */ + public java.util.List<context.ContextOuterClass.ServiceId.Builder> + getSliceServiceIdsBuilderList() { + return getSliceServiceIdsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> + getSliceServiceIdsFieldBuilder() { + if (sliceServiceIdsBuilder_ == null) { + sliceServiceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder>( + sliceServiceIds_, + ((bitField0_ & 0x00000004) != 0), + getParentForChildren(), + isClean()); + sliceServiceIds_ = null; + } + return sliceServiceIdsBuilder_; } - private java.util.List<context.ContextOuterClass.EndPointId> sliceEndpointIds_ = + private java.util.List<context.ContextOuterClass.SliceId> sliceSubsliceIds_ = java.util.Collections.emptyList(); - private void ensureSliceEndpointIdsIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - sliceEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(sliceEndpointIds_); - bitField0_ |= 0x00000001; + private void ensureSliceSubsliceIdsIsMutable() { + if (!((bitField0_ & 0x00000008) != 0)) { + sliceSubsliceIds_ = new java.util.ArrayList<context.ContextOuterClass.SliceId>(sliceSubsliceIds_); + bitField0_ |= 0x00000008; } } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> sliceEndpointIdsBuilder_; + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> sliceSubsliceIdsBuilder_; /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> */ - public java.util.List<context.ContextOuterClass.EndPointId> getSliceEndpointIdsList() { - if (sliceEndpointIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(sliceEndpointIds_); + public java.util.List<context.ContextOuterClass.SliceId> getSliceSubsliceIdsList() { + if (sliceSubsliceIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(sliceSubsliceIds_); } else { - return sliceEndpointIdsBuilder_.getMessageList(); + return sliceSubsliceIdsBuilder_.getMessageList(); } } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> */ - public int getSliceEndpointIdsCount() { - if (sliceEndpointIdsBuilder_ == null) { - return sliceEndpointIds_.size(); + public int getSliceSubsliceIdsCount() { + if (sliceSubsliceIdsBuilder_ == null) { + return sliceSubsliceIds_.size(); } else { - return sliceEndpointIdsBuilder_.getCount(); + return sliceSubsliceIdsBuilder_.getCount(); } } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> */ - public context.ContextOuterClass.EndPointId getSliceEndpointIds(int index) { - if (sliceEndpointIdsBuilder_ == null) { - return sliceEndpointIds_.get(index); + public context.ContextOuterClass.SliceId getSliceSubsliceIds(int index) { + if (sliceSubsliceIdsBuilder_ == null) { + return sliceSubsliceIds_.get(index); } else { - return sliceEndpointIdsBuilder_.getMessage(index); + return sliceSubsliceIdsBuilder_.getMessage(index); } } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> */ - public Builder setSliceEndpointIds( - int index, context.ContextOuterClass.EndPointId value) { - if (sliceEndpointIdsBuilder_ == null) { + public Builder setSliceSubsliceIds( + int index, context.ContextOuterClass.SliceId value) { + if (sliceSubsliceIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureSliceEndpointIdsIsMutable(); - sliceEndpointIds_.set(index, value); + ensureSliceSubsliceIdsIsMutable(); + sliceSubsliceIds_.set(index, value); onChanged(); } else { - sliceEndpointIdsBuilder_.setMessage(index, value); + sliceSubsliceIdsBuilder_.setMessage(index, value); } return this; } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> */ - public Builder setSliceEndpointIds( - int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (sliceEndpointIdsBuilder_ == null) { - ensureSliceEndpointIdsIsMutable(); - sliceEndpointIds_.set(index, builderForValue.build()); + public Builder setSliceSubsliceIds( + int index, context.ContextOuterClass.SliceId.Builder builderForValue) { + if (sliceSubsliceIdsBuilder_ == null) { + ensureSliceSubsliceIdsIsMutable(); + sliceSubsliceIds_.set(index, builderForValue.build()); onChanged(); } else { - sliceEndpointIdsBuilder_.setMessage(index, builderForValue.build()); + sliceSubsliceIdsBuilder_.setMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> */ - public Builder addSliceEndpointIds(context.ContextOuterClass.EndPointId value) { - if (sliceEndpointIdsBuilder_ == null) { + public Builder addSliceSubsliceIds(context.ContextOuterClass.SliceId value) { + if (sliceSubsliceIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureSliceEndpointIdsIsMutable(); - sliceEndpointIds_.add(value); + ensureSliceSubsliceIdsIsMutable(); + sliceSubsliceIds_.add(value); onChanged(); } else { - sliceEndpointIdsBuilder_.addMessage(value); + sliceSubsliceIdsBuilder_.addMessage(value); } return this; } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> */ - public Builder addSliceEndpointIds( - int index, context.ContextOuterClass.EndPointId value) { - if (sliceEndpointIdsBuilder_ == null) { + public Builder addSliceSubsliceIds( + int index, context.ContextOuterClass.SliceId value) { + if (sliceSubsliceIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureSliceEndpointIdsIsMutable(); - sliceEndpointIds_.add(index, value); + ensureSliceSubsliceIdsIsMutable(); + sliceSubsliceIds_.add(index, value); onChanged(); } else { - sliceEndpointIdsBuilder_.addMessage(index, value); + sliceSubsliceIdsBuilder_.addMessage(index, value); } return this; } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> */ - public Builder addSliceEndpointIds( - context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (sliceEndpointIdsBuilder_ == null) { - ensureSliceEndpointIdsIsMutable(); - sliceEndpointIds_.add(builderForValue.build()); + public Builder addSliceSubsliceIds( + context.ContextOuterClass.SliceId.Builder builderForValue) { + if (sliceSubsliceIdsBuilder_ == null) { + ensureSliceSubsliceIdsIsMutable(); + sliceSubsliceIds_.add(builderForValue.build()); onChanged(); } else { - sliceEndpointIdsBuilder_.addMessage(builderForValue.build()); + sliceSubsliceIdsBuilder_.addMessage(builderForValue.build()); } return this; } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> */ - public Builder addSliceEndpointIds( - int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (sliceEndpointIdsBuilder_ == null) { - ensureSliceEndpointIdsIsMutable(); - sliceEndpointIds_.add(index, builderForValue.build()); + public Builder addSliceSubsliceIds( + int index, context.ContextOuterClass.SliceId.Builder builderForValue) { + if (sliceSubsliceIdsBuilder_ == null) { + ensureSliceSubsliceIdsIsMutable(); + sliceSubsliceIds_.add(index, builderForValue.build()); onChanged(); } else { - sliceEndpointIdsBuilder_.addMessage(index, builderForValue.build()); + sliceSubsliceIdsBuilder_.addMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> */ - public Builder addAllSliceEndpointIds( - java.lang.Iterable<? extends context.ContextOuterClass.EndPointId> values) { - if (sliceEndpointIdsBuilder_ == null) { - ensureSliceEndpointIdsIsMutable(); + public Builder addAllSliceSubsliceIds( + java.lang.Iterable<? extends context.ContextOuterClass.SliceId> values) { + if (sliceSubsliceIdsBuilder_ == null) { + ensureSliceSubsliceIdsIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, sliceEndpointIds_); + values, sliceSubsliceIds_); onChanged(); } else { - sliceEndpointIdsBuilder_.addAllMessages(values); + sliceSubsliceIdsBuilder_.addAllMessages(values); } return this; } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> */ - public Builder clearSliceEndpointIds() { - if (sliceEndpointIdsBuilder_ == null) { - sliceEndpointIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + public Builder clearSliceSubsliceIds() { + if (sliceSubsliceIdsBuilder_ == null) { + sliceSubsliceIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000008); onChanged(); } else { - sliceEndpointIdsBuilder_.clear(); + sliceSubsliceIdsBuilder_.clear(); } return this; } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> */ - public Builder removeSliceEndpointIds(int index) { - if (sliceEndpointIdsBuilder_ == null) { - ensureSliceEndpointIdsIsMutable(); - sliceEndpointIds_.remove(index); + public Builder removeSliceSubsliceIds(int index) { + if (sliceSubsliceIdsBuilder_ == null) { + ensureSliceSubsliceIdsIsMutable(); + sliceSubsliceIds_.remove(index); onChanged(); } else { - sliceEndpointIdsBuilder_.remove(index); + sliceSubsliceIdsBuilder_.remove(index); } return this; } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> */ - public context.ContextOuterClass.EndPointId.Builder getSliceEndpointIdsBuilder( + public context.ContextOuterClass.SliceId.Builder getSliceSubsliceIdsBuilder( int index) { - return getSliceEndpointIdsFieldBuilder().getBuilder(index); + return getSliceSubsliceIdsFieldBuilder().getBuilder(index); } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> */ - public context.ContextOuterClass.EndPointIdOrBuilder getSliceEndpointIdsOrBuilder( + public context.ContextOuterClass.SliceIdOrBuilder getSliceSubsliceIdsOrBuilder( int index) { - if (sliceEndpointIdsBuilder_ == null) { - return sliceEndpointIds_.get(index); } else { - return sliceEndpointIdsBuilder_.getMessageOrBuilder(index); + if (sliceSubsliceIdsBuilder_ == null) { + return sliceSubsliceIds_.get(index); } else { + return sliceSubsliceIdsBuilder_.getMessageOrBuilder(index); } } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> */ - public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> - getSliceEndpointIdsOrBuilderList() { - if (sliceEndpointIdsBuilder_ != null) { - return sliceEndpointIdsBuilder_.getMessageOrBuilderList(); + public java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> + getSliceSubsliceIdsOrBuilderList() { + if (sliceSubsliceIdsBuilder_ != null) { + return sliceSubsliceIdsBuilder_.getMessageOrBuilderList(); } else { - return java.util.Collections.unmodifiableList(sliceEndpointIds_); + return java.util.Collections.unmodifiableList(sliceSubsliceIds_); } } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> */ - public context.ContextOuterClass.EndPointId.Builder addSliceEndpointIdsBuilder() { - return getSliceEndpointIdsFieldBuilder().addBuilder( - context.ContextOuterClass.EndPointId.getDefaultInstance()); + public context.ContextOuterClass.SliceId.Builder addSliceSubsliceIdsBuilder() { + return getSliceSubsliceIdsFieldBuilder().addBuilder( + context.ContextOuterClass.SliceId.getDefaultInstance()); } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> */ - public context.ContextOuterClass.EndPointId.Builder addSliceEndpointIdsBuilder( + public context.ContextOuterClass.SliceId.Builder addSliceSubsliceIdsBuilder( int index) { - return getSliceEndpointIdsFieldBuilder().addBuilder( - index, context.ContextOuterClass.EndPointId.getDefaultInstance()); + return getSliceSubsliceIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.SliceId.getDefaultInstance()); } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> */ - public java.util.List<context.ContextOuterClass.EndPointId.Builder> - getSliceEndpointIdsBuilderList() { - return getSliceEndpointIdsFieldBuilder().getBuilderList(); + public java.util.List<context.ContextOuterClass.SliceId.Builder> + getSliceSubsliceIdsBuilderList() { + return getSliceSubsliceIdsFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> - getSliceEndpointIdsFieldBuilder() { - if (sliceEndpointIdsBuilder_ == null) { - sliceEndpointIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( - sliceEndpointIds_, - ((bitField0_ & 0x00000001) != 0), + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> + getSliceSubsliceIdsFieldBuilder() { + if (sliceSubsliceIdsBuilder_ == null) { + sliceSubsliceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder>( + sliceSubsliceIds_, + ((bitField0_ & 0x00000008) != 0), getParentForChildren(), isClean()); - sliceEndpointIds_ = null; + sliceSubsliceIds_ = null; } - return sliceEndpointIdsBuilder_; - } - - private java.util.List<context.ContextOuterClass.Constraint> sliceConstraints_ = - java.util.Collections.emptyList(); - private void ensureSliceConstraintsIsMutable() { - if (!((bitField0_ & 0x00000002) != 0)) { - sliceConstraints_ = new java.util.ArrayList<context.ContextOuterClass.Constraint>(sliceConstraints_); - bitField0_ |= 0x00000002; - } + return sliceSubsliceIdsBuilder_; } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Constraint, context.ContextOuterClass.Constraint.Builder, context.ContextOuterClass.ConstraintOrBuilder> sliceConstraintsBuilder_; - - /** - * <code>repeated .context.Constraint slice_constraints = 4;</code> - */ - public java.util.List<context.ContextOuterClass.Constraint> getSliceConstraintsList() { - if (sliceConstraintsBuilder_ == null) { - return java.util.Collections.unmodifiableList(sliceConstraints_); - } else { - return sliceConstraintsBuilder_.getMessageList(); - } - } + private context.ContextOuterClass.SliceStatus sliceStatus_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceStatus, context.ContextOuterClass.SliceStatus.Builder, context.ContextOuterClass.SliceStatusOrBuilder> sliceStatusBuilder_; /** - * <code>repeated .context.Constraint slice_constraints = 4;</code> + * <code>.context.SliceStatus slice_status = 7;</code> + * @return Whether the sliceStatus field is set. */ - public int getSliceConstraintsCount() { - if (sliceConstraintsBuilder_ == null) { - return sliceConstraints_.size(); - } else { - return sliceConstraintsBuilder_.getCount(); - } + public boolean hasSliceStatus() { + return sliceStatusBuilder_ != null || sliceStatus_ != null; } /** - * <code>repeated .context.Constraint slice_constraints = 4;</code> + * <code>.context.SliceStatus slice_status = 7;</code> + * @return The sliceStatus. */ - public context.ContextOuterClass.Constraint getSliceConstraints(int index) { - if (sliceConstraintsBuilder_ == null) { - return sliceConstraints_.get(index); + public context.ContextOuterClass.SliceStatus getSliceStatus() { + if (sliceStatusBuilder_ == null) { + return sliceStatus_ == null ? context.ContextOuterClass.SliceStatus.getDefaultInstance() : sliceStatus_; } else { - return sliceConstraintsBuilder_.getMessage(index); + return sliceStatusBuilder_.getMessage(); } } /** - * <code>repeated .context.Constraint slice_constraints = 4;</code> + * <code>.context.SliceStatus slice_status = 7;</code> */ - public Builder setSliceConstraints( - int index, context.ContextOuterClass.Constraint value) { - if (sliceConstraintsBuilder_ == null) { + public Builder setSliceStatus(context.ContextOuterClass.SliceStatus value) { + if (sliceStatusBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureSliceConstraintsIsMutable(); - sliceConstraints_.set(index, value); + sliceStatus_ = value; onChanged(); } else { - sliceConstraintsBuilder_.setMessage(index, value); + sliceStatusBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.Constraint slice_constraints = 4;</code> + * <code>.context.SliceStatus slice_status = 7;</code> */ - public Builder setSliceConstraints( - int index, context.ContextOuterClass.Constraint.Builder builderForValue) { - if (sliceConstraintsBuilder_ == null) { - ensureSliceConstraintsIsMutable(); - sliceConstraints_.set(index, builderForValue.build()); + public Builder setSliceStatus( + context.ContextOuterClass.SliceStatus.Builder builderForValue) { + if (sliceStatusBuilder_ == null) { + sliceStatus_ = builderForValue.build(); onChanged(); } else { - sliceConstraintsBuilder_.setMessage(index, builderForValue.build()); + sliceStatusBuilder_.setMessage(builderForValue.build()); } + return this; } /** - * <code>repeated .context.Constraint slice_constraints = 4;</code> + * <code>.context.SliceStatus slice_status = 7;</code> */ - public Builder addSliceConstraints(context.ContextOuterClass.Constraint value) { - if (sliceConstraintsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + public Builder mergeSliceStatus(context.ContextOuterClass.SliceStatus value) { + if (sliceStatusBuilder_ == null) { + if (sliceStatus_ != null) { + sliceStatus_ = + context.ContextOuterClass.SliceStatus.newBuilder(sliceStatus_).mergeFrom(value).buildPartial(); + } else { + sliceStatus_ = value; } - ensureSliceConstraintsIsMutable(); - sliceConstraints_.add(value); onChanged(); } else { - sliceConstraintsBuilder_.addMessage(value); + sliceStatusBuilder_.mergeFrom(value); } + return this; } /** - * <code>repeated .context.Constraint slice_constraints = 4;</code> + * <code>.context.SliceStatus slice_status = 7;</code> */ - public Builder addSliceConstraints( - int index, context.ContextOuterClass.Constraint value) { - if (sliceConstraintsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSliceConstraintsIsMutable(); - sliceConstraints_.add(index, value); + public Builder clearSliceStatus() { + if (sliceStatusBuilder_ == null) { + sliceStatus_ = null; onChanged(); } else { - sliceConstraintsBuilder_.addMessage(index, value); + sliceStatus_ = null; + sliceStatusBuilder_ = null; } + return this; } /** - * <code>repeated .context.Constraint slice_constraints = 4;</code> + * <code>.context.SliceStatus slice_status = 7;</code> */ - public Builder addSliceConstraints( - context.ContextOuterClass.Constraint.Builder builderForValue) { - if (sliceConstraintsBuilder_ == null) { - ensureSliceConstraintsIsMutable(); - sliceConstraints_.add(builderForValue.build()); - onChanged(); + public context.ContextOuterClass.SliceStatus.Builder getSliceStatusBuilder() { + + onChanged(); + return getSliceStatusFieldBuilder().getBuilder(); + } + /** + * <code>.context.SliceStatus slice_status = 7;</code> + */ + public context.ContextOuterClass.SliceStatusOrBuilder getSliceStatusOrBuilder() { + if (sliceStatusBuilder_ != null) { + return sliceStatusBuilder_.getMessageOrBuilder(); } else { - sliceConstraintsBuilder_.addMessage(builderForValue.build()); + return sliceStatus_ == null ? + context.ContextOuterClass.SliceStatus.getDefaultInstance() : sliceStatus_; } - return this; } /** - * <code>repeated .context.Constraint slice_constraints = 4;</code> + * <code>.context.SliceStatus slice_status = 7;</code> */ - public Builder addSliceConstraints( - int index, context.ContextOuterClass.Constraint.Builder builderForValue) { - if (sliceConstraintsBuilder_ == null) { - ensureSliceConstraintsIsMutable(); - sliceConstraints_.add(index, builderForValue.build()); - onChanged(); - } else { - sliceConstraintsBuilder_.addMessage(index, builderForValue.build()); + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceStatus, context.ContextOuterClass.SliceStatus.Builder, context.ContextOuterClass.SliceStatusOrBuilder> + getSliceStatusFieldBuilder() { + if (sliceStatusBuilder_ == null) { + sliceStatusBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceStatus, context.ContextOuterClass.SliceStatus.Builder, context.ContextOuterClass.SliceStatusOrBuilder>( + getSliceStatus(), + getParentForChildren(), + isClean()); + sliceStatus_ = null; } - return this; + return sliceStatusBuilder_; } + + private context.ContextOuterClass.SliceConfig sliceConfig_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceConfig, context.ContextOuterClass.SliceConfig.Builder, context.ContextOuterClass.SliceConfigOrBuilder> sliceConfigBuilder_; /** - * <code>repeated .context.Constraint slice_constraints = 4;</code> + * <code>.context.SliceConfig slice_config = 8;</code> + * @return Whether the sliceConfig field is set. */ - public Builder addAllSliceConstraints( - java.lang.Iterable<? extends context.ContextOuterClass.Constraint> values) { - if (sliceConstraintsBuilder_ == null) { - ensureSliceConstraintsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, sliceConstraints_); - onChanged(); + public boolean hasSliceConfig() { + return sliceConfigBuilder_ != null || sliceConfig_ != null; + } + /** + * <code>.context.SliceConfig slice_config = 8;</code> + * @return The sliceConfig. + */ + public context.ContextOuterClass.SliceConfig getSliceConfig() { + if (sliceConfigBuilder_ == null) { + return sliceConfig_ == null ? context.ContextOuterClass.SliceConfig.getDefaultInstance() : sliceConfig_; } else { - sliceConstraintsBuilder_.addAllMessages(values); + return sliceConfigBuilder_.getMessage(); } - return this; } /** - * <code>repeated .context.Constraint slice_constraints = 4;</code> + * <code>.context.SliceConfig slice_config = 8;</code> */ - public Builder clearSliceConstraints() { - if (sliceConstraintsBuilder_ == null) { - sliceConstraints_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000002); + public Builder setSliceConfig(context.ContextOuterClass.SliceConfig value) { + if (sliceConfigBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + sliceConfig_ = value; onChanged(); } else { - sliceConstraintsBuilder_.clear(); + sliceConfigBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.Constraint slice_constraints = 4;</code> + * <code>.context.SliceConfig slice_config = 8;</code> */ - public Builder removeSliceConstraints(int index) { - if (sliceConstraintsBuilder_ == null) { - ensureSliceConstraintsIsMutable(); - sliceConstraints_.remove(index); + public Builder setSliceConfig( + context.ContextOuterClass.SliceConfig.Builder builderForValue) { + if (sliceConfigBuilder_ == null) { + sliceConfig_ = builderForValue.build(); onChanged(); } else { - sliceConstraintsBuilder_.remove(index); + sliceConfigBuilder_.setMessage(builderForValue.build()); } + return this; } /** - * <code>repeated .context.Constraint slice_constraints = 4;</code> - */ - public context.ContextOuterClass.Constraint.Builder getSliceConstraintsBuilder( - int index) { - return getSliceConstraintsFieldBuilder().getBuilder(index); - } - /** - * <code>repeated .context.Constraint slice_constraints = 4;</code> + * <code>.context.SliceConfig slice_config = 8;</code> */ - public context.ContextOuterClass.ConstraintOrBuilder getSliceConstraintsOrBuilder( - int index) { - if (sliceConstraintsBuilder_ == null) { - return sliceConstraints_.get(index); } else { - return sliceConstraintsBuilder_.getMessageOrBuilder(index); + public Builder mergeSliceConfig(context.ContextOuterClass.SliceConfig value) { + if (sliceConfigBuilder_ == null) { + if (sliceConfig_ != null) { + sliceConfig_ = + context.ContextOuterClass.SliceConfig.newBuilder(sliceConfig_).mergeFrom(value).buildPartial(); + } else { + sliceConfig_ = value; + } + onChanged(); + } else { + sliceConfigBuilder_.mergeFrom(value); } + + return this; } /** - * <code>repeated .context.Constraint slice_constraints = 4;</code> + * <code>.context.SliceConfig slice_config = 8;</code> */ - public java.util.List<? extends context.ContextOuterClass.ConstraintOrBuilder> - getSliceConstraintsOrBuilderList() { - if (sliceConstraintsBuilder_ != null) { - return sliceConstraintsBuilder_.getMessageOrBuilderList(); + public Builder clearSliceConfig() { + if (sliceConfigBuilder_ == null) { + sliceConfig_ = null; + onChanged(); } else { - return java.util.Collections.unmodifiableList(sliceConstraints_); + sliceConfig_ = null; + sliceConfigBuilder_ = null; } + + return this; } /** - * <code>repeated .context.Constraint slice_constraints = 4;</code> + * <code>.context.SliceConfig slice_config = 8;</code> */ - public context.ContextOuterClass.Constraint.Builder addSliceConstraintsBuilder() { - return getSliceConstraintsFieldBuilder().addBuilder( - context.ContextOuterClass.Constraint.getDefaultInstance()); + public context.ContextOuterClass.SliceConfig.Builder getSliceConfigBuilder() { + + onChanged(); + return getSliceConfigFieldBuilder().getBuilder(); } /** - * <code>repeated .context.Constraint slice_constraints = 4;</code> + * <code>.context.SliceConfig slice_config = 8;</code> */ - public context.ContextOuterClass.Constraint.Builder addSliceConstraintsBuilder( - int index) { - return getSliceConstraintsFieldBuilder().addBuilder( - index, context.ContextOuterClass.Constraint.getDefaultInstance()); + public context.ContextOuterClass.SliceConfigOrBuilder getSliceConfigOrBuilder() { + if (sliceConfigBuilder_ != null) { + return sliceConfigBuilder_.getMessageOrBuilder(); + } else { + return sliceConfig_ == null ? + context.ContextOuterClass.SliceConfig.getDefaultInstance() : sliceConfig_; + } } /** - * <code>repeated .context.Constraint slice_constraints = 4;</code> + * <code>.context.SliceConfig slice_config = 8;</code> */ - public java.util.List<context.ContextOuterClass.Constraint.Builder> - getSliceConstraintsBuilderList() { - return getSliceConstraintsFieldBuilder().getBuilderList(); - } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Constraint, context.ContextOuterClass.Constraint.Builder, context.ContextOuterClass.ConstraintOrBuilder> - getSliceConstraintsFieldBuilder() { - if (sliceConstraintsBuilder_ == null) { - sliceConstraintsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Constraint, context.ContextOuterClass.Constraint.Builder, context.ContextOuterClass.ConstraintOrBuilder>( - sliceConstraints_, - ((bitField0_ & 0x00000002) != 0), + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceConfig, context.ContextOuterClass.SliceConfig.Builder, context.ContextOuterClass.SliceConfigOrBuilder> + getSliceConfigFieldBuilder() { + if (sliceConfigBuilder_ == null) { + sliceConfigBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceConfig, context.ContextOuterClass.SliceConfig.Builder, context.ContextOuterClass.SliceConfigOrBuilder>( + getSliceConfig(), getParentForChildren(), isClean()); - sliceConstraints_ = null; + sliceConfig_ = null; } - return sliceConstraintsBuilder_; + return sliceConfigBuilder_; } - private java.util.List<context.ContextOuterClass.ServiceId> sliceServiceIds_ = - java.util.Collections.emptyList(); - private void ensureSliceServiceIdsIsMutable() { - if (!((bitField0_ & 0x00000004) != 0)) { - sliceServiceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(sliceServiceIds_); - bitField0_ |= 0x00000004; - } + private context.ContextOuterClass.SliceOwner sliceOwner_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceOwner, context.ContextOuterClass.SliceOwner.Builder, context.ContextOuterClass.SliceOwnerOrBuilder> sliceOwnerBuilder_; + /** + * <code>.context.SliceOwner slice_owner = 9;</code> + * @return Whether the sliceOwner field is set. + */ + public boolean hasSliceOwner() { + return sliceOwnerBuilder_ != null || sliceOwner_ != null; } - - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> sliceServiceIdsBuilder_; - /** - * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + * <code>.context.SliceOwner slice_owner = 9;</code> + * @return The sliceOwner. */ - public java.util.List<context.ContextOuterClass.ServiceId> getSliceServiceIdsList() { - if (sliceServiceIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(sliceServiceIds_); + public context.ContextOuterClass.SliceOwner getSliceOwner() { + if (sliceOwnerBuilder_ == null) { + return sliceOwner_ == null ? context.ContextOuterClass.SliceOwner.getDefaultInstance() : sliceOwner_; } else { - return sliceServiceIdsBuilder_.getMessageList(); + return sliceOwnerBuilder_.getMessage(); } } /** - * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + * <code>.context.SliceOwner slice_owner = 9;</code> */ - public int getSliceServiceIdsCount() { - if (sliceServiceIdsBuilder_ == null) { - return sliceServiceIds_.size(); + public Builder setSliceOwner(context.ContextOuterClass.SliceOwner value) { + if (sliceOwnerBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + sliceOwner_ = value; + onChanged(); } else { - return sliceServiceIdsBuilder_.getCount(); + sliceOwnerBuilder_.setMessage(value); } + + return this; } /** - * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + * <code>.context.SliceOwner slice_owner = 9;</code> */ - public context.ContextOuterClass.ServiceId getSliceServiceIds(int index) { - if (sliceServiceIdsBuilder_ == null) { - return sliceServiceIds_.get(index); + public Builder setSliceOwner( + context.ContextOuterClass.SliceOwner.Builder builderForValue) { + if (sliceOwnerBuilder_ == null) { + sliceOwner_ = builderForValue.build(); + onChanged(); } else { - return sliceServiceIdsBuilder_.getMessage(index); + sliceOwnerBuilder_.setMessage(builderForValue.build()); } + + return this; } /** - * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + * <code>.context.SliceOwner slice_owner = 9;</code> */ - public Builder setSliceServiceIds( - int index, context.ContextOuterClass.ServiceId value) { - if (sliceServiceIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + public Builder mergeSliceOwner(context.ContextOuterClass.SliceOwner value) { + if (sliceOwnerBuilder_ == null) { + if (sliceOwner_ != null) { + sliceOwner_ = + context.ContextOuterClass.SliceOwner.newBuilder(sliceOwner_).mergeFrom(value).buildPartial(); + } else { + sliceOwner_ = value; } - ensureSliceServiceIdsIsMutable(); - sliceServiceIds_.set(index, value); onChanged(); } else { - sliceServiceIdsBuilder_.setMessage(index, value); + sliceOwnerBuilder_.mergeFrom(value); } + return this; } /** - * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + * <code>.context.SliceOwner slice_owner = 9;</code> */ - public Builder setSliceServiceIds( - int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { - if (sliceServiceIdsBuilder_ == null) { - ensureSliceServiceIdsIsMutable(); - sliceServiceIds_.set(index, builderForValue.build()); + public Builder clearSliceOwner() { + if (sliceOwnerBuilder_ == null) { + sliceOwner_ = null; onChanged(); } else { - sliceServiceIdsBuilder_.setMessage(index, builderForValue.build()); + sliceOwner_ = null; + sliceOwnerBuilder_ = null; } + return this; } /** - * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + * <code>.context.SliceOwner slice_owner = 9;</code> */ - public Builder addSliceServiceIds(context.ContextOuterClass.ServiceId value) { - if (sliceServiceIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSliceServiceIdsIsMutable(); - sliceServiceIds_.add(value); - onChanged(); + public context.ContextOuterClass.SliceOwner.Builder getSliceOwnerBuilder() { + + onChanged(); + return getSliceOwnerFieldBuilder().getBuilder(); + } + /** + * <code>.context.SliceOwner slice_owner = 9;</code> + */ + public context.ContextOuterClass.SliceOwnerOrBuilder getSliceOwnerOrBuilder() { + if (sliceOwnerBuilder_ != null) { + return sliceOwnerBuilder_.getMessageOrBuilder(); + } else { + return sliceOwner_ == null ? + context.ContextOuterClass.SliceOwner.getDefaultInstance() : sliceOwner_; + } + } + /** + * <code>.context.SliceOwner slice_owner = 9;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceOwner, context.ContextOuterClass.SliceOwner.Builder, context.ContextOuterClass.SliceOwnerOrBuilder> + getSliceOwnerFieldBuilder() { + if (sliceOwnerBuilder_ == null) { + sliceOwnerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceOwner, context.ContextOuterClass.SliceOwner.Builder, context.ContextOuterClass.SliceOwnerOrBuilder>( + getSliceOwner(), + getParentForChildren(), + isClean()); + sliceOwner_ = null; + } + return sliceOwnerBuilder_; + } + + private context.ContextOuterClass.Timestamp timestamp_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> timestampBuilder_; + /** + * <code>.context.Timestamp timestamp = 10;</code> + * @return Whether the timestamp field is set. + */ + public boolean hasTimestamp() { + return timestampBuilder_ != null || timestamp_ != null; + } + /** + * <code>.context.Timestamp timestamp = 10;</code> + * @return The timestamp. + */ + public context.ContextOuterClass.Timestamp getTimestamp() { + if (timestampBuilder_ == null) { + return timestamp_ == null ? context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_; } else { - sliceServiceIdsBuilder_.addMessage(value); + return timestampBuilder_.getMessage(); } - return this; } /** - * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + * <code>.context.Timestamp timestamp = 10;</code> */ - public Builder addSliceServiceIds( - int index, context.ContextOuterClass.ServiceId value) { - if (sliceServiceIdsBuilder_ == null) { + public Builder setTimestamp(context.ContextOuterClass.Timestamp value) { + if (timestampBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureSliceServiceIdsIsMutable(); - sliceServiceIds_.add(index, value); + timestamp_ = value; onChanged(); } else { - sliceServiceIdsBuilder_.addMessage(index, value); + timestampBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + * <code>.context.Timestamp timestamp = 10;</code> */ - public Builder addSliceServiceIds( - context.ContextOuterClass.ServiceId.Builder builderForValue) { - if (sliceServiceIdsBuilder_ == null) { - ensureSliceServiceIdsIsMutable(); - sliceServiceIds_.add(builderForValue.build()); + public Builder setTimestamp( + context.ContextOuterClass.Timestamp.Builder builderForValue) { + if (timestampBuilder_ == null) { + timestamp_ = builderForValue.build(); onChanged(); } else { - sliceServiceIdsBuilder_.addMessage(builderForValue.build()); + timestampBuilder_.setMessage(builderForValue.build()); } + return this; } /** - * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + * <code>.context.Timestamp timestamp = 10;</code> */ - public Builder addSliceServiceIds( - int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { - if (sliceServiceIdsBuilder_ == null) { - ensureSliceServiceIdsIsMutable(); - sliceServiceIds_.add(index, builderForValue.build()); + public Builder mergeTimestamp(context.ContextOuterClass.Timestamp value) { + if (timestampBuilder_ == null) { + if (timestamp_ != null) { + timestamp_ = + context.ContextOuterClass.Timestamp.newBuilder(timestamp_).mergeFrom(value).buildPartial(); + } else { + timestamp_ = value; + } onChanged(); } else { - sliceServiceIdsBuilder_.addMessage(index, builderForValue.build()); + timestampBuilder_.mergeFrom(value); } + return this; } /** - * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + * <code>.context.Timestamp timestamp = 10;</code> */ - public Builder addAllSliceServiceIds( - java.lang.Iterable<? extends context.ContextOuterClass.ServiceId> values) { - if (sliceServiceIdsBuilder_ == null) { - ensureSliceServiceIdsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, sliceServiceIds_); + public Builder clearTimestamp() { + if (timestampBuilder_ == null) { + timestamp_ = null; onChanged(); } else { - sliceServiceIdsBuilder_.addAllMessages(values); + timestamp_ = null; + timestampBuilder_ = null; } + return this; } /** - * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + * <code>.context.Timestamp timestamp = 10;</code> */ - public Builder clearSliceServiceIds() { - if (sliceServiceIdsBuilder_ == null) { - sliceServiceIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000004); - onChanged(); - } else { - sliceServiceIdsBuilder_.clear(); - } - return this; + public context.ContextOuterClass.Timestamp.Builder getTimestampBuilder() { + + onChanged(); + return getTimestampFieldBuilder().getBuilder(); } /** - * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + * <code>.context.Timestamp timestamp = 10;</code> */ - public Builder removeSliceServiceIds(int index) { - if (sliceServiceIdsBuilder_ == null) { - ensureSliceServiceIdsIsMutable(); - sliceServiceIds_.remove(index); - onChanged(); + public context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder() { + if (timestampBuilder_ != null) { + return timestampBuilder_.getMessageOrBuilder(); } else { - sliceServiceIdsBuilder_.remove(index); + return timestamp_ == null ? + context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_; } - return this; - } - /** - * <code>repeated .context.ServiceId slice_service_ids = 5;</code> - */ - public context.ContextOuterClass.ServiceId.Builder getSliceServiceIdsBuilder( - int index) { - return getSliceServiceIdsFieldBuilder().getBuilder(index); } /** - * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + * <code>.context.Timestamp timestamp = 10;</code> */ - public context.ContextOuterClass.ServiceIdOrBuilder getSliceServiceIdsOrBuilder( - int index) { - if (sliceServiceIdsBuilder_ == null) { - return sliceServiceIds_.get(index); } else { - return sliceServiceIdsBuilder_.getMessageOrBuilder(index); + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> + getTimestampFieldBuilder() { + if (timestampBuilder_ == null) { + timestampBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder>( + getTimestamp(), + getParentForChildren(), + isClean()); + timestamp_ = null; } + return timestampBuilder_; } - /** - * <code>repeated .context.ServiceId slice_service_ids = 5;</code> - */ - public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> - getSliceServiceIdsOrBuilderList() { - if (sliceServiceIdsBuilder_ != null) { - return sliceServiceIdsBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(sliceServiceIds_); - } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); } - /** - * <code>repeated .context.ServiceId slice_service_ids = 5;</code> - */ - public context.ContextOuterClass.ServiceId.Builder addSliceServiceIdsBuilder() { - return getSliceServiceIdsFieldBuilder().addBuilder( - context.ContextOuterClass.ServiceId.getDefaultInstance()); + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); } - /** - * <code>repeated .context.ServiceId slice_service_ids = 5;</code> - */ - public context.ContextOuterClass.ServiceId.Builder addSliceServiceIdsBuilder( - int index) { - return getSliceServiceIdsFieldBuilder().addBuilder( - index, context.ContextOuterClass.ServiceId.getDefaultInstance()); + + + // @@protoc_insertion_point(builder_scope:context.Slice) + } + + // @@protoc_insertion_point(class_scope:context.Slice) + private static final context.ContextOuterClass.Slice DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new context.ContextOuterClass.Slice(); + } + + public static context.ContextOuterClass.Slice getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<Slice> + PARSER = new com.google.protobuf.AbstractParser<Slice>() { + @java.lang.Override + public Slice parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new Slice(input, extensionRegistry); } - /** - * <code>repeated .context.ServiceId slice_service_ids = 5;</code> - */ - public java.util.List<context.ContextOuterClass.ServiceId.Builder> - getSliceServiceIdsBuilderList() { - return getSliceServiceIdsFieldBuilder().getBuilderList(); + }; + + public static com.google.protobuf.Parser<Slice> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<Slice> getParserForType() { + return PARSER; + } + + @java.lang.Override + public context.ContextOuterClass.Slice getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface SliceOwnerOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.SliceOwner) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>.context.Uuid owner_uuid = 1;</code> + * @return Whether the ownerUuid field is set. + */ + boolean hasOwnerUuid(); + /** + * <code>.context.Uuid owner_uuid = 1;</code> + * @return The ownerUuid. + */ + context.ContextOuterClass.Uuid getOwnerUuid(); + /** + * <code>.context.Uuid owner_uuid = 1;</code> + */ + context.ContextOuterClass.UuidOrBuilder getOwnerUuidOrBuilder(); + + /** + * <code>string owner_string = 2;</code> + * @return The ownerString. + */ + java.lang.String getOwnerString(); + /** + * <code>string owner_string = 2;</code> + * @return The bytes for ownerString. + */ + com.google.protobuf.ByteString + getOwnerStringBytes(); + } + /** + * Protobuf type {@code context.SliceOwner} + */ + public static final class SliceOwner extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:context.SliceOwner) + SliceOwnerOrBuilder { + private static final long serialVersionUID = 0L; + // Use SliceOwner.newBuilder() to construct. + private SliceOwner(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private SliceOwner() { + ownerString_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new SliceOwner(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private SliceOwner( + 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 com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> - getSliceServiceIdsFieldBuilder() { - if (sliceServiceIdsBuilder_ == null) { - sliceServiceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder>( - sliceServiceIds_, - ((bitField0_ & 0x00000004) != 0), - getParentForChildren(), - isClean()); - sliceServiceIds_ = null; + 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: { + context.ContextOuterClass.Uuid.Builder subBuilder = null; + if (ownerUuid_ != null) { + subBuilder = ownerUuid_.toBuilder(); + } + ownerUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(ownerUuid_); + ownerUuid_ = subBuilder.buildPartial(); + } + + break; + } + case 18: { + java.lang.String s = input.readStringRequireUtf8(); + + ownerString_ = s; + break; + } + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } } - return sliceServiceIdsBuilder_; + } 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 { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_SliceOwner_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_SliceOwner_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.SliceOwner.class, context.ContextOuterClass.SliceOwner.Builder.class); + } + + public static final int OWNER_UUID_FIELD_NUMBER = 1; + private context.ContextOuterClass.Uuid ownerUuid_; + /** + * <code>.context.Uuid owner_uuid = 1;</code> + * @return Whether the ownerUuid field is set. + */ + @java.lang.Override + public boolean hasOwnerUuid() { + return ownerUuid_ != null; + } + /** + * <code>.context.Uuid owner_uuid = 1;</code> + * @return The ownerUuid. + */ + @java.lang.Override + public context.ContextOuterClass.Uuid getOwnerUuid() { + return ownerUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : ownerUuid_; + } + /** + * <code>.context.Uuid owner_uuid = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.UuidOrBuilder getOwnerUuidOrBuilder() { + return getOwnerUuid(); + } + + public static final int OWNER_STRING_FIELD_NUMBER = 2; + private volatile java.lang.Object ownerString_; + /** + * <code>string owner_string = 2;</code> + * @return The ownerString. + */ + @java.lang.Override + public java.lang.String getOwnerString() { + java.lang.Object ref = ownerString_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + ownerString_ = s; + return s; + } + } + /** + * <code>string owner_string = 2;</code> + * @return The bytes for ownerString. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getOwnerStringBytes() { + java.lang.Object ref = ownerString_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + ownerString_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + 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 (ownerUuid_ != null) { + output.writeMessage(1, getOwnerUuid()); + } + if (!getOwnerStringBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, ownerString_); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (ownerUuid_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getOwnerUuid()); + } + if (!getOwnerStringBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, ownerString_); + } + 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 context.ContextOuterClass.SliceOwner)) { + return super.equals(obj); } + context.ContextOuterClass.SliceOwner other = (context.ContextOuterClass.SliceOwner) obj; + + if (hasOwnerUuid() != other.hasOwnerUuid()) return false; + if (hasOwnerUuid()) { + if (!getOwnerUuid() + .equals(other.getOwnerUuid())) return false; + } + if (!getOwnerString() + .equals(other.getOwnerString())) 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 (hasOwnerUuid()) { + hash = (37 * hash) + OWNER_UUID_FIELD_NUMBER; + hash = (53 * hash) + getOwnerUuid().hashCode(); + } + hash = (37 * hash) + OWNER_STRING_FIELD_NUMBER; + hash = (53 * hash) + getOwnerString().hashCode(); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static context.ContextOuterClass.SliceOwner parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.SliceOwner parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.SliceOwner parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.SliceOwner parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.SliceOwner parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.SliceOwner parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.SliceOwner parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.SliceOwner 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 context.ContextOuterClass.SliceOwner parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static context.ContextOuterClass.SliceOwner 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 context.ContextOuterClass.SliceOwner parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.SliceOwner parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } - private java.util.List<context.ContextOuterClass.SliceId> sliceSubsliceIds_ = - java.util.Collections.emptyList(); - private void ensureSliceSubsliceIdsIsMutable() { - if (!((bitField0_ & 0x00000008) != 0)) { - sliceSubsliceIds_ = new java.util.ArrayList<context.ContextOuterClass.SliceId>(sliceSubsliceIds_); - bitField0_ |= 0x00000008; - } + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(context.ContextOuterClass.SliceOwner 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; + } + /** + * Protobuf type {@code context.SliceOwner} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:context.SliceOwner) + context.ContextOuterClass.SliceOwnerOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_SliceOwner_descriptor; } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> sliceSubsliceIdsBuilder_; + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_SliceOwner_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.SliceOwner.class, context.ContextOuterClass.SliceOwner.Builder.class); + } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> - */ - public java.util.List<context.ContextOuterClass.SliceId> getSliceSubsliceIdsList() { - if (sliceSubsliceIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(sliceSubsliceIds_); - } else { - return sliceSubsliceIdsBuilder_.getMessageList(); - } + // Construct using context.ContextOuterClass.SliceOwner.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> - */ - public int getSliceSubsliceIdsCount() { - if (sliceSubsliceIdsBuilder_ == null) { - return sliceSubsliceIds_.size(); - } else { - return sliceSubsliceIdsBuilder_.getCount(); - } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> - */ - public context.ContextOuterClass.SliceId getSliceSubsliceIds(int index) { - if (sliceSubsliceIdsBuilder_ == null) { - return sliceSubsliceIds_.get(index); - } else { - return sliceSubsliceIdsBuilder_.getMessage(index); + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { } } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> - */ - public Builder setSliceSubsliceIds( - int index, context.ContextOuterClass.SliceId value) { - if (sliceSubsliceIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSliceSubsliceIdsIsMutable(); - sliceSubsliceIds_.set(index, value); - onChanged(); + @java.lang.Override + public Builder clear() { + super.clear(); + if (ownerUuidBuilder_ == null) { + ownerUuid_ = null; } else { - sliceSubsliceIdsBuilder_.setMessage(index, value); + ownerUuid_ = null; + ownerUuidBuilder_ = null; } + ownerString_ = ""; + return this; } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> - */ - public Builder setSliceSubsliceIds( - int index, context.ContextOuterClass.SliceId.Builder builderForValue) { - if (sliceSubsliceIdsBuilder_ == null) { - ensureSliceSubsliceIdsIsMutable(); - sliceSubsliceIds_.set(index, builderForValue.build()); - onChanged(); - } else { - sliceSubsliceIdsBuilder_.setMessage(index, builderForValue.build()); - } - return this; + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return context.ContextOuterClass.internal_static_context_SliceOwner_descriptor; } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> - */ - public Builder addSliceSubsliceIds(context.ContextOuterClass.SliceId value) { - if (sliceSubsliceIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSliceSubsliceIdsIsMutable(); - sliceSubsliceIds_.add(value); - onChanged(); - } else { - sliceSubsliceIdsBuilder_.addMessage(value); - } - return this; + + @java.lang.Override + public context.ContextOuterClass.SliceOwner getDefaultInstanceForType() { + return context.ContextOuterClass.SliceOwner.getDefaultInstance(); } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> - */ - public Builder addSliceSubsliceIds( - int index, context.ContextOuterClass.SliceId value) { - if (sliceSubsliceIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSliceSubsliceIdsIsMutable(); - sliceSubsliceIds_.add(index, value); - onChanged(); - } else { - sliceSubsliceIdsBuilder_.addMessage(index, value); + + @java.lang.Override + public context.ContextOuterClass.SliceOwner build() { + context.ContextOuterClass.SliceOwner result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); } - return this; + return result; } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> - */ - public Builder addSliceSubsliceIds( - context.ContextOuterClass.SliceId.Builder builderForValue) { - if (sliceSubsliceIdsBuilder_ == null) { - ensureSliceSubsliceIdsIsMutable(); - sliceSubsliceIds_.add(builderForValue.build()); - onChanged(); + + @java.lang.Override + public context.ContextOuterClass.SliceOwner buildPartial() { + context.ContextOuterClass.SliceOwner result = new context.ContextOuterClass.SliceOwner(this); + if (ownerUuidBuilder_ == null) { + result.ownerUuid_ = ownerUuid_; } else { - sliceSubsliceIdsBuilder_.addMessage(builderForValue.build()); + result.ownerUuid_ = ownerUuidBuilder_.build(); } - return this; + result.ownerString_ = ownerString_; + onBuilt(); + return result; } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> - */ - public Builder addSliceSubsliceIds( - int index, context.ContextOuterClass.SliceId.Builder builderForValue) { - if (sliceSubsliceIdsBuilder_ == null) { - ensureSliceSubsliceIdsIsMutable(); - sliceSubsliceIds_.add(index, builderForValue.build()); - onChanged(); - } else { - sliceSubsliceIdsBuilder_.addMessage(index, builderForValue.build()); - } - return this; + + @java.lang.Override + public Builder clone() { + return super.clone(); } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> - */ - public Builder addAllSliceSubsliceIds( - java.lang.Iterable<? extends context.ContextOuterClass.SliceId> values) { - if (sliceSubsliceIdsBuilder_ == null) { - ensureSliceSubsliceIdsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, sliceSubsliceIds_); - onChanged(); - } else { - sliceSubsliceIdsBuilder_.addAllMessages(values); - } - return this; + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> - */ - public Builder clearSliceSubsliceIds() { - if (sliceSubsliceIdsBuilder_ == null) { - sliceSubsliceIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000008); - onChanged(); - } else { - sliceSubsliceIdsBuilder_.clear(); - } - return this; + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> - */ - public Builder removeSliceSubsliceIds(int index) { - if (sliceSubsliceIdsBuilder_ == null) { - ensureSliceSubsliceIdsIsMutable(); - sliceSubsliceIds_.remove(index); - onChanged(); - } else { - sliceSubsliceIdsBuilder_.remove(index); - } - return this; + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> - */ - public context.ContextOuterClass.SliceId.Builder getSliceSubsliceIdsBuilder( - int index) { - return getSliceSubsliceIdsFieldBuilder().getBuilder(index); + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> - */ - public context.ContextOuterClass.SliceIdOrBuilder getSliceSubsliceIdsOrBuilder( - int index) { - if (sliceSubsliceIdsBuilder_ == null) { - return sliceSubsliceIds_.get(index); } else { - return sliceSubsliceIdsBuilder_.getMessageOrBuilder(index); - } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> - */ - public java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> - getSliceSubsliceIdsOrBuilderList() { - if (sliceSubsliceIdsBuilder_ != null) { - return sliceSubsliceIdsBuilder_.getMessageOrBuilderList(); + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof context.ContextOuterClass.SliceOwner) { + return mergeFrom((context.ContextOuterClass.SliceOwner)other); } else { - return java.util.Collections.unmodifiableList(sliceSubsliceIds_); - } - } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> - */ - public context.ContextOuterClass.SliceId.Builder addSliceSubsliceIdsBuilder() { - return getSliceSubsliceIdsFieldBuilder().addBuilder( - context.ContextOuterClass.SliceId.getDefaultInstance()); - } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> - */ - public context.ContextOuterClass.SliceId.Builder addSliceSubsliceIdsBuilder( - int index) { - return getSliceSubsliceIdsFieldBuilder().addBuilder( - index, context.ContextOuterClass.SliceId.getDefaultInstance()); - } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> - */ - public java.util.List<context.ContextOuterClass.SliceId.Builder> - getSliceSubsliceIdsBuilderList() { - return getSliceSubsliceIdsFieldBuilder().getBuilderList(); - } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> - getSliceSubsliceIdsFieldBuilder() { - if (sliceSubsliceIdsBuilder_ == null) { - sliceSubsliceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder>( - sliceSubsliceIds_, - ((bitField0_ & 0x00000008) != 0), - getParentForChildren(), - isClean()); - sliceSubsliceIds_ = null; + super.mergeFrom(other); + return this; } - return sliceSubsliceIdsBuilder_; } - private context.ContextOuterClass.SliceStatus sliceStatus_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceStatus, context.ContextOuterClass.SliceStatus.Builder, context.ContextOuterClass.SliceStatusOrBuilder> sliceStatusBuilder_; - /** - * <code>.context.SliceStatus slice_status = 7;</code> - * @return Whether the sliceStatus field is set. - */ - public boolean hasSliceStatus() { - return sliceStatusBuilder_ != null || sliceStatus_ != null; - } - /** - * <code>.context.SliceStatus slice_status = 7;</code> - * @return The sliceStatus. - */ - public context.ContextOuterClass.SliceStatus getSliceStatus() { - if (sliceStatusBuilder_ == null) { - return sliceStatus_ == null ? context.ContextOuterClass.SliceStatus.getDefaultInstance() : sliceStatus_; - } else { - return sliceStatusBuilder_.getMessage(); + public Builder mergeFrom(context.ContextOuterClass.SliceOwner other) { + if (other == context.ContextOuterClass.SliceOwner.getDefaultInstance()) return this; + if (other.hasOwnerUuid()) { + mergeOwnerUuid(other.getOwnerUuid()); } - } - /** - * <code>.context.SliceStatus slice_status = 7;</code> - */ - public Builder setSliceStatus(context.ContextOuterClass.SliceStatus value) { - if (sliceStatusBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - sliceStatus_ = value; + if (!other.getOwnerString().isEmpty()) { + ownerString_ = other.ownerString_; onChanged(); - } else { - sliceStatusBuilder_.setMessage(value); } - + this.mergeUnknownFields(other.unknownFields); + onChanged(); return this; } - /** - * <code>.context.SliceStatus slice_status = 7;</code> - */ - public Builder setSliceStatus( - context.ContextOuterClass.SliceStatus.Builder builderForValue) { - if (sliceStatusBuilder_ == null) { - sliceStatus_ = builderForValue.build(); - onChanged(); - } else { - sliceStatusBuilder_.setMessage(builderForValue.build()); - } - return this; + @java.lang.Override + public final boolean isInitialized() { + return true; } - /** - * <code>.context.SliceStatus slice_status = 7;</code> - */ - public Builder mergeSliceStatus(context.ContextOuterClass.SliceStatus value) { - if (sliceStatusBuilder_ == null) { - if (sliceStatus_ != null) { - sliceStatus_ = - context.ContextOuterClass.SliceStatus.newBuilder(sliceStatus_).mergeFrom(value).buildPartial(); - } else { - sliceStatus_ = value; - } - onChanged(); - } else { - sliceStatusBuilder_.mergeFrom(value); - } - return this; - } - /** - * <code>.context.SliceStatus slice_status = 7;</code> - */ - public Builder clearSliceStatus() { - if (sliceStatusBuilder_ == null) { - sliceStatus_ = null; - onChanged(); - } else { - sliceStatus_ = null; - sliceStatusBuilder_ = null; + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + context.ContextOuterClass.SliceOwner parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.SliceOwner) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } } - return this; } - /** - * <code>.context.SliceStatus slice_status = 7;</code> - */ - public context.ContextOuterClass.SliceStatus.Builder getSliceStatusBuilder() { - - onChanged(); - return getSliceStatusFieldBuilder().getBuilder(); - } - /** - * <code>.context.SliceStatus slice_status = 7;</code> - */ - public context.ContextOuterClass.SliceStatusOrBuilder getSliceStatusOrBuilder() { - if (sliceStatusBuilder_ != null) { - return sliceStatusBuilder_.getMessageOrBuilder(); - } else { - return sliceStatus_ == null ? - context.ContextOuterClass.SliceStatus.getDefaultInstance() : sliceStatus_; - } - } - /** - * <code>.context.SliceStatus slice_status = 7;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceStatus, context.ContextOuterClass.SliceStatus.Builder, context.ContextOuterClass.SliceStatusOrBuilder> - getSliceStatusFieldBuilder() { - if (sliceStatusBuilder_ == null) { - sliceStatusBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceStatus, context.ContextOuterClass.SliceStatus.Builder, context.ContextOuterClass.SliceStatusOrBuilder>( - getSliceStatus(), - getParentForChildren(), - isClean()); - sliceStatus_ = null; - } - return sliceStatusBuilder_; - } - private context.ContextOuterClass.SliceConfig sliceConfig_; + private context.ContextOuterClass.Uuid ownerUuid_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceConfig, context.ContextOuterClass.SliceConfig.Builder, context.ContextOuterClass.SliceConfigOrBuilder> sliceConfigBuilder_; + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> ownerUuidBuilder_; /** - * <code>.context.SliceConfig slice_config = 8;</code> - * @return Whether the sliceConfig field is set. + * <code>.context.Uuid owner_uuid = 1;</code> + * @return Whether the ownerUuid field is set. */ - public boolean hasSliceConfig() { - return sliceConfigBuilder_ != null || sliceConfig_ != null; + public boolean hasOwnerUuid() { + return ownerUuidBuilder_ != null || ownerUuid_ != null; } /** - * <code>.context.SliceConfig slice_config = 8;</code> - * @return The sliceConfig. + * <code>.context.Uuid owner_uuid = 1;</code> + * @return The ownerUuid. */ - public context.ContextOuterClass.SliceConfig getSliceConfig() { - if (sliceConfigBuilder_ == null) { - return sliceConfig_ == null ? context.ContextOuterClass.SliceConfig.getDefaultInstance() : sliceConfig_; + public context.ContextOuterClass.Uuid getOwnerUuid() { + if (ownerUuidBuilder_ == null) { + return ownerUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : ownerUuid_; } else { - return sliceConfigBuilder_.getMessage(); + return ownerUuidBuilder_.getMessage(); } } /** - * <code>.context.SliceConfig slice_config = 8;</code> + * <code>.context.Uuid owner_uuid = 1;</code> */ - public Builder setSliceConfig(context.ContextOuterClass.SliceConfig value) { - if (sliceConfigBuilder_ == null) { + public Builder setOwnerUuid(context.ContextOuterClass.Uuid value) { + if (ownerUuidBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - sliceConfig_ = value; + ownerUuid_ = value; onChanged(); } else { - sliceConfigBuilder_.setMessage(value); + ownerUuidBuilder_.setMessage(value); } return this; } /** - * <code>.context.SliceConfig slice_config = 8;</code> + * <code>.context.Uuid owner_uuid = 1;</code> */ - public Builder setSliceConfig( - context.ContextOuterClass.SliceConfig.Builder builderForValue) { - if (sliceConfigBuilder_ == null) { - sliceConfig_ = builderForValue.build(); + public Builder setOwnerUuid( + context.ContextOuterClass.Uuid.Builder builderForValue) { + if (ownerUuidBuilder_ == null) { + ownerUuid_ = builderForValue.build(); onChanged(); } else { - sliceConfigBuilder_.setMessage(builderForValue.build()); + ownerUuidBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.SliceConfig slice_config = 8;</code> + * <code>.context.Uuid owner_uuid = 1;</code> */ - public Builder mergeSliceConfig(context.ContextOuterClass.SliceConfig value) { - if (sliceConfigBuilder_ == null) { - if (sliceConfig_ != null) { - sliceConfig_ = - context.ContextOuterClass.SliceConfig.newBuilder(sliceConfig_).mergeFrom(value).buildPartial(); + public Builder mergeOwnerUuid(context.ContextOuterClass.Uuid value) { + if (ownerUuidBuilder_ == null) { + if (ownerUuid_ != null) { + ownerUuid_ = + context.ContextOuterClass.Uuid.newBuilder(ownerUuid_).mergeFrom(value).buildPartial(); } else { - sliceConfig_ = value; + ownerUuid_ = value; } onChanged(); } else { - sliceConfigBuilder_.mergeFrom(value); + ownerUuidBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.SliceConfig slice_config = 8;</code> + * <code>.context.Uuid owner_uuid = 1;</code> */ - public Builder clearSliceConfig() { - if (sliceConfigBuilder_ == null) { - sliceConfig_ = null; + public Builder clearOwnerUuid() { + if (ownerUuidBuilder_ == null) { + ownerUuid_ = null; onChanged(); } else { - sliceConfig_ = null; - sliceConfigBuilder_ = null; + ownerUuid_ = null; + ownerUuidBuilder_ = null; } return this; } /** - * <code>.context.SliceConfig slice_config = 8;</code> + * <code>.context.Uuid owner_uuid = 1;</code> */ - public context.ContextOuterClass.SliceConfig.Builder getSliceConfigBuilder() { + public context.ContextOuterClass.Uuid.Builder getOwnerUuidBuilder() { onChanged(); - return getSliceConfigFieldBuilder().getBuilder(); + return getOwnerUuidFieldBuilder().getBuilder(); } /** - * <code>.context.SliceConfig slice_config = 8;</code> + * <code>.context.Uuid owner_uuid = 1;</code> */ - public context.ContextOuterClass.SliceConfigOrBuilder getSliceConfigOrBuilder() { - if (sliceConfigBuilder_ != null) { - return sliceConfigBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.UuidOrBuilder getOwnerUuidOrBuilder() { + if (ownerUuidBuilder_ != null) { + return ownerUuidBuilder_.getMessageOrBuilder(); } else { - return sliceConfig_ == null ? - context.ContextOuterClass.SliceConfig.getDefaultInstance() : sliceConfig_; + return ownerUuid_ == null ? + context.ContextOuterClass.Uuid.getDefaultInstance() : ownerUuid_; + } + } + /** + * <code>.context.Uuid owner_uuid = 1;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> + getOwnerUuidFieldBuilder() { + if (ownerUuidBuilder_ == null) { + ownerUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>( + getOwnerUuid(), + getParentForChildren(), + isClean()); + ownerUuid_ = null; + } + return ownerUuidBuilder_; + } + + private java.lang.Object ownerString_ = ""; + /** + * <code>string owner_string = 2;</code> + * @return The ownerString. + */ + public java.lang.String getOwnerString() { + java.lang.Object ref = ownerString_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + ownerString_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * <code>string owner_string = 2;</code> + * @return The bytes for ownerString. + */ + public com.google.protobuf.ByteString + getOwnerStringBytes() { + java.lang.Object ref = ownerString_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + ownerString_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * <code>string owner_string = 2;</code> + * @param value The ownerString to set. + * @return This builder for chaining. + */ + public Builder setOwnerString( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + ownerString_ = value; + onChanged(); + return this; + } + /** + * <code>string owner_string = 2;</code> + * @return This builder for chaining. + */ + public Builder clearOwnerString() { + + ownerString_ = getDefaultInstance().getOwnerString(); + onChanged(); + return this; + } + /** + * <code>string owner_string = 2;</code> + * @param value The bytes for ownerString to set. + * @return This builder for chaining. + */ + public Builder setOwnerStringBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + ownerString_ = value; + onChanged(); + return this; + } + @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:context.SliceOwner) + } + + // @@protoc_insertion_point(class_scope:context.SliceOwner) + private static final context.ContextOuterClass.SliceOwner DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new context.ContextOuterClass.SliceOwner(); + } + + public static context.ContextOuterClass.SliceOwner getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<SliceOwner> + PARSER = new com.google.protobuf.AbstractParser<SliceOwner>() { + @java.lang.Override + public SliceOwner parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new SliceOwner(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<SliceOwner> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<SliceOwner> getParserForType() { + return PARSER; + } + + @java.lang.Override + public context.ContextOuterClass.SliceOwner getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface SliceStatusOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.SliceStatus) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>.context.SliceStatusEnum slice_status = 1;</code> + * @return The enum numeric value on the wire for sliceStatus. + */ + int getSliceStatusValue(); + /** + * <code>.context.SliceStatusEnum slice_status = 1;</code> + * @return The sliceStatus. + */ + context.ContextOuterClass.SliceStatusEnum getSliceStatus(); + } + /** + * Protobuf type {@code context.SliceStatus} + */ + public static final class SliceStatus extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:context.SliceStatus) + SliceStatusOrBuilder { + private static final long serialVersionUID = 0L; + // Use SliceStatus.newBuilder() to construct. + private SliceStatus(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private SliceStatus() { + sliceStatus_ = 0; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new SliceStatus(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private SliceStatus( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + 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 8: { + int rawValue = input.readEnum(); + + sliceStatus_ = rawValue; + 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 { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_SliceStatus_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_SliceStatus_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.SliceStatus.class, context.ContextOuterClass.SliceStatus.Builder.class); + } + + public static final int SLICE_STATUS_FIELD_NUMBER = 1; + private int sliceStatus_; + /** + * <code>.context.SliceStatusEnum slice_status = 1;</code> + * @return The enum numeric value on the wire for sliceStatus. + */ + @java.lang.Override public int getSliceStatusValue() { + return sliceStatus_; + } + /** + * <code>.context.SliceStatusEnum slice_status = 1;</code> + * @return The sliceStatus. + */ + @java.lang.Override public context.ContextOuterClass.SliceStatusEnum getSliceStatus() { + @SuppressWarnings("deprecation") + context.ContextOuterClass.SliceStatusEnum result = context.ContextOuterClass.SliceStatusEnum.valueOf(sliceStatus_); + return result == null ? context.ContextOuterClass.SliceStatusEnum.UNRECOGNIZED : result; + } + + 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 (sliceStatus_ != context.ContextOuterClass.SliceStatusEnum.SLICESTATUS_UNDEFINED.getNumber()) { + output.writeEnum(1, sliceStatus_); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (sliceStatus_ != context.ContextOuterClass.SliceStatusEnum.SLICESTATUS_UNDEFINED.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(1, sliceStatus_); + } + 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 context.ContextOuterClass.SliceStatus)) { + return super.equals(obj); + } + context.ContextOuterClass.SliceStatus other = (context.ContextOuterClass.SliceStatus) obj; + + if (sliceStatus_ != other.sliceStatus_) 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(); + hash = (37 * hash) + SLICE_STATUS_FIELD_NUMBER; + hash = (53 * hash) + sliceStatus_; + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static context.ContextOuterClass.SliceStatus parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.SliceStatus parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.SliceStatus parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.SliceStatus parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.SliceStatus parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.SliceStatus parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.SliceStatus parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.SliceStatus 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 context.ContextOuterClass.SliceStatus parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static context.ContextOuterClass.SliceStatus 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 context.ContextOuterClass.SliceStatus parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.SliceStatus 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(context.ContextOuterClass.SliceStatus 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; + } + /** + * Protobuf type {@code context.SliceStatus} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:context.SliceStatus) + context.ContextOuterClass.SliceStatusOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_SliceStatus_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_SliceStatus_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.SliceStatus.class, context.ContextOuterClass.SliceStatus.Builder.class); } - /** - * <code>.context.SliceConfig slice_config = 8;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceConfig, context.ContextOuterClass.SliceConfig.Builder, context.ContextOuterClass.SliceConfigOrBuilder> - getSliceConfigFieldBuilder() { - if (sliceConfigBuilder_ == null) { - sliceConfigBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceConfig, context.ContextOuterClass.SliceConfig.Builder, context.ContextOuterClass.SliceConfigOrBuilder>( - getSliceConfig(), - getParentForChildren(), - isClean()); - sliceConfig_ = null; - } - return sliceConfigBuilder_; + + // Construct using context.ContextOuterClass.SliceStatus.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); } - private context.ContextOuterClass.SliceOwner sliceOwner_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceOwner, context.ContextOuterClass.SliceOwner.Builder, context.ContextOuterClass.SliceOwnerOrBuilder> sliceOwnerBuilder_; - /** - * <code>.context.SliceOwner slice_owner = 9;</code> - * @return Whether the sliceOwner field is set. - */ - public boolean hasSliceOwner() { - return sliceOwnerBuilder_ != null || sliceOwner_ != null; + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); } - /** - * <code>.context.SliceOwner slice_owner = 9;</code> - * @return The sliceOwner. - */ - public context.ContextOuterClass.SliceOwner getSliceOwner() { - if (sliceOwnerBuilder_ == null) { - return sliceOwner_ == null ? context.ContextOuterClass.SliceOwner.getDefaultInstance() : sliceOwner_; - } else { - return sliceOwnerBuilder_.getMessage(); + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { } } - /** - * <code>.context.SliceOwner slice_owner = 9;</code> - */ - public Builder setSliceOwner(context.ContextOuterClass.SliceOwner value) { - if (sliceOwnerBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - sliceOwner_ = value; - onChanged(); - } else { - sliceOwnerBuilder_.setMessage(value); - } + @java.lang.Override + public Builder clear() { + super.clear(); + sliceStatus_ = 0; return this; } - /** - * <code>.context.SliceOwner slice_owner = 9;</code> - */ - public Builder setSliceOwner( - context.ContextOuterClass.SliceOwner.Builder builderForValue) { - if (sliceOwnerBuilder_ == null) { - sliceOwner_ = builderForValue.build(); - onChanged(); - } else { - sliceOwnerBuilder_.setMessage(builderForValue.build()); - } - return this; + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return context.ContextOuterClass.internal_static_context_SliceStatus_descriptor; } - /** - * <code>.context.SliceOwner slice_owner = 9;</code> - */ - public Builder mergeSliceOwner(context.ContextOuterClass.SliceOwner value) { - if (sliceOwnerBuilder_ == null) { - if (sliceOwner_ != null) { - sliceOwner_ = - context.ContextOuterClass.SliceOwner.newBuilder(sliceOwner_).mergeFrom(value).buildPartial(); - } else { - sliceOwner_ = value; - } - onChanged(); - } else { - sliceOwnerBuilder_.mergeFrom(value); - } - return this; + @java.lang.Override + public context.ContextOuterClass.SliceStatus getDefaultInstanceForType() { + return context.ContextOuterClass.SliceStatus.getDefaultInstance(); } - /** - * <code>.context.SliceOwner slice_owner = 9;</code> - */ - public Builder clearSliceOwner() { - if (sliceOwnerBuilder_ == null) { - sliceOwner_ = null; - onChanged(); - } else { - sliceOwner_ = null; - sliceOwnerBuilder_ = null; + + @java.lang.Override + public context.ContextOuterClass.SliceStatus build() { + context.ContextOuterClass.SliceStatus result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); } + return result; + } - return this; + @java.lang.Override + public context.ContextOuterClass.SliceStatus buildPartial() { + context.ContextOuterClass.SliceStatus result = new context.ContextOuterClass.SliceStatus(this); + result.sliceStatus_ = sliceStatus_; + onBuilt(); + return result; } - /** - * <code>.context.SliceOwner slice_owner = 9;</code> - */ - public context.ContextOuterClass.SliceOwner.Builder getSliceOwnerBuilder() { - - onChanged(); - return getSliceOwnerFieldBuilder().getBuilder(); + + @java.lang.Override + public Builder clone() { + return super.clone(); } - /** - * <code>.context.SliceOwner slice_owner = 9;</code> - */ - public context.ContextOuterClass.SliceOwnerOrBuilder getSliceOwnerOrBuilder() { - if (sliceOwnerBuilder_ != null) { - return sliceOwnerBuilder_.getMessageOrBuilder(); - } else { - return sliceOwner_ == null ? - context.ContextOuterClass.SliceOwner.getDefaultInstance() : sliceOwner_; - } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); } - /** - * <code>.context.SliceOwner slice_owner = 9;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceOwner, context.ContextOuterClass.SliceOwner.Builder, context.ContextOuterClass.SliceOwnerOrBuilder> - getSliceOwnerFieldBuilder() { - if (sliceOwnerBuilder_ == null) { - sliceOwnerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceOwner, context.ContextOuterClass.SliceOwner.Builder, context.ContextOuterClass.SliceOwnerOrBuilder>( - getSliceOwner(), - getParentForChildren(), - isClean()); - sliceOwner_ = null; - } - return sliceOwnerBuilder_; + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); } - - private context.ContextOuterClass.Timestamp timestamp_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> timestampBuilder_; - /** - * <code>.context.Timestamp timestamp = 10;</code> - * @return Whether the timestamp field is set. - */ - public boolean hasTimestamp() { - return timestampBuilder_ != null || timestamp_ != null; + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); } - /** - * <code>.context.Timestamp timestamp = 10;</code> - * @return The timestamp. - */ - public context.ContextOuterClass.Timestamp getTimestamp() { - if (timestampBuilder_ == null) { - return timestamp_ == null ? context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_; - } else { - return timestampBuilder_.getMessage(); - } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); } - /** - * <code>.context.Timestamp timestamp = 10;</code> - */ - public Builder setTimestamp(context.ContextOuterClass.Timestamp value) { - if (timestampBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - timestamp_ = value; - onChanged(); + @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 context.ContextOuterClass.SliceStatus) { + return mergeFrom((context.ContextOuterClass.SliceStatus)other); } else { - timestampBuilder_.setMessage(value); + super.mergeFrom(other); + return this; } + } + public Builder mergeFrom(context.ContextOuterClass.SliceStatus other) { + if (other == context.ContextOuterClass.SliceStatus.getDefaultInstance()) return this; + if (other.sliceStatus_ != 0) { + setSliceStatusValue(other.getSliceStatusValue()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); return this; } - /** - * <code>.context.Timestamp timestamp = 10;</code> - */ - public Builder setTimestamp( - context.ContextOuterClass.Timestamp.Builder builderForValue) { - if (timestampBuilder_ == null) { - timestamp_ = builderForValue.build(); - onChanged(); - } else { - timestampBuilder_.setMessage(builderForValue.build()); - } - return this; + @java.lang.Override + public final boolean isInitialized() { + return true; } - /** - * <code>.context.Timestamp timestamp = 10;</code> - */ - public Builder mergeTimestamp(context.ContextOuterClass.Timestamp value) { - if (timestampBuilder_ == null) { - if (timestamp_ != null) { - timestamp_ = - context.ContextOuterClass.Timestamp.newBuilder(timestamp_).mergeFrom(value).buildPartial(); - } else { - timestamp_ = value; + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + context.ContextOuterClass.SliceStatus parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.SliceStatus) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); } - onChanged(); - } else { - timestampBuilder_.mergeFrom(value); } - return this; } + + private int sliceStatus_ = 0; /** - * <code>.context.Timestamp timestamp = 10;</code> + * <code>.context.SliceStatusEnum slice_status = 1;</code> + * @return The enum numeric value on the wire for sliceStatus. */ - public Builder clearTimestamp() { - if (timestampBuilder_ == null) { - timestamp_ = null; - onChanged(); - } else { - timestamp_ = null; - timestampBuilder_ = null; - } - - return this; + @java.lang.Override public int getSliceStatusValue() { + return sliceStatus_; } /** - * <code>.context.Timestamp timestamp = 10;</code> + * <code>.context.SliceStatusEnum slice_status = 1;</code> + * @param value The enum numeric value on the wire for sliceStatus to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.Timestamp.Builder getTimestampBuilder() { + public Builder setSliceStatusValue(int value) { + sliceStatus_ = value; onChanged(); - return getTimestampFieldBuilder().getBuilder(); + return this; } /** - * <code>.context.Timestamp timestamp = 10;</code> + * <code>.context.SliceStatusEnum slice_status = 1;</code> + * @return The sliceStatus. */ - public context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder() { - if (timestampBuilder_ != null) { - return timestampBuilder_.getMessageOrBuilder(); - } else { - return timestamp_ == null ? - context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_; - } + @java.lang.Override + public context.ContextOuterClass.SliceStatusEnum getSliceStatus() { + @SuppressWarnings("deprecation") + context.ContextOuterClass.SliceStatusEnum result = context.ContextOuterClass.SliceStatusEnum.valueOf(sliceStatus_); + return result == null ? context.ContextOuterClass.SliceStatusEnum.UNRECOGNIZED : result; } /** - * <code>.context.Timestamp timestamp = 10;</code> + * <code>.context.SliceStatusEnum slice_status = 1;</code> + * @param value The sliceStatus to set. + * @return This builder for chaining. */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> - getTimestampFieldBuilder() { - if (timestampBuilder_ == null) { - timestampBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder>( - getTimestamp(), - getParentForChildren(), - isClean()); - timestamp_ = null; + public Builder setSliceStatus(context.ContextOuterClass.SliceStatusEnum value) { + if (value == null) { + throw new NullPointerException(); } - return timestampBuilder_; + + sliceStatus_ = value.getNumber(); + onChanged(); + return this; + } + /** + * <code>.context.SliceStatusEnum slice_status = 1;</code> + * @return This builder for chaining. + */ + public Builder clearSliceStatus() { + + sliceStatus_ = 0; + onChanged(); + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -36650,98 +40016,95 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.Slice) + // @@protoc_insertion_point(builder_scope:context.SliceStatus) } - // @@protoc_insertion_point(class_scope:context.Slice) - private static final context.ContextOuterClass.Slice DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.SliceStatus) + private static final context.ContextOuterClass.SliceStatus DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Slice(); + DEFAULT_INSTANCE = new context.ContextOuterClass.SliceStatus(); } - public static context.ContextOuterClass.Slice getDefaultInstance() { + public static context.ContextOuterClass.SliceStatus getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<Slice> - PARSER = new com.google.protobuf.AbstractParser<Slice>() { + private static final com.google.protobuf.Parser<SliceStatus> + PARSER = new com.google.protobuf.AbstractParser<SliceStatus>() { @java.lang.Override - public Slice parsePartialFrom( + public SliceStatus parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new Slice(input, extensionRegistry); + return new SliceStatus(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<Slice> parser() { + public static com.google.protobuf.Parser<SliceStatus> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<Slice> getParserForType() { + public com.google.protobuf.Parser<SliceStatus> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.Slice getDefaultInstanceForType() { + public context.ContextOuterClass.SliceStatus getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface SliceOwnerOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.SliceOwner) + public interface SliceConfigOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.SliceConfig) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.Uuid owner_uuid = 1;</code> - * @return Whether the ownerUuid field is set. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - boolean hasOwnerUuid(); + java.util.List<context.ContextOuterClass.ConfigRule> + getConfigRulesList(); /** - * <code>.context.Uuid owner_uuid = 1;</code> - * @return The ownerUuid. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - context.ContextOuterClass.Uuid getOwnerUuid(); + context.ContextOuterClass.ConfigRule getConfigRules(int index); /** - * <code>.context.Uuid owner_uuid = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - context.ContextOuterClass.UuidOrBuilder getOwnerUuidOrBuilder(); - + int getConfigRulesCount(); /** - * <code>string owner_string = 2;</code> - * @return The ownerString. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - java.lang.String getOwnerString(); + java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> + getConfigRulesOrBuilderList(); /** - * <code>string owner_string = 2;</code> - * @return The bytes for ownerString. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - com.google.protobuf.ByteString - getOwnerStringBytes(); + context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( + int index); } /** - * Protobuf type {@code context.SliceOwner} + * Protobuf type {@code context.SliceConfig} */ - public static final class SliceOwner extends + public static final class SliceConfig extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.SliceOwner) - SliceOwnerOrBuilder { + // @@protoc_insertion_point(message_implements:context.SliceConfig) + SliceConfigOrBuilder { private static final long serialVersionUID = 0L; - // Use SliceOwner.newBuilder() to construct. - private SliceOwner(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use SliceConfig.newBuilder() to construct. + private SliceConfig(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private SliceOwner() { - ownerString_ = ""; + private SliceConfig() { + configRules_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new SliceOwner(); + return new SliceConfig(); } @java.lang.Override @@ -36749,7 +40112,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private SliceOwner( + private SliceConfig( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -36757,6 +40120,7 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } + int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -36768,22 +40132,12 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.Uuid.Builder subBuilder = null; - if (ownerUuid_ != null) { - subBuilder = ownerUuid_.toBuilder(); - } - ownerUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(ownerUuid_); - ownerUuid_ = subBuilder.buildPartial(); + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + configRules_ = new java.util.ArrayList<context.ContextOuterClass.ConfigRule>(); + mutable_bitField0_ |= 0x00000001; } - - break; - } - case 18: { - java.lang.String s = input.readStringRequireUtf8(); - - ownerString_ = s; + configRules_.add( + input.readMessage(context.ContextOuterClass.ConfigRule.parser(), extensionRegistry)); break; } default: { @@ -36801,85 +40155,64 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { + if (((mutable_bitField0_ & 0x00000001) != 0)) { + configRules_ = java.util.Collections.unmodifiableList(configRules_); + } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceOwner_descriptor; + return context.ContextOuterClass.internal_static_context_SliceConfig_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceOwner_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_SliceConfig_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceOwner.class, context.ContextOuterClass.SliceOwner.Builder.class); + context.ContextOuterClass.SliceConfig.class, context.ContextOuterClass.SliceConfig.Builder.class); } - public static final int OWNER_UUID_FIELD_NUMBER = 1; - private context.ContextOuterClass.Uuid ownerUuid_; + public static final int CONFIG_RULES_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.ConfigRule> configRules_; /** - * <code>.context.Uuid owner_uuid = 1;</code> - * @return Whether the ownerUuid field is set. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ @java.lang.Override - public boolean hasOwnerUuid() { - return ownerUuid_ != null; + public java.util.List<context.ContextOuterClass.ConfigRule> getConfigRulesList() { + return configRules_; } /** - * <code>.context.Uuid owner_uuid = 1;</code> - * @return The ownerUuid. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.Uuid getOwnerUuid() { - return ownerUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : ownerUuid_; + public java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> + getConfigRulesOrBuilderList() { + return configRules_; } /** - * <code>.context.Uuid owner_uuid = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.UuidOrBuilder getOwnerUuidOrBuilder() { - return getOwnerUuid(); + public int getConfigRulesCount() { + return configRules_.size(); } - - public static final int OWNER_STRING_FIELD_NUMBER = 2; - private volatile java.lang.Object ownerString_; /** - * <code>string owner_string = 2;</code> - * @return The ownerString. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ @java.lang.Override - public java.lang.String getOwnerString() { - java.lang.Object ref = ownerString_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - ownerString_ = s; - return s; - } + public context.ContextOuterClass.ConfigRule getConfigRules(int index) { + return configRules_.get(index); } /** - * <code>string owner_string = 2;</code> - * @return The bytes for ownerString. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ @java.lang.Override - public com.google.protobuf.ByteString - getOwnerStringBytes() { - java.lang.Object ref = ownerString_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - ownerString_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( + int index) { + return configRules_.get(index); } private byte memoizedIsInitialized = -1; @@ -36896,11 +40229,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (ownerUuid_ != null) { - output.writeMessage(1, getOwnerUuid()); - } - if (!getOwnerStringBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, ownerString_); + for (int i = 0; i < configRules_.size(); i++) { + output.writeMessage(1, configRules_.get(i)); } unknownFields.writeTo(output); } @@ -36911,12 +40241,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (ownerUuid_ != null) { + for (int i = 0; i < configRules_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getOwnerUuid()); - } - if (!getOwnerStringBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, ownerString_); + .computeMessageSize(1, configRules_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -36928,18 +40255,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.SliceOwner)) { + if (!(obj instanceof context.ContextOuterClass.SliceConfig)) { return super.equals(obj); } - context.ContextOuterClass.SliceOwner other = (context.ContextOuterClass.SliceOwner) obj; + context.ContextOuterClass.SliceConfig other = (context.ContextOuterClass.SliceConfig) obj; - if (hasOwnerUuid() != other.hasOwnerUuid()) return false; - if (hasOwnerUuid()) { - if (!getOwnerUuid() - .equals(other.getOwnerUuid())) return false; - } - if (!getOwnerString() - .equals(other.getOwnerString())) return false; + if (!getConfigRulesList() + .equals(other.getConfigRulesList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -36951,80 +40273,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasOwnerUuid()) { - hash = (37 * hash) + OWNER_UUID_FIELD_NUMBER; - hash = (53 * hash) + getOwnerUuid().hashCode(); + if (getConfigRulesCount() > 0) { + hash = (37 * hash) + CONFIG_RULES_FIELD_NUMBER; + hash = (53 * hash) + getConfigRulesList().hashCode(); } - hash = (37 * hash) + OWNER_STRING_FIELD_NUMBER; - hash = (53 * hash) + getOwnerString().hashCode(); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.SliceOwner parseFrom( + public static context.ContextOuterClass.SliceConfig parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceOwner parseFrom( + public static context.ContextOuterClass.SliceConfig parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceOwner parseFrom( + public static context.ContextOuterClass.SliceConfig parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceOwner parseFrom( + public static context.ContextOuterClass.SliceConfig parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceOwner parseFrom(byte[] data) + public static context.ContextOuterClass.SliceConfig parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceOwner parseFrom( + public static context.ContextOuterClass.SliceConfig parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceOwner parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.SliceConfig parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceOwner parseFrom( + public static context.ContextOuterClass.SliceConfig 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 context.ContextOuterClass.SliceOwner parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.SliceConfig parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceOwner parseDelimitedFrom( + public static context.ContextOuterClass.SliceConfig 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 context.ContextOuterClass.SliceOwner parseFrom( + public static context.ContextOuterClass.SliceConfig parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceOwner parseFrom( + public static context.ContextOuterClass.SliceConfig parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -37037,7 +40357,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.SliceOwner prototype) { + public static Builder newBuilder(context.ContextOuterClass.SliceConfig prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -37053,26 +40373,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.SliceOwner} + * Protobuf type {@code context.SliceConfig} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.SliceOwner) - context.ContextOuterClass.SliceOwnerOrBuilder { + // @@protoc_insertion_point(builder_implements:context.SliceConfig) + context.ContextOuterClass.SliceConfigOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceOwner_descriptor; + return context.ContextOuterClass.internal_static_context_SliceConfig_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceOwner_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_SliceConfig_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceOwner.class, context.ContextOuterClass.SliceOwner.Builder.class); + context.ContextOuterClass.SliceConfig.class, context.ContextOuterClass.SliceConfig.Builder.class); } - // Construct using context.ContextOuterClass.SliceOwner.newBuilder() + // Construct using context.ContextOuterClass.SliceConfig.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -37085,36 +40405,35 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { + getConfigRulesFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (ownerUuidBuilder_ == null) { - ownerUuid_ = null; + if (configRulesBuilder_ == null) { + configRules_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); } else { - ownerUuid_ = null; - ownerUuidBuilder_ = null; + configRulesBuilder_.clear(); } - ownerString_ = ""; - return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_SliceOwner_descriptor; + return context.ContextOuterClass.internal_static_context_SliceConfig_descriptor; } @java.lang.Override - public context.ContextOuterClass.SliceOwner getDefaultInstanceForType() { - return context.ContextOuterClass.SliceOwner.getDefaultInstance(); + public context.ContextOuterClass.SliceConfig getDefaultInstanceForType() { + return context.ContextOuterClass.SliceConfig.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.SliceOwner build() { - context.ContextOuterClass.SliceOwner result = buildPartial(); + public context.ContextOuterClass.SliceConfig build() { + context.ContextOuterClass.SliceConfig result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -37122,14 +40441,18 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.SliceOwner buildPartial() { - context.ContextOuterClass.SliceOwner result = new context.ContextOuterClass.SliceOwner(this); - if (ownerUuidBuilder_ == null) { - result.ownerUuid_ = ownerUuid_; + public context.ContextOuterClass.SliceConfig buildPartial() { + context.ContextOuterClass.SliceConfig result = new context.ContextOuterClass.SliceConfig(this); + int from_bitField0_ = bitField0_; + if (configRulesBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + configRules_ = java.util.Collections.unmodifiableList(configRules_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.configRules_ = configRules_; } else { - result.ownerUuid_ = ownerUuidBuilder_.build(); + result.configRules_ = configRulesBuilder_.build(); } - result.ownerString_ = ownerString_; onBuilt(); return result; } @@ -37168,22 +40491,41 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.SliceOwner) { - return mergeFrom((context.ContextOuterClass.SliceOwner)other); + if (other instanceof context.ContextOuterClass.SliceConfig) { + return mergeFrom((context.ContextOuterClass.SliceConfig)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.SliceOwner other) { - if (other == context.ContextOuterClass.SliceOwner.getDefaultInstance()) return this; - if (other.hasOwnerUuid()) { - mergeOwnerUuid(other.getOwnerUuid()); - } - if (!other.getOwnerString().isEmpty()) { - ownerString_ = other.ownerString_; - onChanged(); + public Builder mergeFrom(context.ContextOuterClass.SliceConfig other) { + if (other == context.ContextOuterClass.SliceConfig.getDefaultInstance()) return this; + if (configRulesBuilder_ == null) { + if (!other.configRules_.isEmpty()) { + if (configRules_.isEmpty()) { + configRules_ = other.configRules_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureConfigRulesIsMutable(); + configRules_.addAll(other.configRules_); + } + onChanged(); + } + } else { + if (!other.configRules_.isEmpty()) { + if (configRulesBuilder_.isEmpty()) { + configRulesBuilder_.dispose(); + configRulesBuilder_ = null; + configRules_ = other.configRules_; + bitField0_ = (bitField0_ & ~0x00000001); + configRulesBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getConfigRulesFieldBuilder() : null; + } else { + configRulesBuilder_.addAllMessages(other.configRules_); + } + } } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -37200,11 +40542,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.SliceOwner parsedMessage = null; + context.ContextOuterClass.SliceConfig parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.SliceOwner) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.SliceConfig) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -37213,200 +40555,246 @@ public final class ContextOuterClass { } return this; } + private int bitField0_; + + private java.util.List<context.ContextOuterClass.ConfigRule> configRules_ = + java.util.Collections.emptyList(); + private void ensureConfigRulesIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + configRules_ = new java.util.ArrayList<context.ContextOuterClass.ConfigRule>(configRules_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder> configRulesBuilder_; - private context.ContextOuterClass.Uuid ownerUuid_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> ownerUuidBuilder_; /** - * <code>.context.Uuid owner_uuid = 1;</code> - * @return Whether the ownerUuid field is set. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public boolean hasOwnerUuid() { - return ownerUuidBuilder_ != null || ownerUuid_ != null; + public java.util.List<context.ContextOuterClass.ConfigRule> getConfigRulesList() { + if (configRulesBuilder_ == null) { + return java.util.Collections.unmodifiableList(configRules_); + } else { + return configRulesBuilder_.getMessageList(); + } } /** - * <code>.context.Uuid owner_uuid = 1;</code> - * @return The ownerUuid. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public context.ContextOuterClass.Uuid getOwnerUuid() { - if (ownerUuidBuilder_ == null) { - return ownerUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : ownerUuid_; + public int getConfigRulesCount() { + if (configRulesBuilder_ == null) { + return configRules_.size(); } else { - return ownerUuidBuilder_.getMessage(); + return configRulesBuilder_.getCount(); } } /** - * <code>.context.Uuid owner_uuid = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public Builder setOwnerUuid(context.ContextOuterClass.Uuid value) { - if (ownerUuidBuilder_ == null) { + public context.ContextOuterClass.ConfigRule getConfigRules(int index) { + if (configRulesBuilder_ == null) { + return configRules_.get(index); + } else { + return configRulesBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public Builder setConfigRules( + int index, context.ContextOuterClass.ConfigRule value) { + if (configRulesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ownerUuid_ = value; + ensureConfigRulesIsMutable(); + configRules_.set(index, value); onChanged(); } else { - ownerUuidBuilder_.setMessage(value); + configRulesBuilder_.setMessage(index, value); } - return this; } /** - * <code>.context.Uuid owner_uuid = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public Builder setOwnerUuid( - context.ContextOuterClass.Uuid.Builder builderForValue) { - if (ownerUuidBuilder_ == null) { - ownerUuid_ = builderForValue.build(); + public Builder setConfigRules( + int index, context.ContextOuterClass.ConfigRule.Builder builderForValue) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + configRules_.set(index, builderForValue.build()); onChanged(); } else { - ownerUuidBuilder_.setMessage(builderForValue.build()); + configRulesBuilder_.setMessage(index, builderForValue.build()); } - return this; } /** - * <code>.context.Uuid owner_uuid = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public Builder mergeOwnerUuid(context.ContextOuterClass.Uuid value) { - if (ownerUuidBuilder_ == null) { - if (ownerUuid_ != null) { - ownerUuid_ = - context.ContextOuterClass.Uuid.newBuilder(ownerUuid_).mergeFrom(value).buildPartial(); - } else { - ownerUuid_ = value; + public Builder addConfigRules(context.ContextOuterClass.ConfigRule value) { + if (configRulesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + ensureConfigRulesIsMutable(); + configRules_.add(value); onChanged(); } else { - ownerUuidBuilder_.mergeFrom(value); + configRulesBuilder_.addMessage(value); } - return this; } /** - * <code>.context.Uuid owner_uuid = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public Builder clearOwnerUuid() { - if (ownerUuidBuilder_ == null) { - ownerUuid_ = null; + public Builder addConfigRules( + int index, context.ContextOuterClass.ConfigRule value) { + if (configRulesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConfigRulesIsMutable(); + configRules_.add(index, value); onChanged(); } else { - ownerUuid_ = null; - ownerUuidBuilder_ = null; + configRulesBuilder_.addMessage(index, value); } - return this; } /** - * <code>.context.Uuid owner_uuid = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public context.ContextOuterClass.Uuid.Builder getOwnerUuidBuilder() { - - onChanged(); - return getOwnerUuidFieldBuilder().getBuilder(); + public Builder addConfigRules( + context.ContextOuterClass.ConfigRule.Builder builderForValue) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + configRules_.add(builderForValue.build()); + onChanged(); + } else { + configRulesBuilder_.addMessage(builderForValue.build()); + } + return this; } /** - * <code>.context.Uuid owner_uuid = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public context.ContextOuterClass.UuidOrBuilder getOwnerUuidOrBuilder() { - if (ownerUuidBuilder_ != null) { - return ownerUuidBuilder_.getMessageOrBuilder(); + public Builder addConfigRules( + int index, context.ContextOuterClass.ConfigRule.Builder builderForValue) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + configRules_.add(index, builderForValue.build()); + onChanged(); } else { - return ownerUuid_ == null ? - context.ContextOuterClass.Uuid.getDefaultInstance() : ownerUuid_; + configRulesBuilder_.addMessage(index, builderForValue.build()); } + return this; } /** - * <code>.context.Uuid owner_uuid = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> - getOwnerUuidFieldBuilder() { - if (ownerUuidBuilder_ == null) { - ownerUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>( - getOwnerUuid(), - getParentForChildren(), - isClean()); - ownerUuid_ = null; + public Builder addAllConfigRules( + java.lang.Iterable<? extends context.ContextOuterClass.ConfigRule> values) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, configRules_); + onChanged(); + } else { + configRulesBuilder_.addAllMessages(values); } - return ownerUuidBuilder_; + return this; } - - private java.lang.Object ownerString_ = ""; /** - * <code>string owner_string = 2;</code> - * @return The ownerString. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public java.lang.String getOwnerString() { - java.lang.Object ref = ownerString_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - ownerString_ = s; - return s; + public Builder clearConfigRules() { + if (configRulesBuilder_ == null) { + configRules_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); } else { - return (java.lang.String) ref; + configRulesBuilder_.clear(); } + return this; } /** - * <code>string owner_string = 2;</code> - * @return The bytes for ownerString. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public com.google.protobuf.ByteString - getOwnerStringBytes() { - java.lang.Object ref = ownerString_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - ownerString_ = b; - return b; + public Builder removeConfigRules(int index) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + configRules_.remove(index); + onChanged(); } else { - return (com.google.protobuf.ByteString) ref; + configRulesBuilder_.remove(index); } + return this; } /** - * <code>string owner_string = 2;</code> - * @param value The ownerString to set. - * @return This builder for chaining. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public Builder setOwnerString( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - ownerString_ = value; - onChanged(); - return this; + public context.ContextOuterClass.ConfigRule.Builder getConfigRulesBuilder( + int index) { + return getConfigRulesFieldBuilder().getBuilder(index); } /** - * <code>string owner_string = 2;</code> - * @return This builder for chaining. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public Builder clearOwnerString() { - - ownerString_ = getDefaultInstance().getOwnerString(); - onChanged(); - return this; + public context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( + int index) { + if (configRulesBuilder_ == null) { + return configRules_.get(index); } else { + return configRulesBuilder_.getMessageOrBuilder(index); + } } /** - * <code>string owner_string = 2;</code> - * @param value The bytes for ownerString to set. - * @return This builder for chaining. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public Builder setOwnerStringBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - ownerString_ = value; - onChanged(); - return this; + public java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> + getConfigRulesOrBuilderList() { + if (configRulesBuilder_ != null) { + return configRulesBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(configRules_); + } + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public context.ContextOuterClass.ConfigRule.Builder addConfigRulesBuilder() { + return getConfigRulesFieldBuilder().addBuilder( + context.ContextOuterClass.ConfigRule.getDefaultInstance()); + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public context.ContextOuterClass.ConfigRule.Builder addConfigRulesBuilder( + int index) { + return getConfigRulesFieldBuilder().addBuilder( + index, context.ContextOuterClass.ConfigRule.getDefaultInstance()); + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public java.util.List<context.ContextOuterClass.ConfigRule.Builder> + getConfigRulesBuilderList() { + return getConfigRulesFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder> + getConfigRulesFieldBuilder() { + if (configRulesBuilder_ == null) { + configRulesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder>( + configRules_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + configRules_ = null; + } + return configRulesBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -37421,82 +40809,95 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.SliceOwner) + // @@protoc_insertion_point(builder_scope:context.SliceConfig) } - // @@protoc_insertion_point(class_scope:context.SliceOwner) - private static final context.ContextOuterClass.SliceOwner DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.SliceConfig) + private static final context.ContextOuterClass.SliceConfig DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.SliceOwner(); + DEFAULT_INSTANCE = new context.ContextOuterClass.SliceConfig(); } - public static context.ContextOuterClass.SliceOwner getDefaultInstance() { + public static context.ContextOuterClass.SliceConfig getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<SliceOwner> - PARSER = new com.google.protobuf.AbstractParser<SliceOwner>() { + private static final com.google.protobuf.Parser<SliceConfig> + PARSER = new com.google.protobuf.AbstractParser<SliceConfig>() { @java.lang.Override - public SliceOwner parsePartialFrom( + public SliceConfig parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new SliceOwner(input, extensionRegistry); + return new SliceConfig(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<SliceOwner> parser() { + public static com.google.protobuf.Parser<SliceConfig> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<SliceOwner> getParserForType() { + public com.google.protobuf.Parser<SliceConfig> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.SliceOwner getDefaultInstanceForType() { + public context.ContextOuterClass.SliceConfig getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface SliceStatusOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.SliceStatus) + public interface SliceIdListOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.SliceIdList) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.SliceStatusEnum slice_status = 1;</code> - * @return The enum numeric value on the wire for sliceStatus. + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - int getSliceStatusValue(); + java.util.List<context.ContextOuterClass.SliceId> + getSliceIdsList(); /** - * <code>.context.SliceStatusEnum slice_status = 1;</code> - * @return The sliceStatus. + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - context.ContextOuterClass.SliceStatusEnum getSliceStatus(); + context.ContextOuterClass.SliceId getSliceIds(int index); + /** + * <code>repeated .context.SliceId slice_ids = 1;</code> + */ + int getSliceIdsCount(); + /** + * <code>repeated .context.SliceId slice_ids = 1;</code> + */ + java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> + getSliceIdsOrBuilderList(); + /** + * <code>repeated .context.SliceId slice_ids = 1;</code> + */ + context.ContextOuterClass.SliceIdOrBuilder getSliceIdsOrBuilder( + int index); } /** - * Protobuf type {@code context.SliceStatus} + * Protobuf type {@code context.SliceIdList} */ - public static final class SliceStatus extends + public static final class SliceIdList extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.SliceStatus) - SliceStatusOrBuilder { - private static final long serialVersionUID = 0L; - // Use SliceStatus.newBuilder() to construct. - private SliceStatus(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // @@protoc_insertion_point(message_implements:context.SliceIdList) + SliceIdListOrBuilder { + private static final long serialVersionUID = 0L; + // Use SliceIdList.newBuilder() to construct. + private SliceIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private SliceStatus() { - sliceStatus_ = 0; + private SliceIdList() { + sliceIds_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new SliceStatus(); + return new SliceIdList(); } @java.lang.Override @@ -37504,7 +40905,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private SliceStatus( + private SliceIdList( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -37512,6 +40913,7 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } + int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -37522,10 +40924,13 @@ public final class ContextOuterClass { case 0: done = true; break; - case 8: { - int rawValue = input.readEnum(); - - sliceStatus_ = rawValue; + case 10: { + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + sliceIds_ = new java.util.ArrayList<context.ContextOuterClass.SliceId>(); + mutable_bitField0_ |= 0x00000001; + } + sliceIds_.add( + input.readMessage(context.ContextOuterClass.SliceId.parser(), extensionRegistry)); break; } default: { @@ -37543,40 +40948,64 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { + if (((mutable_bitField0_ & 0x00000001) != 0)) { + sliceIds_ = java.util.Collections.unmodifiableList(sliceIds_); + } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceStatus_descriptor; + return context.ContextOuterClass.internal_static_context_SliceIdList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceStatus_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_SliceIdList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceStatus.class, context.ContextOuterClass.SliceStatus.Builder.class); + context.ContextOuterClass.SliceIdList.class, context.ContextOuterClass.SliceIdList.Builder.class); } - public static final int SLICE_STATUS_FIELD_NUMBER = 1; - private int sliceStatus_; + public static final int SLICE_IDS_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.SliceId> sliceIds_; /** - * <code>.context.SliceStatusEnum slice_status = 1;</code> - * @return The enum numeric value on the wire for sliceStatus. + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - @java.lang.Override public int getSliceStatusValue() { - return sliceStatus_; + @java.lang.Override + public java.util.List<context.ContextOuterClass.SliceId> getSliceIdsList() { + return sliceIds_; } /** - * <code>.context.SliceStatusEnum slice_status = 1;</code> - * @return The sliceStatus. + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - @java.lang.Override public context.ContextOuterClass.SliceStatusEnum getSliceStatus() { - @SuppressWarnings("deprecation") - context.ContextOuterClass.SliceStatusEnum result = context.ContextOuterClass.SliceStatusEnum.valueOf(sliceStatus_); - return result == null ? context.ContextOuterClass.SliceStatusEnum.UNRECOGNIZED : result; + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> + getSliceIdsOrBuilderList() { + return sliceIds_; + } + /** + * <code>repeated .context.SliceId slice_ids = 1;</code> + */ + @java.lang.Override + public int getSliceIdsCount() { + return sliceIds_.size(); + } + /** + * <code>repeated .context.SliceId slice_ids = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.SliceId getSliceIds(int index) { + return sliceIds_.get(index); + } + /** + * <code>repeated .context.SliceId slice_ids = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.SliceIdOrBuilder getSliceIdsOrBuilder( + int index) { + return sliceIds_.get(index); } private byte memoizedIsInitialized = -1; @@ -37593,8 +41022,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (sliceStatus_ != context.ContextOuterClass.SliceStatusEnum.SLICESTATUS_UNDEFINED.getNumber()) { - output.writeEnum(1, sliceStatus_); + for (int i = 0; i < sliceIds_.size(); i++) { + output.writeMessage(1, sliceIds_.get(i)); } unknownFields.writeTo(output); } @@ -37605,9 +41034,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (sliceStatus_ != context.ContextOuterClass.SliceStatusEnum.SLICESTATUS_UNDEFINED.getNumber()) { + for (int i = 0; i < sliceIds_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeEnumSize(1, sliceStatus_); + .computeMessageSize(1, sliceIds_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -37619,12 +41048,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.SliceStatus)) { + if (!(obj instanceof context.ContextOuterClass.SliceIdList)) { return super.equals(obj); } - context.ContextOuterClass.SliceStatus other = (context.ContextOuterClass.SliceStatus) obj; + context.ContextOuterClass.SliceIdList other = (context.ContextOuterClass.SliceIdList) obj; - if (sliceStatus_ != other.sliceStatus_) return false; + if (!getSliceIdsList() + .equals(other.getSliceIdsList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -37636,76 +41066,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + SLICE_STATUS_FIELD_NUMBER; - hash = (53 * hash) + sliceStatus_; + if (getSliceIdsCount() > 0) { + hash = (37 * hash) + SLICE_IDS_FIELD_NUMBER; + hash = (53 * hash) + getSliceIdsList().hashCode(); + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.SliceStatus parseFrom( + public static context.ContextOuterClass.SliceIdList parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceStatus parseFrom( + public static context.ContextOuterClass.SliceIdList parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceStatus parseFrom( + public static context.ContextOuterClass.SliceIdList parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceStatus parseFrom( + public static context.ContextOuterClass.SliceIdList parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceStatus parseFrom(byte[] data) + public static context.ContextOuterClass.SliceIdList parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceStatus parseFrom( + public static context.ContextOuterClass.SliceIdList parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceStatus parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.SliceIdList parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceStatus parseFrom( + public static context.ContextOuterClass.SliceIdList 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 context.ContextOuterClass.SliceStatus parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.SliceIdList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceStatus parseDelimitedFrom( + public static context.ContextOuterClass.SliceIdList 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 context.ContextOuterClass.SliceStatus parseFrom( + public static context.ContextOuterClass.SliceIdList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceStatus parseFrom( + public static context.ContextOuterClass.SliceIdList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -37718,7 +41150,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.SliceStatus prototype) { + public static Builder newBuilder(context.ContextOuterClass.SliceIdList prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -37734,26 +41166,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.SliceStatus} + * Protobuf type {@code context.SliceIdList} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.SliceStatus) - context.ContextOuterClass.SliceStatusOrBuilder { + // @@protoc_insertion_point(builder_implements:context.SliceIdList) + context.ContextOuterClass.SliceIdListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceStatus_descriptor; + return context.ContextOuterClass.internal_static_context_SliceIdList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceStatus_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_SliceIdList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceStatus.class, context.ContextOuterClass.SliceStatus.Builder.class); + context.ContextOuterClass.SliceIdList.class, context.ContextOuterClass.SliceIdList.Builder.class); } - // Construct using context.ContextOuterClass.SliceStatus.newBuilder() + // Construct using context.ContextOuterClass.SliceIdList.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -37766,30 +41198,35 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { + getSliceIdsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - sliceStatus_ = 0; - + if (sliceIdsBuilder_ == null) { + sliceIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + } else { + sliceIdsBuilder_.clear(); + } return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_SliceStatus_descriptor; + return context.ContextOuterClass.internal_static_context_SliceIdList_descriptor; } @java.lang.Override - public context.ContextOuterClass.SliceStatus getDefaultInstanceForType() { - return context.ContextOuterClass.SliceStatus.getDefaultInstance(); + public context.ContextOuterClass.SliceIdList getDefaultInstanceForType() { + return context.ContextOuterClass.SliceIdList.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.SliceStatus build() { - context.ContextOuterClass.SliceStatus result = buildPartial(); + public context.ContextOuterClass.SliceIdList build() { + context.ContextOuterClass.SliceIdList result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -37797,9 +41234,18 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.SliceStatus buildPartial() { - context.ContextOuterClass.SliceStatus result = new context.ContextOuterClass.SliceStatus(this); - result.sliceStatus_ = sliceStatus_; + public context.ContextOuterClass.SliceIdList buildPartial() { + context.ContextOuterClass.SliceIdList result = new context.ContextOuterClass.SliceIdList(this); + int from_bitField0_ = bitField0_; + if (sliceIdsBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + sliceIds_ = java.util.Collections.unmodifiableList(sliceIds_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.sliceIds_ = sliceIds_; + } else { + result.sliceIds_ = sliceIdsBuilder_.build(); + } onBuilt(); return result; } @@ -37838,18 +41284,41 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.SliceStatus) { - return mergeFrom((context.ContextOuterClass.SliceStatus)other); + if (other instanceof context.ContextOuterClass.SliceIdList) { + return mergeFrom((context.ContextOuterClass.SliceIdList)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.SliceStatus other) { - if (other == context.ContextOuterClass.SliceStatus.getDefaultInstance()) return this; - if (other.sliceStatus_ != 0) { - setSliceStatusValue(other.getSliceStatusValue()); + public Builder mergeFrom(context.ContextOuterClass.SliceIdList other) { + if (other == context.ContextOuterClass.SliceIdList.getDefaultInstance()) return this; + if (sliceIdsBuilder_ == null) { + if (!other.sliceIds_.isEmpty()) { + if (sliceIds_.isEmpty()) { + sliceIds_ = other.sliceIds_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureSliceIdsIsMutable(); + sliceIds_.addAll(other.sliceIds_); + } + onChanged(); + } + } else { + if (!other.sliceIds_.isEmpty()) { + if (sliceIdsBuilder_.isEmpty()) { + sliceIdsBuilder_.dispose(); + sliceIdsBuilder_ = null; + sliceIds_ = other.sliceIds_; + bitField0_ = (bitField0_ & ~0x00000001); + sliceIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getSliceIdsFieldBuilder() : null; + } else { + sliceIdsBuilder_.addAllMessages(other.sliceIds_); + } + } } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -37866,11 +41335,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.SliceStatus parsedMessage = null; + context.ContextOuterClass.SliceIdList parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.SliceStatus) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.SliceIdList) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -37879,60 +41348,247 @@ public final class ContextOuterClass { } return this; } + private int bitField0_; + + private java.util.List<context.ContextOuterClass.SliceId> sliceIds_ = + java.util.Collections.emptyList(); + private void ensureSliceIdsIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + sliceIds_ = new java.util.ArrayList<context.ContextOuterClass.SliceId>(sliceIds_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> sliceIdsBuilder_; - private int sliceStatus_ = 0; /** - * <code>.context.SliceStatusEnum slice_status = 1;</code> - * @return The enum numeric value on the wire for sliceStatus. + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - @java.lang.Override public int getSliceStatusValue() { - return sliceStatus_; + public java.util.List<context.ContextOuterClass.SliceId> getSliceIdsList() { + if (sliceIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(sliceIds_); + } else { + return sliceIdsBuilder_.getMessageList(); + } } /** - * <code>.context.SliceStatusEnum slice_status = 1;</code> - * @param value The enum numeric value on the wire for sliceStatus to set. - * @return This builder for chaining. + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - public Builder setSliceStatusValue(int value) { - - sliceStatus_ = value; - onChanged(); + public int getSliceIdsCount() { + if (sliceIdsBuilder_ == null) { + return sliceIds_.size(); + } else { + return sliceIdsBuilder_.getCount(); + } + } + /** + * <code>repeated .context.SliceId slice_ids = 1;</code> + */ + public context.ContextOuterClass.SliceId getSliceIds(int index) { + if (sliceIdsBuilder_ == null) { + return sliceIds_.get(index); + } else { + return sliceIdsBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.SliceId slice_ids = 1;</code> + */ + public Builder setSliceIds( + int index, context.ContextOuterClass.SliceId value) { + if (sliceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSliceIdsIsMutable(); + sliceIds_.set(index, value); + onChanged(); + } else { + sliceIdsBuilder_.setMessage(index, value); + } return this; } /** - * <code>.context.SliceStatusEnum slice_status = 1;</code> - * @return The sliceStatus. + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - @java.lang.Override - public context.ContextOuterClass.SliceStatusEnum getSliceStatus() { - @SuppressWarnings("deprecation") - context.ContextOuterClass.SliceStatusEnum result = context.ContextOuterClass.SliceStatusEnum.valueOf(sliceStatus_); - return result == null ? context.ContextOuterClass.SliceStatusEnum.UNRECOGNIZED : result; + public Builder setSliceIds( + int index, context.ContextOuterClass.SliceId.Builder builderForValue) { + if (sliceIdsBuilder_ == null) { + ensureSliceIdsIsMutable(); + sliceIds_.set(index, builderForValue.build()); + onChanged(); + } else { + sliceIdsBuilder_.setMessage(index, builderForValue.build()); + } + return this; } /** - * <code>.context.SliceStatusEnum slice_status = 1;</code> - * @param value The sliceStatus to set. - * @return This builder for chaining. + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - public Builder setSliceStatus(context.ContextOuterClass.SliceStatusEnum value) { - if (value == null) { - throw new NullPointerException(); + public Builder addSliceIds(context.ContextOuterClass.SliceId value) { + if (sliceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSliceIdsIsMutable(); + sliceIds_.add(value); + onChanged(); + } else { + sliceIdsBuilder_.addMessage(value); } - - sliceStatus_ = value.getNumber(); - onChanged(); return this; } /** - * <code>.context.SliceStatusEnum slice_status = 1;</code> - * @return This builder for chaining. + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - public Builder clearSliceStatus() { - - sliceStatus_ = 0; - onChanged(); + public Builder addSliceIds( + int index, context.ContextOuterClass.SliceId value) { + if (sliceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSliceIdsIsMutable(); + sliceIds_.add(index, value); + onChanged(); + } else { + sliceIdsBuilder_.addMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.SliceId slice_ids = 1;</code> + */ + public Builder addSliceIds( + context.ContextOuterClass.SliceId.Builder builderForValue) { + if (sliceIdsBuilder_ == null) { + ensureSliceIdsIsMutable(); + sliceIds_.add(builderForValue.build()); + onChanged(); + } else { + sliceIdsBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.SliceId slice_ids = 1;</code> + */ + public Builder addSliceIds( + int index, context.ContextOuterClass.SliceId.Builder builderForValue) { + if (sliceIdsBuilder_ == null) { + ensureSliceIdsIsMutable(); + sliceIds_.add(index, builderForValue.build()); + onChanged(); + } else { + sliceIdsBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.SliceId slice_ids = 1;</code> + */ + public Builder addAllSliceIds( + java.lang.Iterable<? extends context.ContextOuterClass.SliceId> values) { + if (sliceIdsBuilder_ == null) { + ensureSliceIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, sliceIds_); + onChanged(); + } else { + sliceIdsBuilder_.addAllMessages(values); + } + return this; + } + /** + * <code>repeated .context.SliceId slice_ids = 1;</code> + */ + public Builder clearSliceIds() { + if (sliceIdsBuilder_ == null) { + sliceIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + sliceIdsBuilder_.clear(); + } + return this; + } + /** + * <code>repeated .context.SliceId slice_ids = 1;</code> + */ + public Builder removeSliceIds(int index) { + if (sliceIdsBuilder_ == null) { + ensureSliceIdsIsMutable(); + sliceIds_.remove(index); + onChanged(); + } else { + sliceIdsBuilder_.remove(index); + } return this; } + /** + * <code>repeated .context.SliceId slice_ids = 1;</code> + */ + public context.ContextOuterClass.SliceId.Builder getSliceIdsBuilder( + int index) { + return getSliceIdsFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .context.SliceId slice_ids = 1;</code> + */ + public context.ContextOuterClass.SliceIdOrBuilder getSliceIdsOrBuilder( + int index) { + if (sliceIdsBuilder_ == null) { + return sliceIds_.get(index); } else { + return sliceIdsBuilder_.getMessageOrBuilder(index); + } + } + /** + * <code>repeated .context.SliceId slice_ids = 1;</code> + */ + public java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> + getSliceIdsOrBuilderList() { + if (sliceIdsBuilder_ != null) { + return sliceIdsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(sliceIds_); + } + } + /** + * <code>repeated .context.SliceId slice_ids = 1;</code> + */ + public context.ContextOuterClass.SliceId.Builder addSliceIdsBuilder() { + return getSliceIdsFieldBuilder().addBuilder( + context.ContextOuterClass.SliceId.getDefaultInstance()); + } + /** + * <code>repeated .context.SliceId slice_ids = 1;</code> + */ + public context.ContextOuterClass.SliceId.Builder addSliceIdsBuilder( + int index) { + return getSliceIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.SliceId.getDefaultInstance()); + } + /** + * <code>repeated .context.SliceId slice_ids = 1;</code> + */ + public java.util.List<context.ContextOuterClass.SliceId.Builder> + getSliceIdsBuilderList() { + return getSliceIdsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> + getSliceIdsFieldBuilder() { + if (sliceIdsBuilder_ == null) { + sliceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder>( + sliceIds_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + sliceIds_ = null; + } + return sliceIdsBuilder_; + } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { @@ -37946,95 +41602,95 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.SliceStatus) + // @@protoc_insertion_point(builder_scope:context.SliceIdList) } - // @@protoc_insertion_point(class_scope:context.SliceStatus) - private static final context.ContextOuterClass.SliceStatus DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.SliceIdList) + private static final context.ContextOuterClass.SliceIdList DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.SliceStatus(); + DEFAULT_INSTANCE = new context.ContextOuterClass.SliceIdList(); } - public static context.ContextOuterClass.SliceStatus getDefaultInstance() { + public static context.ContextOuterClass.SliceIdList getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<SliceStatus> - PARSER = new com.google.protobuf.AbstractParser<SliceStatus>() { + private static final com.google.protobuf.Parser<SliceIdList> + PARSER = new com.google.protobuf.AbstractParser<SliceIdList>() { @java.lang.Override - public SliceStatus parsePartialFrom( + public SliceIdList parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new SliceStatus(input, extensionRegistry); + return new SliceIdList(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<SliceStatus> parser() { + public static com.google.protobuf.Parser<SliceIdList> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<SliceStatus> getParserForType() { + public com.google.protobuf.Parser<SliceIdList> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.SliceStatus getDefaultInstanceForType() { + public context.ContextOuterClass.SliceIdList getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface SliceConfigOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.SliceConfig) + public interface SliceListOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.SliceList) com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - java.util.List<context.ContextOuterClass.ConfigRule> - getConfigRulesList(); + java.util.List<context.ContextOuterClass.Slice> + getSlicesList(); /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - context.ContextOuterClass.ConfigRule getConfigRules(int index); + context.ContextOuterClass.Slice getSlices(int index); /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - int getConfigRulesCount(); + int getSlicesCount(); /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> - getConfigRulesOrBuilderList(); + java.util.List<? extends context.ContextOuterClass.SliceOrBuilder> + getSlicesOrBuilderList(); /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( + context.ContextOuterClass.SliceOrBuilder getSlicesOrBuilder( int index); } /** - * Protobuf type {@code context.SliceConfig} + * Protobuf type {@code context.SliceList} */ - public static final class SliceConfig extends + public static final class SliceList extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.SliceConfig) - SliceConfigOrBuilder { + // @@protoc_insertion_point(message_implements:context.SliceList) + SliceListOrBuilder { private static final long serialVersionUID = 0L; - // Use SliceConfig.newBuilder() to construct. - private SliceConfig(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use SliceList.newBuilder() to construct. + private SliceList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private SliceConfig() { - configRules_ = java.util.Collections.emptyList(); + private SliceList() { + slices_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new SliceConfig(); + return new SliceList(); } @java.lang.Override @@ -38042,7 +41698,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private SliceConfig( + private SliceList( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -38063,11 +41719,11 @@ public final class ContextOuterClass { break; case 10: { if (!((mutable_bitField0_ & 0x00000001) != 0)) { - configRules_ = new java.util.ArrayList<context.ContextOuterClass.ConfigRule>(); + slices_ = new java.util.ArrayList<context.ContextOuterClass.Slice>(); mutable_bitField0_ |= 0x00000001; } - configRules_.add( - input.readMessage(context.ContextOuterClass.ConfigRule.parser(), extensionRegistry)); + slices_.add( + input.readMessage(context.ContextOuterClass.Slice.parser(), extensionRegistry)); break; } default: { @@ -38086,7 +41742,7 @@ public final class ContextOuterClass { e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { - configRules_ = java.util.Collections.unmodifiableList(configRules_); + slices_ = java.util.Collections.unmodifiableList(slices_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); @@ -38094,55 +41750,55 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceConfig_descriptor; + return context.ContextOuterClass.internal_static_context_SliceList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceConfig_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_SliceList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceConfig.class, context.ContextOuterClass.SliceConfig.Builder.class); + context.ContextOuterClass.SliceList.class, context.ContextOuterClass.SliceList.Builder.class); } - public static final int CONFIG_RULES_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.ConfigRule> configRules_; + public static final int SLICES_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.Slice> slices_; /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ @java.lang.Override - public java.util.List<context.ContextOuterClass.ConfigRule> getConfigRulesList() { - return configRules_; + public java.util.List<context.ContextOuterClass.Slice> getSlicesList() { + return slices_; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> - getConfigRulesOrBuilderList() { - return configRules_; + public java.util.List<? extends context.ContextOuterClass.SliceOrBuilder> + getSlicesOrBuilderList() { + return slices_; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ @java.lang.Override - public int getConfigRulesCount() { - return configRules_.size(); + public int getSlicesCount() { + return slices_.size(); } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.ConfigRule getConfigRules(int index) { - return configRules_.get(index); + public context.ContextOuterClass.Slice getSlices(int index) { + return slices_.get(index); } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( + public context.ContextOuterClass.SliceOrBuilder getSlicesOrBuilder( int index) { - return configRules_.get(index); + return slices_.get(index); } private byte memoizedIsInitialized = -1; @@ -38159,8 +41815,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < configRules_.size(); i++) { - output.writeMessage(1, configRules_.get(i)); + for (int i = 0; i < slices_.size(); i++) { + output.writeMessage(1, slices_.get(i)); } unknownFields.writeTo(output); } @@ -38171,9 +41827,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < configRules_.size(); i++) { + for (int i = 0; i < slices_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, configRules_.get(i)); + .computeMessageSize(1, slices_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -38185,13 +41841,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.SliceConfig)) { + if (!(obj instanceof context.ContextOuterClass.SliceList)) { return super.equals(obj); } - context.ContextOuterClass.SliceConfig other = (context.ContextOuterClass.SliceConfig) obj; + context.ContextOuterClass.SliceList other = (context.ContextOuterClass.SliceList) obj; - if (!getConfigRulesList() - .equals(other.getConfigRulesList())) return false; + if (!getSlicesList() + .equals(other.getSlicesList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -38203,78 +41859,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getConfigRulesCount() > 0) { - hash = (37 * hash) + CONFIG_RULES_FIELD_NUMBER; - hash = (53 * hash) + getConfigRulesList().hashCode(); + if (getSlicesCount() > 0) { + hash = (37 * hash) + SLICES_FIELD_NUMBER; + hash = (53 * hash) + getSlicesList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.SliceConfig parseFrom( + public static context.ContextOuterClass.SliceList parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceConfig parseFrom( + public static context.ContextOuterClass.SliceList parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceConfig parseFrom( + public static context.ContextOuterClass.SliceList parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceConfig parseFrom( + public static context.ContextOuterClass.SliceList parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceConfig parseFrom(byte[] data) + public static context.ContextOuterClass.SliceList parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceConfig parseFrom( + public static context.ContextOuterClass.SliceList parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceConfig parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.SliceList parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceConfig parseFrom( + public static context.ContextOuterClass.SliceList 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 context.ContextOuterClass.SliceConfig parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.SliceList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceConfig parseDelimitedFrom( + public static context.ContextOuterClass.SliceList 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 context.ContextOuterClass.SliceConfig parseFrom( + public static context.ContextOuterClass.SliceList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceConfig parseFrom( + public static context.ContextOuterClass.SliceList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -38287,7 +41943,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.SliceConfig prototype) { + public static Builder newBuilder(context.ContextOuterClass.SliceList prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -38303,26 +41959,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.SliceConfig} + * Protobuf type {@code context.SliceList} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.SliceConfig) - context.ContextOuterClass.SliceConfigOrBuilder { + // @@protoc_insertion_point(builder_implements:context.SliceList) + context.ContextOuterClass.SliceListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceConfig_descriptor; + return context.ContextOuterClass.internal_static_context_SliceList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceConfig_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_SliceList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceConfig.class, context.ContextOuterClass.SliceConfig.Builder.class); + context.ContextOuterClass.SliceList.class, context.ContextOuterClass.SliceList.Builder.class); } - // Construct using context.ContextOuterClass.SliceConfig.newBuilder() + // Construct using context.ContextOuterClass.SliceList.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -38335,17 +41991,17 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getConfigRulesFieldBuilder(); + getSlicesFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (configRulesBuilder_ == null) { - configRules_ = java.util.Collections.emptyList(); + if (slicesBuilder_ == null) { + slices_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); } else { - configRulesBuilder_.clear(); + slicesBuilder_.clear(); } return this; } @@ -38353,17 +42009,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_SliceConfig_descriptor; + return context.ContextOuterClass.internal_static_context_SliceList_descriptor; } @java.lang.Override - public context.ContextOuterClass.SliceConfig getDefaultInstanceForType() { - return context.ContextOuterClass.SliceConfig.getDefaultInstance(); + public context.ContextOuterClass.SliceList getDefaultInstanceForType() { + return context.ContextOuterClass.SliceList.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.SliceConfig build() { - context.ContextOuterClass.SliceConfig result = buildPartial(); + public context.ContextOuterClass.SliceList build() { + context.ContextOuterClass.SliceList result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -38371,17 +42027,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.SliceConfig buildPartial() { - context.ContextOuterClass.SliceConfig result = new context.ContextOuterClass.SliceConfig(this); + public context.ContextOuterClass.SliceList buildPartial() { + context.ContextOuterClass.SliceList result = new context.ContextOuterClass.SliceList(this); int from_bitField0_ = bitField0_; - if (configRulesBuilder_ == null) { + if (slicesBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { - configRules_ = java.util.Collections.unmodifiableList(configRules_); + slices_ = java.util.Collections.unmodifiableList(slices_); bitField0_ = (bitField0_ & ~0x00000001); } - result.configRules_ = configRules_; + result.slices_ = slices_; } else { - result.configRules_ = configRulesBuilder_.build(); + result.slices_ = slicesBuilder_.build(); } onBuilt(); return result; @@ -38421,39 +42077,39 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.SliceConfig) { - return mergeFrom((context.ContextOuterClass.SliceConfig)other); + if (other instanceof context.ContextOuterClass.SliceList) { + return mergeFrom((context.ContextOuterClass.SliceList)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.SliceConfig other) { - if (other == context.ContextOuterClass.SliceConfig.getDefaultInstance()) return this; - if (configRulesBuilder_ == null) { - if (!other.configRules_.isEmpty()) { - if (configRules_.isEmpty()) { - configRules_ = other.configRules_; + public Builder mergeFrom(context.ContextOuterClass.SliceList other) { + if (other == context.ContextOuterClass.SliceList.getDefaultInstance()) return this; + if (slicesBuilder_ == null) { + if (!other.slices_.isEmpty()) { + if (slices_.isEmpty()) { + slices_ = other.slices_; bitField0_ = (bitField0_ & ~0x00000001); } else { - ensureConfigRulesIsMutable(); - configRules_.addAll(other.configRules_); + ensureSlicesIsMutable(); + slices_.addAll(other.slices_); } onChanged(); } } else { - if (!other.configRules_.isEmpty()) { - if (configRulesBuilder_.isEmpty()) { - configRulesBuilder_.dispose(); - configRulesBuilder_ = null; - configRules_ = other.configRules_; + if (!other.slices_.isEmpty()) { + if (slicesBuilder_.isEmpty()) { + slicesBuilder_.dispose(); + slicesBuilder_ = null; + slices_ = other.slices_; bitField0_ = (bitField0_ & ~0x00000001); - configRulesBuilder_ = + slicesBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getConfigRulesFieldBuilder() : null; + getSlicesFieldBuilder() : null; } else { - configRulesBuilder_.addAllMessages(other.configRules_); + slicesBuilder_.addAllMessages(other.slices_); } } } @@ -38472,11 +42128,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.SliceConfig parsedMessage = null; + context.ContextOuterClass.SliceList parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.SliceConfig) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.SliceList) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -38487,244 +42143,244 @@ public final class ContextOuterClass { } private int bitField0_; - private java.util.List<context.ContextOuterClass.ConfigRule> configRules_ = + private java.util.List<context.ContextOuterClass.Slice> slices_ = java.util.Collections.emptyList(); - private void ensureConfigRulesIsMutable() { + private void ensureSlicesIsMutable() { if (!((bitField0_ & 0x00000001) != 0)) { - configRules_ = new java.util.ArrayList<context.ContextOuterClass.ConfigRule>(configRules_); + slices_ = new java.util.ArrayList<context.ContextOuterClass.Slice>(slices_); bitField0_ |= 0x00000001; } } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder> configRulesBuilder_; + context.ContextOuterClass.Slice, context.ContextOuterClass.Slice.Builder, context.ContextOuterClass.SliceOrBuilder> slicesBuilder_; /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public java.util.List<context.ContextOuterClass.ConfigRule> getConfigRulesList() { - if (configRulesBuilder_ == null) { - return java.util.Collections.unmodifiableList(configRules_); + public java.util.List<context.ContextOuterClass.Slice> getSlicesList() { + if (slicesBuilder_ == null) { + return java.util.Collections.unmodifiableList(slices_); } else { - return configRulesBuilder_.getMessageList(); + return slicesBuilder_.getMessageList(); } } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public int getConfigRulesCount() { - if (configRulesBuilder_ == null) { - return configRules_.size(); + public int getSlicesCount() { + if (slicesBuilder_ == null) { + return slices_.size(); } else { - return configRulesBuilder_.getCount(); + return slicesBuilder_.getCount(); } } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public context.ContextOuterClass.ConfigRule getConfigRules(int index) { - if (configRulesBuilder_ == null) { - return configRules_.get(index); + public context.ContextOuterClass.Slice getSlices(int index) { + if (slicesBuilder_ == null) { + return slices_.get(index); } else { - return configRulesBuilder_.getMessage(index); + return slicesBuilder_.getMessage(index); } } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public Builder setConfigRules( - int index, context.ContextOuterClass.ConfigRule value) { - if (configRulesBuilder_ == null) { + public Builder setSlices( + int index, context.ContextOuterClass.Slice value) { + if (slicesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureConfigRulesIsMutable(); - configRules_.set(index, value); + ensureSlicesIsMutable(); + slices_.set(index, value); onChanged(); } else { - configRulesBuilder_.setMessage(index, value); + slicesBuilder_.setMessage(index, value); } return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public Builder setConfigRules( - int index, context.ContextOuterClass.ConfigRule.Builder builderForValue) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); - configRules_.set(index, builderForValue.build()); + public Builder setSlices( + int index, context.ContextOuterClass.Slice.Builder builderForValue) { + if (slicesBuilder_ == null) { + ensureSlicesIsMutable(); + slices_.set(index, builderForValue.build()); onChanged(); } else { - configRulesBuilder_.setMessage(index, builderForValue.build()); + slicesBuilder_.setMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public Builder addConfigRules(context.ContextOuterClass.ConfigRule value) { - if (configRulesBuilder_ == null) { + public Builder addSlices(context.ContextOuterClass.Slice value) { + if (slicesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureConfigRulesIsMutable(); - configRules_.add(value); + ensureSlicesIsMutable(); + slices_.add(value); onChanged(); } else { - configRulesBuilder_.addMessage(value); + slicesBuilder_.addMessage(value); } return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public Builder addConfigRules( - int index, context.ContextOuterClass.ConfigRule value) { - if (configRulesBuilder_ == null) { + public Builder addSlices( + int index, context.ContextOuterClass.Slice value) { + if (slicesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureConfigRulesIsMutable(); - configRules_.add(index, value); + ensureSlicesIsMutable(); + slices_.add(index, value); onChanged(); } else { - configRulesBuilder_.addMessage(index, value); + slicesBuilder_.addMessage(index, value); } return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public Builder addConfigRules( - context.ContextOuterClass.ConfigRule.Builder builderForValue) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); - configRules_.add(builderForValue.build()); + public Builder addSlices( + context.ContextOuterClass.Slice.Builder builderForValue) { + if (slicesBuilder_ == null) { + ensureSlicesIsMutable(); + slices_.add(builderForValue.build()); onChanged(); } else { - configRulesBuilder_.addMessage(builderForValue.build()); + slicesBuilder_.addMessage(builderForValue.build()); } return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public Builder addConfigRules( - int index, context.ContextOuterClass.ConfigRule.Builder builderForValue) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); - configRules_.add(index, builderForValue.build()); + public Builder addSlices( + int index, context.ContextOuterClass.Slice.Builder builderForValue) { + if (slicesBuilder_ == null) { + ensureSlicesIsMutable(); + slices_.add(index, builderForValue.build()); onChanged(); } else { - configRulesBuilder_.addMessage(index, builderForValue.build()); + slicesBuilder_.addMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public Builder addAllConfigRules( - java.lang.Iterable<? extends context.ContextOuterClass.ConfigRule> values) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); + public Builder addAllSlices( + java.lang.Iterable<? extends context.ContextOuterClass.Slice> values) { + if (slicesBuilder_ == null) { + ensureSlicesIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, configRules_); + values, slices_); onChanged(); } else { - configRulesBuilder_.addAllMessages(values); + slicesBuilder_.addAllMessages(values); } return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public Builder clearConfigRules() { - if (configRulesBuilder_ == null) { - configRules_ = java.util.Collections.emptyList(); + public Builder clearSlices() { + if (slicesBuilder_ == null) { + slices_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { - configRulesBuilder_.clear(); + slicesBuilder_.clear(); } return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public Builder removeConfigRules(int index) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); - configRules_.remove(index); + public Builder removeSlices(int index) { + if (slicesBuilder_ == null) { + ensureSlicesIsMutable(); + slices_.remove(index); onChanged(); } else { - configRulesBuilder_.remove(index); + slicesBuilder_.remove(index); } return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public context.ContextOuterClass.ConfigRule.Builder getConfigRulesBuilder( + public context.ContextOuterClass.Slice.Builder getSlicesBuilder( int index) { - return getConfigRulesFieldBuilder().getBuilder(index); + return getSlicesFieldBuilder().getBuilder(index); } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( + public context.ContextOuterClass.SliceOrBuilder getSlicesOrBuilder( int index) { - if (configRulesBuilder_ == null) { - return configRules_.get(index); } else { - return configRulesBuilder_.getMessageOrBuilder(index); + if (slicesBuilder_ == null) { + return slices_.get(index); } else { + return slicesBuilder_.getMessageOrBuilder(index); } } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> - getConfigRulesOrBuilderList() { - if (configRulesBuilder_ != null) { - return configRulesBuilder_.getMessageOrBuilderList(); + public java.util.List<? extends context.ContextOuterClass.SliceOrBuilder> + getSlicesOrBuilderList() { + if (slicesBuilder_ != null) { + return slicesBuilder_.getMessageOrBuilderList(); } else { - return java.util.Collections.unmodifiableList(configRules_); + return java.util.Collections.unmodifiableList(slices_); } } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public context.ContextOuterClass.ConfigRule.Builder addConfigRulesBuilder() { - return getConfigRulesFieldBuilder().addBuilder( - context.ContextOuterClass.ConfigRule.getDefaultInstance()); + public context.ContextOuterClass.Slice.Builder addSlicesBuilder() { + return getSlicesFieldBuilder().addBuilder( + context.ContextOuterClass.Slice.getDefaultInstance()); } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public context.ContextOuterClass.ConfigRule.Builder addConfigRulesBuilder( + public context.ContextOuterClass.Slice.Builder addSlicesBuilder( int index) { - return getConfigRulesFieldBuilder().addBuilder( - index, context.ContextOuterClass.ConfigRule.getDefaultInstance()); + return getSlicesFieldBuilder().addBuilder( + index, context.ContextOuterClass.Slice.getDefaultInstance()); } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public java.util.List<context.ContextOuterClass.ConfigRule.Builder> - getConfigRulesBuilderList() { - return getConfigRulesFieldBuilder().getBuilderList(); + public java.util.List<context.ContextOuterClass.Slice.Builder> + getSlicesBuilderList() { + return getSlicesFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder> - getConfigRulesFieldBuilder() { - if (configRulesBuilder_ == null) { - configRulesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder>( - configRules_, + context.ContextOuterClass.Slice, context.ContextOuterClass.Slice.Builder, context.ContextOuterClass.SliceOrBuilder> + getSlicesFieldBuilder() { + if (slicesBuilder_ == null) { + slicesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Slice, context.ContextOuterClass.Slice.Builder, context.ContextOuterClass.SliceOrBuilder>( + slices_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); - configRules_ = null; + slices_ = null; } - return configRulesBuilder_; + return slicesBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -38739,95 +42395,115 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.SliceConfig) + // @@protoc_insertion_point(builder_scope:context.SliceList) } - // @@protoc_insertion_point(class_scope:context.SliceConfig) - private static final context.ContextOuterClass.SliceConfig DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.SliceList) + private static final context.ContextOuterClass.SliceList DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.SliceConfig(); + DEFAULT_INSTANCE = new context.ContextOuterClass.SliceList(); } - public static context.ContextOuterClass.SliceConfig getDefaultInstance() { + public static context.ContextOuterClass.SliceList getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<SliceConfig> - PARSER = new com.google.protobuf.AbstractParser<SliceConfig>() { + private static final com.google.protobuf.Parser<SliceList> + PARSER = new com.google.protobuf.AbstractParser<SliceList>() { @java.lang.Override - public SliceConfig parsePartialFrom( + public SliceList parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new SliceConfig(input, extensionRegistry); + return new SliceList(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<SliceConfig> parser() { + public static com.google.protobuf.Parser<SliceList> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<SliceConfig> getParserForType() { + public com.google.protobuf.Parser<SliceList> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.SliceConfig getDefaultInstanceForType() { + public context.ContextOuterClass.SliceList getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface SliceIdListOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.SliceIdList) + public interface SliceFilterOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.SliceFilter) com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>.context.SliceIdList slice_ids = 1;</code> + * @return Whether the sliceIds field is set. */ - java.util.List<context.ContextOuterClass.SliceId> - getSliceIdsList(); + boolean hasSliceIds(); /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>.context.SliceIdList slice_ids = 1;</code> + * @return The sliceIds. */ - context.ContextOuterClass.SliceId getSliceIds(int index); + context.ContextOuterClass.SliceIdList getSliceIds(); /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>.context.SliceIdList slice_ids = 1;</code> */ - int getSliceIdsCount(); + context.ContextOuterClass.SliceIdListOrBuilder getSliceIdsOrBuilder(); + /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>bool include_endpoint_ids = 2;</code> + * @return The includeEndpointIds. */ - java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> - getSliceIdsOrBuilderList(); + boolean getIncludeEndpointIds(); + /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>bool include_constraints = 3;</code> + * @return The includeConstraints. */ - context.ContextOuterClass.SliceIdOrBuilder getSliceIdsOrBuilder( - int index); + boolean getIncludeConstraints(); + + /** + * <code>bool include_service_ids = 4;</code> + * @return The includeServiceIds. + */ + boolean getIncludeServiceIds(); + + /** + * <code>bool include_subslice_ids = 5;</code> + * @return The includeSubsliceIds. + */ + boolean getIncludeSubsliceIds(); + + /** + * <code>bool include_config_rules = 6;</code> + * @return The includeConfigRules. + */ + boolean getIncludeConfigRules(); } /** - * Protobuf type {@code context.SliceIdList} + * Protobuf type {@code context.SliceFilter} */ - public static final class SliceIdList extends + public static final class SliceFilter extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.SliceIdList) - SliceIdListOrBuilder { + // @@protoc_insertion_point(message_implements:context.SliceFilter) + SliceFilterOrBuilder { private static final long serialVersionUID = 0L; - // Use SliceIdList.newBuilder() to construct. - private SliceIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use SliceFilter.newBuilder() to construct. + private SliceFilter(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private SliceIdList() { - sliceIds_ = java.util.Collections.emptyList(); + private SliceFilter() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new SliceIdList(); + return new SliceFilter(); } @java.lang.Override @@ -38835,7 +42511,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private SliceIdList( + private SliceFilter( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -38843,7 +42519,6 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } - int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -38854,13 +42529,42 @@ public final class ContextOuterClass { case 0: done = true; break; - case 10: { - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - sliceIds_ = new java.util.ArrayList<context.ContextOuterClass.SliceId>(); - mutable_bitField0_ |= 0x00000001; - } - sliceIds_.add( - input.readMessage(context.ContextOuterClass.SliceId.parser(), extensionRegistry)); + case 10: { + context.ContextOuterClass.SliceIdList.Builder subBuilder = null; + if (sliceIds_ != null) { + subBuilder = sliceIds_.toBuilder(); + } + sliceIds_ = input.readMessage(context.ContextOuterClass.SliceIdList.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(sliceIds_); + sliceIds_ = subBuilder.buildPartial(); + } + + break; + } + case 16: { + + includeEndpointIds_ = input.readBool(); + break; + } + case 24: { + + includeConstraints_ = input.readBool(); + break; + } + case 32: { + + includeServiceIds_ = input.readBool(); + break; + } + case 40: { + + includeSubsliceIds_ = input.readBool(); + break; + } + case 48: { + + includeConfigRules_ = input.readBool(); break; } default: { @@ -38878,64 +42582,102 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { - if (((mutable_bitField0_ & 0x00000001) != 0)) { - sliceIds_ = java.util.Collections.unmodifiableList(sliceIds_); - } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceIdList_descriptor; + return context.ContextOuterClass.internal_static_context_SliceFilter_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceIdList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_SliceFilter_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceIdList.class, context.ContextOuterClass.SliceIdList.Builder.class); + context.ContextOuterClass.SliceFilter.class, context.ContextOuterClass.SliceFilter.Builder.class); } public static final int SLICE_IDS_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.SliceId> sliceIds_; + private context.ContextOuterClass.SliceIdList sliceIds_; /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>.context.SliceIdList slice_ids = 1;</code> + * @return Whether the sliceIds field is set. */ @java.lang.Override - public java.util.List<context.ContextOuterClass.SliceId> getSliceIdsList() { - return sliceIds_; + public boolean hasSliceIds() { + return sliceIds_ != null; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>.context.SliceIdList slice_ids = 1;</code> + * @return The sliceIds. */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> - getSliceIdsOrBuilderList() { - return sliceIds_; + public context.ContextOuterClass.SliceIdList getSliceIds() { + return sliceIds_ == null ? context.ContextOuterClass.SliceIdList.getDefaultInstance() : sliceIds_; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>.context.SliceIdList slice_ids = 1;</code> */ @java.lang.Override - public int getSliceIdsCount() { - return sliceIds_.size(); + public context.ContextOuterClass.SliceIdListOrBuilder getSliceIdsOrBuilder() { + return getSliceIds(); } + + public static final int INCLUDE_ENDPOINT_IDS_FIELD_NUMBER = 2; + private boolean includeEndpointIds_; /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>bool include_endpoint_ids = 2;</code> + * @return The includeEndpointIds. */ @java.lang.Override - public context.ContextOuterClass.SliceId getSliceIds(int index) { - return sliceIds_.get(index); + public boolean getIncludeEndpointIds() { + return includeEndpointIds_; } + + public static final int INCLUDE_CONSTRAINTS_FIELD_NUMBER = 3; + private boolean includeConstraints_; /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>bool include_constraints = 3;</code> + * @return The includeConstraints. */ @java.lang.Override - public context.ContextOuterClass.SliceIdOrBuilder getSliceIdsOrBuilder( - int index) { - return sliceIds_.get(index); + public boolean getIncludeConstraints() { + return includeConstraints_; + } + + public static final int INCLUDE_SERVICE_IDS_FIELD_NUMBER = 4; + private boolean includeServiceIds_; + /** + * <code>bool include_service_ids = 4;</code> + * @return The includeServiceIds. + */ + @java.lang.Override + public boolean getIncludeServiceIds() { + return includeServiceIds_; + } + + public static final int INCLUDE_SUBSLICE_IDS_FIELD_NUMBER = 5; + private boolean includeSubsliceIds_; + /** + * <code>bool include_subslice_ids = 5;</code> + * @return The includeSubsliceIds. + */ + @java.lang.Override + public boolean getIncludeSubsliceIds() { + return includeSubsliceIds_; + } + + public static final int INCLUDE_CONFIG_RULES_FIELD_NUMBER = 6; + private boolean includeConfigRules_; + /** + * <code>bool include_config_rules = 6;</code> + * @return The includeConfigRules. + */ + @java.lang.Override + public boolean getIncludeConfigRules() { + return includeConfigRules_; } private byte memoizedIsInitialized = -1; @@ -38952,8 +42694,23 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < sliceIds_.size(); i++) { - output.writeMessage(1, sliceIds_.get(i)); + if (sliceIds_ != null) { + output.writeMessage(1, getSliceIds()); + } + if (includeEndpointIds_ != false) { + output.writeBool(2, includeEndpointIds_); + } + if (includeConstraints_ != false) { + output.writeBool(3, includeConstraints_); + } + if (includeServiceIds_ != false) { + output.writeBool(4, includeServiceIds_); + } + if (includeSubsliceIds_ != false) { + output.writeBool(5, includeSubsliceIds_); + } + if (includeConfigRules_ != false) { + output.writeBool(6, includeConfigRules_); } unknownFields.writeTo(output); } @@ -38964,9 +42721,29 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < sliceIds_.size(); i++) { + if (sliceIds_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, sliceIds_.get(i)); + .computeMessageSize(1, getSliceIds()); + } + if (includeEndpointIds_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(2, includeEndpointIds_); + } + if (includeConstraints_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(3, includeConstraints_); + } + if (includeServiceIds_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(4, includeServiceIds_); + } + if (includeSubsliceIds_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(5, includeSubsliceIds_); + } + if (includeConfigRules_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(6, includeConfigRules_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -38978,13 +42755,26 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.SliceIdList)) { + if (!(obj instanceof context.ContextOuterClass.SliceFilter)) { return super.equals(obj); } - context.ContextOuterClass.SliceIdList other = (context.ContextOuterClass.SliceIdList) obj; - - if (!getSliceIdsList() - .equals(other.getSliceIdsList())) return false; + context.ContextOuterClass.SliceFilter other = (context.ContextOuterClass.SliceFilter) obj; + + if (hasSliceIds() != other.hasSliceIds()) return false; + if (hasSliceIds()) { + if (!getSliceIds() + .equals(other.getSliceIds())) return false; + } + if (getIncludeEndpointIds() + != other.getIncludeEndpointIds()) return false; + if (getIncludeConstraints() + != other.getIncludeConstraints()) return false; + if (getIncludeServiceIds() + != other.getIncludeServiceIds()) return false; + if (getIncludeSubsliceIds() + != other.getIncludeSubsliceIds()) return false; + if (getIncludeConfigRules() + != other.getIncludeConfigRules()) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -38996,78 +42786,93 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getSliceIdsCount() > 0) { + if (hasSliceIds()) { hash = (37 * hash) + SLICE_IDS_FIELD_NUMBER; - hash = (53 * hash) + getSliceIdsList().hashCode(); + hash = (53 * hash) + getSliceIds().hashCode(); } + hash = (37 * hash) + INCLUDE_ENDPOINT_IDS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getIncludeEndpointIds()); + hash = (37 * hash) + INCLUDE_CONSTRAINTS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getIncludeConstraints()); + hash = (37 * hash) + INCLUDE_SERVICE_IDS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getIncludeServiceIds()); + hash = (37 * hash) + INCLUDE_SUBSLICE_IDS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getIncludeSubsliceIds()); + hash = (37 * hash) + INCLUDE_CONFIG_RULES_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getIncludeConfigRules()); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.SliceIdList parseFrom( + public static context.ContextOuterClass.SliceFilter parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceIdList parseFrom( + public static context.ContextOuterClass.SliceFilter parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceIdList parseFrom( + public static context.ContextOuterClass.SliceFilter parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceIdList parseFrom( + public static context.ContextOuterClass.SliceFilter parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceIdList parseFrom(byte[] data) + public static context.ContextOuterClass.SliceFilter parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceIdList parseFrom( + public static context.ContextOuterClass.SliceFilter parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceIdList parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.SliceFilter parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceIdList parseFrom( + public static context.ContextOuterClass.SliceFilter 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 context.ContextOuterClass.SliceIdList parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.SliceFilter parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceIdList parseDelimitedFrom( + public static context.ContextOuterClass.SliceFilter 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 context.ContextOuterClass.SliceIdList parseFrom( + public static context.ContextOuterClass.SliceFilter parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceIdList parseFrom( + public static context.ContextOuterClass.SliceFilter parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -39080,7 +42885,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.SliceIdList prototype) { + public static Builder newBuilder(context.ContextOuterClass.SliceFilter prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -39096,26 +42901,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.SliceIdList} + * Protobuf type {@code context.SliceFilter} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.SliceIdList) - context.ContextOuterClass.SliceIdListOrBuilder { + // @@protoc_insertion_point(builder_implements:context.SliceFilter) + context.ContextOuterClass.SliceFilterOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceIdList_descriptor; + return context.ContextOuterClass.internal_static_context_SliceFilter_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceIdList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_SliceFilter_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceIdList.class, context.ContextOuterClass.SliceIdList.Builder.class); + context.ContextOuterClass.SliceFilter.class, context.ContextOuterClass.SliceFilter.Builder.class); } - // Construct using context.ContextOuterClass.SliceIdList.newBuilder() + // Construct using context.ContextOuterClass.SliceFilter.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -39128,35 +42933,44 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getSliceIdsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); if (sliceIdsBuilder_ == null) { - sliceIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + sliceIds_ = null; } else { - sliceIdsBuilder_.clear(); + sliceIds_ = null; + sliceIdsBuilder_ = null; } + includeEndpointIds_ = false; + + includeConstraints_ = false; + + includeServiceIds_ = false; + + includeSubsliceIds_ = false; + + includeConfigRules_ = false; + return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_SliceIdList_descriptor; + return context.ContextOuterClass.internal_static_context_SliceFilter_descriptor; } @java.lang.Override - public context.ContextOuterClass.SliceIdList getDefaultInstanceForType() { - return context.ContextOuterClass.SliceIdList.getDefaultInstance(); + public context.ContextOuterClass.SliceFilter getDefaultInstanceForType() { + return context.ContextOuterClass.SliceFilter.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.SliceIdList build() { - context.ContextOuterClass.SliceIdList result = buildPartial(); + public context.ContextOuterClass.SliceFilter build() { + context.ContextOuterClass.SliceFilter result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -39164,18 +42978,18 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.SliceIdList buildPartial() { - context.ContextOuterClass.SliceIdList result = new context.ContextOuterClass.SliceIdList(this); - int from_bitField0_ = bitField0_; + public context.ContextOuterClass.SliceFilter buildPartial() { + context.ContextOuterClass.SliceFilter result = new context.ContextOuterClass.SliceFilter(this); if (sliceIdsBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { - sliceIds_ = java.util.Collections.unmodifiableList(sliceIds_); - bitField0_ = (bitField0_ & ~0x00000001); - } result.sliceIds_ = sliceIds_; } else { result.sliceIds_ = sliceIdsBuilder_.build(); } + result.includeEndpointIds_ = includeEndpointIds_; + result.includeConstraints_ = includeConstraints_; + result.includeServiceIds_ = includeServiceIds_; + result.includeSubsliceIds_ = includeSubsliceIds_; + result.includeConfigRules_ = includeConfigRules_; onBuilt(); return result; } @@ -39214,41 +43028,33 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.SliceIdList) { - return mergeFrom((context.ContextOuterClass.SliceIdList)other); + if (other instanceof context.ContextOuterClass.SliceFilter) { + return mergeFrom((context.ContextOuterClass.SliceFilter)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.SliceIdList other) { - if (other == context.ContextOuterClass.SliceIdList.getDefaultInstance()) return this; - if (sliceIdsBuilder_ == null) { - if (!other.sliceIds_.isEmpty()) { - if (sliceIds_.isEmpty()) { - sliceIds_ = other.sliceIds_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureSliceIdsIsMutable(); - sliceIds_.addAll(other.sliceIds_); - } - onChanged(); - } - } else { - if (!other.sliceIds_.isEmpty()) { - if (sliceIdsBuilder_.isEmpty()) { - sliceIdsBuilder_.dispose(); - sliceIdsBuilder_ = null; - sliceIds_ = other.sliceIds_; - bitField0_ = (bitField0_ & ~0x00000001); - sliceIdsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getSliceIdsFieldBuilder() : null; - } else { - sliceIdsBuilder_.addAllMessages(other.sliceIds_); - } - } + public Builder mergeFrom(context.ContextOuterClass.SliceFilter other) { + if (other == context.ContextOuterClass.SliceFilter.getDefaultInstance()) return this; + if (other.hasSliceIds()) { + mergeSliceIds(other.getSliceIds()); + } + if (other.getIncludeEndpointIds() != false) { + setIncludeEndpointIds(other.getIncludeEndpointIds()); + } + if (other.getIncludeConstraints() != false) { + setIncludeConstraints(other.getIncludeConstraints()); + } + if (other.getIncludeServiceIds() != false) { + setIncludeServiceIds(other.getIncludeServiceIds()); + } + if (other.getIncludeSubsliceIds() != false) { + setIncludeSubsliceIds(other.getIncludeSubsliceIds()); + } + if (other.getIncludeConfigRules() != false) { + setIncludeConfigRules(other.getIncludeConfigRules()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -39265,11 +43071,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.SliceIdList parsedMessage = null; + context.ContextOuterClass.SliceFilter parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.SliceIdList) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.SliceFilter) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -39278,246 +43084,279 @@ public final class ContextOuterClass { } return this; } - private int bitField0_; - - private java.util.List<context.ContextOuterClass.SliceId> sliceIds_ = - java.util.Collections.emptyList(); - private void ensureSliceIdsIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - sliceIds_ = new java.util.ArrayList<context.ContextOuterClass.SliceId>(sliceIds_); - bitField0_ |= 0x00000001; - } - } - - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> sliceIdsBuilder_; + private context.ContextOuterClass.SliceIdList sliceIds_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceIdList, context.ContextOuterClass.SliceIdList.Builder, context.ContextOuterClass.SliceIdListOrBuilder> sliceIdsBuilder_; /** - * <code>repeated .context.SliceId slice_ids = 1;</code> - */ - public java.util.List<context.ContextOuterClass.SliceId> getSliceIdsList() { - if (sliceIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(sliceIds_); - } else { - return sliceIdsBuilder_.getMessageList(); - } - } - /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>.context.SliceIdList slice_ids = 1;</code> + * @return Whether the sliceIds field is set. */ - public int getSliceIdsCount() { - if (sliceIdsBuilder_ == null) { - return sliceIds_.size(); - } else { - return sliceIdsBuilder_.getCount(); - } + public boolean hasSliceIds() { + return sliceIdsBuilder_ != null || sliceIds_ != null; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>.context.SliceIdList slice_ids = 1;</code> + * @return The sliceIds. */ - public context.ContextOuterClass.SliceId getSliceIds(int index) { + public context.ContextOuterClass.SliceIdList getSliceIds() { if (sliceIdsBuilder_ == null) { - return sliceIds_.get(index); + return sliceIds_ == null ? context.ContextOuterClass.SliceIdList.getDefaultInstance() : sliceIds_; } else { - return sliceIdsBuilder_.getMessage(index); + return sliceIdsBuilder_.getMessage(); } } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>.context.SliceIdList slice_ids = 1;</code> */ - public Builder setSliceIds( - int index, context.ContextOuterClass.SliceId value) { + public Builder setSliceIds(context.ContextOuterClass.SliceIdList value) { if (sliceIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureSliceIdsIsMutable(); - sliceIds_.set(index, value); + sliceIds_ = value; onChanged(); } else { - sliceIdsBuilder_.setMessage(index, value); + sliceIdsBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>.context.SliceIdList slice_ids = 1;</code> */ public Builder setSliceIds( - int index, context.ContextOuterClass.SliceId.Builder builderForValue) { + context.ContextOuterClass.SliceIdList.Builder builderForValue) { if (sliceIdsBuilder_ == null) { - ensureSliceIdsIsMutable(); - sliceIds_.set(index, builderForValue.build()); + sliceIds_ = builderForValue.build(); onChanged(); } else { - sliceIdsBuilder_.setMessage(index, builderForValue.build()); + sliceIdsBuilder_.setMessage(builderForValue.build()); } + return this; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>.context.SliceIdList slice_ids = 1;</code> */ - public Builder addSliceIds(context.ContextOuterClass.SliceId value) { + public Builder mergeSliceIds(context.ContextOuterClass.SliceIdList value) { if (sliceIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + if (sliceIds_ != null) { + sliceIds_ = + context.ContextOuterClass.SliceIdList.newBuilder(sliceIds_).mergeFrom(value).buildPartial(); + } else { + sliceIds_ = value; } - ensureSliceIdsIsMutable(); - sliceIds_.add(value); onChanged(); } else { - sliceIdsBuilder_.addMessage(value); + sliceIdsBuilder_.mergeFrom(value); } + return this; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>.context.SliceIdList slice_ids = 1;</code> */ - public Builder addSliceIds( - int index, context.ContextOuterClass.SliceId value) { + public Builder clearSliceIds() { if (sliceIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSliceIdsIsMutable(); - sliceIds_.add(index, value); + sliceIds_ = null; onChanged(); } else { - sliceIdsBuilder_.addMessage(index, value); + sliceIds_ = null; + sliceIdsBuilder_ = null; } + return this; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>.context.SliceIdList slice_ids = 1;</code> */ - public Builder addSliceIds( - context.ContextOuterClass.SliceId.Builder builderForValue) { - if (sliceIdsBuilder_ == null) { - ensureSliceIdsIsMutable(); - sliceIds_.add(builderForValue.build()); - onChanged(); + public context.ContextOuterClass.SliceIdList.Builder getSliceIdsBuilder() { + + onChanged(); + return getSliceIdsFieldBuilder().getBuilder(); + } + /** + * <code>.context.SliceIdList slice_ids = 1;</code> + */ + public context.ContextOuterClass.SliceIdListOrBuilder getSliceIdsOrBuilder() { + if (sliceIdsBuilder_ != null) { + return sliceIdsBuilder_.getMessageOrBuilder(); } else { - sliceIdsBuilder_.addMessage(builderForValue.build()); + return sliceIds_ == null ? + context.ContextOuterClass.SliceIdList.getDefaultInstance() : sliceIds_; } - return this; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>.context.SliceIdList slice_ids = 1;</code> */ - public Builder addSliceIds( - int index, context.ContextOuterClass.SliceId.Builder builderForValue) { + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceIdList, context.ContextOuterClass.SliceIdList.Builder, context.ContextOuterClass.SliceIdListOrBuilder> + getSliceIdsFieldBuilder() { if (sliceIdsBuilder_ == null) { - ensureSliceIdsIsMutable(); - sliceIds_.add(index, builderForValue.build()); - onChanged(); - } else { - sliceIdsBuilder_.addMessage(index, builderForValue.build()); + sliceIdsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceIdList, context.ContextOuterClass.SliceIdList.Builder, context.ContextOuterClass.SliceIdListOrBuilder>( + getSliceIds(), + getParentForChildren(), + isClean()); + sliceIds_ = null; } + return sliceIdsBuilder_; + } + + private boolean includeEndpointIds_ ; + /** + * <code>bool include_endpoint_ids = 2;</code> + * @return The includeEndpointIds. + */ + @java.lang.Override + public boolean getIncludeEndpointIds() { + return includeEndpointIds_; + } + /** + * <code>bool include_endpoint_ids = 2;</code> + * @param value The includeEndpointIds to set. + * @return This builder for chaining. + */ + public Builder setIncludeEndpointIds(boolean value) { + + includeEndpointIds_ = value; + onChanged(); return this; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>bool include_endpoint_ids = 2;</code> + * @return This builder for chaining. */ - public Builder addAllSliceIds( - java.lang.Iterable<? extends context.ContextOuterClass.SliceId> values) { - if (sliceIdsBuilder_ == null) { - ensureSliceIdsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, sliceIds_); - onChanged(); - } else { - sliceIdsBuilder_.addAllMessages(values); - } + public Builder clearIncludeEndpointIds() { + + includeEndpointIds_ = false; + onChanged(); return this; } + + private boolean includeConstraints_ ; /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>bool include_constraints = 3;</code> + * @return The includeConstraints. */ - public Builder clearSliceIds() { - if (sliceIdsBuilder_ == null) { - sliceIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - } else { - sliceIdsBuilder_.clear(); - } + @java.lang.Override + public boolean getIncludeConstraints() { + return includeConstraints_; + } + /** + * <code>bool include_constraints = 3;</code> + * @param value The includeConstraints to set. + * @return This builder for chaining. + */ + public Builder setIncludeConstraints(boolean value) { + + includeConstraints_ = value; + onChanged(); return this; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>bool include_constraints = 3;</code> + * @return This builder for chaining. */ - public Builder removeSliceIds(int index) { - if (sliceIdsBuilder_ == null) { - ensureSliceIdsIsMutable(); - sliceIds_.remove(index); - onChanged(); - } else { - sliceIdsBuilder_.remove(index); - } + public Builder clearIncludeConstraints() { + + includeConstraints_ = false; + onChanged(); return this; } + + private boolean includeServiceIds_ ; /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>bool include_service_ids = 4;</code> + * @return The includeServiceIds. */ - public context.ContextOuterClass.SliceId.Builder getSliceIdsBuilder( - int index) { - return getSliceIdsFieldBuilder().getBuilder(index); + @java.lang.Override + public boolean getIncludeServiceIds() { + return includeServiceIds_; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>bool include_service_ids = 4;</code> + * @param value The includeServiceIds to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.SliceIdOrBuilder getSliceIdsOrBuilder( - int index) { - if (sliceIdsBuilder_ == null) { - return sliceIds_.get(index); } else { - return sliceIdsBuilder_.getMessageOrBuilder(index); - } + public Builder setIncludeServiceIds(boolean value) { + + includeServiceIds_ = value; + onChanged(); + return this; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>bool include_service_ids = 4;</code> + * @return This builder for chaining. */ - public java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> - getSliceIdsOrBuilderList() { - if (sliceIdsBuilder_ != null) { - return sliceIdsBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(sliceIds_); - } + public Builder clearIncludeServiceIds() { + + includeServiceIds_ = false; + onChanged(); + return this; } + + private boolean includeSubsliceIds_ ; /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>bool include_subslice_ids = 5;</code> + * @return The includeSubsliceIds. */ - public context.ContextOuterClass.SliceId.Builder addSliceIdsBuilder() { - return getSliceIdsFieldBuilder().addBuilder( - context.ContextOuterClass.SliceId.getDefaultInstance()); + @java.lang.Override + public boolean getIncludeSubsliceIds() { + return includeSubsliceIds_; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>bool include_subslice_ids = 5;</code> + * @param value The includeSubsliceIds to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.SliceId.Builder addSliceIdsBuilder( - int index) { - return getSliceIdsFieldBuilder().addBuilder( - index, context.ContextOuterClass.SliceId.getDefaultInstance()); + public Builder setIncludeSubsliceIds(boolean value) { + + includeSubsliceIds_ = value; + onChanged(); + return this; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>bool include_subslice_ids = 5;</code> + * @return This builder for chaining. */ - public java.util.List<context.ContextOuterClass.SliceId.Builder> - getSliceIdsBuilderList() { - return getSliceIdsFieldBuilder().getBuilderList(); + public Builder clearIncludeSubsliceIds() { + + includeSubsliceIds_ = false; + onChanged(); + return this; } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> - getSliceIdsFieldBuilder() { - if (sliceIdsBuilder_ == null) { - sliceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder>( - sliceIds_, - ((bitField0_ & 0x00000001) != 0), - getParentForChildren(), - isClean()); - sliceIds_ = null; - } - return sliceIdsBuilder_; + + private boolean includeConfigRules_ ; + /** + * <code>bool include_config_rules = 6;</code> + * @return The includeConfigRules. + */ + @java.lang.Override + public boolean getIncludeConfigRules() { + return includeConfigRules_; + } + /** + * <code>bool include_config_rules = 6;</code> + * @param value The includeConfigRules to set. + * @return This builder for chaining. + */ + public Builder setIncludeConfigRules(boolean value) { + + includeConfigRules_ = value; + onChanged(); + return this; + } + /** + * <code>bool include_config_rules = 6;</code> + * @return This builder for chaining. + */ + public Builder clearIncludeConfigRules() { + + includeConfigRules_ = false; + onChanged(); + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -39532,95 +43371,100 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.SliceIdList) + // @@protoc_insertion_point(builder_scope:context.SliceFilter) } - // @@protoc_insertion_point(class_scope:context.SliceIdList) - private static final context.ContextOuterClass.SliceIdList DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.SliceFilter) + private static final context.ContextOuterClass.SliceFilter DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.SliceIdList(); + DEFAULT_INSTANCE = new context.ContextOuterClass.SliceFilter(); } - public static context.ContextOuterClass.SliceIdList getDefaultInstance() { + public static context.ContextOuterClass.SliceFilter getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<SliceIdList> - PARSER = new com.google.protobuf.AbstractParser<SliceIdList>() { + private static final com.google.protobuf.Parser<SliceFilter> + PARSER = new com.google.protobuf.AbstractParser<SliceFilter>() { @java.lang.Override - public SliceIdList parsePartialFrom( + public SliceFilter parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new SliceIdList(input, extensionRegistry); + return new SliceFilter(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<SliceIdList> parser() { + public static com.google.protobuf.Parser<SliceFilter> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<SliceIdList> getParserForType() { + public com.google.protobuf.Parser<SliceFilter> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.SliceIdList getDefaultInstanceForType() { + public context.ContextOuterClass.SliceFilter getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface SliceListOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.SliceList) + public interface SliceEventOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.SliceEvent) com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. */ - java.util.List<context.ContextOuterClass.Slice> - getSlicesList(); + boolean hasEvent(); /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.Event event = 1;</code> + * @return The event. */ - context.ContextOuterClass.Slice getSlices(int index); + context.ContextOuterClass.Event getEvent(); /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.Event event = 1;</code> */ - int getSlicesCount(); + context.ContextOuterClass.EventOrBuilder getEventOrBuilder(); + /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.SliceId slice_id = 2;</code> + * @return Whether the sliceId field is set. */ - java.util.List<? extends context.ContextOuterClass.SliceOrBuilder> - getSlicesOrBuilderList(); + boolean hasSliceId(); /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.SliceId slice_id = 2;</code> + * @return The sliceId. */ - context.ContextOuterClass.SliceOrBuilder getSlicesOrBuilder( - int index); + context.ContextOuterClass.SliceId getSliceId(); + /** + * <code>.context.SliceId slice_id = 2;</code> + */ + context.ContextOuterClass.SliceIdOrBuilder getSliceIdOrBuilder(); } /** - * Protobuf type {@code context.SliceList} + * Protobuf type {@code context.SliceEvent} */ - public static final class SliceList extends + public static final class SliceEvent extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.SliceList) - SliceListOrBuilder { + // @@protoc_insertion_point(message_implements:context.SliceEvent) + SliceEventOrBuilder { private static final long serialVersionUID = 0L; - // Use SliceList.newBuilder() to construct. - private SliceList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use SliceEvent.newBuilder() to construct. + private SliceEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private SliceList() { - slices_ = java.util.Collections.emptyList(); + private SliceEvent() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new SliceList(); + return new SliceEvent(); } @java.lang.Override @@ -39628,7 +43472,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private SliceList( + private SliceEvent( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -39636,7 +43480,6 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } - int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -39648,12 +43491,29 @@ public final class ContextOuterClass { done = true; break; case 10: { - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - slices_ = new java.util.ArrayList<context.ContextOuterClass.Slice>(); - mutable_bitField0_ |= 0x00000001; + context.ContextOuterClass.Event.Builder subBuilder = null; + if (event_ != null) { + subBuilder = event_.toBuilder(); } - slices_.add( - input.readMessage(context.ContextOuterClass.Slice.parser(), extensionRegistry)); + event_ = input.readMessage(context.ContextOuterClass.Event.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(event_); + event_ = subBuilder.buildPartial(); + } + + break; + } + case 18: { + context.ContextOuterClass.SliceId.Builder subBuilder = null; + if (sliceId_ != null) { + subBuilder = sliceId_.toBuilder(); + } + sliceId_ = input.readMessage(context.ContextOuterClass.SliceId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(sliceId_); + sliceId_ = subBuilder.buildPartial(); + } + break; } default: { @@ -39671,64 +43531,73 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { - if (((mutable_bitField0_ & 0x00000001) != 0)) { - slices_ = java.util.Collections.unmodifiableList(slices_); - } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceList_descriptor; + return context.ContextOuterClass.internal_static_context_SliceEvent_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_SliceEvent_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceList.class, context.ContextOuterClass.SliceList.Builder.class); + context.ContextOuterClass.SliceEvent.class, context.ContextOuterClass.SliceEvent.Builder.class); + } + + public static final int EVENT_FIELD_NUMBER = 1; + private context.ContextOuterClass.Event event_; + /** + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. + */ + @java.lang.Override + public boolean hasEvent() { + return event_ != null; } - - public static final int SLICES_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.Slice> slices_; /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.Event event = 1;</code> + * @return The event. */ @java.lang.Override - public java.util.List<context.ContextOuterClass.Slice> getSlicesList() { - return slices_; + public context.ContextOuterClass.Event getEvent() { + return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; } /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.Event event = 1;</code> */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.SliceOrBuilder> - getSlicesOrBuilderList() { - return slices_; + public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { + return getEvent(); } + + public static final int SLICE_ID_FIELD_NUMBER = 2; + private context.ContextOuterClass.SliceId sliceId_; /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.SliceId slice_id = 2;</code> + * @return Whether the sliceId field is set. */ @java.lang.Override - public int getSlicesCount() { - return slices_.size(); + public boolean hasSliceId() { + return sliceId_ != null; } /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.SliceId slice_id = 2;</code> + * @return The sliceId. */ @java.lang.Override - public context.ContextOuterClass.Slice getSlices(int index) { - return slices_.get(index); + public context.ContextOuterClass.SliceId getSliceId() { + return sliceId_ == null ? context.ContextOuterClass.SliceId.getDefaultInstance() : sliceId_; } /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.SliceId slice_id = 2;</code> */ @java.lang.Override - public context.ContextOuterClass.SliceOrBuilder getSlicesOrBuilder( - int index) { - return slices_.get(index); + public context.ContextOuterClass.SliceIdOrBuilder getSliceIdOrBuilder() { + return getSliceId(); } private byte memoizedIsInitialized = -1; @@ -39745,8 +43614,11 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < slices_.size(); i++) { - output.writeMessage(1, slices_.get(i)); + if (event_ != null) { + output.writeMessage(1, getEvent()); + } + if (sliceId_ != null) { + output.writeMessage(2, getSliceId()); } unknownFields.writeTo(output); } @@ -39757,9 +43629,13 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < slices_.size(); i++) { + if (event_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, slices_.get(i)); + .computeMessageSize(1, getEvent()); + } + if (sliceId_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, getSliceId()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -39771,13 +43647,21 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.SliceList)) { + if (!(obj instanceof context.ContextOuterClass.SliceEvent)) { return super.equals(obj); } - context.ContextOuterClass.SliceList other = (context.ContextOuterClass.SliceList) obj; + context.ContextOuterClass.SliceEvent other = (context.ContextOuterClass.SliceEvent) obj; - if (!getSlicesList() - .equals(other.getSlicesList())) return false; + if (hasEvent() != other.hasEvent()) return false; + if (hasEvent()) { + if (!getEvent() + .equals(other.getEvent())) return false; + } + if (hasSliceId() != other.hasSliceId()) return false; + if (hasSliceId()) { + if (!getSliceId() + .equals(other.getSliceId())) return false; + } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -39789,78 +43673,82 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getSlicesCount() > 0) { - hash = (37 * hash) + SLICES_FIELD_NUMBER; - hash = (53 * hash) + getSlicesList().hashCode(); + if (hasEvent()) { + hash = (37 * hash) + EVENT_FIELD_NUMBER; + hash = (53 * hash) + getEvent().hashCode(); + } + if (hasSliceId()) { + hash = (37 * hash) + SLICE_ID_FIELD_NUMBER; + hash = (53 * hash) + getSliceId().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.SliceList parseFrom( + public static context.ContextOuterClass.SliceEvent parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceList parseFrom( + public static context.ContextOuterClass.SliceEvent parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceList parseFrom( + public static context.ContextOuterClass.SliceEvent parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceList parseFrom( + public static context.ContextOuterClass.SliceEvent parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceList parseFrom(byte[] data) + public static context.ContextOuterClass.SliceEvent parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceList parseFrom( + public static context.ContextOuterClass.SliceEvent parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceList parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.SliceEvent parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceList parseFrom( + public static context.ContextOuterClass.SliceEvent 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 context.ContextOuterClass.SliceList parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.SliceEvent parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceList parseDelimitedFrom( + public static context.ContextOuterClass.SliceEvent 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 context.ContextOuterClass.SliceList parseFrom( + public static context.ContextOuterClass.SliceEvent parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceList parseFrom( + public static context.ContextOuterClass.SliceEvent parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -39873,7 +43761,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.SliceList prototype) { + public static Builder newBuilder(context.ContextOuterClass.SliceEvent prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -39889,26 +43777,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.SliceList} + * Protobuf type {@code context.SliceEvent} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.SliceList) - context.ContextOuterClass.SliceListOrBuilder { + // @@protoc_insertion_point(builder_implements:context.SliceEvent) + context.ContextOuterClass.SliceEventOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceList_descriptor; + return context.ContextOuterClass.internal_static_context_SliceEvent_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_SliceEvent_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceList.class, context.ContextOuterClass.SliceList.Builder.class); + context.ContextOuterClass.SliceEvent.class, context.ContextOuterClass.SliceEvent.Builder.class); } - // Construct using context.ContextOuterClass.SliceList.newBuilder() + // Construct using context.ContextOuterClass.SliceEvent.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -39921,17 +43809,22 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getSlicesFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (slicesBuilder_ == null) { - slices_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + if (eventBuilder_ == null) { + event_ = null; } else { - slicesBuilder_.clear(); + event_ = null; + eventBuilder_ = null; + } + if (sliceIdBuilder_ == null) { + sliceId_ = null; + } else { + sliceId_ = null; + sliceIdBuilder_ = null; } return this; } @@ -39939,17 +43832,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_SliceList_descriptor; + return context.ContextOuterClass.internal_static_context_SliceEvent_descriptor; } @java.lang.Override - public context.ContextOuterClass.SliceList getDefaultInstanceForType() { - return context.ContextOuterClass.SliceList.getDefaultInstance(); + public context.ContextOuterClass.SliceEvent getDefaultInstanceForType() { + return context.ContextOuterClass.SliceEvent.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.SliceList build() { - context.ContextOuterClass.SliceList result = buildPartial(); + public context.ContextOuterClass.SliceEvent build() { + context.ContextOuterClass.SliceEvent result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -39957,17 +43850,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.SliceList buildPartial() { - context.ContextOuterClass.SliceList result = new context.ContextOuterClass.SliceList(this); - int from_bitField0_ = bitField0_; - if (slicesBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { - slices_ = java.util.Collections.unmodifiableList(slices_); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.slices_ = slices_; + public context.ContextOuterClass.SliceEvent buildPartial() { + context.ContextOuterClass.SliceEvent result = new context.ContextOuterClass.SliceEvent(this); + if (eventBuilder_ == null) { + result.event_ = event_; } else { - result.slices_ = slicesBuilder_.build(); + result.event_ = eventBuilder_.build(); + } + if (sliceIdBuilder_ == null) { + result.sliceId_ = sliceId_; + } else { + result.sliceId_ = sliceIdBuilder_.build(); } onBuilt(); return result; @@ -40007,41 +43900,21 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.SliceList) { - return mergeFrom((context.ContextOuterClass.SliceList)other); + if (other instanceof context.ContextOuterClass.SliceEvent) { + return mergeFrom((context.ContextOuterClass.SliceEvent)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.SliceList other) { - if (other == context.ContextOuterClass.SliceList.getDefaultInstance()) return this; - if (slicesBuilder_ == null) { - if (!other.slices_.isEmpty()) { - if (slices_.isEmpty()) { - slices_ = other.slices_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureSlicesIsMutable(); - slices_.addAll(other.slices_); - } - onChanged(); - } - } else { - if (!other.slices_.isEmpty()) { - if (slicesBuilder_.isEmpty()) { - slicesBuilder_.dispose(); - slicesBuilder_ = null; - slices_ = other.slices_; - bitField0_ = (bitField0_ & ~0x00000001); - slicesBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getSlicesFieldBuilder() : null; - } else { - slicesBuilder_.addAllMessages(other.slices_); - } - } + public Builder mergeFrom(context.ContextOuterClass.SliceEvent other) { + if (other == context.ContextOuterClass.SliceEvent.getDefaultInstance()) return this; + if (other.hasEvent()) { + mergeEvent(other.getEvent()); + } + if (other.hasSliceId()) { + mergeSliceId(other.getSliceId()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -40058,11 +43931,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.SliceList parsedMessage = null; + context.ContextOuterClass.SliceEvent parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.SliceList) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.SliceEvent) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -40071,246 +43944,243 @@ public final class ContextOuterClass { } return this; } - private int bitField0_; - - private java.util.List<context.ContextOuterClass.Slice> slices_ = - java.util.Collections.emptyList(); - private void ensureSlicesIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - slices_ = new java.util.ArrayList<context.ContextOuterClass.Slice>(slices_); - bitField0_ |= 0x00000001; - } - } - - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Slice, context.ContextOuterClass.Slice.Builder, context.ContextOuterClass.SliceOrBuilder> slicesBuilder_; + private context.ContextOuterClass.Event event_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> eventBuilder_; /** - * <code>repeated .context.Slice slices = 1;</code> - */ - public java.util.List<context.ContextOuterClass.Slice> getSlicesList() { - if (slicesBuilder_ == null) { - return java.util.Collections.unmodifiableList(slices_); - } else { - return slicesBuilder_.getMessageList(); - } - } - /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. */ - public int getSlicesCount() { - if (slicesBuilder_ == null) { - return slices_.size(); - } else { - return slicesBuilder_.getCount(); - } + public boolean hasEvent() { + return eventBuilder_ != null || event_ != null; } /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.Event event = 1;</code> + * @return The event. */ - public context.ContextOuterClass.Slice getSlices(int index) { - if (slicesBuilder_ == null) { - return slices_.get(index); + public context.ContextOuterClass.Event getEvent() { + if (eventBuilder_ == null) { + return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; } else { - return slicesBuilder_.getMessage(index); + return eventBuilder_.getMessage(); } } /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.Event event = 1;</code> */ - public Builder setSlices( - int index, context.ContextOuterClass.Slice value) { - if (slicesBuilder_ == null) { + public Builder setEvent(context.ContextOuterClass.Event value) { + if (eventBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureSlicesIsMutable(); - slices_.set(index, value); + event_ = value; onChanged(); } else { - slicesBuilder_.setMessage(index, value); + eventBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.Event event = 1;</code> */ - public Builder setSlices( - int index, context.ContextOuterClass.Slice.Builder builderForValue) { - if (slicesBuilder_ == null) { - ensureSlicesIsMutable(); - slices_.set(index, builderForValue.build()); + public Builder setEvent( + context.ContextOuterClass.Event.Builder builderForValue) { + if (eventBuilder_ == null) { + event_ = builderForValue.build(); onChanged(); } else { - slicesBuilder_.setMessage(index, builderForValue.build()); + eventBuilder_.setMessage(builderForValue.build()); } + return this; } /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.Event event = 1;</code> */ - public Builder addSlices(context.ContextOuterClass.Slice value) { - if (slicesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + public Builder mergeEvent(context.ContextOuterClass.Event value) { + if (eventBuilder_ == null) { + if (event_ != null) { + event_ = + context.ContextOuterClass.Event.newBuilder(event_).mergeFrom(value).buildPartial(); + } else { + event_ = value; } - ensureSlicesIsMutable(); - slices_.add(value); onChanged(); } else { - slicesBuilder_.addMessage(value); + eventBuilder_.mergeFrom(value); } + return this; } /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.Event event = 1;</code> */ - public Builder addSlices( - int index, context.ContextOuterClass.Slice value) { - if (slicesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSlicesIsMutable(); - slices_.add(index, value); + public Builder clearEvent() { + if (eventBuilder_ == null) { + event_ = null; onChanged(); } else { - slicesBuilder_.addMessage(index, value); + event_ = null; + eventBuilder_ = null; } + return this; } /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.Event event = 1;</code> */ - public Builder addSlices( - context.ContextOuterClass.Slice.Builder builderForValue) { - if (slicesBuilder_ == null) { - ensureSlicesIsMutable(); - slices_.add(builderForValue.build()); - onChanged(); + public context.ContextOuterClass.Event.Builder getEventBuilder() { + + onChanged(); + return getEventFieldBuilder().getBuilder(); + } + /** + * <code>.context.Event event = 1;</code> + */ + public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { + if (eventBuilder_ != null) { + return eventBuilder_.getMessageOrBuilder(); } else { - slicesBuilder_.addMessage(builderForValue.build()); + return event_ == null ? + context.ContextOuterClass.Event.getDefaultInstance() : event_; } - return this; } /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.Event event = 1;</code> */ - public Builder addSlices( - int index, context.ContextOuterClass.Slice.Builder builderForValue) { - if (slicesBuilder_ == null) { - ensureSlicesIsMutable(); - slices_.add(index, builderForValue.build()); - onChanged(); - } else { - slicesBuilder_.addMessage(index, builderForValue.build()); + 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(), + getParentForChildren(), + isClean()); + event_ = null; } - return this; + return eventBuilder_; } + + private context.ContextOuterClass.SliceId sliceId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> sliceIdBuilder_; /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.SliceId slice_id = 2;</code> + * @return Whether the sliceId field is set. */ - public Builder addAllSlices( - java.lang.Iterable<? extends context.ContextOuterClass.Slice> values) { - if (slicesBuilder_ == null) { - ensureSlicesIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, slices_); - onChanged(); + public boolean hasSliceId() { + return sliceIdBuilder_ != null || sliceId_ != null; + } + /** + * <code>.context.SliceId slice_id = 2;</code> + * @return The sliceId. + */ + public context.ContextOuterClass.SliceId getSliceId() { + if (sliceIdBuilder_ == null) { + return sliceId_ == null ? context.ContextOuterClass.SliceId.getDefaultInstance() : sliceId_; } else { - slicesBuilder_.addAllMessages(values); + return sliceIdBuilder_.getMessage(); } - return this; } /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.SliceId slice_id = 2;</code> */ - public Builder clearSlices() { - if (slicesBuilder_ == null) { - slices_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + public Builder setSliceId(context.ContextOuterClass.SliceId value) { + if (sliceIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + sliceId_ = value; onChanged(); } else { - slicesBuilder_.clear(); + sliceIdBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.SliceId slice_id = 2;</code> */ - public Builder removeSlices(int index) { - if (slicesBuilder_ == null) { - ensureSlicesIsMutable(); - slices_.remove(index); + public Builder setSliceId( + context.ContextOuterClass.SliceId.Builder builderForValue) { + if (sliceIdBuilder_ == null) { + sliceId_ = builderForValue.build(); onChanged(); } else { - slicesBuilder_.remove(index); + sliceIdBuilder_.setMessage(builderForValue.build()); } + return this; } /** - * <code>repeated .context.Slice slices = 1;</code> - */ - public context.ContextOuterClass.Slice.Builder getSlicesBuilder( - int index) { - return getSlicesFieldBuilder().getBuilder(index); - } - /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.SliceId slice_id = 2;</code> */ - public context.ContextOuterClass.SliceOrBuilder getSlicesOrBuilder( - int index) { - if (slicesBuilder_ == null) { - return slices_.get(index); } else { - return slicesBuilder_.getMessageOrBuilder(index); + public Builder mergeSliceId(context.ContextOuterClass.SliceId value) { + if (sliceIdBuilder_ == null) { + if (sliceId_ != null) { + sliceId_ = + context.ContextOuterClass.SliceId.newBuilder(sliceId_).mergeFrom(value).buildPartial(); + } else { + sliceId_ = value; + } + onChanged(); + } else { + sliceIdBuilder_.mergeFrom(value); } + + return this; } /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.SliceId slice_id = 2;</code> */ - public java.util.List<? extends context.ContextOuterClass.SliceOrBuilder> - getSlicesOrBuilderList() { - if (slicesBuilder_ != null) { - return slicesBuilder_.getMessageOrBuilderList(); + public Builder clearSliceId() { + if (sliceIdBuilder_ == null) { + sliceId_ = null; + onChanged(); } else { - return java.util.Collections.unmodifiableList(slices_); + sliceId_ = null; + sliceIdBuilder_ = null; } + + return this; } /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.SliceId slice_id = 2;</code> */ - public context.ContextOuterClass.Slice.Builder addSlicesBuilder() { - return getSlicesFieldBuilder().addBuilder( - context.ContextOuterClass.Slice.getDefaultInstance()); + public context.ContextOuterClass.SliceId.Builder getSliceIdBuilder() { + + onChanged(); + return getSliceIdFieldBuilder().getBuilder(); } /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.SliceId slice_id = 2;</code> */ - public context.ContextOuterClass.Slice.Builder addSlicesBuilder( - int index) { - return getSlicesFieldBuilder().addBuilder( - index, context.ContextOuterClass.Slice.getDefaultInstance()); + public context.ContextOuterClass.SliceIdOrBuilder getSliceIdOrBuilder() { + if (sliceIdBuilder_ != null) { + return sliceIdBuilder_.getMessageOrBuilder(); + } else { + return sliceId_ == null ? + context.ContextOuterClass.SliceId.getDefaultInstance() : sliceId_; + } } /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>.context.SliceId slice_id = 2;</code> */ - public java.util.List<context.ContextOuterClass.Slice.Builder> - getSlicesBuilderList() { - return getSlicesFieldBuilder().getBuilderList(); - } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Slice, context.ContextOuterClass.Slice.Builder, context.ContextOuterClass.SliceOrBuilder> - getSlicesFieldBuilder() { - if (slicesBuilder_ == null) { - slicesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Slice, context.ContextOuterClass.Slice.Builder, context.ContextOuterClass.SliceOrBuilder>( - slices_, - ((bitField0_ & 0x00000001) != 0), + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> + getSliceIdFieldBuilder() { + if (sliceIdBuilder_ == null) { + sliceIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder>( + getSliceId(), getParentForChildren(), isClean()); - slices_ = null; + sliceId_ = null; } - return slicesBuilder_; + return sliceIdBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -40325,100 +44195,89 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.SliceList) + // @@protoc_insertion_point(builder_scope:context.SliceEvent) } - // @@protoc_insertion_point(class_scope:context.SliceList) - private static final context.ContextOuterClass.SliceList DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.SliceEvent) + private static final context.ContextOuterClass.SliceEvent DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.SliceList(); + DEFAULT_INSTANCE = new context.ContextOuterClass.SliceEvent(); } - public static context.ContextOuterClass.SliceList getDefaultInstance() { + public static context.ContextOuterClass.SliceEvent getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<SliceList> - PARSER = new com.google.protobuf.AbstractParser<SliceList>() { + private static final com.google.protobuf.Parser<SliceEvent> + PARSER = new com.google.protobuf.AbstractParser<SliceEvent>() { @java.lang.Override - public SliceList parsePartialFrom( + public SliceEvent parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new SliceList(input, extensionRegistry); + return new SliceEvent(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<SliceList> parser() { + public static com.google.protobuf.Parser<SliceEvent> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<SliceList> getParserForType() { + public com.google.protobuf.Parser<SliceEvent> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.SliceList getDefaultInstanceForType() { + public context.ContextOuterClass.SliceEvent getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface SliceEventOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.SliceEvent) + public interface ConnectionIdOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ConnectionId) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. - */ - boolean hasEvent(); - /** - * <code>.context.Event event = 1;</code> - * @return The event. - */ - context.ContextOuterClass.Event getEvent(); - /** - * <code>.context.Event event = 1;</code> - */ - context.ContextOuterClass.EventOrBuilder getEventOrBuilder(); - - /** - * <code>.context.SliceId slice_id = 2;</code> - * @return Whether the sliceId field is set. + * <code>.context.Uuid connection_uuid = 1;</code> + * @return Whether the connectionUuid field is set. */ - boolean hasSliceId(); + boolean hasConnectionUuid(); /** - * <code>.context.SliceId slice_id = 2;</code> - * @return The sliceId. + * <code>.context.Uuid connection_uuid = 1;</code> + * @return The connectionUuid. */ - context.ContextOuterClass.SliceId getSliceId(); + context.ContextOuterClass.Uuid getConnectionUuid(); /** - * <code>.context.SliceId slice_id = 2;</code> + * <code>.context.Uuid connection_uuid = 1;</code> */ - context.ContextOuterClass.SliceIdOrBuilder getSliceIdOrBuilder(); + context.ContextOuterClass.UuidOrBuilder getConnectionUuidOrBuilder(); } /** - * Protobuf type {@code context.SliceEvent} + * <pre> + * ----- Connection ---------------------------------------------------------------------------------------------------- + * </pre> + * + * Protobuf type {@code context.ConnectionId} */ - public static final class SliceEvent extends + public static final class ConnectionId extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.SliceEvent) - SliceEventOrBuilder { + // @@protoc_insertion_point(message_implements:context.ConnectionId) + ConnectionIdOrBuilder { private static final long serialVersionUID = 0L; - // Use SliceEvent.newBuilder() to construct. - private SliceEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ConnectionId.newBuilder() to construct. + private ConnectionId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private SliceEvent() { + private ConnectionId() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new SliceEvent(); + return new ConnectionId(); } @java.lang.Override @@ -40426,7 +44285,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private SliceEvent( + private ConnectionId( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -40445,27 +44304,14 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.Event.Builder subBuilder = null; - if (event_ != null) { - subBuilder = event_.toBuilder(); - } - event_ = input.readMessage(context.ContextOuterClass.Event.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(event_); - event_ = subBuilder.buildPartial(); - } - - break; - } - case 18: { - context.ContextOuterClass.SliceId.Builder subBuilder = null; - if (sliceId_ != null) { - subBuilder = sliceId_.toBuilder(); + context.ContextOuterClass.Uuid.Builder subBuilder = null; + if (connectionUuid_ != null) { + subBuilder = connectionUuid_.toBuilder(); } - sliceId_ = input.readMessage(context.ContextOuterClass.SliceId.parser(), extensionRegistry); + connectionUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(sliceId_); - sliceId_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(connectionUuid_); + connectionUuid_ = subBuilder.buildPartial(); } break; @@ -40491,67 +44337,41 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceEvent_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionId_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceEvent_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionId_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceEvent.class, context.ContextOuterClass.SliceEvent.Builder.class); - } - - public static final int EVENT_FIELD_NUMBER = 1; - private context.ContextOuterClass.Event event_; - /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. - */ - @java.lang.Override - public boolean hasEvent() { - return event_ != null; - } - /** - * <code>.context.Event event = 1;</code> - * @return The event. - */ - @java.lang.Override - public context.ContextOuterClass.Event getEvent() { - return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; - } - /** - * <code>.context.Event event = 1;</code> - */ - @java.lang.Override - public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { - return getEvent(); + context.ContextOuterClass.ConnectionId.class, context.ContextOuterClass.ConnectionId.Builder.class); } - public static final int SLICE_ID_FIELD_NUMBER = 2; - private context.ContextOuterClass.SliceId sliceId_; + public static final int CONNECTION_UUID_FIELD_NUMBER = 1; + private context.ContextOuterClass.Uuid connectionUuid_; /** - * <code>.context.SliceId slice_id = 2;</code> - * @return Whether the sliceId field is set. + * <code>.context.Uuid connection_uuid = 1;</code> + * @return Whether the connectionUuid field is set. */ @java.lang.Override - public boolean hasSliceId() { - return sliceId_ != null; + public boolean hasConnectionUuid() { + return connectionUuid_ != null; } /** - * <code>.context.SliceId slice_id = 2;</code> - * @return The sliceId. + * <code>.context.Uuid connection_uuid = 1;</code> + * @return The connectionUuid. */ @java.lang.Override - public context.ContextOuterClass.SliceId getSliceId() { - return sliceId_ == null ? context.ContextOuterClass.SliceId.getDefaultInstance() : sliceId_; + public context.ContextOuterClass.Uuid getConnectionUuid() { + return connectionUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : connectionUuid_; } /** - * <code>.context.SliceId slice_id = 2;</code> + * <code>.context.Uuid connection_uuid = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.SliceIdOrBuilder getSliceIdOrBuilder() { - return getSliceId(); + public context.ContextOuterClass.UuidOrBuilder getConnectionUuidOrBuilder() { + return getConnectionUuid(); } private byte memoizedIsInitialized = -1; @@ -40568,11 +44388,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (event_ != null) { - output.writeMessage(1, getEvent()); - } - if (sliceId_ != null) { - output.writeMessage(2, getSliceId()); + if (connectionUuid_ != null) { + output.writeMessage(1, getConnectionUuid()); } unknownFields.writeTo(output); } @@ -40583,13 +44400,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (event_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getEvent()); - } - if (sliceId_ != null) { + if (connectionUuid_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, getSliceId()); + .computeMessageSize(1, getConnectionUuid()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -40601,20 +44414,15 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.SliceEvent)) { + if (!(obj instanceof context.ContextOuterClass.ConnectionId)) { return super.equals(obj); } - context.ContextOuterClass.SliceEvent other = (context.ContextOuterClass.SliceEvent) obj; + context.ContextOuterClass.ConnectionId other = (context.ContextOuterClass.ConnectionId) obj; - if (hasEvent() != other.hasEvent()) return false; - if (hasEvent()) { - if (!getEvent() - .equals(other.getEvent())) return false; - } - if (hasSliceId() != other.hasSliceId()) return false; - if (hasSliceId()) { - if (!getSliceId() - .equals(other.getSliceId())) return false; + if (hasConnectionUuid() != other.hasConnectionUuid()) return false; + if (hasConnectionUuid()) { + if (!getConnectionUuid() + .equals(other.getConnectionUuid())) return false; } if (!unknownFields.equals(other.unknownFields)) return false; return true; @@ -40627,82 +44435,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasEvent()) { - hash = (37 * hash) + EVENT_FIELD_NUMBER; - hash = (53 * hash) + getEvent().hashCode(); - } - if (hasSliceId()) { - hash = (37 * hash) + SLICE_ID_FIELD_NUMBER; - hash = (53 * hash) + getSliceId().hashCode(); + if (hasConnectionUuid()) { + hash = (37 * hash) + CONNECTION_UUID_FIELD_NUMBER; + hash = (53 * hash) + getConnectionUuid().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.SliceEvent parseFrom( + public static context.ContextOuterClass.ConnectionId parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceEvent parseFrom( + public static context.ContextOuterClass.ConnectionId parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceEvent parseFrom( + public static context.ContextOuterClass.ConnectionId parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceEvent parseFrom( + public static context.ContextOuterClass.ConnectionId parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceEvent parseFrom(byte[] data) + public static context.ContextOuterClass.ConnectionId parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceEvent parseFrom( + public static context.ContextOuterClass.ConnectionId parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceEvent parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionId parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceEvent parseFrom( + public static context.ContextOuterClass.ConnectionId 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 context.ContextOuterClass.SliceEvent parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionId parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceEvent parseDelimitedFrom( + public static context.ContextOuterClass.ConnectionId 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 context.ContextOuterClass.SliceEvent parseFrom( + public static context.ContextOuterClass.ConnectionId parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceEvent parseFrom( + public static context.ContextOuterClass.ConnectionId parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -40715,7 +44519,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.SliceEvent prototype) { + public static Builder newBuilder(context.ContextOuterClass.ConnectionId prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -40731,26 +44535,30 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.SliceEvent} + * <pre> + * ----- Connection ---------------------------------------------------------------------------------------------------- + * </pre> + * + * Protobuf type {@code context.ConnectionId} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.SliceEvent) - context.ContextOuterClass.SliceEventOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ConnectionId) + context.ContextOuterClass.ConnectionIdOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceEvent_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionId_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceEvent_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionId_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceEvent.class, context.ContextOuterClass.SliceEvent.Builder.class); + context.ContextOuterClass.ConnectionId.class, context.ContextOuterClass.ConnectionId.Builder.class); } - // Construct using context.ContextOuterClass.SliceEvent.newBuilder() + // Construct using context.ContextOuterClass.ConnectionId.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -40768,17 +44576,11 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - if (eventBuilder_ == null) { - event_ = null; - } else { - event_ = null; - eventBuilder_ = null; - } - if (sliceIdBuilder_ == null) { - sliceId_ = null; + if (connectionUuidBuilder_ == null) { + connectionUuid_ = null; } else { - sliceId_ = null; - sliceIdBuilder_ = null; + connectionUuid_ = null; + connectionUuidBuilder_ = null; } return this; } @@ -40786,17 +44588,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_SliceEvent_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionId_descriptor; } @java.lang.Override - public context.ContextOuterClass.SliceEvent getDefaultInstanceForType() { - return context.ContextOuterClass.SliceEvent.getDefaultInstance(); + public context.ContextOuterClass.ConnectionId getDefaultInstanceForType() { + return context.ContextOuterClass.ConnectionId.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.SliceEvent build() { - context.ContextOuterClass.SliceEvent result = buildPartial(); + public context.ContextOuterClass.ConnectionId build() { + context.ContextOuterClass.ConnectionId result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -40804,17 +44606,12 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.SliceEvent buildPartial() { - context.ContextOuterClass.SliceEvent result = new context.ContextOuterClass.SliceEvent(this); - if (eventBuilder_ == null) { - result.event_ = event_; - } else { - result.event_ = eventBuilder_.build(); - } - if (sliceIdBuilder_ == null) { - result.sliceId_ = sliceId_; + public context.ContextOuterClass.ConnectionId buildPartial() { + context.ContextOuterClass.ConnectionId result = new context.ContextOuterClass.ConnectionId(this); + if (connectionUuidBuilder_ == null) { + result.connectionUuid_ = connectionUuid_; } else { - result.sliceId_ = sliceIdBuilder_.build(); + result.connectionUuid_ = connectionUuidBuilder_.build(); } onBuilt(); return result; @@ -40854,21 +44651,18 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.SliceEvent) { - return mergeFrom((context.ContextOuterClass.SliceEvent)other); + if (other instanceof context.ContextOuterClass.ConnectionId) { + return mergeFrom((context.ContextOuterClass.ConnectionId)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.SliceEvent other) { - if (other == context.ContextOuterClass.SliceEvent.getDefaultInstance()) return this; - if (other.hasEvent()) { - mergeEvent(other.getEvent()); - } - if (other.hasSliceId()) { - mergeSliceId(other.getSliceId()); + public Builder mergeFrom(context.ContextOuterClass.ConnectionId other) { + if (other == context.ContextOuterClass.ConnectionId.getDefaultInstance()) return this; + if (other.hasConnectionUuid()) { + mergeConnectionUuid(other.getConnectionUuid()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -40885,11 +44679,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.SliceEvent parsedMessage = null; + context.ContextOuterClass.ConnectionId parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.SliceEvent) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ConnectionId) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -40899,242 +44693,123 @@ public final class ContextOuterClass { return this; } - private context.ContextOuterClass.Event event_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> eventBuilder_; - /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. - */ - public boolean hasEvent() { - return eventBuilder_ != null || event_ != null; - } - /** - * <code>.context.Event event = 1;</code> - * @return The event. - */ - public context.ContextOuterClass.Event getEvent() { - if (eventBuilder_ == null) { - return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; - } else { - return eventBuilder_.getMessage(); - } - } - /** - * <code>.context.Event event = 1;</code> - */ - public Builder setEvent(context.ContextOuterClass.Event value) { - if (eventBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - event_ = value; - onChanged(); - } else { - eventBuilder_.setMessage(value); - } - - return this; - } - /** - * <code>.context.Event event = 1;</code> - */ - public Builder setEvent( - context.ContextOuterClass.Event.Builder builderForValue) { - if (eventBuilder_ == null) { - event_ = builderForValue.build(); - onChanged(); - } else { - eventBuilder_.setMessage(builderForValue.build()); - } - - return this; - } - /** - * <code>.context.Event event = 1;</code> - */ - public Builder mergeEvent(context.ContextOuterClass.Event value) { - if (eventBuilder_ == null) { - if (event_ != null) { - event_ = - context.ContextOuterClass.Event.newBuilder(event_).mergeFrom(value).buildPartial(); - } else { - event_ = value; - } - onChanged(); - } else { - eventBuilder_.mergeFrom(value); - } - - return this; - } - /** - * <code>.context.Event event = 1;</code> - */ - public Builder clearEvent() { - if (eventBuilder_ == null) { - event_ = null; - onChanged(); - } else { - event_ = null; - eventBuilder_ = null; - } - - return this; - } - /** - * <code>.context.Event event = 1;</code> - */ - public context.ContextOuterClass.Event.Builder getEventBuilder() { - - onChanged(); - return getEventFieldBuilder().getBuilder(); - } - /** - * <code>.context.Event event = 1;</code> - */ - public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { - if (eventBuilder_ != null) { - return eventBuilder_.getMessageOrBuilder(); - } else { - return event_ == null ? - context.ContextOuterClass.Event.getDefaultInstance() : event_; - } - } - /** - * <code>.context.Event event = 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(), - getParentForChildren(), - isClean()); - event_ = null; - } - return eventBuilder_; - } - - private context.ContextOuterClass.SliceId sliceId_; + private context.ContextOuterClass.Uuid connectionUuid_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> sliceIdBuilder_; + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> connectionUuidBuilder_; /** - * <code>.context.SliceId slice_id = 2;</code> - * @return Whether the sliceId field is set. + * <code>.context.Uuid connection_uuid = 1;</code> + * @return Whether the connectionUuid field is set. */ - public boolean hasSliceId() { - return sliceIdBuilder_ != null || sliceId_ != null; + public boolean hasConnectionUuid() { + return connectionUuidBuilder_ != null || connectionUuid_ != null; } /** - * <code>.context.SliceId slice_id = 2;</code> - * @return The sliceId. + * <code>.context.Uuid connection_uuid = 1;</code> + * @return The connectionUuid. */ - public context.ContextOuterClass.SliceId getSliceId() { - if (sliceIdBuilder_ == null) { - return sliceId_ == null ? context.ContextOuterClass.SliceId.getDefaultInstance() : sliceId_; + public context.ContextOuterClass.Uuid getConnectionUuid() { + if (connectionUuidBuilder_ == null) { + return connectionUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : connectionUuid_; } else { - return sliceIdBuilder_.getMessage(); + return connectionUuidBuilder_.getMessage(); } } /** - * <code>.context.SliceId slice_id = 2;</code> + * <code>.context.Uuid connection_uuid = 1;</code> */ - public Builder setSliceId(context.ContextOuterClass.SliceId value) { - if (sliceIdBuilder_ == null) { + public Builder setConnectionUuid(context.ContextOuterClass.Uuid value) { + if (connectionUuidBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - sliceId_ = value; + connectionUuid_ = value; onChanged(); } else { - sliceIdBuilder_.setMessage(value); + connectionUuidBuilder_.setMessage(value); } return this; } /** - * <code>.context.SliceId slice_id = 2;</code> + * <code>.context.Uuid connection_uuid = 1;</code> */ - public Builder setSliceId( - context.ContextOuterClass.SliceId.Builder builderForValue) { - if (sliceIdBuilder_ == null) { - sliceId_ = builderForValue.build(); + public Builder setConnectionUuid( + context.ContextOuterClass.Uuid.Builder builderForValue) { + if (connectionUuidBuilder_ == null) { + connectionUuid_ = builderForValue.build(); onChanged(); } else { - sliceIdBuilder_.setMessage(builderForValue.build()); + connectionUuidBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.SliceId slice_id = 2;</code> + * <code>.context.Uuid connection_uuid = 1;</code> */ - public Builder mergeSliceId(context.ContextOuterClass.SliceId value) { - if (sliceIdBuilder_ == null) { - if (sliceId_ != null) { - sliceId_ = - context.ContextOuterClass.SliceId.newBuilder(sliceId_).mergeFrom(value).buildPartial(); + public Builder mergeConnectionUuid(context.ContextOuterClass.Uuid value) { + if (connectionUuidBuilder_ == null) { + if (connectionUuid_ != null) { + connectionUuid_ = + context.ContextOuterClass.Uuid.newBuilder(connectionUuid_).mergeFrom(value).buildPartial(); } else { - sliceId_ = value; + connectionUuid_ = value; } onChanged(); } else { - sliceIdBuilder_.mergeFrom(value); + connectionUuidBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.SliceId slice_id = 2;</code> + * <code>.context.Uuid connection_uuid = 1;</code> */ - public Builder clearSliceId() { - if (sliceIdBuilder_ == null) { - sliceId_ = null; + public Builder clearConnectionUuid() { + if (connectionUuidBuilder_ == null) { + connectionUuid_ = null; onChanged(); } else { - sliceId_ = null; - sliceIdBuilder_ = null; + connectionUuid_ = null; + connectionUuidBuilder_ = null; } return this; } /** - * <code>.context.SliceId slice_id = 2;</code> + * <code>.context.Uuid connection_uuid = 1;</code> */ - public context.ContextOuterClass.SliceId.Builder getSliceIdBuilder() { + public context.ContextOuterClass.Uuid.Builder getConnectionUuidBuilder() { onChanged(); - return getSliceIdFieldBuilder().getBuilder(); + return getConnectionUuidFieldBuilder().getBuilder(); } /** - * <code>.context.SliceId slice_id = 2;</code> + * <code>.context.Uuid connection_uuid = 1;</code> */ - public context.ContextOuterClass.SliceIdOrBuilder getSliceIdOrBuilder() { - if (sliceIdBuilder_ != null) { - return sliceIdBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.UuidOrBuilder getConnectionUuidOrBuilder() { + if (connectionUuidBuilder_ != null) { + return connectionUuidBuilder_.getMessageOrBuilder(); } else { - return sliceId_ == null ? - context.ContextOuterClass.SliceId.getDefaultInstance() : sliceId_; + return connectionUuid_ == null ? + context.ContextOuterClass.Uuid.getDefaultInstance() : connectionUuid_; } } /** - * <code>.context.SliceId slice_id = 2;</code> + * <code>.context.Uuid connection_uuid = 1;</code> */ private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> - getSliceIdFieldBuilder() { - if (sliceIdBuilder_ == null) { - sliceIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder>( - getSliceId(), + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> + getConnectionUuidFieldBuilder() { + if (connectionUuidBuilder_ == null) { + connectionUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>( + getConnectionUuid(), getParentForChildren(), isClean()); - sliceId_ = null; + connectionUuid_ = null; } - return sliceIdBuilder_; + return connectionUuidBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -41149,89 +44824,83 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.SliceEvent) + // @@protoc_insertion_point(builder_scope:context.ConnectionId) } - // @@protoc_insertion_point(class_scope:context.SliceEvent) - private static final context.ContextOuterClass.SliceEvent DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ConnectionId) + private static final context.ContextOuterClass.ConnectionId DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.SliceEvent(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionId(); } - public static context.ContextOuterClass.SliceEvent getDefaultInstance() { + public static context.ContextOuterClass.ConnectionId getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<SliceEvent> - PARSER = new com.google.protobuf.AbstractParser<SliceEvent>() { + private static final com.google.protobuf.Parser<ConnectionId> + PARSER = new com.google.protobuf.AbstractParser<ConnectionId>() { @java.lang.Override - public SliceEvent parsePartialFrom( + public ConnectionId parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new SliceEvent(input, extensionRegistry); + return new ConnectionId(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<SliceEvent> parser() { + public static com.google.protobuf.Parser<ConnectionId> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<SliceEvent> getParserForType() { + public com.google.protobuf.Parser<ConnectionId> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.SliceEvent getDefaultInstanceForType() { + public context.ContextOuterClass.ConnectionId getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ConnectionIdOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ConnectionId) + public interface ConnectionSettings_L0OrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ConnectionSettings_L0) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.Uuid connection_uuid = 1;</code> - * @return Whether the connectionUuid field is set. - */ - boolean hasConnectionUuid(); - /** - * <code>.context.Uuid connection_uuid = 1;</code> - * @return The connectionUuid. + * <code>string lsp_symbolic_name = 1;</code> + * @return The lspSymbolicName. */ - context.ContextOuterClass.Uuid getConnectionUuid(); + java.lang.String getLspSymbolicName(); /** - * <code>.context.Uuid connection_uuid = 1;</code> + * <code>string lsp_symbolic_name = 1;</code> + * @return The bytes for lspSymbolicName. */ - context.ContextOuterClass.UuidOrBuilder getConnectionUuidOrBuilder(); + com.google.protobuf.ByteString + getLspSymbolicNameBytes(); } /** - * <pre> - * ----- Connection ---------------------------------------------------------------------------------------------------- - * </pre> - * - * Protobuf type {@code context.ConnectionId} + * Protobuf type {@code context.ConnectionSettings_L0} */ - public static final class ConnectionId extends + public static final class ConnectionSettings_L0 extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ConnectionId) - ConnectionIdOrBuilder { + // @@protoc_insertion_point(message_implements:context.ConnectionSettings_L0) + ConnectionSettings_L0OrBuilder { private static final long serialVersionUID = 0L; - // Use ConnectionId.newBuilder() to construct. - private ConnectionId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ConnectionSettings_L0.newBuilder() to construct. + private ConnectionSettings_L0(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ConnectionId() { + private ConnectionSettings_L0() { + lspSymbolicName_ = ""; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ConnectionId(); + return new ConnectionSettings_L0(); } @java.lang.Override @@ -41239,7 +44908,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ConnectionId( + private ConnectionSettings_L0( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -41258,16 +44927,9 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.Uuid.Builder subBuilder = null; - if (connectionUuid_ != null) { - subBuilder = connectionUuid_.toBuilder(); - } - connectionUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(connectionUuid_); - connectionUuid_ = subBuilder.buildPartial(); - } + java.lang.String s = input.readStringRequireUtf8(); + lspSymbolicName_ = s; break; } default: { @@ -41291,41 +44953,53 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionId_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L0_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionId_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L0_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionId.class, context.ContextOuterClass.ConnectionId.Builder.class); + context.ContextOuterClass.ConnectionSettings_L0.class, context.ContextOuterClass.ConnectionSettings_L0.Builder.class); } - public static final int CONNECTION_UUID_FIELD_NUMBER = 1; - private context.ContextOuterClass.Uuid connectionUuid_; - /** - * <code>.context.Uuid connection_uuid = 1;</code> - * @return Whether the connectionUuid field is set. - */ - @java.lang.Override - public boolean hasConnectionUuid() { - return connectionUuid_ != null; - } + public static final int LSP_SYMBOLIC_NAME_FIELD_NUMBER = 1; + private volatile java.lang.Object lspSymbolicName_; /** - * <code>.context.Uuid connection_uuid = 1;</code> - * @return The connectionUuid. + * <code>string lsp_symbolic_name = 1;</code> + * @return The lspSymbolicName. */ @java.lang.Override - public context.ContextOuterClass.Uuid getConnectionUuid() { - return connectionUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : connectionUuid_; + public java.lang.String getLspSymbolicName() { + java.lang.Object ref = lspSymbolicName_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + lspSymbolicName_ = s; + return s; + } } /** - * <code>.context.Uuid connection_uuid = 1;</code> + * <code>string lsp_symbolic_name = 1;</code> + * @return The bytes for lspSymbolicName. */ @java.lang.Override - public context.ContextOuterClass.UuidOrBuilder getConnectionUuidOrBuilder() { - return getConnectionUuid(); + public com.google.protobuf.ByteString + getLspSymbolicNameBytes() { + java.lang.Object ref = lspSymbolicName_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + lspSymbolicName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } private byte memoizedIsInitialized = -1; @@ -41342,8 +45016,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (connectionUuid_ != null) { - output.writeMessage(1, getConnectionUuid()); + if (!getLspSymbolicNameBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, lspSymbolicName_); } unknownFields.writeTo(output); } @@ -41354,9 +45028,8 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (connectionUuid_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getConnectionUuid()); + if (!getLspSymbolicNameBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, lspSymbolicName_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -41368,16 +45041,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ConnectionId)) { + if (!(obj instanceof context.ContextOuterClass.ConnectionSettings_L0)) { return super.equals(obj); } - context.ContextOuterClass.ConnectionId other = (context.ContextOuterClass.ConnectionId) obj; + context.ContextOuterClass.ConnectionSettings_L0 other = (context.ContextOuterClass.ConnectionSettings_L0) obj; - if (hasConnectionUuid() != other.hasConnectionUuid()) return false; - if (hasConnectionUuid()) { - if (!getConnectionUuid() - .equals(other.getConnectionUuid())) return false; - } + if (!getLspSymbolicName() + .equals(other.getLspSymbolicName())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -41389,78 +45059,76 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasConnectionUuid()) { - hash = (37 * hash) + CONNECTION_UUID_FIELD_NUMBER; - hash = (53 * hash) + getConnectionUuid().hashCode(); - } + hash = (37 * hash) + LSP_SYMBOLIC_NAME_FIELD_NUMBER; + hash = (53 * hash) + getLspSymbolicName().hashCode(); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ConnectionId parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionId parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionId parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionId parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionId parseFrom(byte[] data) + public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionId parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionId parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionId parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L0 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 context.ContextOuterClass.ConnectionId parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionSettings_L0 parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionId parseDelimitedFrom( + public static context.ContextOuterClass.ConnectionSettings_L0 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 context.ContextOuterClass.ConnectionId parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionId parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -41473,7 +45141,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ConnectionId prototype) { + public static Builder newBuilder(context.ContextOuterClass.ConnectionSettings_L0 prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -41489,30 +45157,26 @@ public final class ContextOuterClass { return builder; } /** - * <pre> - * ----- Connection ---------------------------------------------------------------------------------------------------- - * </pre> - * - * Protobuf type {@code context.ConnectionId} + * Protobuf type {@code context.ConnectionSettings_L0} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ConnectionId) - context.ContextOuterClass.ConnectionIdOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ConnectionSettings_L0) + context.ContextOuterClass.ConnectionSettings_L0OrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionId_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L0_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionId_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L0_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionId.class, context.ContextOuterClass.ConnectionId.Builder.class); + context.ContextOuterClass.ConnectionSettings_L0.class, context.ContextOuterClass.ConnectionSettings_L0.Builder.class); } - // Construct using context.ContextOuterClass.ConnectionId.newBuilder() + // Construct using context.ContextOuterClass.ConnectionSettings_L0.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -41530,29 +45194,25 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - if (connectionUuidBuilder_ == null) { - connectionUuid_ = null; - } else { - connectionUuid_ = null; - connectionUuidBuilder_ = null; - } + lspSymbolicName_ = ""; + return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ConnectionId_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L0_descriptor; } @java.lang.Override - public context.ContextOuterClass.ConnectionId getDefaultInstanceForType() { - return context.ContextOuterClass.ConnectionId.getDefaultInstance(); + public context.ContextOuterClass.ConnectionSettings_L0 getDefaultInstanceForType() { + return context.ContextOuterClass.ConnectionSettings_L0.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ConnectionId build() { - context.ContextOuterClass.ConnectionId result = buildPartial(); + public context.ContextOuterClass.ConnectionSettings_L0 build() { + context.ContextOuterClass.ConnectionSettings_L0 result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -41560,13 +45220,9 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ConnectionId buildPartial() { - context.ContextOuterClass.ConnectionId result = new context.ContextOuterClass.ConnectionId(this); - if (connectionUuidBuilder_ == null) { - result.connectionUuid_ = connectionUuid_; - } else { - result.connectionUuid_ = connectionUuidBuilder_.build(); - } + public context.ContextOuterClass.ConnectionSettings_L0 buildPartial() { + context.ContextOuterClass.ConnectionSettings_L0 result = new context.ContextOuterClass.ConnectionSettings_L0(this); + result.lspSymbolicName_ = lspSymbolicName_; onBuilt(); return result; } @@ -41605,18 +45261,19 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ConnectionId) { - return mergeFrom((context.ContextOuterClass.ConnectionId)other); + if (other instanceof context.ContextOuterClass.ConnectionSettings_L0) { + return mergeFrom((context.ContextOuterClass.ConnectionSettings_L0)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ConnectionId other) { - if (other == context.ContextOuterClass.ConnectionId.getDefaultInstance()) return this; - if (other.hasConnectionUuid()) { - mergeConnectionUuid(other.getConnectionUuid()); + public Builder mergeFrom(context.ContextOuterClass.ConnectionSettings_L0 other) { + if (other == context.ContextOuterClass.ConnectionSettings_L0.getDefaultInstance()) return this; + if (!other.getLspSymbolicName().isEmpty()) { + lspSymbolicName_ = other.lspSymbolicName_; + onChanged(); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -41633,11 +45290,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ConnectionId parsedMessage = null; + context.ContextOuterClass.ConnectionSettings_L0 parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ConnectionId) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ConnectionSettings_L0) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -41647,123 +45304,80 @@ public final class ContextOuterClass { return this; } - private context.ContextOuterClass.Uuid connectionUuid_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> connectionUuidBuilder_; - /** - * <code>.context.Uuid connection_uuid = 1;</code> - * @return Whether the connectionUuid field is set. - */ - public boolean hasConnectionUuid() { - return connectionUuidBuilder_ != null || connectionUuid_ != null; - } - /** - * <code>.context.Uuid connection_uuid = 1;</code> - * @return The connectionUuid. - */ - public context.ContextOuterClass.Uuid getConnectionUuid() { - if (connectionUuidBuilder_ == null) { - return connectionUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : connectionUuid_; - } else { - return connectionUuidBuilder_.getMessage(); - } - } + private java.lang.Object lspSymbolicName_ = ""; /** - * <code>.context.Uuid connection_uuid = 1;</code> + * <code>string lsp_symbolic_name = 1;</code> + * @return The lspSymbolicName. */ - public Builder setConnectionUuid(context.ContextOuterClass.Uuid value) { - if (connectionUuidBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - connectionUuid_ = value; - onChanged(); + public java.lang.String getLspSymbolicName() { + java.lang.Object ref = lspSymbolicName_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + lspSymbolicName_ = s; + return s; } else { - connectionUuidBuilder_.setMessage(value); + return (java.lang.String) ref; } - - return this; } /** - * <code>.context.Uuid connection_uuid = 1;</code> + * <code>string lsp_symbolic_name = 1;</code> + * @return The bytes for lspSymbolicName. */ - public Builder setConnectionUuid( - context.ContextOuterClass.Uuid.Builder builderForValue) { - if (connectionUuidBuilder_ == null) { - connectionUuid_ = builderForValue.build(); - onChanged(); + public com.google.protobuf.ByteString + getLspSymbolicNameBytes() { + java.lang.Object ref = lspSymbolicName_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + lspSymbolicName_ = b; + return b; } else { - connectionUuidBuilder_.setMessage(builderForValue.build()); + return (com.google.protobuf.ByteString) ref; } - - return this; } /** - * <code>.context.Uuid connection_uuid = 1;</code> + * <code>string lsp_symbolic_name = 1;</code> + * @param value The lspSymbolicName to set. + * @return This builder for chaining. */ - public Builder mergeConnectionUuid(context.ContextOuterClass.Uuid value) { - if (connectionUuidBuilder_ == null) { - if (connectionUuid_ != null) { - connectionUuid_ = - context.ContextOuterClass.Uuid.newBuilder(connectionUuid_).mergeFrom(value).buildPartial(); - } else { - connectionUuid_ = value; - } - onChanged(); - } else { - connectionUuidBuilder_.mergeFrom(value); - } - + public Builder setLspSymbolicName( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + lspSymbolicName_ = value; + onChanged(); return this; } /** - * <code>.context.Uuid connection_uuid = 1;</code> + * <code>string lsp_symbolic_name = 1;</code> + * @return This builder for chaining. */ - public Builder clearConnectionUuid() { - if (connectionUuidBuilder_ == null) { - connectionUuid_ = null; - onChanged(); - } else { - connectionUuid_ = null; - connectionUuidBuilder_ = null; - } - + public Builder clearLspSymbolicName() { + + lspSymbolicName_ = getDefaultInstance().getLspSymbolicName(); + onChanged(); return this; } /** - * <code>.context.Uuid connection_uuid = 1;</code> + * <code>string lsp_symbolic_name = 1;</code> + * @param value The bytes for lspSymbolicName to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.Uuid.Builder getConnectionUuidBuilder() { + public Builder setLspSymbolicNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + lspSymbolicName_ = value; onChanged(); - return getConnectionUuidFieldBuilder().getBuilder(); - } - /** - * <code>.context.Uuid connection_uuid = 1;</code> - */ - public context.ContextOuterClass.UuidOrBuilder getConnectionUuidOrBuilder() { - if (connectionUuidBuilder_ != null) { - return connectionUuidBuilder_.getMessageOrBuilder(); - } else { - return connectionUuid_ == null ? - context.ContextOuterClass.Uuid.getDefaultInstance() : connectionUuid_; - } - } - /** - * <code>.context.Uuid connection_uuid = 1;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> - getConnectionUuidFieldBuilder() { - if (connectionUuidBuilder_ == null) { - connectionUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>( - getConnectionUuid(), - getParentForChildren(), - isClean()); - connectionUuid_ = null; - } - return connectionUuidBuilder_; + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -41778,83 +45392,120 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ConnectionId) + // @@protoc_insertion_point(builder_scope:context.ConnectionSettings_L0) } - // @@protoc_insertion_point(class_scope:context.ConnectionId) - private static final context.ContextOuterClass.ConnectionId DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ConnectionSettings_L0) + private static final context.ContextOuterClass.ConnectionSettings_L0 DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionId(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionSettings_L0(); } - public static context.ContextOuterClass.ConnectionId getDefaultInstance() { + public static context.ContextOuterClass.ConnectionSettings_L0 getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ConnectionId> - PARSER = new com.google.protobuf.AbstractParser<ConnectionId>() { + private static final com.google.protobuf.Parser<ConnectionSettings_L0> + PARSER = new com.google.protobuf.AbstractParser<ConnectionSettings_L0>() { @java.lang.Override - public ConnectionId parsePartialFrom( + public ConnectionSettings_L0 parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ConnectionId(input, extensionRegistry); + return new ConnectionSettings_L0(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ConnectionId> parser() { + public static com.google.protobuf.Parser<ConnectionSettings_L0> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ConnectionId> getParserForType() { + public com.google.protobuf.Parser<ConnectionSettings_L0> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ConnectionId getDefaultInstanceForType() { + public context.ContextOuterClass.ConnectionSettings_L0 getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ConnectionSettings_L0OrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ConnectionSettings_L0) + public interface ConnectionSettings_L2OrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ConnectionSettings_L2) com.google.protobuf.MessageOrBuilder { /** - * <code>string lsp_symbolic_name = 1;</code> - * @return The lspSymbolicName. + * <code>string src_mac_address = 1;</code> + * @return The srcMacAddress. */ - java.lang.String getLspSymbolicName(); + java.lang.String getSrcMacAddress(); /** - * <code>string lsp_symbolic_name = 1;</code> - * @return The bytes for lspSymbolicName. + * <code>string src_mac_address = 1;</code> + * @return The bytes for srcMacAddress. */ com.google.protobuf.ByteString - getLspSymbolicNameBytes(); + getSrcMacAddressBytes(); + + /** + * <code>string dst_mac_address = 2;</code> + * @return The dstMacAddress. + */ + java.lang.String getDstMacAddress(); + /** + * <code>string dst_mac_address = 2;</code> + * @return The bytes for dstMacAddress. + */ + com.google.protobuf.ByteString + getDstMacAddressBytes(); + + /** + * <code>uint32 ether_type = 3;</code> + * @return The etherType. + */ + int getEtherType(); + + /** + * <code>uint32 vlan_id = 4;</code> + * @return The vlanId. + */ + int getVlanId(); + + /** + * <code>uint32 mpls_label = 5;</code> + * @return The mplsLabel. + */ + int getMplsLabel(); + + /** + * <code>uint32 mpls_traffic_class = 6;</code> + * @return The mplsTrafficClass. + */ + int getMplsTrafficClass(); } /** - * Protobuf type {@code context.ConnectionSettings_L0} + * Protobuf type {@code context.ConnectionSettings_L2} */ - public static final class ConnectionSettings_L0 extends + public static final class ConnectionSettings_L2 extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ConnectionSettings_L0) - ConnectionSettings_L0OrBuilder { + // @@protoc_insertion_point(message_implements:context.ConnectionSettings_L2) + ConnectionSettings_L2OrBuilder { private static final long serialVersionUID = 0L; - // Use ConnectionSettings_L0.newBuilder() to construct. - private ConnectionSettings_L0(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ConnectionSettings_L2.newBuilder() to construct. + private ConnectionSettings_L2(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ConnectionSettings_L0() { - lspSymbolicName_ = ""; + private ConnectionSettings_L2() { + srcMacAddress_ = ""; + dstMacAddress_ = ""; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ConnectionSettings_L0(); + return new ConnectionSettings_L2(); } @java.lang.Override @@ -41862,7 +45513,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ConnectionSettings_L0( + private ConnectionSettings_L2( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -41883,7 +45534,33 @@ public final class ContextOuterClass { case 10: { java.lang.String s = input.readStringRequireUtf8(); - lspSymbolicName_ = s; + srcMacAddress_ = s; + break; + } + case 18: { + java.lang.String s = input.readStringRequireUtf8(); + + dstMacAddress_ = s; + break; + } + case 24: { + + etherType_ = input.readUInt32(); + break; + } + case 32: { + + vlanId_ = input.readUInt32(); + break; + } + case 40: { + + mplsLabel_ = input.readUInt32(); + break; + } + case 48: { + + mplsTrafficClass_ = input.readUInt32(); break; } default: { @@ -41907,55 +45584,137 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L0_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L2_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L0_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L2_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionSettings_L0.class, context.ContextOuterClass.ConnectionSettings_L0.Builder.class); + context.ContextOuterClass.ConnectionSettings_L2.class, context.ContextOuterClass.ConnectionSettings_L2.Builder.class); } - public static final int LSP_SYMBOLIC_NAME_FIELD_NUMBER = 1; - private volatile java.lang.Object lspSymbolicName_; + public static final int SRC_MAC_ADDRESS_FIELD_NUMBER = 1; + private volatile java.lang.Object srcMacAddress_; /** - * <code>string lsp_symbolic_name = 1;</code> - * @return The lspSymbolicName. + * <code>string src_mac_address = 1;</code> + * @return The srcMacAddress. */ @java.lang.Override - public java.lang.String getLspSymbolicName() { - java.lang.Object ref = lspSymbolicName_; + public java.lang.String getSrcMacAddress() { + java.lang.Object ref = srcMacAddress_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); - lspSymbolicName_ = s; + srcMacAddress_ = s; return s; } } /** - * <code>string lsp_symbolic_name = 1;</code> - * @return The bytes for lspSymbolicName. + * <code>string src_mac_address = 1;</code> + * @return The bytes for srcMacAddress. */ @java.lang.Override public com.google.protobuf.ByteString - getLspSymbolicNameBytes() { - java.lang.Object ref = lspSymbolicName_; + getSrcMacAddressBytes() { + java.lang.Object ref = srcMacAddress_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); - lspSymbolicName_ = b; + srcMacAddress_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int DST_MAC_ADDRESS_FIELD_NUMBER = 2; + private volatile java.lang.Object dstMacAddress_; + /** + * <code>string dst_mac_address = 2;</code> + * @return The dstMacAddress. + */ + @java.lang.Override + public java.lang.String getDstMacAddress() { + java.lang.Object ref = dstMacAddress_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + dstMacAddress_ = s; + return s; + } + } + /** + * <code>string dst_mac_address = 2;</code> + * @return The bytes for dstMacAddress. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getDstMacAddressBytes() { + java.lang.Object ref = dstMacAddress_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + dstMacAddress_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } + public static final int ETHER_TYPE_FIELD_NUMBER = 3; + private int etherType_; + /** + * <code>uint32 ether_type = 3;</code> + * @return The etherType. + */ + @java.lang.Override + public int getEtherType() { + return etherType_; + } + + public static final int VLAN_ID_FIELD_NUMBER = 4; + private int vlanId_; + /** + * <code>uint32 vlan_id = 4;</code> + * @return The vlanId. + */ + @java.lang.Override + public int getVlanId() { + return vlanId_; + } + + public static final int MPLS_LABEL_FIELD_NUMBER = 5; + private int mplsLabel_; + /** + * <code>uint32 mpls_label = 5;</code> + * @return The mplsLabel. + */ + @java.lang.Override + public int getMplsLabel() { + return mplsLabel_; + } + + public static final int MPLS_TRAFFIC_CLASS_FIELD_NUMBER = 6; + private int mplsTrafficClass_; + /** + * <code>uint32 mpls_traffic_class = 6;</code> + * @return The mplsTrafficClass. + */ + @java.lang.Override + public int getMplsTrafficClass() { + return mplsTrafficClass_; + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -41970,8 +45729,23 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getLspSymbolicNameBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 1, lspSymbolicName_); + if (!getSrcMacAddressBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, srcMacAddress_); + } + if (!getDstMacAddressBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, dstMacAddress_); + } + if (etherType_ != 0) { + output.writeUInt32(3, etherType_); + } + if (vlanId_ != 0) { + output.writeUInt32(4, vlanId_); + } + if (mplsLabel_ != 0) { + output.writeUInt32(5, mplsLabel_); + } + if (mplsTrafficClass_ != 0) { + output.writeUInt32(6, mplsTrafficClass_); } unknownFields.writeTo(output); } @@ -41982,8 +45756,27 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (!getLspSymbolicNameBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, lspSymbolicName_); + if (!getSrcMacAddressBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, srcMacAddress_); + } + if (!getDstMacAddressBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, dstMacAddress_); + } + if (etherType_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(3, etherType_); + } + if (vlanId_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(4, vlanId_); + } + if (mplsLabel_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(5, mplsLabel_); + } + if (mplsTrafficClass_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(6, mplsTrafficClass_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -41995,13 +45788,23 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ConnectionSettings_L0)) { + if (!(obj instanceof context.ContextOuterClass.ConnectionSettings_L2)) { return super.equals(obj); } - context.ContextOuterClass.ConnectionSettings_L0 other = (context.ContextOuterClass.ConnectionSettings_L0) obj; + context.ContextOuterClass.ConnectionSettings_L2 other = (context.ContextOuterClass.ConnectionSettings_L2) obj; - if (!getLspSymbolicName() - .equals(other.getLspSymbolicName())) return false; + if (!getSrcMacAddress() + .equals(other.getSrcMacAddress())) return false; + if (!getDstMacAddress() + .equals(other.getDstMacAddress())) return false; + if (getEtherType() + != other.getEtherType()) return false; + if (getVlanId() + != other.getVlanId()) return false; + if (getMplsLabel() + != other.getMplsLabel()) return false; + if (getMplsTrafficClass() + != other.getMplsTrafficClass()) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -42013,76 +45816,86 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + LSP_SYMBOLIC_NAME_FIELD_NUMBER; - hash = (53 * hash) + getLspSymbolicName().hashCode(); + hash = (37 * hash) + SRC_MAC_ADDRESS_FIELD_NUMBER; + hash = (53 * hash) + getSrcMacAddress().hashCode(); + hash = (37 * hash) + DST_MAC_ADDRESS_FIELD_NUMBER; + hash = (53 * hash) + getDstMacAddress().hashCode(); + hash = (37 * hash) + ETHER_TYPE_FIELD_NUMBER; + hash = (53 * hash) + getEtherType(); + hash = (37 * hash) + VLAN_ID_FIELD_NUMBER; + hash = (53 * hash) + getVlanId(); + hash = (37 * hash) + MPLS_LABEL_FIELD_NUMBER; + hash = (53 * hash) + getMplsLabel(); + hash = (37 * hash) + MPLS_TRAFFIC_CLASS_FIELD_NUMBER; + hash = (53 * hash) + getMplsTrafficClass(); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom(byte[] data) + public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L2 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 context.ContextOuterClass.ConnectionSettings_L0 parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionSettings_L2 parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings_L0 parseDelimitedFrom( + public static context.ContextOuterClass.ConnectionSettings_L2 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 context.ContextOuterClass.ConnectionSettings_L0 parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -42095,7 +45908,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ConnectionSettings_L0 prototype) { + public static Builder newBuilder(context.ContextOuterClass.ConnectionSettings_L2 prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -42111,26 +45924,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ConnectionSettings_L0} + * Protobuf type {@code context.ConnectionSettings_L2} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ConnectionSettings_L0) - context.ContextOuterClass.ConnectionSettings_L0OrBuilder { + // @@protoc_insertion_point(builder_implements:context.ConnectionSettings_L2) + context.ContextOuterClass.ConnectionSettings_L2OrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L0_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L2_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L0_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L2_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionSettings_L0.class, context.ContextOuterClass.ConnectionSettings_L0.Builder.class); + context.ContextOuterClass.ConnectionSettings_L2.class, context.ContextOuterClass.ConnectionSettings_L2.Builder.class); } - // Construct using context.ContextOuterClass.ConnectionSettings_L0.newBuilder() + // Construct using context.ContextOuterClass.ConnectionSettings_L2.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -42148,7 +45961,17 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - lspSymbolicName_ = ""; + srcMacAddress_ = ""; + + dstMacAddress_ = ""; + + etherType_ = 0; + + vlanId_ = 0; + + mplsLabel_ = 0; + + mplsTrafficClass_ = 0; return this; } @@ -42156,17 +45979,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L0_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L2_descriptor; } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L0 getDefaultInstanceForType() { - return context.ContextOuterClass.ConnectionSettings_L0.getDefaultInstance(); + public context.ContextOuterClass.ConnectionSettings_L2 getDefaultInstanceForType() { + return context.ContextOuterClass.ConnectionSettings_L2.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L0 build() { - context.ContextOuterClass.ConnectionSettings_L0 result = buildPartial(); + public context.ContextOuterClass.ConnectionSettings_L2 build() { + context.ContextOuterClass.ConnectionSettings_L2 result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -42174,9 +45997,14 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L0 buildPartial() { - context.ContextOuterClass.ConnectionSettings_L0 result = new context.ContextOuterClass.ConnectionSettings_L0(this); - result.lspSymbolicName_ = lspSymbolicName_; + public context.ContextOuterClass.ConnectionSettings_L2 buildPartial() { + context.ContextOuterClass.ConnectionSettings_L2 result = new context.ContextOuterClass.ConnectionSettings_L2(this); + result.srcMacAddress_ = srcMacAddress_; + result.dstMacAddress_ = dstMacAddress_; + result.etherType_ = etherType_; + result.vlanId_ = vlanId_; + result.mplsLabel_ = mplsLabel_; + result.mplsTrafficClass_ = mplsTrafficClass_; onBuilt(); return result; } @@ -42215,20 +46043,36 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ConnectionSettings_L0) { - return mergeFrom((context.ContextOuterClass.ConnectionSettings_L0)other); + if (other instanceof context.ContextOuterClass.ConnectionSettings_L2) { + return mergeFrom((context.ContextOuterClass.ConnectionSettings_L2)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ConnectionSettings_L0 other) { - if (other == context.ContextOuterClass.ConnectionSettings_L0.getDefaultInstance()) return this; - if (!other.getLspSymbolicName().isEmpty()) { - lspSymbolicName_ = other.lspSymbolicName_; + public Builder mergeFrom(context.ContextOuterClass.ConnectionSettings_L2 other) { + if (other == context.ContextOuterClass.ConnectionSettings_L2.getDefaultInstance()) return this; + if (!other.getSrcMacAddress().isEmpty()) { + srcMacAddress_ = other.srcMacAddress_; + onChanged(); + } + if (!other.getDstMacAddress().isEmpty()) { + dstMacAddress_ = other.dstMacAddress_; onChanged(); } + if (other.getEtherType() != 0) { + setEtherType(other.getEtherType()); + } + if (other.getVlanId() != 0) { + setVlanId(other.getVlanId()); + } + if (other.getMplsLabel() != 0) { + setMplsLabel(other.getMplsLabel()); + } + if (other.getMplsTrafficClass() != 0) { + setMplsTrafficClass(other.getMplsTrafficClass()); + } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; @@ -42244,11 +46088,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ConnectionSettings_L0 parsedMessage = null; + context.ContextOuterClass.ConnectionSettings_L2 parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ConnectionSettings_L0) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ConnectionSettings_L2) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -42258,78 +46102,278 @@ public final class ContextOuterClass { return this; } - private java.lang.Object lspSymbolicName_ = ""; + private java.lang.Object srcMacAddress_ = ""; + /** + * <code>string src_mac_address = 1;</code> + * @return The srcMacAddress. + */ + public java.lang.String getSrcMacAddress() { + java.lang.Object ref = srcMacAddress_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + srcMacAddress_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * <code>string src_mac_address = 1;</code> + * @return The bytes for srcMacAddress. + */ + public com.google.protobuf.ByteString + getSrcMacAddressBytes() { + java.lang.Object ref = srcMacAddress_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + srcMacAddress_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * <code>string src_mac_address = 1;</code> + * @param value The srcMacAddress to set. + * @return This builder for chaining. + */ + public Builder setSrcMacAddress( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + srcMacAddress_ = value; + onChanged(); + return this; + } + /** + * <code>string src_mac_address = 1;</code> + * @return This builder for chaining. + */ + public Builder clearSrcMacAddress() { + + srcMacAddress_ = getDefaultInstance().getSrcMacAddress(); + onChanged(); + return this; + } + /** + * <code>string src_mac_address = 1;</code> + * @param value The bytes for srcMacAddress to set. + * @return This builder for chaining. + */ + public Builder setSrcMacAddressBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + srcMacAddress_ = value; + onChanged(); + return this; + } + + private java.lang.Object dstMacAddress_ = ""; + /** + * <code>string dst_mac_address = 2;</code> + * @return The dstMacAddress. + */ + public java.lang.String getDstMacAddress() { + java.lang.Object ref = dstMacAddress_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + dstMacAddress_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * <code>string dst_mac_address = 2;</code> + * @return The bytes for dstMacAddress. + */ + public com.google.protobuf.ByteString + getDstMacAddressBytes() { + java.lang.Object ref = dstMacAddress_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + dstMacAddress_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * <code>string dst_mac_address = 2;</code> + * @param value The dstMacAddress to set. + * @return This builder for chaining. + */ + public Builder setDstMacAddress( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + dstMacAddress_ = value; + onChanged(); + return this; + } + /** + * <code>string dst_mac_address = 2;</code> + * @return This builder for chaining. + */ + public Builder clearDstMacAddress() { + + dstMacAddress_ = getDefaultInstance().getDstMacAddress(); + onChanged(); + return this; + } + /** + * <code>string dst_mac_address = 2;</code> + * @param value The bytes for dstMacAddress to set. + * @return This builder for chaining. + */ + public Builder setDstMacAddressBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + dstMacAddress_ = value; + onChanged(); + return this; + } + + private int etherType_ ; + /** + * <code>uint32 ether_type = 3;</code> + * @return The etherType. + */ + @java.lang.Override + public int getEtherType() { + return etherType_; + } + /** + * <code>uint32 ether_type = 3;</code> + * @param value The etherType to set. + * @return This builder for chaining. + */ + public Builder setEtherType(int value) { + + etherType_ = value; + onChanged(); + return this; + } + /** + * <code>uint32 ether_type = 3;</code> + * @return This builder for chaining. + */ + public Builder clearEtherType() { + + etherType_ = 0; + onChanged(); + return this; + } + + private int vlanId_ ; + /** + * <code>uint32 vlan_id = 4;</code> + * @return The vlanId. + */ + @java.lang.Override + public int getVlanId() { + return vlanId_; + } + /** + * <code>uint32 vlan_id = 4;</code> + * @param value The vlanId to set. + * @return This builder for chaining. + */ + public Builder setVlanId(int value) { + + vlanId_ = value; + onChanged(); + return this; + } + /** + * <code>uint32 vlan_id = 4;</code> + * @return This builder for chaining. + */ + public Builder clearVlanId() { + + vlanId_ = 0; + onChanged(); + return this; + } + + private int mplsLabel_ ; /** - * <code>string lsp_symbolic_name = 1;</code> - * @return The lspSymbolicName. + * <code>uint32 mpls_label = 5;</code> + * @return The mplsLabel. */ - public java.lang.String getLspSymbolicName() { - java.lang.Object ref = lspSymbolicName_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - lspSymbolicName_ = s; - return s; - } else { - return (java.lang.String) ref; - } + @java.lang.Override + public int getMplsLabel() { + return mplsLabel_; } /** - * <code>string lsp_symbolic_name = 1;</code> - * @return The bytes for lspSymbolicName. + * <code>uint32 mpls_label = 5;</code> + * @param value The mplsLabel to set. + * @return This builder for chaining. */ - public com.google.protobuf.ByteString - getLspSymbolicNameBytes() { - java.lang.Object ref = lspSymbolicName_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - lspSymbolicName_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public Builder setMplsLabel(int value) { + + mplsLabel_ = value; + onChanged(); + return this; } /** - * <code>string lsp_symbolic_name = 1;</code> - * @param value The lspSymbolicName to set. + * <code>uint32 mpls_label = 5;</code> * @return This builder for chaining. */ - public Builder setLspSymbolicName( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - lspSymbolicName_ = value; + public Builder clearMplsLabel() { + + mplsLabel_ = 0; onChanged(); return this; } + + private int mplsTrafficClass_ ; + /** + * <code>uint32 mpls_traffic_class = 6;</code> + * @return The mplsTrafficClass. + */ + @java.lang.Override + public int getMplsTrafficClass() { + return mplsTrafficClass_; + } /** - * <code>string lsp_symbolic_name = 1;</code> + * <code>uint32 mpls_traffic_class = 6;</code> + * @param value The mplsTrafficClass to set. * @return This builder for chaining. */ - public Builder clearLspSymbolicName() { + public Builder setMplsTrafficClass(int value) { - lspSymbolicName_ = getDefaultInstance().getLspSymbolicName(); + mplsTrafficClass_ = value; onChanged(); return this; } /** - * <code>string lsp_symbolic_name = 1;</code> - * @param value The bytes for lspSymbolicName to set. + * <code>uint32 mpls_traffic_class = 6;</code> * @return This builder for chaining. */ - public Builder setLspSymbolicNameBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); + public Builder clearMplsTrafficClass() { - lspSymbolicName_ = value; + mplsTrafficClass_ = 0; onChanged(); return this; } @@ -42346,120 +46390,114 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ConnectionSettings_L0) + // @@protoc_insertion_point(builder_scope:context.ConnectionSettings_L2) } - // @@protoc_insertion_point(class_scope:context.ConnectionSettings_L0) - private static final context.ContextOuterClass.ConnectionSettings_L0 DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ConnectionSettings_L2) + private static final context.ContextOuterClass.ConnectionSettings_L2 DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionSettings_L0(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionSettings_L2(); } - public static context.ContextOuterClass.ConnectionSettings_L0 getDefaultInstance() { + public static context.ContextOuterClass.ConnectionSettings_L2 getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ConnectionSettings_L0> - PARSER = new com.google.protobuf.AbstractParser<ConnectionSettings_L0>() { + private static final com.google.protobuf.Parser<ConnectionSettings_L2> + PARSER = new com.google.protobuf.AbstractParser<ConnectionSettings_L2>() { @java.lang.Override - public ConnectionSettings_L0 parsePartialFrom( + public ConnectionSettings_L2 parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ConnectionSettings_L0(input, extensionRegistry); + return new ConnectionSettings_L2(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ConnectionSettings_L0> parser() { + public static com.google.protobuf.Parser<ConnectionSettings_L2> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ConnectionSettings_L0> getParserForType() { + public com.google.protobuf.Parser<ConnectionSettings_L2> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L0 getDefaultInstanceForType() { + public context.ContextOuterClass.ConnectionSettings_L2 getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ConnectionSettings_L2OrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ConnectionSettings_L2) + public interface ConnectionSettings_L3OrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ConnectionSettings_L3) com.google.protobuf.MessageOrBuilder { /** - * <code>string src_mac_address = 1;</code> - * @return The srcMacAddress. + * <code>string src_ip_address = 1;</code> + * @return The srcIpAddress. */ - java.lang.String getSrcMacAddress(); + java.lang.String getSrcIpAddress(); /** - * <code>string src_mac_address = 1;</code> - * @return The bytes for srcMacAddress. + * <code>string src_ip_address = 1;</code> + * @return The bytes for srcIpAddress. */ com.google.protobuf.ByteString - getSrcMacAddressBytes(); + getSrcIpAddressBytes(); /** - * <code>string dst_mac_address = 2;</code> - * @return The dstMacAddress. + * <code>string dst_ip_address = 2;</code> + * @return The dstIpAddress. */ - java.lang.String getDstMacAddress(); + java.lang.String getDstIpAddress(); /** - * <code>string dst_mac_address = 2;</code> - * @return The bytes for dstMacAddress. + * <code>string dst_ip_address = 2;</code> + * @return The bytes for dstIpAddress. */ com.google.protobuf.ByteString - getDstMacAddressBytes(); - - /** - * <code>uint32 ether_type = 3;</code> - * @return The etherType. - */ - int getEtherType(); + getDstIpAddressBytes(); /** - * <code>uint32 vlan_id = 4;</code> - * @return The vlanId. + * <code>uint32 dscp = 3;</code> + * @return The dscp. */ - int getVlanId(); + int getDscp(); /** - * <code>uint32 mpls_label = 5;</code> - * @return The mplsLabel. + * <code>uint32 protocol = 4;</code> + * @return The protocol. */ - int getMplsLabel(); + int getProtocol(); /** - * <code>uint32 mpls_traffic_class = 6;</code> - * @return The mplsTrafficClass. + * <code>uint32 ttl = 5;</code> + * @return The ttl. */ - int getMplsTrafficClass(); + int getTtl(); } /** - * Protobuf type {@code context.ConnectionSettings_L2} + * Protobuf type {@code context.ConnectionSettings_L3} */ - public static final class ConnectionSettings_L2 extends + public static final class ConnectionSettings_L3 extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ConnectionSettings_L2) - ConnectionSettings_L2OrBuilder { + // @@protoc_insertion_point(message_implements:context.ConnectionSettings_L3) + ConnectionSettings_L3OrBuilder { private static final long serialVersionUID = 0L; - // Use ConnectionSettings_L2.newBuilder() to construct. - private ConnectionSettings_L2(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ConnectionSettings_L3.newBuilder() to construct. + private ConnectionSettings_L3(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ConnectionSettings_L2() { - srcMacAddress_ = ""; - dstMacAddress_ = ""; + private ConnectionSettings_L3() { + srcIpAddress_ = ""; + dstIpAddress_ = ""; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ConnectionSettings_L2(); + return new ConnectionSettings_L3(); } @java.lang.Override @@ -42467,7 +46505,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ConnectionSettings_L2( + private ConnectionSettings_L3( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -42488,33 +46526,28 @@ public final class ContextOuterClass { case 10: { java.lang.String s = input.readStringRequireUtf8(); - srcMacAddress_ = s; + srcIpAddress_ = s; break; } case 18: { java.lang.String s = input.readStringRequireUtf8(); - dstMacAddress_ = s; + dstIpAddress_ = s; break; } case 24: { - etherType_ = input.readUInt32(); + dscp_ = input.readUInt32(); break; } case 32: { - vlanId_ = input.readUInt32(); + protocol_ = input.readUInt32(); break; } case 40: { - mplsLabel_ = input.readUInt32(); - break; - } - case 48: { - - mplsTrafficClass_ = input.readUInt32(); + ttl_ = input.readUInt32(); break; } default: { @@ -42538,135 +46571,124 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L2_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L3_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L2_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L3_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionSettings_L2.class, context.ContextOuterClass.ConnectionSettings_L2.Builder.class); + context.ContextOuterClass.ConnectionSettings_L3.class, context.ContextOuterClass.ConnectionSettings_L3.Builder.class); } - public static final int SRC_MAC_ADDRESS_FIELD_NUMBER = 1; - private volatile java.lang.Object srcMacAddress_; + public static final int SRC_IP_ADDRESS_FIELD_NUMBER = 1; + private volatile java.lang.Object srcIpAddress_; /** - * <code>string src_mac_address = 1;</code> - * @return The srcMacAddress. + * <code>string src_ip_address = 1;</code> + * @return The srcIpAddress. */ @java.lang.Override - public java.lang.String getSrcMacAddress() { - java.lang.Object ref = srcMacAddress_; + public java.lang.String getSrcIpAddress() { + java.lang.Object ref = srcIpAddress_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); - srcMacAddress_ = s; + srcIpAddress_ = s; return s; } } /** - * <code>string src_mac_address = 1;</code> - * @return The bytes for srcMacAddress. + * <code>string src_ip_address = 1;</code> + * @return The bytes for srcIpAddress. */ @java.lang.Override public com.google.protobuf.ByteString - getSrcMacAddressBytes() { - java.lang.Object ref = srcMacAddress_; + getSrcIpAddressBytes() { + java.lang.Object ref = srcIpAddress_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); - srcMacAddress_ = b; + srcIpAddress_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } - public static final int DST_MAC_ADDRESS_FIELD_NUMBER = 2; - private volatile java.lang.Object dstMacAddress_; + public static final int DST_IP_ADDRESS_FIELD_NUMBER = 2; + private volatile java.lang.Object dstIpAddress_; /** - * <code>string dst_mac_address = 2;</code> - * @return The dstMacAddress. + * <code>string dst_ip_address = 2;</code> + * @return The dstIpAddress. */ @java.lang.Override - public java.lang.String getDstMacAddress() { - java.lang.Object ref = dstMacAddress_; + public java.lang.String getDstIpAddress() { + java.lang.Object ref = dstIpAddress_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); - dstMacAddress_ = s; + dstIpAddress_ = s; return s; } } /** - * <code>string dst_mac_address = 2;</code> - * @return The bytes for dstMacAddress. + * <code>string dst_ip_address = 2;</code> + * @return The bytes for dstIpAddress. */ @java.lang.Override public com.google.protobuf.ByteString - getDstMacAddressBytes() { - java.lang.Object ref = dstMacAddress_; + getDstIpAddressBytes() { + java.lang.Object ref = dstIpAddress_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); - dstMacAddress_ = b; + dstIpAddress_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } - public static final int ETHER_TYPE_FIELD_NUMBER = 3; - private int etherType_; - /** - * <code>uint32 ether_type = 3;</code> - * @return The etherType. - */ - @java.lang.Override - public int getEtherType() { - return etherType_; - } - - public static final int VLAN_ID_FIELD_NUMBER = 4; - private int vlanId_; + public static final int DSCP_FIELD_NUMBER = 3; + private int dscp_; /** - * <code>uint32 vlan_id = 4;</code> - * @return The vlanId. + * <code>uint32 dscp = 3;</code> + * @return The dscp. */ @java.lang.Override - public int getVlanId() { - return vlanId_; + public int getDscp() { + return dscp_; } - public static final int MPLS_LABEL_FIELD_NUMBER = 5; - private int mplsLabel_; + public static final int PROTOCOL_FIELD_NUMBER = 4; + private int protocol_; /** - * <code>uint32 mpls_label = 5;</code> - * @return The mplsLabel. + * <code>uint32 protocol = 4;</code> + * @return The protocol. */ @java.lang.Override - public int getMplsLabel() { - return mplsLabel_; + public int getProtocol() { + return protocol_; } - public static final int MPLS_TRAFFIC_CLASS_FIELD_NUMBER = 6; - private int mplsTrafficClass_; + public static final int TTL_FIELD_NUMBER = 5; + private int ttl_; /** - * <code>uint32 mpls_traffic_class = 6;</code> - * @return The mplsTrafficClass. + * <code>uint32 ttl = 5;</code> + * @return The ttl. */ @java.lang.Override - public int getMplsTrafficClass() { - return mplsTrafficClass_; + public int getTtl() { + return ttl_; } private byte memoizedIsInitialized = -1; @@ -42683,23 +46705,20 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getSrcMacAddressBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 1, srcMacAddress_); - } - if (!getDstMacAddressBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, dstMacAddress_); + if (!getSrcIpAddressBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, srcIpAddress_); } - if (etherType_ != 0) { - output.writeUInt32(3, etherType_); + if (!getDstIpAddressBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, dstIpAddress_); } - if (vlanId_ != 0) { - output.writeUInt32(4, vlanId_); + if (dscp_ != 0) { + output.writeUInt32(3, dscp_); } - if (mplsLabel_ != 0) { - output.writeUInt32(5, mplsLabel_); + if (protocol_ != 0) { + output.writeUInt32(4, protocol_); } - if (mplsTrafficClass_ != 0) { - output.writeUInt32(6, mplsTrafficClass_); + if (ttl_ != 0) { + output.writeUInt32(5, ttl_); } unknownFields.writeTo(output); } @@ -42710,27 +46729,23 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (!getSrcMacAddressBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, srcMacAddress_); - } - if (!getDstMacAddressBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, dstMacAddress_); + if (!getSrcIpAddressBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, srcIpAddress_); } - if (etherType_ != 0) { - size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(3, etherType_); + if (!getDstIpAddressBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, dstIpAddress_); } - if (vlanId_ != 0) { + if (dscp_ != 0) { size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(4, vlanId_); + .computeUInt32Size(3, dscp_); } - if (mplsLabel_ != 0) { + if (protocol_ != 0) { size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(5, mplsLabel_); + .computeUInt32Size(4, protocol_); } - if (mplsTrafficClass_ != 0) { + if (ttl_ != 0) { size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(6, mplsTrafficClass_); + .computeUInt32Size(5, ttl_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -42742,23 +46757,21 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ConnectionSettings_L2)) { + if (!(obj instanceof context.ContextOuterClass.ConnectionSettings_L3)) { return super.equals(obj); } - context.ContextOuterClass.ConnectionSettings_L2 other = (context.ContextOuterClass.ConnectionSettings_L2) obj; + context.ContextOuterClass.ConnectionSettings_L3 other = (context.ContextOuterClass.ConnectionSettings_L3) obj; - if (!getSrcMacAddress() - .equals(other.getSrcMacAddress())) return false; - if (!getDstMacAddress() - .equals(other.getDstMacAddress())) return false; - if (getEtherType() - != other.getEtherType()) return false; - if (getVlanId() - != other.getVlanId()) return false; - if (getMplsLabel() - != other.getMplsLabel()) return false; - if (getMplsTrafficClass() - != other.getMplsTrafficClass()) return false; + if (!getSrcIpAddress() + .equals(other.getSrcIpAddress())) return false; + if (!getDstIpAddress() + .equals(other.getDstIpAddress())) return false; + if (getDscp() + != other.getDscp()) return false; + if (getProtocol() + != other.getProtocol()) return false; + if (getTtl() + != other.getTtl()) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -42770,86 +46783,84 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + SRC_MAC_ADDRESS_FIELD_NUMBER; - hash = (53 * hash) + getSrcMacAddress().hashCode(); - hash = (37 * hash) + DST_MAC_ADDRESS_FIELD_NUMBER; - hash = (53 * hash) + getDstMacAddress().hashCode(); - hash = (37 * hash) + ETHER_TYPE_FIELD_NUMBER; - hash = (53 * hash) + getEtherType(); - hash = (37 * hash) + VLAN_ID_FIELD_NUMBER; - hash = (53 * hash) + getVlanId(); - hash = (37 * hash) + MPLS_LABEL_FIELD_NUMBER; - hash = (53 * hash) + getMplsLabel(); - hash = (37 * hash) + MPLS_TRAFFIC_CLASS_FIELD_NUMBER; - hash = (53 * hash) + getMplsTrafficClass(); + hash = (37 * hash) + SRC_IP_ADDRESS_FIELD_NUMBER; + hash = (53 * hash) + getSrcIpAddress().hashCode(); + hash = (37 * hash) + DST_IP_ADDRESS_FIELD_NUMBER; + hash = (53 * hash) + getDstIpAddress().hashCode(); + hash = (37 * hash) + DSCP_FIELD_NUMBER; + hash = (53 * hash) + getDscp(); + hash = (37 * hash) + PROTOCOL_FIELD_NUMBER; + hash = (53 * hash) + getProtocol(); + hash = (37 * hash) + TTL_FIELD_NUMBER; + hash = (53 * hash) + getTtl(); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom(byte[] data) + public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L3 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 context.ContextOuterClass.ConnectionSettings_L2 parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionSettings_L3 parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings_L2 parseDelimitedFrom( + public static context.ContextOuterClass.ConnectionSettings_L3 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 context.ContextOuterClass.ConnectionSettings_L2 parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -42862,7 +46873,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ConnectionSettings_L2 prototype) { + public static Builder newBuilder(context.ContextOuterClass.ConnectionSettings_L3 prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -42878,26 +46889,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ConnectionSettings_L2} + * Protobuf type {@code context.ConnectionSettings_L3} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ConnectionSettings_L2) - context.ContextOuterClass.ConnectionSettings_L2OrBuilder { + // @@protoc_insertion_point(builder_implements:context.ConnectionSettings_L3) + context.ContextOuterClass.ConnectionSettings_L3OrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L2_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L3_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L2_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L3_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionSettings_L2.class, context.ContextOuterClass.ConnectionSettings_L2.Builder.class); + context.ContextOuterClass.ConnectionSettings_L3.class, context.ContextOuterClass.ConnectionSettings_L3.Builder.class); } - // Construct using context.ContextOuterClass.ConnectionSettings_L2.newBuilder() + // Construct using context.ContextOuterClass.ConnectionSettings_L3.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -42915,17 +46926,15 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - srcMacAddress_ = ""; - - dstMacAddress_ = ""; + srcIpAddress_ = ""; - etherType_ = 0; + dstIpAddress_ = ""; - vlanId_ = 0; + dscp_ = 0; - mplsLabel_ = 0; + protocol_ = 0; - mplsTrafficClass_ = 0; + ttl_ = 0; return this; } @@ -42933,17 +46942,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L2_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L3_descriptor; } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L2 getDefaultInstanceForType() { - return context.ContextOuterClass.ConnectionSettings_L2.getDefaultInstance(); + public context.ContextOuterClass.ConnectionSettings_L3 getDefaultInstanceForType() { + return context.ContextOuterClass.ConnectionSettings_L3.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L2 build() { - context.ContextOuterClass.ConnectionSettings_L2 result = buildPartial(); + public context.ContextOuterClass.ConnectionSettings_L3 build() { + context.ContextOuterClass.ConnectionSettings_L3 result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -42951,14 +46960,13 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L2 buildPartial() { - context.ContextOuterClass.ConnectionSettings_L2 result = new context.ContextOuterClass.ConnectionSettings_L2(this); - result.srcMacAddress_ = srcMacAddress_; - result.dstMacAddress_ = dstMacAddress_; - result.etherType_ = etherType_; - result.vlanId_ = vlanId_; - result.mplsLabel_ = mplsLabel_; - result.mplsTrafficClass_ = mplsTrafficClass_; + public context.ContextOuterClass.ConnectionSettings_L3 buildPartial() { + context.ContextOuterClass.ConnectionSettings_L3 result = new context.ContextOuterClass.ConnectionSettings_L3(this); + result.srcIpAddress_ = srcIpAddress_; + result.dstIpAddress_ = dstIpAddress_; + result.dscp_ = dscp_; + result.protocol_ = protocol_; + result.ttl_ = ttl_; onBuilt(); return result; } @@ -42997,35 +47005,32 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ConnectionSettings_L2) { - return mergeFrom((context.ContextOuterClass.ConnectionSettings_L2)other); + if (other instanceof context.ContextOuterClass.ConnectionSettings_L3) { + return mergeFrom((context.ContextOuterClass.ConnectionSettings_L3)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ConnectionSettings_L2 other) { - if (other == context.ContextOuterClass.ConnectionSettings_L2.getDefaultInstance()) return this; - if (!other.getSrcMacAddress().isEmpty()) { - srcMacAddress_ = other.srcMacAddress_; + public Builder mergeFrom(context.ContextOuterClass.ConnectionSettings_L3 other) { + if (other == context.ContextOuterClass.ConnectionSettings_L3.getDefaultInstance()) return this; + if (!other.getSrcIpAddress().isEmpty()) { + srcIpAddress_ = other.srcIpAddress_; onChanged(); } - if (!other.getDstMacAddress().isEmpty()) { - dstMacAddress_ = other.dstMacAddress_; + if (!other.getDstIpAddress().isEmpty()) { + dstIpAddress_ = other.dstIpAddress_; onChanged(); } - if (other.getEtherType() != 0) { - setEtherType(other.getEtherType()); - } - if (other.getVlanId() != 0) { - setVlanId(other.getVlanId()); + if (other.getDscp() != 0) { + setDscp(other.getDscp()); } - if (other.getMplsLabel() != 0) { - setMplsLabel(other.getMplsLabel()); + if (other.getProtocol() != 0) { + setProtocol(other.getProtocol()); } - if (other.getMplsTrafficClass() != 0) { - setMplsTrafficClass(other.getMplsTrafficClass()); + if (other.getTtl() != 0) { + setTtl(other.getTtl()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -43042,11 +47047,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ConnectionSettings_L2 parsedMessage = null; + context.ContextOuterClass.ConnectionSettings_L3 parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ConnectionSettings_L2) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ConnectionSettings_L3) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -43056,278 +47061,247 @@ public final class ContextOuterClass { return this; } - private java.lang.Object srcMacAddress_ = ""; + private java.lang.Object srcIpAddress_ = ""; /** - * <code>string src_mac_address = 1;</code> - * @return The srcMacAddress. + * <code>string src_ip_address = 1;</code> + * @return The srcIpAddress. */ - public java.lang.String getSrcMacAddress() { - java.lang.Object ref = srcMacAddress_; + public java.lang.String getSrcIpAddress() { + java.lang.Object ref = srcIpAddress_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); - srcMacAddress_ = s; + srcIpAddress_ = s; return s; } else { return (java.lang.String) ref; } } /** - * <code>string src_mac_address = 1;</code> - * @return The bytes for srcMacAddress. + * <code>string src_ip_address = 1;</code> + * @return The bytes for srcIpAddress. */ public com.google.protobuf.ByteString - getSrcMacAddressBytes() { - java.lang.Object ref = srcMacAddress_; + getSrcIpAddressBytes() { + java.lang.Object ref = srcIpAddress_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); - srcMacAddress_ = b; + srcIpAddress_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** - * <code>string src_mac_address = 1;</code> - * @param value The srcMacAddress to set. + * <code>string src_ip_address = 1;</code> + * @param value The srcIpAddress to set. * @return This builder for chaining. */ - public Builder setSrcMacAddress( + public Builder setSrcIpAddress( java.lang.String value) { if (value == null) { throw new NullPointerException(); } - srcMacAddress_ = value; + srcIpAddress_ = value; onChanged(); return this; } /** - * <code>string src_mac_address = 1;</code> + * <code>string src_ip_address = 1;</code> * @return This builder for chaining. */ - public Builder clearSrcMacAddress() { + public Builder clearSrcIpAddress() { - srcMacAddress_ = getDefaultInstance().getSrcMacAddress(); + srcIpAddress_ = getDefaultInstance().getSrcIpAddress(); onChanged(); return this; } /** - * <code>string src_mac_address = 1;</code> - * @param value The bytes for srcMacAddress to set. + * <code>string src_ip_address = 1;</code> + * @param value The bytes for srcIpAddress to set. * @return This builder for chaining. */ - public Builder setSrcMacAddressBytes( + public Builder setSrcIpAddressBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); - srcMacAddress_ = value; + srcIpAddress_ = value; onChanged(); return this; } - private java.lang.Object dstMacAddress_ = ""; + private java.lang.Object dstIpAddress_ = ""; /** - * <code>string dst_mac_address = 2;</code> - * @return The dstMacAddress. + * <code>string dst_ip_address = 2;</code> + * @return The dstIpAddress. */ - public java.lang.String getDstMacAddress() { - java.lang.Object ref = dstMacAddress_; + public java.lang.String getDstIpAddress() { + java.lang.Object ref = dstIpAddress_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); - dstMacAddress_ = s; + dstIpAddress_ = s; return s; } else { return (java.lang.String) ref; } } /** - * <code>string dst_mac_address = 2;</code> - * @return The bytes for dstMacAddress. + * <code>string dst_ip_address = 2;</code> + * @return The bytes for dstIpAddress. */ public com.google.protobuf.ByteString - getDstMacAddressBytes() { - java.lang.Object ref = dstMacAddress_; + getDstIpAddressBytes() { + java.lang.Object ref = dstIpAddress_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); - dstMacAddress_ = b; + dstIpAddress_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** - * <code>string dst_mac_address = 2;</code> - * @param value The dstMacAddress to set. + * <code>string dst_ip_address = 2;</code> + * @param value The dstIpAddress to set. * @return This builder for chaining. */ - public Builder setDstMacAddress( + public Builder setDstIpAddress( java.lang.String value) { if (value == null) { throw new NullPointerException(); } - dstMacAddress_ = value; + dstIpAddress_ = value; onChanged(); return this; } /** - * <code>string dst_mac_address = 2;</code> + * <code>string dst_ip_address = 2;</code> * @return This builder for chaining. */ - public Builder clearDstMacAddress() { + public Builder clearDstIpAddress() { - dstMacAddress_ = getDefaultInstance().getDstMacAddress(); + dstIpAddress_ = getDefaultInstance().getDstIpAddress(); onChanged(); return this; } /** - * <code>string dst_mac_address = 2;</code> - * @param value The bytes for dstMacAddress to set. + * <code>string dst_ip_address = 2;</code> + * @param value The bytes for dstIpAddress to set. * @return This builder for chaining. */ - public Builder setDstMacAddressBytes( + public Builder setDstIpAddressBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); - dstMacAddress_ = value; - onChanged(); - return this; - } - - private int etherType_ ; - /** - * <code>uint32 ether_type = 3;</code> - * @return The etherType. - */ - @java.lang.Override - public int getEtherType() { - return etherType_; - } - /** - * <code>uint32 ether_type = 3;</code> - * @param value The etherType to set. - * @return This builder for chaining. - */ - public Builder setEtherType(int value) { - - etherType_ = value; - onChanged(); - return this; - } - /** - * <code>uint32 ether_type = 3;</code> - * @return This builder for chaining. - */ - public Builder clearEtherType() { - - etherType_ = 0; + dstIpAddress_ = value; onChanged(); return this; } - private int vlanId_ ; + private int dscp_ ; /** - * <code>uint32 vlan_id = 4;</code> - * @return The vlanId. + * <code>uint32 dscp = 3;</code> + * @return The dscp. */ @java.lang.Override - public int getVlanId() { - return vlanId_; + public int getDscp() { + return dscp_; } /** - * <code>uint32 vlan_id = 4;</code> - * @param value The vlanId to set. + * <code>uint32 dscp = 3;</code> + * @param value The dscp to set. * @return This builder for chaining. */ - public Builder setVlanId(int value) { + public Builder setDscp(int value) { - vlanId_ = value; + dscp_ = value; onChanged(); return this; } /** - * <code>uint32 vlan_id = 4;</code> + * <code>uint32 dscp = 3;</code> * @return This builder for chaining. */ - public Builder clearVlanId() { + public Builder clearDscp() { - vlanId_ = 0; + dscp_ = 0; onChanged(); return this; } - private int mplsLabel_ ; + private int protocol_ ; /** - * <code>uint32 mpls_label = 5;</code> - * @return The mplsLabel. + * <code>uint32 protocol = 4;</code> + * @return The protocol. */ @java.lang.Override - public int getMplsLabel() { - return mplsLabel_; + public int getProtocol() { + return protocol_; } /** - * <code>uint32 mpls_label = 5;</code> - * @param value The mplsLabel to set. + * <code>uint32 protocol = 4;</code> + * @param value The protocol to set. * @return This builder for chaining. */ - public Builder setMplsLabel(int value) { + public Builder setProtocol(int value) { - mplsLabel_ = value; + protocol_ = value; onChanged(); return this; } /** - * <code>uint32 mpls_label = 5;</code> + * <code>uint32 protocol = 4;</code> * @return This builder for chaining. */ - public Builder clearMplsLabel() { + public Builder clearProtocol() { - mplsLabel_ = 0; + protocol_ = 0; onChanged(); return this; } - private int mplsTrafficClass_ ; + private int ttl_ ; /** - * <code>uint32 mpls_traffic_class = 6;</code> - * @return The mplsTrafficClass. + * <code>uint32 ttl = 5;</code> + * @return The ttl. */ @java.lang.Override - public int getMplsTrafficClass() { - return mplsTrafficClass_; + public int getTtl() { + return ttl_; } /** - * <code>uint32 mpls_traffic_class = 6;</code> - * @param value The mplsTrafficClass to set. + * <code>uint32 ttl = 5;</code> + * @param value The ttl to set. * @return This builder for chaining. */ - public Builder setMplsTrafficClass(int value) { + public Builder setTtl(int value) { - mplsTrafficClass_ = value; + ttl_ = value; onChanged(); return this; } /** - * <code>uint32 mpls_traffic_class = 6;</code> + * <code>uint32 ttl = 5;</code> * @return This builder for chaining. */ - public Builder clearMplsTrafficClass() { + public Builder clearTtl() { - mplsTrafficClass_ = 0; + ttl_ = 0; onChanged(); return this; } @@ -43344,114 +47318,94 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ConnectionSettings_L2) + // @@protoc_insertion_point(builder_scope:context.ConnectionSettings_L3) } - // @@protoc_insertion_point(class_scope:context.ConnectionSettings_L2) - private static final context.ContextOuterClass.ConnectionSettings_L2 DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ConnectionSettings_L3) + private static final context.ContextOuterClass.ConnectionSettings_L3 DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionSettings_L2(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionSettings_L3(); } - public static context.ContextOuterClass.ConnectionSettings_L2 getDefaultInstance() { + public static context.ContextOuterClass.ConnectionSettings_L3 getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ConnectionSettings_L2> - PARSER = new com.google.protobuf.AbstractParser<ConnectionSettings_L2>() { + private static final com.google.protobuf.Parser<ConnectionSettings_L3> + PARSER = new com.google.protobuf.AbstractParser<ConnectionSettings_L3>() { @java.lang.Override - public ConnectionSettings_L2 parsePartialFrom( + public ConnectionSettings_L3 parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ConnectionSettings_L2(input, extensionRegistry); + return new ConnectionSettings_L3(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ConnectionSettings_L2> parser() { + public static com.google.protobuf.Parser<ConnectionSettings_L3> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ConnectionSettings_L2> getParserForType() { + public com.google.protobuf.Parser<ConnectionSettings_L3> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L2 getDefaultInstanceForType() { + public context.ContextOuterClass.ConnectionSettings_L3 getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ConnectionSettings_L3OrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ConnectionSettings_L3) + public interface ConnectionSettings_L4OrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ConnectionSettings_L4) com.google.protobuf.MessageOrBuilder { /** - * <code>string src_ip_address = 1;</code> - * @return The srcIpAddress. - */ - java.lang.String getSrcIpAddress(); - /** - * <code>string src_ip_address = 1;</code> - * @return The bytes for srcIpAddress. - */ - com.google.protobuf.ByteString - getSrcIpAddressBytes(); - - /** - * <code>string dst_ip_address = 2;</code> - * @return The dstIpAddress. - */ - java.lang.String getDstIpAddress(); - /** - * <code>string dst_ip_address = 2;</code> - * @return The bytes for dstIpAddress. + * <code>uint32 src_port = 1;</code> + * @return The srcPort. */ - com.google.protobuf.ByteString - getDstIpAddressBytes(); + int getSrcPort(); /** - * <code>uint32 dscp = 3;</code> - * @return The dscp. + * <code>uint32 dst_port = 2;</code> + * @return The dstPort. */ - int getDscp(); + int getDstPort(); /** - * <code>uint32 protocol = 4;</code> - * @return The protocol. + * <code>uint32 tcp_flags = 3;</code> + * @return The tcpFlags. */ - int getProtocol(); + int getTcpFlags(); /** - * <code>uint32 ttl = 5;</code> + * <code>uint32 ttl = 4;</code> * @return The ttl. */ int getTtl(); } /** - * Protobuf type {@code context.ConnectionSettings_L3} + * Protobuf type {@code context.ConnectionSettings_L4} */ - public static final class ConnectionSettings_L3 extends + public static final class ConnectionSettings_L4 extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ConnectionSettings_L3) - ConnectionSettings_L3OrBuilder { + // @@protoc_insertion_point(message_implements:context.ConnectionSettings_L4) + ConnectionSettings_L4OrBuilder { private static final long serialVersionUID = 0L; - // Use ConnectionSettings_L3.newBuilder() to construct. - private ConnectionSettings_L3(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ConnectionSettings_L4.newBuilder() to construct. + private ConnectionSettings_L4(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ConnectionSettings_L3() { - srcIpAddress_ = ""; - dstIpAddress_ = ""; + private ConnectionSettings_L4() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ConnectionSettings_L3(); + return new ConnectionSettings_L4(); } @java.lang.Override @@ -43459,7 +47413,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ConnectionSettings_L3( + private ConnectionSettings_L4( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -43477,30 +47431,23 @@ public final class ContextOuterClass { case 0: done = true; break; - case 10: { - java.lang.String s = input.readStringRequireUtf8(); + case 8: { - srcIpAddress_ = s; + srcPort_ = input.readUInt32(); break; } - case 18: { - java.lang.String s = input.readStringRequireUtf8(); + case 16: { - dstIpAddress_ = s; + dstPort_ = input.readUInt32(); break; } case 24: { - dscp_ = input.readUInt32(); + tcpFlags_ = input.readUInt32(); break; } case 32: { - protocol_ = input.readUInt32(); - break; - } - case 40: { - ttl_ = input.readUInt32(); break; } @@ -43525,119 +47472,54 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L3_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L4_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L3_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L4_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionSettings_L3.class, context.ContextOuterClass.ConnectionSettings_L3.Builder.class); - } - - public static final int SRC_IP_ADDRESS_FIELD_NUMBER = 1; - private volatile java.lang.Object srcIpAddress_; - /** - * <code>string src_ip_address = 1;</code> - * @return The srcIpAddress. - */ - @java.lang.Override - public java.lang.String getSrcIpAddress() { - java.lang.Object ref = srcIpAddress_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - srcIpAddress_ = s; - return s; - } - } - /** - * <code>string src_ip_address = 1;</code> - * @return The bytes for srcIpAddress. - */ - @java.lang.Override - public com.google.protobuf.ByteString - getSrcIpAddressBytes() { - java.lang.Object ref = srcIpAddress_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - srcIpAddress_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + context.ContextOuterClass.ConnectionSettings_L4.class, context.ContextOuterClass.ConnectionSettings_L4.Builder.class); } - public static final int DST_IP_ADDRESS_FIELD_NUMBER = 2; - private volatile java.lang.Object dstIpAddress_; - /** - * <code>string dst_ip_address = 2;</code> - * @return The dstIpAddress. - */ - @java.lang.Override - public java.lang.String getDstIpAddress() { - java.lang.Object ref = dstIpAddress_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - dstIpAddress_ = s; - return s; - } - } + public static final int SRC_PORT_FIELD_NUMBER = 1; + private int srcPort_; /** - * <code>string dst_ip_address = 2;</code> - * @return The bytes for dstIpAddress. + * <code>uint32 src_port = 1;</code> + * @return The srcPort. */ @java.lang.Override - public com.google.protobuf.ByteString - getDstIpAddressBytes() { - java.lang.Object ref = dstIpAddress_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - dstIpAddress_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public int getSrcPort() { + return srcPort_; } - public static final int DSCP_FIELD_NUMBER = 3; - private int dscp_; + public static final int DST_PORT_FIELD_NUMBER = 2; + private int dstPort_; /** - * <code>uint32 dscp = 3;</code> - * @return The dscp. + * <code>uint32 dst_port = 2;</code> + * @return The dstPort. */ @java.lang.Override - public int getDscp() { - return dscp_; + public int getDstPort() { + return dstPort_; } - public static final int PROTOCOL_FIELD_NUMBER = 4; - private int protocol_; + public static final int TCP_FLAGS_FIELD_NUMBER = 3; + private int tcpFlags_; /** - * <code>uint32 protocol = 4;</code> - * @return The protocol. + * <code>uint32 tcp_flags = 3;</code> + * @return The tcpFlags. */ @java.lang.Override - public int getProtocol() { - return protocol_; + public int getTcpFlags() { + return tcpFlags_; } - public static final int TTL_FIELD_NUMBER = 5; + public static final int TTL_FIELD_NUMBER = 4; private int ttl_; /** - * <code>uint32 ttl = 5;</code> + * <code>uint32 ttl = 4;</code> * @return The ttl. */ @java.lang.Override @@ -43659,20 +47541,17 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getSrcIpAddressBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 1, srcIpAddress_); - } - if (!getDstIpAddressBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, dstIpAddress_); + if (srcPort_ != 0) { + output.writeUInt32(1, srcPort_); } - if (dscp_ != 0) { - output.writeUInt32(3, dscp_); + if (dstPort_ != 0) { + output.writeUInt32(2, dstPort_); } - if (protocol_ != 0) { - output.writeUInt32(4, protocol_); + if (tcpFlags_ != 0) { + output.writeUInt32(3, tcpFlags_); } if (ttl_ != 0) { - output.writeUInt32(5, ttl_); + output.writeUInt32(4, ttl_); } unknownFields.writeTo(output); } @@ -43683,23 +47562,21 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (!getSrcIpAddressBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, srcIpAddress_); - } - if (!getDstIpAddressBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, dstIpAddress_); + if (srcPort_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(1, srcPort_); } - if (dscp_ != 0) { + if (dstPort_ != 0) { size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(3, dscp_); + .computeUInt32Size(2, dstPort_); } - if (protocol_ != 0) { + if (tcpFlags_ != 0) { size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(4, protocol_); + .computeUInt32Size(3, tcpFlags_); } if (ttl_ != 0) { size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(5, ttl_); + .computeUInt32Size(4, ttl_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -43711,19 +47588,17 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ConnectionSettings_L3)) { + if (!(obj instanceof context.ContextOuterClass.ConnectionSettings_L4)) { return super.equals(obj); } - context.ContextOuterClass.ConnectionSettings_L3 other = (context.ContextOuterClass.ConnectionSettings_L3) obj; + context.ContextOuterClass.ConnectionSettings_L4 other = (context.ContextOuterClass.ConnectionSettings_L4) obj; - if (!getSrcIpAddress() - .equals(other.getSrcIpAddress())) return false; - if (!getDstIpAddress() - .equals(other.getDstIpAddress())) return false; - if (getDscp() - != other.getDscp()) return false; - if (getProtocol() - != other.getProtocol()) return false; + if (getSrcPort() + != other.getSrcPort()) return false; + if (getDstPort() + != other.getDstPort()) return false; + if (getTcpFlags() + != other.getTcpFlags()) return false; if (getTtl() != other.getTtl()) return false; if (!unknownFields.equals(other.unknownFields)) return false; @@ -43737,14 +47612,12 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + SRC_IP_ADDRESS_FIELD_NUMBER; - hash = (53 * hash) + getSrcIpAddress().hashCode(); - hash = (37 * hash) + DST_IP_ADDRESS_FIELD_NUMBER; - hash = (53 * hash) + getDstIpAddress().hashCode(); - hash = (37 * hash) + DSCP_FIELD_NUMBER; - hash = (53 * hash) + getDscp(); - hash = (37 * hash) + PROTOCOL_FIELD_NUMBER; - hash = (53 * hash) + getProtocol(); + hash = (37 * hash) + SRC_PORT_FIELD_NUMBER; + hash = (53 * hash) + getSrcPort(); + hash = (37 * hash) + DST_PORT_FIELD_NUMBER; + hash = (53 * hash) + getDstPort(); + hash = (37 * hash) + TCP_FLAGS_FIELD_NUMBER; + hash = (53 * hash) + getTcpFlags(); hash = (37 * hash) + TTL_FIELD_NUMBER; hash = (53 * hash) + getTtl(); hash = (29 * hash) + unknownFields.hashCode(); @@ -43752,69 +47625,69 @@ public final class ContextOuterClass { return hash; } - public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom(byte[] data) + public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L4 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 context.ContextOuterClass.ConnectionSettings_L3 parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionSettings_L4 parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings_L3 parseDelimitedFrom( + public static context.ContextOuterClass.ConnectionSettings_L4 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 context.ContextOuterClass.ConnectionSettings_L3 parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -43827,7 +47700,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ConnectionSettings_L3 prototype) { + public static Builder newBuilder(context.ContextOuterClass.ConnectionSettings_L4 prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -43843,26 +47716,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ConnectionSettings_L3} + * Protobuf type {@code context.ConnectionSettings_L4} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ConnectionSettings_L3) - context.ContextOuterClass.ConnectionSettings_L3OrBuilder { + // @@protoc_insertion_point(builder_implements:context.ConnectionSettings_L4) + context.ContextOuterClass.ConnectionSettings_L4OrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L3_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L4_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L3_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L4_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionSettings_L3.class, context.ContextOuterClass.ConnectionSettings_L3.Builder.class); + context.ContextOuterClass.ConnectionSettings_L4.class, context.ContextOuterClass.ConnectionSettings_L4.Builder.class); } - // Construct using context.ContextOuterClass.ConnectionSettings_L3.newBuilder() + // Construct using context.ContextOuterClass.ConnectionSettings_L4.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -43880,13 +47753,11 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - srcIpAddress_ = ""; - - dstIpAddress_ = ""; + srcPort_ = 0; - dscp_ = 0; + dstPort_ = 0; - protocol_ = 0; + tcpFlags_ = 0; ttl_ = 0; @@ -43896,17 +47767,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L3_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L4_descriptor; } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L3 getDefaultInstanceForType() { - return context.ContextOuterClass.ConnectionSettings_L3.getDefaultInstance(); + public context.ContextOuterClass.ConnectionSettings_L4 getDefaultInstanceForType() { + return context.ContextOuterClass.ConnectionSettings_L4.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L3 build() { - context.ContextOuterClass.ConnectionSettings_L3 result = buildPartial(); + public context.ContextOuterClass.ConnectionSettings_L4 build() { + context.ContextOuterClass.ConnectionSettings_L4 result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -43914,12 +47785,11 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L3 buildPartial() { - context.ContextOuterClass.ConnectionSettings_L3 result = new context.ContextOuterClass.ConnectionSettings_L3(this); - result.srcIpAddress_ = srcIpAddress_; - result.dstIpAddress_ = dstIpAddress_; - result.dscp_ = dscp_; - result.protocol_ = protocol_; + public context.ContextOuterClass.ConnectionSettings_L4 buildPartial() { + context.ContextOuterClass.ConnectionSettings_L4 result = new context.ContextOuterClass.ConnectionSettings_L4(this); + result.srcPort_ = srcPort_; + result.dstPort_ = dstPort_; + result.tcpFlags_ = tcpFlags_; result.ttl_ = ttl_; onBuilt(); return result; @@ -43959,29 +47829,24 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ConnectionSettings_L3) { - return mergeFrom((context.ContextOuterClass.ConnectionSettings_L3)other); + if (other instanceof context.ContextOuterClass.ConnectionSettings_L4) { + return mergeFrom((context.ContextOuterClass.ConnectionSettings_L4)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ConnectionSettings_L3 other) { - if (other == context.ContextOuterClass.ConnectionSettings_L3.getDefaultInstance()) return this; - if (!other.getSrcIpAddress().isEmpty()) { - srcIpAddress_ = other.srcIpAddress_; - onChanged(); - } - if (!other.getDstIpAddress().isEmpty()) { - dstIpAddress_ = other.dstIpAddress_; - onChanged(); + public Builder mergeFrom(context.ContextOuterClass.ConnectionSettings_L4 other) { + if (other == context.ContextOuterClass.ConnectionSettings_L4.getDefaultInstance()) return this; + if (other.getSrcPort() != 0) { + setSrcPort(other.getSrcPort()); } - if (other.getDscp() != 0) { - setDscp(other.getDscp()); + if (other.getDstPort() != 0) { + setDstPort(other.getDstPort()); } - if (other.getProtocol() != 0) { - setProtocol(other.getProtocol()); + if (other.getTcpFlags() != 0) { + setTcpFlags(other.getTcpFlags()); } if (other.getTtl() != 0) { setTtl(other.getTtl()); @@ -44001,11 +47866,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ConnectionSettings_L3 parsedMessage = null; + context.ContextOuterClass.ConnectionSettings_L4 parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ConnectionSettings_L3) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ConnectionSettings_L4) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -44015,223 +47880,102 @@ public final class ContextOuterClass { return this; } - private java.lang.Object srcIpAddress_ = ""; - /** - * <code>string src_ip_address = 1;</code> - * @return The srcIpAddress. - */ - public java.lang.String getSrcIpAddress() { - java.lang.Object ref = srcIpAddress_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - srcIpAddress_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - /** - * <code>string src_ip_address = 1;</code> - * @return The bytes for srcIpAddress. - */ - public com.google.protobuf.ByteString - getSrcIpAddressBytes() { - java.lang.Object ref = srcIpAddress_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - srcIpAddress_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - /** - * <code>string src_ip_address = 1;</code> - * @param value The srcIpAddress to set. - * @return This builder for chaining. - */ - public Builder setSrcIpAddress( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - srcIpAddress_ = value; - onChanged(); - return this; - } - /** - * <code>string src_ip_address = 1;</code> - * @return This builder for chaining. - */ - public Builder clearSrcIpAddress() { - - srcIpAddress_ = getDefaultInstance().getSrcIpAddress(); - onChanged(); - return this; - } - /** - * <code>string src_ip_address = 1;</code> - * @param value The bytes for srcIpAddress to set. - * @return This builder for chaining. - */ - public Builder setSrcIpAddressBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - srcIpAddress_ = value; - onChanged(); - return this; - } - - private java.lang.Object dstIpAddress_ = ""; - /** - * <code>string dst_ip_address = 2;</code> - * @return The dstIpAddress. - */ - public java.lang.String getDstIpAddress() { - java.lang.Object ref = dstIpAddress_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - dstIpAddress_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - /** - * <code>string dst_ip_address = 2;</code> - * @return The bytes for dstIpAddress. - */ - public com.google.protobuf.ByteString - getDstIpAddressBytes() { - java.lang.Object ref = dstIpAddress_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - dstIpAddress_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + private int srcPort_ ; /** - * <code>string dst_ip_address = 2;</code> - * @param value The dstIpAddress to set. - * @return This builder for chaining. + * <code>uint32 src_port = 1;</code> + * @return The srcPort. */ - public Builder setDstIpAddress( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - dstIpAddress_ = value; - onChanged(); - return this; + @java.lang.Override + public int getSrcPort() { + return srcPort_; } /** - * <code>string dst_ip_address = 2;</code> + * <code>uint32 src_port = 1;</code> + * @param value The srcPort to set. * @return This builder for chaining. */ - public Builder clearDstIpAddress() { + public Builder setSrcPort(int value) { - dstIpAddress_ = getDefaultInstance().getDstIpAddress(); + srcPort_ = value; onChanged(); return this; } /** - * <code>string dst_ip_address = 2;</code> - * @param value The bytes for dstIpAddress to set. + * <code>uint32 src_port = 1;</code> * @return This builder for chaining. */ - public Builder setDstIpAddressBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); + public Builder clearSrcPort() { - dstIpAddress_ = value; + srcPort_ = 0; onChanged(); return this; } - private int dscp_ ; + private int dstPort_ ; /** - * <code>uint32 dscp = 3;</code> - * @return The dscp. + * <code>uint32 dst_port = 2;</code> + * @return The dstPort. */ @java.lang.Override - public int getDscp() { - return dscp_; + public int getDstPort() { + return dstPort_; } /** - * <code>uint32 dscp = 3;</code> - * @param value The dscp to set. + * <code>uint32 dst_port = 2;</code> + * @param value The dstPort to set. * @return This builder for chaining. */ - public Builder setDscp(int value) { + public Builder setDstPort(int value) { - dscp_ = value; + dstPort_ = value; onChanged(); return this; } /** - * <code>uint32 dscp = 3;</code> + * <code>uint32 dst_port = 2;</code> * @return This builder for chaining. */ - public Builder clearDscp() { + public Builder clearDstPort() { - dscp_ = 0; + dstPort_ = 0; onChanged(); return this; } - private int protocol_ ; + private int tcpFlags_ ; /** - * <code>uint32 protocol = 4;</code> - * @return The protocol. + * <code>uint32 tcp_flags = 3;</code> + * @return The tcpFlags. */ @java.lang.Override - public int getProtocol() { - return protocol_; + public int getTcpFlags() { + return tcpFlags_; } /** - * <code>uint32 protocol = 4;</code> - * @param value The protocol to set. + * <code>uint32 tcp_flags = 3;</code> + * @param value The tcpFlags to set. * @return This builder for chaining. */ - public Builder setProtocol(int value) { + public Builder setTcpFlags(int value) { - protocol_ = value; + tcpFlags_ = value; onChanged(); return this; } /** - * <code>uint32 protocol = 4;</code> + * <code>uint32 tcp_flags = 3;</code> * @return This builder for chaining. */ - public Builder clearProtocol() { + public Builder clearTcpFlags() { - protocol_ = 0; + tcpFlags_ = 0; onChanged(); return this; } private int ttl_ ; /** - * <code>uint32 ttl = 5;</code> + * <code>uint32 ttl = 4;</code> * @return The ttl. */ @java.lang.Override @@ -44239,7 +47983,7 @@ public final class ContextOuterClass { return ttl_; } /** - * <code>uint32 ttl = 5;</code> + * <code>uint32 ttl = 4;</code> * @param value The ttl to set. * @return This builder for chaining. */ @@ -44250,7 +47994,7 @@ public final class ContextOuterClass { return this; } /** - * <code>uint32 ttl = 5;</code> + * <code>uint32 ttl = 4;</code> * @return This builder for chaining. */ public Builder clearTtl() { @@ -44272,94 +48016,130 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ConnectionSettings_L3) + // @@protoc_insertion_point(builder_scope:context.ConnectionSettings_L4) } - // @@protoc_insertion_point(class_scope:context.ConnectionSettings_L3) - private static final context.ContextOuterClass.ConnectionSettings_L3 DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ConnectionSettings_L4) + private static final context.ContextOuterClass.ConnectionSettings_L4 DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionSettings_L3(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionSettings_L4(); } - public static context.ContextOuterClass.ConnectionSettings_L3 getDefaultInstance() { + public static context.ContextOuterClass.ConnectionSettings_L4 getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ConnectionSettings_L3> - PARSER = new com.google.protobuf.AbstractParser<ConnectionSettings_L3>() { + private static final com.google.protobuf.Parser<ConnectionSettings_L4> + PARSER = new com.google.protobuf.AbstractParser<ConnectionSettings_L4>() { @java.lang.Override - public ConnectionSettings_L3 parsePartialFrom( + public ConnectionSettings_L4 parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ConnectionSettings_L3(input, extensionRegistry); + return new ConnectionSettings_L4(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ConnectionSettings_L3> parser() { + public static com.google.protobuf.Parser<ConnectionSettings_L4> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ConnectionSettings_L3> getParserForType() { + public com.google.protobuf.Parser<ConnectionSettings_L4> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L3 getDefaultInstanceForType() { + public context.ContextOuterClass.ConnectionSettings_L4 getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ConnectionSettings_L4OrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ConnectionSettings_L4) + public interface ConnectionSettingsOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ConnectionSettings) com.google.protobuf.MessageOrBuilder { /** - * <code>uint32 src_port = 1;</code> - * @return The srcPort. + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + * @return Whether the l0 field is set. */ - int getSrcPort(); + boolean hasL0(); + /** + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + * @return The l0. + */ + context.ContextOuterClass.ConnectionSettings_L0 getL0(); + /** + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + */ + context.ContextOuterClass.ConnectionSettings_L0OrBuilder getL0OrBuilder(); /** - * <code>uint32 dst_port = 2;</code> - * @return The dstPort. + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * @return Whether the l2 field is set. */ - int getDstPort(); + boolean hasL2(); + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * @return The l2. + */ + context.ContextOuterClass.ConnectionSettings_L2 getL2(); + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + */ + context.ContextOuterClass.ConnectionSettings_L2OrBuilder getL2OrBuilder(); /** - * <code>uint32 tcp_flags = 3;</code> - * @return The tcpFlags. + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * @return Whether the l3 field is set. */ - int getTcpFlags(); + boolean hasL3(); + /** + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * @return The l3. + */ + context.ContextOuterClass.ConnectionSettings_L3 getL3(); + /** + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + */ + context.ContextOuterClass.ConnectionSettings_L3OrBuilder getL3OrBuilder(); /** - * <code>uint32 ttl = 4;</code> - * @return The ttl. + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * @return Whether the l4 field is set. */ - int getTtl(); + boolean hasL4(); + /** + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * @return The l4. + */ + context.ContextOuterClass.ConnectionSettings_L4 getL4(); + /** + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + */ + context.ContextOuterClass.ConnectionSettings_L4OrBuilder getL4OrBuilder(); } /** - * Protobuf type {@code context.ConnectionSettings_L4} + * Protobuf type {@code context.ConnectionSettings} */ - public static final class ConnectionSettings_L4 extends + public static final class ConnectionSettings extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ConnectionSettings_L4) - ConnectionSettings_L4OrBuilder { + // @@protoc_insertion_point(message_implements:context.ConnectionSettings) + ConnectionSettingsOrBuilder { private static final long serialVersionUID = 0L; - // Use ConnectionSettings_L4.newBuilder() to construct. - private ConnectionSettings_L4(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ConnectionSettings.newBuilder() to construct. + private ConnectionSettings(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ConnectionSettings_L4() { + private ConnectionSettings() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ConnectionSettings_L4(); + return new ConnectionSettings(); } @java.lang.Override @@ -44367,7 +48147,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ConnectionSettings_L4( + private ConnectionSettings( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -44385,24 +48165,56 @@ public final class ContextOuterClass { case 0: done = true; break; - case 8: { + case 10: { + context.ContextOuterClass.ConnectionSettings_L0.Builder subBuilder = null; + if (l0_ != null) { + subBuilder = l0_.toBuilder(); + } + l0_ = input.readMessage(context.ContextOuterClass.ConnectionSettings_L0.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(l0_); + l0_ = subBuilder.buildPartial(); + } - srcPort_ = input.readUInt32(); break; } - case 16: { + case 18: { + context.ContextOuterClass.ConnectionSettings_L2.Builder subBuilder = null; + if (l2_ != null) { + subBuilder = l2_.toBuilder(); + } + l2_ = input.readMessage(context.ContextOuterClass.ConnectionSettings_L2.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(l2_); + l2_ = subBuilder.buildPartial(); + } - dstPort_ = input.readUInt32(); break; } - case 24: { + case 26: { + context.ContextOuterClass.ConnectionSettings_L3.Builder subBuilder = null; + if (l3_ != null) { + subBuilder = l3_.toBuilder(); + } + l3_ = input.readMessage(context.ContextOuterClass.ConnectionSettings_L3.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(l3_); + l3_ = subBuilder.buildPartial(); + } - tcpFlags_ = input.readUInt32(); break; } - case 32: { + case 34: { + context.ContextOuterClass.ConnectionSettings_L4.Builder subBuilder = null; + if (l4_ != null) { + subBuilder = l4_.toBuilder(); + } + l4_ = input.readMessage(context.ContextOuterClass.ConnectionSettings_L4.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(l4_); + l4_ = subBuilder.buildPartial(); + } - ttl_ = input.readUInt32(); break; } default: { @@ -44426,59 +48238,119 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L4_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L4_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionSettings_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionSettings_L4.class, context.ContextOuterClass.ConnectionSettings_L4.Builder.class); + context.ContextOuterClass.ConnectionSettings.class, context.ContextOuterClass.ConnectionSettings.Builder.class); } - public static final int SRC_PORT_FIELD_NUMBER = 1; - private int srcPort_; + public static final int L0_FIELD_NUMBER = 1; + private context.ContextOuterClass.ConnectionSettings_L0 l0_; /** - * <code>uint32 src_port = 1;</code> - * @return The srcPort. + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + * @return Whether the l0 field is set. */ @java.lang.Override - public int getSrcPort() { - return srcPort_; + public boolean hasL0() { + return l0_ != null; + } + /** + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + * @return The l0. + */ + @java.lang.Override + public context.ContextOuterClass.ConnectionSettings_L0 getL0() { + return l0_ == null ? context.ContextOuterClass.ConnectionSettings_L0.getDefaultInstance() : l0_; + } + /** + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ConnectionSettings_L0OrBuilder getL0OrBuilder() { + return getL0(); + } + + public static final int L2_FIELD_NUMBER = 2; + private context.ContextOuterClass.ConnectionSettings_L2 l2_; + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * @return Whether the l2 field is set. + */ + @java.lang.Override + public boolean hasL2() { + return l2_ != null; + } + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * @return The l2. + */ + @java.lang.Override + public context.ContextOuterClass.ConnectionSettings_L2 getL2() { + return l2_ == null ? context.ContextOuterClass.ConnectionSettings_L2.getDefaultInstance() : l2_; + } + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ConnectionSettings_L2OrBuilder getL2OrBuilder() { + return getL2(); + } + + public static final int L3_FIELD_NUMBER = 3; + private context.ContextOuterClass.ConnectionSettings_L3 l3_; + /** + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * @return Whether the l3 field is set. + */ + @java.lang.Override + public boolean hasL3() { + return l3_ != null; + } + /** + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * @return The l3. + */ + @java.lang.Override + public context.ContextOuterClass.ConnectionSettings_L3 getL3() { + return l3_ == null ? context.ContextOuterClass.ConnectionSettings_L3.getDefaultInstance() : l3_; + } + /** + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ConnectionSettings_L3OrBuilder getL3OrBuilder() { + return getL3(); } - public static final int DST_PORT_FIELD_NUMBER = 2; - private int dstPort_; + public static final int L4_FIELD_NUMBER = 4; + private context.ContextOuterClass.ConnectionSettings_L4 l4_; /** - * <code>uint32 dst_port = 2;</code> - * @return The dstPort. + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * @return Whether the l4 field is set. */ @java.lang.Override - public int getDstPort() { - return dstPort_; + public boolean hasL4() { + return l4_ != null; } - - public static final int TCP_FLAGS_FIELD_NUMBER = 3; - private int tcpFlags_; /** - * <code>uint32 tcp_flags = 3;</code> - * @return The tcpFlags. + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * @return The l4. */ @java.lang.Override - public int getTcpFlags() { - return tcpFlags_; + public context.ContextOuterClass.ConnectionSettings_L4 getL4() { + return l4_ == null ? context.ContextOuterClass.ConnectionSettings_L4.getDefaultInstance() : l4_; } - - public static final int TTL_FIELD_NUMBER = 4; - private int ttl_; /** - * <code>uint32 ttl = 4;</code> - * @return The ttl. + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> */ @java.lang.Override - public int getTtl() { - return ttl_; + public context.ContextOuterClass.ConnectionSettings_L4OrBuilder getL4OrBuilder() { + return getL4(); } private byte memoizedIsInitialized = -1; @@ -44495,17 +48367,17 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (srcPort_ != 0) { - output.writeUInt32(1, srcPort_); + if (l0_ != null) { + output.writeMessage(1, getL0()); } - if (dstPort_ != 0) { - output.writeUInt32(2, dstPort_); + if (l2_ != null) { + output.writeMessage(2, getL2()); } - if (tcpFlags_ != 0) { - output.writeUInt32(3, tcpFlags_); + if (l3_ != null) { + output.writeMessage(3, getL3()); } - if (ttl_ != 0) { - output.writeUInt32(4, ttl_); + if (l4_ != null) { + output.writeMessage(4, getL4()); } unknownFields.writeTo(output); } @@ -44516,21 +48388,21 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (srcPort_ != 0) { + if (l0_ != null) { size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(1, srcPort_); + .computeMessageSize(1, getL0()); } - if (dstPort_ != 0) { + if (l2_ != null) { size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(2, dstPort_); + .computeMessageSize(2, getL2()); } - if (tcpFlags_ != 0) { + if (l3_ != null) { size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(3, tcpFlags_); + .computeMessageSize(3, getL3()); } - if (ttl_ != 0) { + if (l4_ != null) { size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(4, ttl_); + .computeMessageSize(4, getL4()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -44542,19 +48414,31 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ConnectionSettings_L4)) { + if (!(obj instanceof context.ContextOuterClass.ConnectionSettings)) { return super.equals(obj); } - context.ContextOuterClass.ConnectionSettings_L4 other = (context.ContextOuterClass.ConnectionSettings_L4) obj; + context.ContextOuterClass.ConnectionSettings other = (context.ContextOuterClass.ConnectionSettings) obj; - if (getSrcPort() - != other.getSrcPort()) return false; - if (getDstPort() - != other.getDstPort()) return false; - if (getTcpFlags() - != other.getTcpFlags()) return false; - if (getTtl() - != other.getTtl()) return false; + if (hasL0() != other.hasL0()) return false; + if (hasL0()) { + if (!getL0() + .equals(other.getL0())) return false; + } + if (hasL2() != other.hasL2()) return false; + if (hasL2()) { + if (!getL2() + .equals(other.getL2())) return false; + } + if (hasL3() != other.hasL3()) return false; + if (hasL3()) { + if (!getL3() + .equals(other.getL3())) return false; + } + if (hasL4() != other.hasL4()) return false; + if (hasL4()) { + if (!getL4() + .equals(other.getL4())) return false; + } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -44566,82 +48450,90 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + SRC_PORT_FIELD_NUMBER; - hash = (53 * hash) + getSrcPort(); - hash = (37 * hash) + DST_PORT_FIELD_NUMBER; - hash = (53 * hash) + getDstPort(); - hash = (37 * hash) + TCP_FLAGS_FIELD_NUMBER; - hash = (53 * hash) + getTcpFlags(); - hash = (37 * hash) + TTL_FIELD_NUMBER; - hash = (53 * hash) + getTtl(); + if (hasL0()) { + hash = (37 * hash) + L0_FIELD_NUMBER; + hash = (53 * hash) + getL0().hashCode(); + } + if (hasL2()) { + hash = (37 * hash) + L2_FIELD_NUMBER; + hash = (53 * hash) + getL2().hashCode(); + } + if (hasL3()) { + hash = (37 * hash) + L3_FIELD_NUMBER; + hash = (53 * hash) + getL3().hashCode(); + } + if (hasL4()) { + hash = (37 * hash) + L4_FIELD_NUMBER; + hash = (53 * hash) + getL4().hashCode(); + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( + public static context.ContextOuterClass.ConnectionSettings parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( + public static context.ContextOuterClass.ConnectionSettings parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( + public static context.ContextOuterClass.ConnectionSettings parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( + public static context.ContextOuterClass.ConnectionSettings parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom(byte[] data) + public static context.ContextOuterClass.ConnectionSettings parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( + public static context.ContextOuterClass.ConnectionSettings parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionSettings parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( + public static context.ContextOuterClass.ConnectionSettings 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 context.ContextOuterClass.ConnectionSettings_L4 parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionSettings parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings_L4 parseDelimitedFrom( + public static context.ContextOuterClass.ConnectionSettings 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 context.ContextOuterClass.ConnectionSettings_L4 parseFrom( + public static context.ContextOuterClass.ConnectionSettings parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( + public static context.ContextOuterClass.ConnectionSettings parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -44654,7 +48546,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ConnectionSettings_L4 prototype) { + public static Builder newBuilder(context.ContextOuterClass.ConnectionSettings prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -44670,26 +48562,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ConnectionSettings_L4} + * Protobuf type {@code context.ConnectionSettings} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ConnectionSettings_L4) - context.ContextOuterClass.ConnectionSettings_L4OrBuilder { + // @@protoc_insertion_point(builder_implements:context.ConnectionSettings) + context.ContextOuterClass.ConnectionSettingsOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L4_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L4_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionSettings_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionSettings_L4.class, context.ContextOuterClass.ConnectionSettings_L4.Builder.class); + context.ContextOuterClass.ConnectionSettings.class, context.ContextOuterClass.ConnectionSettings.Builder.class); } - // Construct using context.ContextOuterClass.ConnectionSettings_L4.newBuilder() + // Construct using context.ContextOuterClass.ConnectionSettings.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -44707,31 +48599,47 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - srcPort_ = 0; - - dstPort_ = 0; - - tcpFlags_ = 0; - - ttl_ = 0; - + if (l0Builder_ == null) { + l0_ = null; + } else { + l0_ = null; + l0Builder_ = null; + } + if (l2Builder_ == null) { + l2_ = null; + } else { + l2_ = null; + l2Builder_ = null; + } + if (l3Builder_ == null) { + l3_ = null; + } else { + l3_ = null; + l3Builder_ = null; + } + if (l4Builder_ == null) { + l4_ = null; + } else { + l4_ = null; + l4Builder_ = null; + } return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L4_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_descriptor; } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L4 getDefaultInstanceForType() { - return context.ContextOuterClass.ConnectionSettings_L4.getDefaultInstance(); + public context.ContextOuterClass.ConnectionSettings getDefaultInstanceForType() { + return context.ContextOuterClass.ConnectionSettings.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L4 build() { - context.ContextOuterClass.ConnectionSettings_L4 result = buildPartial(); + public context.ContextOuterClass.ConnectionSettings build() { + context.ContextOuterClass.ConnectionSettings result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -44739,223 +48647,591 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L4 buildPartial() { - context.ContextOuterClass.ConnectionSettings_L4 result = new context.ContextOuterClass.ConnectionSettings_L4(this); - result.srcPort_ = srcPort_; - result.dstPort_ = dstPort_; - result.tcpFlags_ = tcpFlags_; - result.ttl_ = ttl_; + public context.ContextOuterClass.ConnectionSettings buildPartial() { + context.ContextOuterClass.ConnectionSettings result = new context.ContextOuterClass.ConnectionSettings(this); + if (l0Builder_ == null) { + result.l0_ = l0_; + } else { + result.l0_ = l0Builder_.build(); + } + if (l2Builder_ == null) { + result.l2_ = l2_; + } else { + result.l2_ = l2Builder_.build(); + } + if (l3Builder_ == null) { + result.l3_ = l3_; + } else { + result.l3_ = l3Builder_.build(); + } + if (l4Builder_ == null) { + result.l4_ = l4_; + } else { + result.l4_ = l4Builder_.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 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 context.ContextOuterClass.ConnectionSettings) { + return mergeFrom((context.ContextOuterClass.ConnectionSettings)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(context.ContextOuterClass.ConnectionSettings other) { + if (other == context.ContextOuterClass.ConnectionSettings.getDefaultInstance()) return this; + if (other.hasL0()) { + mergeL0(other.getL0()); + } + if (other.hasL2()) { + mergeL2(other.getL2()); + } + if (other.hasL3()) { + mergeL3(other.getL3()); + } + if (other.hasL4()) { + mergeL4(other.getL4()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @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 { + context.ContextOuterClass.ConnectionSettings parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.ConnectionSettings) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + private context.ContextOuterClass.ConnectionSettings_L0 l0_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionSettings_L0, context.ContextOuterClass.ConnectionSettings_L0.Builder, context.ContextOuterClass.ConnectionSettings_L0OrBuilder> l0Builder_; + /** + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + * @return Whether the l0 field is set. + */ + public boolean hasL0() { + return l0Builder_ != null || l0_ != null; + } + /** + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + * @return The l0. + */ + public context.ContextOuterClass.ConnectionSettings_L0 getL0() { + if (l0Builder_ == null) { + return l0_ == null ? context.ContextOuterClass.ConnectionSettings_L0.getDefaultInstance() : l0_; + } else { + return l0Builder_.getMessage(); + } + } + /** + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + */ + public Builder setL0(context.ContextOuterClass.ConnectionSettings_L0 value) { + if (l0Builder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + l0_ = value; + onChanged(); + } else { + l0Builder_.setMessage(value); + } + + return this; + } + /** + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + */ + public Builder setL0( + context.ContextOuterClass.ConnectionSettings_L0.Builder builderForValue) { + if (l0Builder_ == null) { + l0_ = builderForValue.build(); + onChanged(); + } else { + l0Builder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + */ + public Builder mergeL0(context.ContextOuterClass.ConnectionSettings_L0 value) { + if (l0Builder_ == null) { + if (l0_ != null) { + l0_ = + context.ContextOuterClass.ConnectionSettings_L0.newBuilder(l0_).mergeFrom(value).buildPartial(); + } else { + l0_ = value; + } + onChanged(); + } else { + l0Builder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + */ + public Builder clearL0() { + if (l0Builder_ == null) { + l0_ = null; + onChanged(); + } else { + l0_ = null; + l0Builder_ = null; + } + + return this; + } + /** + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + */ + public context.ContextOuterClass.ConnectionSettings_L0.Builder getL0Builder() { + + onChanged(); + return getL0FieldBuilder().getBuilder(); + } + /** + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + */ + public context.ContextOuterClass.ConnectionSettings_L0OrBuilder getL0OrBuilder() { + if (l0Builder_ != null) { + return l0Builder_.getMessageOrBuilder(); + } else { + return l0_ == null ? + context.ContextOuterClass.ConnectionSettings_L0.getDefaultInstance() : l0_; + } + } + /** + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionSettings_L0, context.ContextOuterClass.ConnectionSettings_L0.Builder, context.ContextOuterClass.ConnectionSettings_L0OrBuilder> + getL0FieldBuilder() { + if (l0Builder_ == null) { + l0Builder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionSettings_L0, context.ContextOuterClass.ConnectionSettings_L0.Builder, context.ContextOuterClass.ConnectionSettings_L0OrBuilder>( + getL0(), + getParentForChildren(), + isClean()); + l0_ = null; + } + return l0Builder_; + } + + private context.ContextOuterClass.ConnectionSettings_L2 l2_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionSettings_L2, context.ContextOuterClass.ConnectionSettings_L2.Builder, context.ContextOuterClass.ConnectionSettings_L2OrBuilder> l2Builder_; + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * @return Whether the l2 field is set. + */ + public boolean hasL2() { + return l2Builder_ != null || l2_ != null; + } + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * @return The l2. + */ + public context.ContextOuterClass.ConnectionSettings_L2 getL2() { + if (l2Builder_ == null) { + return l2_ == null ? context.ContextOuterClass.ConnectionSettings_L2.getDefaultInstance() : l2_; + } else { + return l2Builder_.getMessage(); + } + } + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + */ + public Builder setL2(context.ContextOuterClass.ConnectionSettings_L2 value) { + if (l2Builder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + l2_ = value; + onChanged(); + } else { + l2Builder_.setMessage(value); + } + + return this; + } + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + */ + public Builder setL2( + context.ContextOuterClass.ConnectionSettings_L2.Builder builderForValue) { + if (l2Builder_ == null) { + l2_ = builderForValue.build(); + onChanged(); + } else { + l2Builder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + */ + public Builder mergeL2(context.ContextOuterClass.ConnectionSettings_L2 value) { + if (l2Builder_ == null) { + if (l2_ != null) { + l2_ = + context.ContextOuterClass.ConnectionSettings_L2.newBuilder(l2_).mergeFrom(value).buildPartial(); + } else { + l2_ = value; + } + onChanged(); + } else { + l2Builder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + */ + public Builder clearL2() { + if (l2Builder_ == null) { + l2_ = null; + onChanged(); + } else { + l2_ = null; + l2Builder_ = null; + } + + return this; } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + */ + public context.ContextOuterClass.ConnectionSettings_L2.Builder getL2Builder() { + + onChanged(); + return getL2FieldBuilder().getBuilder(); } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + */ + public context.ContextOuterClass.ConnectionSettings_L2OrBuilder getL2OrBuilder() { + if (l2Builder_ != null) { + return l2Builder_.getMessageOrBuilder(); + } else { + return l2_ == null ? + context.ContextOuterClass.ConnectionSettings_L2.getDefaultInstance() : l2_; + } } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionSettings_L2, context.ContextOuterClass.ConnectionSettings_L2.Builder, context.ContextOuterClass.ConnectionSettings_L2OrBuilder> + getL2FieldBuilder() { + if (l2Builder_ == null) { + l2Builder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionSettings_L2, context.ContextOuterClass.ConnectionSettings_L2.Builder, context.ContextOuterClass.ConnectionSettings_L2OrBuilder>( + getL2(), + getParentForChildren(), + isClean()); + l2_ = null; + } + return l2Builder_; } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + + private context.ContextOuterClass.ConnectionSettings_L3 l3_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionSettings_L3, context.ContextOuterClass.ConnectionSettings_L3.Builder, context.ContextOuterClass.ConnectionSettings_L3OrBuilder> l3Builder_; + /** + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * @return Whether the l3 field is set. + */ + public boolean hasL3() { + return l3Builder_ != null || l3_ != null; } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ConnectionSettings_L4) { - return mergeFrom((context.ContextOuterClass.ConnectionSettings_L4)other); + /** + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * @return The l3. + */ + public context.ContextOuterClass.ConnectionSettings_L3 getL3() { + if (l3Builder_ == null) { + return l3_ == null ? context.ContextOuterClass.ConnectionSettings_L3.getDefaultInstance() : l3_; } else { - super.mergeFrom(other); - return this; + return l3Builder_.getMessage(); } } - - public Builder mergeFrom(context.ContextOuterClass.ConnectionSettings_L4 other) { - if (other == context.ContextOuterClass.ConnectionSettings_L4.getDefaultInstance()) return this; - if (other.getSrcPort() != 0) { - setSrcPort(other.getSrcPort()); - } - if (other.getDstPort() != 0) { - setDstPort(other.getDstPort()); - } - if (other.getTcpFlags() != 0) { - setTcpFlags(other.getTcpFlags()); - } - if (other.getTtl() != 0) { - setTtl(other.getTtl()); + /** + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + */ + public Builder setL3(context.ContextOuterClass.ConnectionSettings_L3 value) { + if (l3Builder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + l3_ = value; + onChanged(); + } else { + l3Builder_.setMessage(value); } - this.mergeUnknownFields(other.unknownFields); - onChanged(); + return this; } + /** + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + */ + public Builder setL3( + context.ContextOuterClass.ConnectionSettings_L3.Builder builderForValue) { + if (l3Builder_ == null) { + l3_ = builderForValue.build(); + onChanged(); + } else { + l3Builder_.setMessage(builderForValue.build()); + } - @java.lang.Override - public final boolean isInitialized() { - return true; + return this; } - - @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - context.ContextOuterClass.ConnectionSettings_L4 parsedMessage = null; - try { - parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ConnectionSettings_L4) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); + /** + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + */ + public Builder mergeL3(context.ContextOuterClass.ConnectionSettings_L3 value) { + if (l3Builder_ == null) { + if (l3_ != null) { + l3_ = + context.ContextOuterClass.ConnectionSettings_L3.newBuilder(l3_).mergeFrom(value).buildPartial(); + } else { + l3_ = value; } + onChanged(); + } else { + l3Builder_.mergeFrom(value); } + return this; } - - private int srcPort_ ; /** - * <code>uint32 src_port = 1;</code> - * @return The srcPort. + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> */ - @java.lang.Override - public int getSrcPort() { - return srcPort_; + public Builder clearL3() { + if (l3Builder_ == null) { + l3_ = null; + onChanged(); + } else { + l3_ = null; + l3Builder_ = null; + } + + return this; } /** - * <code>uint32 src_port = 1;</code> - * @param value The srcPort to set. - * @return This builder for chaining. + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> */ - public Builder setSrcPort(int value) { + public context.ContextOuterClass.ConnectionSettings_L3.Builder getL3Builder() { - srcPort_ = value; onChanged(); - return this; + return getL3FieldBuilder().getBuilder(); } /** - * <code>uint32 src_port = 1;</code> - * @return This builder for chaining. + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> */ - public Builder clearSrcPort() { - - srcPort_ = 0; - onChanged(); - return this; + public context.ContextOuterClass.ConnectionSettings_L3OrBuilder getL3OrBuilder() { + if (l3Builder_ != null) { + return l3Builder_.getMessageOrBuilder(); + } else { + return l3_ == null ? + context.ContextOuterClass.ConnectionSettings_L3.getDefaultInstance() : l3_; + } } - - private int dstPort_ ; /** - * <code>uint32 dst_port = 2;</code> - * @return The dstPort. + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> */ - @java.lang.Override - public int getDstPort() { - return dstPort_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionSettings_L3, context.ContextOuterClass.ConnectionSettings_L3.Builder, context.ContextOuterClass.ConnectionSettings_L3OrBuilder> + getL3FieldBuilder() { + if (l3Builder_ == null) { + l3Builder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionSettings_L3, context.ContextOuterClass.ConnectionSettings_L3.Builder, context.ContextOuterClass.ConnectionSettings_L3OrBuilder>( + getL3(), + getParentForChildren(), + isClean()); + l3_ = null; + } + return l3Builder_; } + + private context.ContextOuterClass.ConnectionSettings_L4 l4_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionSettings_L4, context.ContextOuterClass.ConnectionSettings_L4.Builder, context.ContextOuterClass.ConnectionSettings_L4OrBuilder> l4Builder_; /** - * <code>uint32 dst_port = 2;</code> - * @param value The dstPort to set. - * @return This builder for chaining. + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * @return Whether the l4 field is set. */ - public Builder setDstPort(int value) { - - dstPort_ = value; - onChanged(); - return this; + public boolean hasL4() { + return l4Builder_ != null || l4_ != null; } /** - * <code>uint32 dst_port = 2;</code> - * @return This builder for chaining. + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * @return The l4. */ - public Builder clearDstPort() { - - dstPort_ = 0; - onChanged(); - return this; + public context.ContextOuterClass.ConnectionSettings_L4 getL4() { + if (l4Builder_ == null) { + return l4_ == null ? context.ContextOuterClass.ConnectionSettings_L4.getDefaultInstance() : l4_; + } else { + return l4Builder_.getMessage(); + } } - - private int tcpFlags_ ; /** - * <code>uint32 tcp_flags = 3;</code> - * @return The tcpFlags. + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> */ - @java.lang.Override - public int getTcpFlags() { - return tcpFlags_; + public Builder setL4(context.ContextOuterClass.ConnectionSettings_L4 value) { + if (l4Builder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + l4_ = value; + onChanged(); + } else { + l4Builder_.setMessage(value); + } + + return this; } /** - * <code>uint32 tcp_flags = 3;</code> - * @param value The tcpFlags to set. - * @return This builder for chaining. + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> */ - public Builder setTcpFlags(int value) { - - tcpFlags_ = value; - onChanged(); + public Builder setL4( + context.ContextOuterClass.ConnectionSettings_L4.Builder builderForValue) { + if (l4Builder_ == null) { + l4_ = builderForValue.build(); + onChanged(); + } else { + l4Builder_.setMessage(builderForValue.build()); + } + return this; } /** - * <code>uint32 tcp_flags = 3;</code> - * @return This builder for chaining. + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> */ - public Builder clearTcpFlags() { - - tcpFlags_ = 0; - onChanged(); + public Builder mergeL4(context.ContextOuterClass.ConnectionSettings_L4 value) { + if (l4Builder_ == null) { + if (l4_ != null) { + l4_ = + context.ContextOuterClass.ConnectionSettings_L4.newBuilder(l4_).mergeFrom(value).buildPartial(); + } else { + l4_ = value; + } + onChanged(); + } else { + l4Builder_.mergeFrom(value); + } + return this; } - - private int ttl_ ; /** - * <code>uint32 ttl = 4;</code> - * @return The ttl. + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> */ - @java.lang.Override - public int getTtl() { - return ttl_; + public Builder clearL4() { + if (l4Builder_ == null) { + l4_ = null; + onChanged(); + } else { + l4_ = null; + l4Builder_ = null; + } + + return this; } /** - * <code>uint32 ttl = 4;</code> - * @param value The ttl to set. - * @return This builder for chaining. + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> */ - public Builder setTtl(int value) { + public context.ContextOuterClass.ConnectionSettings_L4.Builder getL4Builder() { - ttl_ = value; onChanged(); - return this; + return getL4FieldBuilder().getBuilder(); } /** - * <code>uint32 ttl = 4;</code> - * @return This builder for chaining. + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> */ - public Builder clearTtl() { - - ttl_ = 0; - onChanged(); - return this; + public context.ContextOuterClass.ConnectionSettings_L4OrBuilder getL4OrBuilder() { + if (l4Builder_ != null) { + return l4Builder_.getMessageOrBuilder(); + } else { + return l4_ == null ? + context.ContextOuterClass.ConnectionSettings_L4.getDefaultInstance() : l4_; + } + } + /** + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionSettings_L4, context.ContextOuterClass.ConnectionSettings_L4.Builder, context.ContextOuterClass.ConnectionSettings_L4OrBuilder> + getL4FieldBuilder() { + if (l4Builder_ == null) { + l4Builder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionSettings_L4, context.ContextOuterClass.ConnectionSettings_L4.Builder, context.ContextOuterClass.ConnectionSettings_L4OrBuilder>( + getL4(), + getParentForChildren(), + isClean()); + l4_ = null; + } + return l4Builder_; } @java.lang.Override public final Builder setUnknownFields( @@ -44970,130 +49246,165 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ConnectionSettings_L4) + // @@protoc_insertion_point(builder_scope:context.ConnectionSettings) } - // @@protoc_insertion_point(class_scope:context.ConnectionSettings_L4) - private static final context.ContextOuterClass.ConnectionSettings_L4 DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ConnectionSettings) + private static final context.ContextOuterClass.ConnectionSettings DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionSettings_L4(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionSettings(); } - public static context.ContextOuterClass.ConnectionSettings_L4 getDefaultInstance() { + public static context.ContextOuterClass.ConnectionSettings getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ConnectionSettings_L4> - PARSER = new com.google.protobuf.AbstractParser<ConnectionSettings_L4>() { + private static final com.google.protobuf.Parser<ConnectionSettings> + PARSER = new com.google.protobuf.AbstractParser<ConnectionSettings>() { @java.lang.Override - public ConnectionSettings_L4 parsePartialFrom( + public ConnectionSettings parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ConnectionSettings_L4(input, extensionRegistry); + return new ConnectionSettings(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ConnectionSettings_L4> parser() { + public static com.google.protobuf.Parser<ConnectionSettings> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ConnectionSettings_L4> getParserForType() { + public com.google.protobuf.Parser<ConnectionSettings> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L4 getDefaultInstanceForType() { + public context.ContextOuterClass.ConnectionSettings getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ConnectionSettingsOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ConnectionSettings) + public interface ConnectionOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Connection) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> - * @return Whether the l0 field is set. + * <code>.context.ConnectionId connection_id = 1;</code> + * @return Whether the connectionId field is set. */ - boolean hasL0(); + boolean hasConnectionId(); /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> - * @return The l0. + * <code>.context.ConnectionId connection_id = 1;</code> + * @return The connectionId. */ - context.ContextOuterClass.ConnectionSettings_L0 getL0(); + context.ContextOuterClass.ConnectionId getConnectionId(); /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + * <code>.context.ConnectionId connection_id = 1;</code> */ - context.ContextOuterClass.ConnectionSettings_L0OrBuilder getL0OrBuilder(); + context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder(); /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> - * @return Whether the l2 field is set. + * <code>.context.ServiceId service_id = 2;</code> + * @return Whether the serviceId field is set. */ - boolean hasL2(); + boolean hasServiceId(); /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> - * @return The l2. + * <code>.context.ServiceId service_id = 2;</code> + * @return The serviceId. */ - context.ContextOuterClass.ConnectionSettings_L2 getL2(); + context.ContextOuterClass.ServiceId getServiceId(); /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * <code>.context.ServiceId service_id = 2;</code> */ - context.ContextOuterClass.ConnectionSettings_L2OrBuilder getL2OrBuilder(); + context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder(); /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> - * @return Whether the l3 field is set. + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> */ - boolean hasL3(); + java.util.List<context.ContextOuterClass.EndPointId> + getPathHopsEndpointIdsList(); /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> - * @return The l3. + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> */ - context.ContextOuterClass.ConnectionSettings_L3 getL3(); + context.ContextOuterClass.EndPointId getPathHopsEndpointIds(int index); /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> */ - context.ContextOuterClass.ConnectionSettings_L3OrBuilder getL3OrBuilder(); + int getPathHopsEndpointIdsCount(); + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getPathHopsEndpointIdsOrBuilderList(); + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + context.ContextOuterClass.EndPointIdOrBuilder getPathHopsEndpointIdsOrBuilder( + int index); /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> - * @return Whether the l4 field is set. + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> */ - boolean hasL4(); + java.util.List<context.ContextOuterClass.ServiceId> + getSubServiceIdsList(); /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> - * @return The l4. + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> */ - context.ContextOuterClass.ConnectionSettings_L4 getL4(); + context.ContextOuterClass.ServiceId getSubServiceIds(int index); /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> */ - context.ContextOuterClass.ConnectionSettings_L4OrBuilder getL4OrBuilder(); + int getSubServiceIdsCount(); + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> + getSubServiceIdsOrBuilderList(); + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + context.ContextOuterClass.ServiceIdOrBuilder getSubServiceIdsOrBuilder( + int index); + + /** + * <code>.context.ConnectionSettings settings = 5;</code> + * @return Whether the settings field is set. + */ + boolean hasSettings(); + /** + * <code>.context.ConnectionSettings settings = 5;</code> + * @return The settings. + */ + context.ContextOuterClass.ConnectionSettings getSettings(); + /** + * <code>.context.ConnectionSettings settings = 5;</code> + */ + context.ContextOuterClass.ConnectionSettingsOrBuilder getSettingsOrBuilder(); } /** - * Protobuf type {@code context.ConnectionSettings} + * Protobuf type {@code context.Connection} */ - public static final class ConnectionSettings extends + public static final class Connection extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ConnectionSettings) - ConnectionSettingsOrBuilder { + // @@protoc_insertion_point(message_implements:context.Connection) + ConnectionOrBuilder { private static final long serialVersionUID = 0L; - // Use ConnectionSettings.newBuilder() to construct. - private ConnectionSettings(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Connection.newBuilder() to construct. + private Connection(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ConnectionSettings() { + private Connection() { + pathHopsEndpointIds_ = java.util.Collections.emptyList(); + subServiceIds_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ConnectionSettings(); + return new Connection(); } @java.lang.Override @@ -45101,7 +49412,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ConnectionSettings( + private Connection( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -45109,6 +49420,7 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } + int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -45120,53 +49432,58 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.ConnectionSettings_L0.Builder subBuilder = null; - if (l0_ != null) { - subBuilder = l0_.toBuilder(); + context.ContextOuterClass.ConnectionId.Builder subBuilder = null; + if (connectionId_ != null) { + subBuilder = connectionId_.toBuilder(); } - l0_ = input.readMessage(context.ContextOuterClass.ConnectionSettings_L0.parser(), extensionRegistry); + connectionId_ = input.readMessage(context.ContextOuterClass.ConnectionId.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(l0_); - l0_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(connectionId_); + connectionId_ = subBuilder.buildPartial(); } break; } case 18: { - context.ContextOuterClass.ConnectionSettings_L2.Builder subBuilder = null; - if (l2_ != null) { - subBuilder = l2_.toBuilder(); + context.ContextOuterClass.ServiceId.Builder subBuilder = null; + if (serviceId_ != null) { + subBuilder = serviceId_.toBuilder(); } - l2_ = input.readMessage(context.ContextOuterClass.ConnectionSettings_L2.parser(), extensionRegistry); + serviceId_ = input.readMessage(context.ContextOuterClass.ServiceId.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(l2_); - l2_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(serviceId_); + serviceId_ = subBuilder.buildPartial(); } break; } case 26: { - context.ContextOuterClass.ConnectionSettings_L3.Builder subBuilder = null; - if (l3_ != null) { - subBuilder = l3_.toBuilder(); - } - l3_ = input.readMessage(context.ContextOuterClass.ConnectionSettings_L3.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(l3_); - l3_ = subBuilder.buildPartial(); + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + pathHopsEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(); + mutable_bitField0_ |= 0x00000001; } - + pathHopsEndpointIds_.add( + input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry)); break; } case 34: { - context.ContextOuterClass.ConnectionSettings_L4.Builder subBuilder = null; - if (l4_ != null) { - subBuilder = l4_.toBuilder(); + if (!((mutable_bitField0_ & 0x00000002) != 0)) { + subServiceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(); + mutable_bitField0_ |= 0x00000002; } - l4_ = input.readMessage(context.ContextOuterClass.ConnectionSettings_L4.parser(), extensionRegistry); + subServiceIds_.add( + input.readMessage(context.ContextOuterClass.ServiceId.parser(), extensionRegistry)); + break; + } + case 42: { + context.ContextOuterClass.ConnectionSettings.Builder subBuilder = null; + if (settings_ != null) { + subBuilder = settings_.toBuilder(); + } + settings_ = input.readMessage(context.ContextOuterClass.ConnectionSettings.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(l4_); - l4_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(settings_); + settings_ = subBuilder.buildPartial(); } break; @@ -45186,125 +49503,185 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { + if (((mutable_bitField0_ & 0x00000001) != 0)) { + pathHopsEndpointIds_ = java.util.Collections.unmodifiableList(pathHopsEndpointIds_); + } + if (((mutable_bitField0_ & 0x00000002) != 0)) { + subServiceIds_ = java.util.Collections.unmodifiableList(subServiceIds_); + } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_descriptor; + return context.ContextOuterClass.internal_static_context_Connection_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Connection_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionSettings.class, context.ContextOuterClass.ConnectionSettings.Builder.class); + context.ContextOuterClass.Connection.class, context.ContextOuterClass.Connection.Builder.class); } - public static final int L0_FIELD_NUMBER = 1; - private context.ContextOuterClass.ConnectionSettings_L0 l0_; + public static final int CONNECTION_ID_FIELD_NUMBER = 1; + private context.ContextOuterClass.ConnectionId connectionId_; /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> - * @return Whether the l0 field is set. + * <code>.context.ConnectionId connection_id = 1;</code> + * @return Whether the connectionId field is set. */ @java.lang.Override - public boolean hasL0() { - return l0_ != null; + public boolean hasConnectionId() { + return connectionId_ != null; } /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> - * @return The l0. + * <code>.context.ConnectionId connection_id = 1;</code> + * @return The connectionId. */ @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L0 getL0() { - return l0_ == null ? context.ContextOuterClass.ConnectionSettings_L0.getDefaultInstance() : l0_; + public context.ContextOuterClass.ConnectionId getConnectionId() { + return connectionId_ == null ? context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; } /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + * <code>.context.ConnectionId connection_id = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L0OrBuilder getL0OrBuilder() { - return getL0(); + public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder() { + return getConnectionId(); } - public static final int L2_FIELD_NUMBER = 2; - private context.ContextOuterClass.ConnectionSettings_L2 l2_; + public static final int SERVICE_ID_FIELD_NUMBER = 2; + private context.ContextOuterClass.ServiceId serviceId_; /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> - * @return Whether the l2 field is set. + * <code>.context.ServiceId service_id = 2;</code> + * @return Whether the serviceId field is set. */ @java.lang.Override - public boolean hasL2() { - return l2_ != null; + public boolean hasServiceId() { + return serviceId_ != null; } /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> - * @return The l2. + * <code>.context.ServiceId service_id = 2;</code> + * @return The serviceId. */ @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L2 getL2() { - return l2_ == null ? context.ContextOuterClass.ConnectionSettings_L2.getDefaultInstance() : l2_; + public context.ContextOuterClass.ServiceId getServiceId() { + return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; } /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * <code>.context.ServiceId service_id = 2;</code> */ @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L2OrBuilder getL2OrBuilder() { - return getL2(); + public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() { + return getServiceId(); } - public static final int L3_FIELD_NUMBER = 3; - private context.ContextOuterClass.ConnectionSettings_L3 l3_; + public static final int PATH_HOPS_ENDPOINT_IDS_FIELD_NUMBER = 3; + private java.util.List<context.ContextOuterClass.EndPointId> pathHopsEndpointIds_; /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> - * @return Whether the l3 field is set. + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> */ @java.lang.Override - public boolean hasL3() { - return l3_ != null; + public java.util.List<context.ContextOuterClass.EndPointId> getPathHopsEndpointIdsList() { + return pathHopsEndpointIds_; } /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> - * @return The l3. + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> */ @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L3 getL3() { - return l3_ == null ? context.ContextOuterClass.ConnectionSettings_L3.getDefaultInstance() : l3_; + public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getPathHopsEndpointIdsOrBuilderList() { + return pathHopsEndpointIds_; } /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> */ @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L3OrBuilder getL3OrBuilder() { - return getL3(); + public int getPathHopsEndpointIdsCount() { + return pathHopsEndpointIds_.size(); + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + @java.lang.Override + public context.ContextOuterClass.EndPointId getPathHopsEndpointIds(int index) { + return pathHopsEndpointIds_.get(index); + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + @java.lang.Override + public context.ContextOuterClass.EndPointIdOrBuilder getPathHopsEndpointIdsOrBuilder( + int index) { + return pathHopsEndpointIds_.get(index); } - public static final int L4_FIELD_NUMBER = 4; - private context.ContextOuterClass.ConnectionSettings_L4 l4_; + public static final int SUB_SERVICE_IDS_FIELD_NUMBER = 4; + private java.util.List<context.ContextOuterClass.ServiceId> subServiceIds_; /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> - * @return Whether the l4 field is set. + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> */ @java.lang.Override - public boolean hasL4() { - return l4_ != null; + public java.util.List<context.ContextOuterClass.ServiceId> getSubServiceIdsList() { + return subServiceIds_; } /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> - * @return The l4. + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> */ @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L4 getL4() { - return l4_ == null ? context.ContextOuterClass.ConnectionSettings_L4.getDefaultInstance() : l4_; + public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> + getSubServiceIdsOrBuilderList() { + return subServiceIds_; } /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> */ @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L4OrBuilder getL4OrBuilder() { - return getL4(); + public int getSubServiceIdsCount() { + return subServiceIds_.size(); + } + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ServiceId getSubServiceIds(int index) { + return subServiceIds_.get(index); + } + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ServiceIdOrBuilder getSubServiceIdsOrBuilder( + int index) { + return subServiceIds_.get(index); + } + + public static final int SETTINGS_FIELD_NUMBER = 5; + private context.ContextOuterClass.ConnectionSettings settings_; + /** + * <code>.context.ConnectionSettings settings = 5;</code> + * @return Whether the settings field is set. + */ + @java.lang.Override + public boolean hasSettings() { + return settings_ != null; + } + /** + * <code>.context.ConnectionSettings settings = 5;</code> + * @return The settings. + */ + @java.lang.Override + public context.ContextOuterClass.ConnectionSettings getSettings() { + return settings_ == null ? context.ContextOuterClass.ConnectionSettings.getDefaultInstance() : settings_; + } + /** + * <code>.context.ConnectionSettings settings = 5;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ConnectionSettingsOrBuilder getSettingsOrBuilder() { + return getSettings(); } private byte memoizedIsInitialized = -1; @@ -45321,17 +49698,20 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (l0_ != null) { - output.writeMessage(1, getL0()); + if (connectionId_ != null) { + output.writeMessage(1, getConnectionId()); } - if (l2_ != null) { - output.writeMessage(2, getL2()); + if (serviceId_ != null) { + output.writeMessage(2, getServiceId()); } - if (l3_ != null) { - output.writeMessage(3, getL3()); + for (int i = 0; i < pathHopsEndpointIds_.size(); i++) { + output.writeMessage(3, pathHopsEndpointIds_.get(i)); } - if (l4_ != null) { - output.writeMessage(4, getL4()); + for (int i = 0; i < subServiceIds_.size(); i++) { + output.writeMessage(4, subServiceIds_.get(i)); + } + if (settings_ != null) { + output.writeMessage(5, getSettings()); } unknownFields.writeTo(output); } @@ -45342,21 +49722,25 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (l0_ != null) { + if (connectionId_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getL0()); + .computeMessageSize(1, getConnectionId()); } - if (l2_ != null) { + if (serviceId_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, getL2()); + .computeMessageSize(2, getServiceId()); } - if (l3_ != null) { + for (int i = 0; i < pathHopsEndpointIds_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(3, getL3()); + .computeMessageSize(3, pathHopsEndpointIds_.get(i)); } - if (l4_ != null) { + for (int i = 0; i < subServiceIds_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(4, getL4()); + .computeMessageSize(4, subServiceIds_.get(i)); + } + if (settings_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(5, getSettings()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -45368,30 +49752,29 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ConnectionSettings)) { + if (!(obj instanceof context.ContextOuterClass.Connection)) { return super.equals(obj); } - context.ContextOuterClass.ConnectionSettings other = (context.ContextOuterClass.ConnectionSettings) obj; + context.ContextOuterClass.Connection other = (context.ContextOuterClass.Connection) obj; - if (hasL0() != other.hasL0()) return false; - if (hasL0()) { - if (!getL0() - .equals(other.getL0())) return false; - } - if (hasL2() != other.hasL2()) return false; - if (hasL2()) { - if (!getL2() - .equals(other.getL2())) return false; + if (hasConnectionId() != other.hasConnectionId()) return false; + if (hasConnectionId()) { + if (!getConnectionId() + .equals(other.getConnectionId())) return false; } - if (hasL3() != other.hasL3()) return false; - if (hasL3()) { - if (!getL3() - .equals(other.getL3())) return false; + if (hasServiceId() != other.hasServiceId()) return false; + if (hasServiceId()) { + if (!getServiceId() + .equals(other.getServiceId())) return false; } - if (hasL4() != other.hasL4()) return false; - if (hasL4()) { - if (!getL4() - .equals(other.getL4())) return false; + if (!getPathHopsEndpointIdsList() + .equals(other.getPathHopsEndpointIdsList())) return false; + if (!getSubServiceIdsList() + .equals(other.getSubServiceIdsList())) return false; + if (hasSettings() != other.hasSettings()) return false; + if (hasSettings()) { + if (!getSettings() + .equals(other.getSettings())) return false; } if (!unknownFields.equals(other.unknownFields)) return false; return true; @@ -45404,90 +49787,94 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasL0()) { - hash = (37 * hash) + L0_FIELD_NUMBER; - hash = (53 * hash) + getL0().hashCode(); + if (hasConnectionId()) { + hash = (37 * hash) + CONNECTION_ID_FIELD_NUMBER; + hash = (53 * hash) + getConnectionId().hashCode(); } - if (hasL2()) { - hash = (37 * hash) + L2_FIELD_NUMBER; - hash = (53 * hash) + getL2().hashCode(); + if (hasServiceId()) { + hash = (37 * hash) + SERVICE_ID_FIELD_NUMBER; + hash = (53 * hash) + getServiceId().hashCode(); } - if (hasL3()) { - hash = (37 * hash) + L3_FIELD_NUMBER; - hash = (53 * hash) + getL3().hashCode(); + if (getPathHopsEndpointIdsCount() > 0) { + hash = (37 * hash) + PATH_HOPS_ENDPOINT_IDS_FIELD_NUMBER; + hash = (53 * hash) + getPathHopsEndpointIdsList().hashCode(); } - if (hasL4()) { - hash = (37 * hash) + L4_FIELD_NUMBER; - hash = (53 * hash) + getL4().hashCode(); + if (getSubServiceIdsCount() > 0) { + hash = (37 * hash) + SUB_SERVICE_IDS_FIELD_NUMBER; + hash = (53 * hash) + getSubServiceIdsList().hashCode(); + } + if (hasSettings()) { + hash = (37 * hash) + SETTINGS_FIELD_NUMBER; + hash = (53 * hash) + getSettings().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ConnectionSettings parseFrom( + public static context.ContextOuterClass.Connection parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings parseFrom( + public static context.ContextOuterClass.Connection parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings parseFrom( + public static context.ContextOuterClass.Connection parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings parseFrom( + public static context.ContextOuterClass.Connection parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings parseFrom(byte[] data) + public static context.ContextOuterClass.Connection parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings parseFrom( + public static context.ContextOuterClass.Connection parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Connection parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings parseFrom( + public static context.ContextOuterClass.Connection 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 context.ContextOuterClass.ConnectionSettings parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Connection parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings parseDelimitedFrom( + public static context.ContextOuterClass.Connection 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 context.ContextOuterClass.ConnectionSettings parseFrom( + public static context.ContextOuterClass.Connection parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings parseFrom( + public static context.ContextOuterClass.Connection parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -45500,7 +49887,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ConnectionSettings prototype) { + public static Builder newBuilder(context.ContextOuterClass.Connection prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -45516,26 +49903,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ConnectionSettings} + * Protobuf type {@code context.Connection} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ConnectionSettings) - context.ContextOuterClass.ConnectionSettingsOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Connection) + context.ContextOuterClass.ConnectionOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_descriptor; + return context.ContextOuterClass.internal_static_context_Connection_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Connection_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionSettings.class, context.ContextOuterClass.ConnectionSettings.Builder.class); + context.ContextOuterClass.Connection.class, context.ContextOuterClass.Connection.Builder.class); } - // Construct using context.ContextOuterClass.ConnectionSettings.newBuilder() + // Construct using context.ContextOuterClass.Connection.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -45548,34 +49935,42 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { + getPathHopsEndpointIdsFieldBuilder(); + getSubServiceIdsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (l0Builder_ == null) { - l0_ = null; + if (connectionIdBuilder_ == null) { + connectionId_ = null; } else { - l0_ = null; - l0Builder_ = null; + connectionId_ = null; + connectionIdBuilder_ = null; } - if (l2Builder_ == null) { - l2_ = null; + if (serviceIdBuilder_ == null) { + serviceId_ = null; } else { - l2_ = null; - l2Builder_ = null; + serviceId_ = null; + serviceIdBuilder_ = null; } - if (l3Builder_ == null) { - l3_ = null; + if (pathHopsEndpointIdsBuilder_ == null) { + pathHopsEndpointIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); } else { - l3_ = null; - l3Builder_ = null; + pathHopsEndpointIdsBuilder_.clear(); } - if (l4Builder_ == null) { - l4_ = null; + if (subServiceIdsBuilder_ == null) { + subServiceIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); } else { - l4_ = null; - l4Builder_ = null; + subServiceIdsBuilder_.clear(); + } + if (settingsBuilder_ == null) { + settings_ = null; + } else { + settings_ = null; + settingsBuilder_ = null; } return this; } @@ -45583,17 +49978,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_descriptor; + return context.ContextOuterClass.internal_static_context_Connection_descriptor; } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings getDefaultInstanceForType() { - return context.ContextOuterClass.ConnectionSettings.getDefaultInstance(); + public context.ContextOuterClass.Connection getDefaultInstanceForType() { + return context.ContextOuterClass.Connection.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings build() { - context.ContextOuterClass.ConnectionSettings result = buildPartial(); + public context.ContextOuterClass.Connection build() { + context.ContextOuterClass.Connection result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -45601,27 +49996,41 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings buildPartial() { - context.ContextOuterClass.ConnectionSettings result = new context.ContextOuterClass.ConnectionSettings(this); - if (l0Builder_ == null) { - result.l0_ = l0_; + public context.ContextOuterClass.Connection buildPartial() { + context.ContextOuterClass.Connection result = new context.ContextOuterClass.Connection(this); + int from_bitField0_ = bitField0_; + if (connectionIdBuilder_ == null) { + result.connectionId_ = connectionId_; } else { - result.l0_ = l0Builder_.build(); + result.connectionId_ = connectionIdBuilder_.build(); } - if (l2Builder_ == null) { - result.l2_ = l2_; + if (serviceIdBuilder_ == null) { + result.serviceId_ = serviceId_; } else { - result.l2_ = l2Builder_.build(); + result.serviceId_ = serviceIdBuilder_.build(); } - if (l3Builder_ == null) { - result.l3_ = l3_; + if (pathHopsEndpointIdsBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + pathHopsEndpointIds_ = java.util.Collections.unmodifiableList(pathHopsEndpointIds_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.pathHopsEndpointIds_ = pathHopsEndpointIds_; } else { - result.l3_ = l3Builder_.build(); + result.pathHopsEndpointIds_ = pathHopsEndpointIdsBuilder_.build(); } - if (l4Builder_ == null) { - result.l4_ = l4_; + if (subServiceIdsBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0)) { + subServiceIds_ = java.util.Collections.unmodifiableList(subServiceIds_); + bitField0_ = (bitField0_ & ~0x00000002); + } + result.subServiceIds_ = subServiceIds_; } else { - result.l4_ = l4Builder_.build(); + result.subServiceIds_ = subServiceIdsBuilder_.build(); + } + if (settingsBuilder_ == null) { + result.settings_ = settings_; + } else { + result.settings_ = settingsBuilder_.build(); } onBuilt(); return result; @@ -45661,27 +50070,76 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ConnectionSettings) { - return mergeFrom((context.ContextOuterClass.ConnectionSettings)other); + if (other instanceof context.ContextOuterClass.Connection) { + return mergeFrom((context.ContextOuterClass.Connection)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ConnectionSettings other) { - if (other == context.ContextOuterClass.ConnectionSettings.getDefaultInstance()) return this; - if (other.hasL0()) { - mergeL0(other.getL0()); + public Builder mergeFrom(context.ContextOuterClass.Connection other) { + if (other == context.ContextOuterClass.Connection.getDefaultInstance()) return this; + if (other.hasConnectionId()) { + mergeConnectionId(other.getConnectionId()); } - if (other.hasL2()) { - mergeL2(other.getL2()); + if (other.hasServiceId()) { + mergeServiceId(other.getServiceId()); + } + if (pathHopsEndpointIdsBuilder_ == null) { + if (!other.pathHopsEndpointIds_.isEmpty()) { + if (pathHopsEndpointIds_.isEmpty()) { + pathHopsEndpointIds_ = other.pathHopsEndpointIds_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensurePathHopsEndpointIdsIsMutable(); + pathHopsEndpointIds_.addAll(other.pathHopsEndpointIds_); + } + onChanged(); + } + } else { + if (!other.pathHopsEndpointIds_.isEmpty()) { + if (pathHopsEndpointIdsBuilder_.isEmpty()) { + pathHopsEndpointIdsBuilder_.dispose(); + pathHopsEndpointIdsBuilder_ = null; + pathHopsEndpointIds_ = other.pathHopsEndpointIds_; + bitField0_ = (bitField0_ & ~0x00000001); + pathHopsEndpointIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getPathHopsEndpointIdsFieldBuilder() : null; + } else { + pathHopsEndpointIdsBuilder_.addAllMessages(other.pathHopsEndpointIds_); + } + } } - if (other.hasL3()) { - mergeL3(other.getL3()); + if (subServiceIdsBuilder_ == null) { + if (!other.subServiceIds_.isEmpty()) { + if (subServiceIds_.isEmpty()) { + subServiceIds_ = other.subServiceIds_; + bitField0_ = (bitField0_ & ~0x00000002); + } else { + ensureSubServiceIdsIsMutable(); + subServiceIds_.addAll(other.subServiceIds_); + } + onChanged(); + } + } else { + if (!other.subServiceIds_.isEmpty()) { + if (subServiceIdsBuilder_.isEmpty()) { + subServiceIdsBuilder_.dispose(); + subServiceIdsBuilder_ = null; + subServiceIds_ = other.subServiceIds_; + bitField0_ = (bitField0_ & ~0x00000002); + subServiceIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getSubServiceIdsFieldBuilder() : null; + } else { + subServiceIdsBuilder_.addAllMessages(other.subServiceIds_); + } + } } - if (other.hasL4()) { - mergeL4(other.getL4()); + if (other.hasSettings()) { + mergeSettings(other.getSettings()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -45698,11 +50156,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ConnectionSettings parsedMessage = null; + context.ContextOuterClass.Connection parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ConnectionSettings) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.Connection) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -45711,481 +50169,843 @@ public final class ContextOuterClass { } return this; } + private int bitField0_; - private context.ContextOuterClass.ConnectionSettings_L0 l0_; + private context.ContextOuterClass.ConnectionId connectionId_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings_L0, context.ContextOuterClass.ConnectionSettings_L0.Builder, context.ContextOuterClass.ConnectionSettings_L0OrBuilder> l0Builder_; + context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> connectionIdBuilder_; /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> - * @return Whether the l0 field is set. + * <code>.context.ConnectionId connection_id = 1;</code> + * @return Whether the connectionId field is set. */ - public boolean hasL0() { - return l0Builder_ != null || l0_ != null; + public boolean hasConnectionId() { + return connectionIdBuilder_ != null || connectionId_ != null; } /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> - * @return The l0. + * <code>.context.ConnectionId connection_id = 1;</code> + * @return The connectionId. */ - public context.ContextOuterClass.ConnectionSettings_L0 getL0() { - if (l0Builder_ == null) { - return l0_ == null ? context.ContextOuterClass.ConnectionSettings_L0.getDefaultInstance() : l0_; + public context.ContextOuterClass.ConnectionId getConnectionId() { + if (connectionIdBuilder_ == null) { + return connectionId_ == null ? context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; } else { - return l0Builder_.getMessage(); + return connectionIdBuilder_.getMessage(); } } /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + * <code>.context.ConnectionId connection_id = 1;</code> */ - public Builder setL0(context.ContextOuterClass.ConnectionSettings_L0 value) { - if (l0Builder_ == null) { + public Builder setConnectionId(context.ContextOuterClass.ConnectionId value) { + if (connectionIdBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - l0_ = value; + connectionId_ = value; onChanged(); } else { - l0Builder_.setMessage(value); + connectionIdBuilder_.setMessage(value); } return this; } /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + * <code>.context.ConnectionId connection_id = 1;</code> */ - public Builder setL0( - context.ContextOuterClass.ConnectionSettings_L0.Builder builderForValue) { - if (l0Builder_ == null) { - l0_ = builderForValue.build(); + public Builder setConnectionId( + context.ContextOuterClass.ConnectionId.Builder builderForValue) { + if (connectionIdBuilder_ == null) { + connectionId_ = builderForValue.build(); onChanged(); } else { - l0Builder_.setMessage(builderForValue.build()); + connectionIdBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + * <code>.context.ConnectionId connection_id = 1;</code> */ - public Builder mergeL0(context.ContextOuterClass.ConnectionSettings_L0 value) { - if (l0Builder_ == null) { - if (l0_ != null) { - l0_ = - context.ContextOuterClass.ConnectionSettings_L0.newBuilder(l0_).mergeFrom(value).buildPartial(); + public Builder mergeConnectionId(context.ContextOuterClass.ConnectionId value) { + if (connectionIdBuilder_ == null) { + if (connectionId_ != null) { + connectionId_ = + context.ContextOuterClass.ConnectionId.newBuilder(connectionId_).mergeFrom(value).buildPartial(); } else { - l0_ = value; + connectionId_ = value; } onChanged(); } else { - l0Builder_.mergeFrom(value); + connectionIdBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + * <code>.context.ConnectionId connection_id = 1;</code> */ - public Builder clearL0() { - if (l0Builder_ == null) { - l0_ = null; + public Builder clearConnectionId() { + if (connectionIdBuilder_ == null) { + connectionId_ = null; onChanged(); } else { - l0_ = null; - l0Builder_ = null; + connectionId_ = null; + connectionIdBuilder_ = null; } return this; } /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + * <code>.context.ConnectionId connection_id = 1;</code> */ - public context.ContextOuterClass.ConnectionSettings_L0.Builder getL0Builder() { + public context.ContextOuterClass.ConnectionId.Builder getConnectionIdBuilder() { onChanged(); - return getL0FieldBuilder().getBuilder(); + return getConnectionIdFieldBuilder().getBuilder(); + } + /** + * <code>.context.ConnectionId connection_id = 1;</code> + */ + public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder() { + if (connectionIdBuilder_ != null) { + return connectionIdBuilder_.getMessageOrBuilder(); + } else { + return connectionId_ == null ? + context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; + } + } + /** + * <code>.context.ConnectionId connection_id = 1;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> + getConnectionIdFieldBuilder() { + if (connectionIdBuilder_ == null) { + connectionIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder>( + getConnectionId(), + getParentForChildren(), + isClean()); + connectionId_ = null; + } + return connectionIdBuilder_; + } + + private context.ContextOuterClass.ServiceId serviceId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> serviceIdBuilder_; + /** + * <code>.context.ServiceId service_id = 2;</code> + * @return Whether the serviceId field is set. + */ + public boolean hasServiceId() { + return serviceIdBuilder_ != null || serviceId_ != null; + } + /** + * <code>.context.ServiceId service_id = 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(); + } + } + /** + * <code>.context.ServiceId service_id = 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); + } + + return this; + } + /** + * <code>.context.ServiceId service_id = 2;</code> + */ + public Builder setServiceId( + context.ContextOuterClass.ServiceId.Builder builderForValue) { + if (serviceIdBuilder_ == null) { + serviceId_ = builderForValue.build(); + onChanged(); + } else { + serviceIdBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.ServiceId service_id = 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); + } + + return this; + } + /** + * <code>.context.ServiceId service_id = 2;</code> + */ + public Builder clearServiceId() { + if (serviceIdBuilder_ == null) { + serviceId_ = null; + onChanged(); + } else { + serviceId_ = null; + serviceIdBuilder_ = null; + } + + return this; + } + /** + * <code>.context.ServiceId service_id = 2;</code> + */ + public context.ContextOuterClass.ServiceId.Builder getServiceIdBuilder() { + + onChanged(); + return getServiceIdFieldBuilder().getBuilder(); + } + /** + * <code>.context.ServiceId service_id = 2;</code> + */ + public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() { + if (serviceIdBuilder_ != null) { + return serviceIdBuilder_.getMessageOrBuilder(); + } else { + return serviceId_ == null ? + context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; + } + } + /** + * <code>.context.ServiceId service_id = 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_; + } + + private java.util.List<context.ContextOuterClass.EndPointId> pathHopsEndpointIds_ = + java.util.Collections.emptyList(); + private void ensurePathHopsEndpointIdsIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + pathHopsEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(pathHopsEndpointIds_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> pathHopsEndpointIdsBuilder_; + + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public java.util.List<context.ContextOuterClass.EndPointId> getPathHopsEndpointIdsList() { + if (pathHopsEndpointIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(pathHopsEndpointIds_); + } else { + return pathHopsEndpointIdsBuilder_.getMessageList(); + } + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public int getPathHopsEndpointIdsCount() { + if (pathHopsEndpointIdsBuilder_ == null) { + return pathHopsEndpointIds_.size(); + } else { + return pathHopsEndpointIdsBuilder_.getCount(); + } + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointId getPathHopsEndpointIds(int index) { + if (pathHopsEndpointIdsBuilder_ == null) { + return pathHopsEndpointIds_.get(index); + } else { + return pathHopsEndpointIdsBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public Builder setPathHopsEndpointIds( + int index, context.ContextOuterClass.EndPointId value) { + if (pathHopsEndpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePathHopsEndpointIdsIsMutable(); + pathHopsEndpointIds_.set(index, value); + onChanged(); + } else { + pathHopsEndpointIdsBuilder_.setMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public Builder setPathHopsEndpointIds( + int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (pathHopsEndpointIdsBuilder_ == null) { + ensurePathHopsEndpointIdsIsMutable(); + pathHopsEndpointIds_.set(index, builderForValue.build()); + onChanged(); + } else { + pathHopsEndpointIdsBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public Builder addPathHopsEndpointIds(context.ContextOuterClass.EndPointId value) { + if (pathHopsEndpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePathHopsEndpointIdsIsMutable(); + pathHopsEndpointIds_.add(value); + onChanged(); + } else { + pathHopsEndpointIdsBuilder_.addMessage(value); + } + return this; + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public Builder addPathHopsEndpointIds( + int index, context.ContextOuterClass.EndPointId value) { + if (pathHopsEndpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePathHopsEndpointIdsIsMutable(); + pathHopsEndpointIds_.add(index, value); + onChanged(); + } else { + pathHopsEndpointIdsBuilder_.addMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public Builder addPathHopsEndpointIds( + context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (pathHopsEndpointIdsBuilder_ == null) { + ensurePathHopsEndpointIdsIsMutable(); + pathHopsEndpointIds_.add(builderForValue.build()); + onChanged(); + } else { + pathHopsEndpointIdsBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public Builder addPathHopsEndpointIds( + int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (pathHopsEndpointIdsBuilder_ == null) { + ensurePathHopsEndpointIdsIsMutable(); + pathHopsEndpointIds_.add(index, builderForValue.build()); + onChanged(); + } else { + pathHopsEndpointIdsBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public Builder addAllPathHopsEndpointIds( + java.lang.Iterable<? extends context.ContextOuterClass.EndPointId> values) { + if (pathHopsEndpointIdsBuilder_ == null) { + ensurePathHopsEndpointIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, pathHopsEndpointIds_); + onChanged(); + } else { + pathHopsEndpointIdsBuilder_.addAllMessages(values); + } + return this; + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public Builder clearPathHopsEndpointIds() { + if (pathHopsEndpointIdsBuilder_ == null) { + pathHopsEndpointIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + pathHopsEndpointIdsBuilder_.clear(); + } + return this; + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public Builder removePathHopsEndpointIds(int index) { + if (pathHopsEndpointIdsBuilder_ == null) { + ensurePathHopsEndpointIdsIsMutable(); + pathHopsEndpointIds_.remove(index); + onChanged(); + } else { + pathHopsEndpointIdsBuilder_.remove(index); + } + return this; + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointId.Builder getPathHopsEndpointIdsBuilder( + int index) { + return getPathHopsEndpointIdsFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointIdOrBuilder getPathHopsEndpointIdsOrBuilder( + int index) { + if (pathHopsEndpointIdsBuilder_ == null) { + return pathHopsEndpointIds_.get(index); } else { + return pathHopsEndpointIdsBuilder_.getMessageOrBuilder(index); + } + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getPathHopsEndpointIdsOrBuilderList() { + if (pathHopsEndpointIdsBuilder_ != null) { + return pathHopsEndpointIdsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(pathHopsEndpointIds_); + } + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointId.Builder addPathHopsEndpointIdsBuilder() { + return getPathHopsEndpointIdsFieldBuilder().addBuilder( + context.ContextOuterClass.EndPointId.getDefaultInstance()); + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointId.Builder addPathHopsEndpointIdsBuilder( + int index) { + return getPathHopsEndpointIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.EndPointId.getDefaultInstance()); + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public java.util.List<context.ContextOuterClass.EndPointId.Builder> + getPathHopsEndpointIdsBuilderList() { + return getPathHopsEndpointIdsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> + getPathHopsEndpointIdsFieldBuilder() { + if (pathHopsEndpointIdsBuilder_ == null) { + pathHopsEndpointIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( + pathHopsEndpointIds_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + pathHopsEndpointIds_ = null; + } + return pathHopsEndpointIdsBuilder_; + } + + private java.util.List<context.ContextOuterClass.ServiceId> subServiceIds_ = + java.util.Collections.emptyList(); + private void ensureSubServiceIdsIsMutable() { + if (!((bitField0_ & 0x00000002) != 0)) { + subServiceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(subServiceIds_); + bitField0_ |= 0x00000002; + } } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> subServiceIdsBuilder_; + /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> */ - public context.ContextOuterClass.ConnectionSettings_L0OrBuilder getL0OrBuilder() { - if (l0Builder_ != null) { - return l0Builder_.getMessageOrBuilder(); + public java.util.List<context.ContextOuterClass.ServiceId> getSubServiceIdsList() { + if (subServiceIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(subServiceIds_); } else { - return l0_ == null ? - context.ContextOuterClass.ConnectionSettings_L0.getDefaultInstance() : l0_; + return subServiceIdsBuilder_.getMessageList(); } } /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings_L0, context.ContextOuterClass.ConnectionSettings_L0.Builder, context.ContextOuterClass.ConnectionSettings_L0OrBuilder> - getL0FieldBuilder() { - if (l0Builder_ == null) { - l0Builder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings_L0, context.ContextOuterClass.ConnectionSettings_L0.Builder, context.ContextOuterClass.ConnectionSettings_L0OrBuilder>( - getL0(), - getParentForChildren(), - isClean()); - l0_ = null; + public int getSubServiceIdsCount() { + if (subServiceIdsBuilder_ == null) { + return subServiceIds_.size(); + } else { + return subServiceIdsBuilder_.getCount(); } - return l0Builder_; - } - - private context.ContextOuterClass.ConnectionSettings_L2 l2_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings_L2, context.ContextOuterClass.ConnectionSettings_L2.Builder, context.ContextOuterClass.ConnectionSettings_L2OrBuilder> l2Builder_; - /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> - * @return Whether the l2 field is set. - */ - public boolean hasL2() { - return l2Builder_ != null || l2_ != null; } /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> - * @return The l2. + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> */ - public context.ContextOuterClass.ConnectionSettings_L2 getL2() { - if (l2Builder_ == null) { - return l2_ == null ? context.ContextOuterClass.ConnectionSettings_L2.getDefaultInstance() : l2_; + public context.ContextOuterClass.ServiceId getSubServiceIds(int index) { + if (subServiceIdsBuilder_ == null) { + return subServiceIds_.get(index); } else { - return l2Builder_.getMessage(); + return subServiceIdsBuilder_.getMessage(index); } } /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> */ - public Builder setL2(context.ContextOuterClass.ConnectionSettings_L2 value) { - if (l2Builder_ == null) { + public Builder setSubServiceIds( + int index, context.ContextOuterClass.ServiceId value) { + if (subServiceIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - l2_ = value; + ensureSubServiceIdsIsMutable(); + subServiceIds_.set(index, value); onChanged(); } else { - l2Builder_.setMessage(value); + subServiceIdsBuilder_.setMessage(index, value); } - return this; } /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> */ - public Builder setL2( - context.ContextOuterClass.ConnectionSettings_L2.Builder builderForValue) { - if (l2Builder_ == null) { - l2_ = builderForValue.build(); + public Builder setSubServiceIds( + int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { + if (subServiceIdsBuilder_ == null) { + ensureSubServiceIdsIsMutable(); + subServiceIds_.set(index, builderForValue.build()); onChanged(); } else { - l2Builder_.setMessage(builderForValue.build()); + subServiceIdsBuilder_.setMessage(index, builderForValue.build()); } - return this; } /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> */ - public Builder mergeL2(context.ContextOuterClass.ConnectionSettings_L2 value) { - if (l2Builder_ == null) { - if (l2_ != null) { - l2_ = - context.ContextOuterClass.ConnectionSettings_L2.newBuilder(l2_).mergeFrom(value).buildPartial(); - } else { - l2_ = value; + public Builder addSubServiceIds(context.ContextOuterClass.ServiceId value) { + if (subServiceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + ensureSubServiceIdsIsMutable(); + subServiceIds_.add(value); onChanged(); } else { - l2Builder_.mergeFrom(value); + subServiceIdsBuilder_.addMessage(value); } - return this; } /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> */ - public Builder clearL2() { - if (l2Builder_ == null) { - l2_ = null; + public Builder addSubServiceIds( + int index, context.ContextOuterClass.ServiceId value) { + if (subServiceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSubServiceIdsIsMutable(); + subServiceIds_.add(index, value); onChanged(); } else { - l2_ = null; - l2Builder_ = null; + subServiceIdsBuilder_.addMessage(index, value); } - return this; } /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> - */ - public context.ContextOuterClass.ConnectionSettings_L2.Builder getL2Builder() { - - onChanged(); - return getL2FieldBuilder().getBuilder(); - } - /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> */ - public context.ContextOuterClass.ConnectionSettings_L2OrBuilder getL2OrBuilder() { - if (l2Builder_ != null) { - return l2Builder_.getMessageOrBuilder(); + public Builder addSubServiceIds( + context.ContextOuterClass.ServiceId.Builder builderForValue) { + if (subServiceIdsBuilder_ == null) { + ensureSubServiceIdsIsMutable(); + subServiceIds_.add(builderForValue.build()); + onChanged(); } else { - return l2_ == null ? - context.ContextOuterClass.ConnectionSettings_L2.getDefaultInstance() : l2_; + subServiceIdsBuilder_.addMessage(builderForValue.build()); } + return this; } /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings_L2, context.ContextOuterClass.ConnectionSettings_L2.Builder, context.ContextOuterClass.ConnectionSettings_L2OrBuilder> - getL2FieldBuilder() { - if (l2Builder_ == null) { - l2Builder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings_L2, context.ContextOuterClass.ConnectionSettings_L2.Builder, context.ContextOuterClass.ConnectionSettings_L2OrBuilder>( - getL2(), - getParentForChildren(), - isClean()); - l2_ = null; + public Builder addSubServiceIds( + int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { + if (subServiceIdsBuilder_ == null) { + ensureSubServiceIdsIsMutable(); + subServiceIds_.add(index, builderForValue.build()); + onChanged(); + } else { + subServiceIdsBuilder_.addMessage(index, builderForValue.build()); } - return l2Builder_; - } - - private context.ContextOuterClass.ConnectionSettings_L3 l3_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings_L3, context.ContextOuterClass.ConnectionSettings_L3.Builder, context.ContextOuterClass.ConnectionSettings_L3OrBuilder> l3Builder_; - /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> - * @return Whether the l3 field is set. - */ - public boolean hasL3() { - return l3Builder_ != null || l3_ != null; + return this; } /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> - * @return The l3. + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> */ - public context.ContextOuterClass.ConnectionSettings_L3 getL3() { - if (l3Builder_ == null) { - return l3_ == null ? context.ContextOuterClass.ConnectionSettings_L3.getDefaultInstance() : l3_; + public Builder addAllSubServiceIds( + java.lang.Iterable<? extends context.ContextOuterClass.ServiceId> values) { + if (subServiceIdsBuilder_ == null) { + ensureSubServiceIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, subServiceIds_); + onChanged(); } else { - return l3Builder_.getMessage(); + subServiceIdsBuilder_.addAllMessages(values); } + return this; } /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> */ - public Builder setL3(context.ContextOuterClass.ConnectionSettings_L3 value) { - if (l3Builder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - l3_ = value; + public Builder clearSubServiceIds() { + if (subServiceIdsBuilder_ == null) { + subServiceIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); onChanged(); } else { - l3Builder_.setMessage(value); + subServiceIdsBuilder_.clear(); } - return this; } /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> */ - public Builder setL3( - context.ContextOuterClass.ConnectionSettings_L3.Builder builderForValue) { - if (l3Builder_ == null) { - l3_ = builderForValue.build(); + public Builder removeSubServiceIds(int index) { + if (subServiceIdsBuilder_ == null) { + ensureSubServiceIdsIsMutable(); + subServiceIds_.remove(index); onChanged(); } else { - l3Builder_.setMessage(builderForValue.build()); + subServiceIdsBuilder_.remove(index); } - return this; } /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> */ - public Builder mergeL3(context.ContextOuterClass.ConnectionSettings_L3 value) { - if (l3Builder_ == null) { - if (l3_ != null) { - l3_ = - context.ContextOuterClass.ConnectionSettings_L3.newBuilder(l3_).mergeFrom(value).buildPartial(); - } else { - l3_ = value; - } - onChanged(); - } else { - l3Builder_.mergeFrom(value); + public context.ContextOuterClass.ServiceId.Builder getSubServiceIdsBuilder( + int index) { + return getSubServiceIdsFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + public context.ContextOuterClass.ServiceIdOrBuilder getSubServiceIdsOrBuilder( + int index) { + if (subServiceIdsBuilder_ == null) { + return subServiceIds_.get(index); } else { + return subServiceIdsBuilder_.getMessageOrBuilder(index); } - - return this; } /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> */ - public Builder clearL3() { - if (l3Builder_ == null) { - l3_ = null; - onChanged(); + public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> + getSubServiceIdsOrBuilderList() { + if (subServiceIdsBuilder_ != null) { + return subServiceIdsBuilder_.getMessageOrBuilderList(); } else { - l3_ = null; - l3Builder_ = null; + return java.util.Collections.unmodifiableList(subServiceIds_); } - - return this; } /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> */ - public context.ContextOuterClass.ConnectionSettings_L3.Builder getL3Builder() { - - onChanged(); - return getL3FieldBuilder().getBuilder(); + public context.ContextOuterClass.ServiceId.Builder addSubServiceIdsBuilder() { + return getSubServiceIdsFieldBuilder().addBuilder( + context.ContextOuterClass.ServiceId.getDefaultInstance()); } /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> */ - public context.ContextOuterClass.ConnectionSettings_L3OrBuilder getL3OrBuilder() { - if (l3Builder_ != null) { - return l3Builder_.getMessageOrBuilder(); - } else { - return l3_ == null ? - context.ContextOuterClass.ConnectionSettings_L3.getDefaultInstance() : l3_; - } + public context.ContextOuterClass.ServiceId.Builder addSubServiceIdsBuilder( + int index) { + return getSubServiceIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.ServiceId.getDefaultInstance()); } /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings_L3, context.ContextOuterClass.ConnectionSettings_L3.Builder, context.ContextOuterClass.ConnectionSettings_L3OrBuilder> - getL3FieldBuilder() { - if (l3Builder_ == null) { - l3Builder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings_L3, context.ContextOuterClass.ConnectionSettings_L3.Builder, context.ContextOuterClass.ConnectionSettings_L3OrBuilder>( - getL3(), + public java.util.List<context.ContextOuterClass.ServiceId.Builder> + getSubServiceIdsBuilderList() { + return getSubServiceIdsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> + getSubServiceIdsFieldBuilder() { + if (subServiceIdsBuilder_ == null) { + subServiceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder>( + subServiceIds_, + ((bitField0_ & 0x00000002) != 0), getParentForChildren(), isClean()); - l3_ = null; + subServiceIds_ = null; } - return l3Builder_; + return subServiceIdsBuilder_; } - private context.ContextOuterClass.ConnectionSettings_L4 l4_; + private context.ContextOuterClass.ConnectionSettings settings_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings_L4, context.ContextOuterClass.ConnectionSettings_L4.Builder, context.ContextOuterClass.ConnectionSettings_L4OrBuilder> l4Builder_; + context.ContextOuterClass.ConnectionSettings, context.ContextOuterClass.ConnectionSettings.Builder, context.ContextOuterClass.ConnectionSettingsOrBuilder> settingsBuilder_; /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> - * @return Whether the l4 field is set. + * <code>.context.ConnectionSettings settings = 5;</code> + * @return Whether the settings field is set. */ - public boolean hasL4() { - return l4Builder_ != null || l4_ != null; + public boolean hasSettings() { + return settingsBuilder_ != null || settings_ != null; } /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> - * @return The l4. + * <code>.context.ConnectionSettings settings = 5;</code> + * @return The settings. */ - public context.ContextOuterClass.ConnectionSettings_L4 getL4() { - if (l4Builder_ == null) { - return l4_ == null ? context.ContextOuterClass.ConnectionSettings_L4.getDefaultInstance() : l4_; + public context.ContextOuterClass.ConnectionSettings getSettings() { + if (settingsBuilder_ == null) { + return settings_ == null ? context.ContextOuterClass.ConnectionSettings.getDefaultInstance() : settings_; } else { - return l4Builder_.getMessage(); + return settingsBuilder_.getMessage(); } } /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * <code>.context.ConnectionSettings settings = 5;</code> */ - public Builder setL4(context.ContextOuterClass.ConnectionSettings_L4 value) { - if (l4Builder_ == null) { + public Builder setSettings(context.ContextOuterClass.ConnectionSettings value) { + if (settingsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - l4_ = value; + settings_ = value; onChanged(); } else { - l4Builder_.setMessage(value); + settingsBuilder_.setMessage(value); } return this; } /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * <code>.context.ConnectionSettings settings = 5;</code> */ - public Builder setL4( - context.ContextOuterClass.ConnectionSettings_L4.Builder builderForValue) { - if (l4Builder_ == null) { - l4_ = builderForValue.build(); + public Builder setSettings( + context.ContextOuterClass.ConnectionSettings.Builder builderForValue) { + if (settingsBuilder_ == null) { + settings_ = builderForValue.build(); onChanged(); } else { - l4Builder_.setMessage(builderForValue.build()); + settingsBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * <code>.context.ConnectionSettings settings = 5;</code> */ - public Builder mergeL4(context.ContextOuterClass.ConnectionSettings_L4 value) { - if (l4Builder_ == null) { - if (l4_ != null) { - l4_ = - context.ContextOuterClass.ConnectionSettings_L4.newBuilder(l4_).mergeFrom(value).buildPartial(); + public Builder mergeSettings(context.ContextOuterClass.ConnectionSettings value) { + if (settingsBuilder_ == null) { + if (settings_ != null) { + settings_ = + context.ContextOuterClass.ConnectionSettings.newBuilder(settings_).mergeFrom(value).buildPartial(); } else { - l4_ = value; + settings_ = value; } onChanged(); } else { - l4Builder_.mergeFrom(value); + settingsBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * <code>.context.ConnectionSettings settings = 5;</code> */ - public Builder clearL4() { - if (l4Builder_ == null) { - l4_ = null; + public Builder clearSettings() { + if (settingsBuilder_ == null) { + settings_ = null; onChanged(); } else { - l4_ = null; - l4Builder_ = null; + settings_ = null; + settingsBuilder_ = null; } return this; } /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * <code>.context.ConnectionSettings settings = 5;</code> */ - public context.ContextOuterClass.ConnectionSettings_L4.Builder getL4Builder() { + public context.ContextOuterClass.ConnectionSettings.Builder getSettingsBuilder() { onChanged(); - return getL4FieldBuilder().getBuilder(); + return getSettingsFieldBuilder().getBuilder(); } /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * <code>.context.ConnectionSettings settings = 5;</code> */ - public context.ContextOuterClass.ConnectionSettings_L4OrBuilder getL4OrBuilder() { - if (l4Builder_ != null) { - return l4Builder_.getMessageOrBuilder(); + public context.ContextOuterClass.ConnectionSettingsOrBuilder getSettingsOrBuilder() { + if (settingsBuilder_ != null) { + return settingsBuilder_.getMessageOrBuilder(); } else { - return l4_ == null ? - context.ContextOuterClass.ConnectionSettings_L4.getDefaultInstance() : l4_; + return settings_ == null ? + context.ContextOuterClass.ConnectionSettings.getDefaultInstance() : settings_; } } /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * <code>.context.ConnectionSettings settings = 5;</code> */ private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings_L4, context.ContextOuterClass.ConnectionSettings_L4.Builder, context.ContextOuterClass.ConnectionSettings_L4OrBuilder> - getL4FieldBuilder() { - if (l4Builder_ == null) { - l4Builder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings_L4, context.ContextOuterClass.ConnectionSettings_L4.Builder, context.ContextOuterClass.ConnectionSettings_L4OrBuilder>( - getL4(), + context.ContextOuterClass.ConnectionSettings, context.ContextOuterClass.ConnectionSettings.Builder, context.ContextOuterClass.ConnectionSettingsOrBuilder> + getSettingsFieldBuilder() { + if (settingsBuilder_ == null) { + settingsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionSettings, context.ContextOuterClass.ConnectionSettings.Builder, context.ContextOuterClass.ConnectionSettingsOrBuilder>( + getSettings(), getParentForChildren(), isClean()); - l4_ = null; + settings_ = null; } - return l4Builder_; + return settingsBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -46200,165 +51020,95 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ConnectionSettings) + // @@protoc_insertion_point(builder_scope:context.Connection) } - // @@protoc_insertion_point(class_scope:context.ConnectionSettings) - private static final context.ContextOuterClass.ConnectionSettings DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Connection) + private static final context.ContextOuterClass.Connection DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionSettings(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Connection(); } - public static context.ContextOuterClass.ConnectionSettings getDefaultInstance() { + public static context.ContextOuterClass.Connection getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ConnectionSettings> - PARSER = new com.google.protobuf.AbstractParser<ConnectionSettings>() { + private static final com.google.protobuf.Parser<Connection> + PARSER = new com.google.protobuf.AbstractParser<Connection>() { @java.lang.Override - public ConnectionSettings parsePartialFrom( + public Connection parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ConnectionSettings(input, extensionRegistry); + return new Connection(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ConnectionSettings> parser() { + public static com.google.protobuf.Parser<Connection> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ConnectionSettings> getParserForType() { + public com.google.protobuf.Parser<Connection> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings getDefaultInstanceForType() { + public context.ContextOuterClass.Connection getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ConnectionOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Connection) + public interface ConnectionIdListOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ConnectionIdList) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.ConnectionId connection_id = 1;</code> - * @return Whether the connectionId field is set. - */ - boolean hasConnectionId(); - /** - * <code>.context.ConnectionId connection_id = 1;</code> - * @return The connectionId. - */ - context.ContextOuterClass.ConnectionId getConnectionId(); - /** - * <code>.context.ConnectionId connection_id = 1;</code> - */ - context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder(); - - /** - * <code>.context.ServiceId service_id = 2;</code> - * @return Whether the serviceId field is set. - */ - boolean hasServiceId(); - /** - * <code>.context.ServiceId service_id = 2;</code> - * @return The serviceId. - */ - context.ContextOuterClass.ServiceId getServiceId(); - /** - * <code>.context.ServiceId service_id = 2;</code> - */ - context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder(); - - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - java.util.List<context.ContextOuterClass.EndPointId> - getPathHopsEndpointIdsList(); - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - context.ContextOuterClass.EndPointId getPathHopsEndpointIds(int index); - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - int getPathHopsEndpointIdsCount(); - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> - getPathHopsEndpointIdsOrBuilderList(); - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - context.ContextOuterClass.EndPointIdOrBuilder getPathHopsEndpointIdsOrBuilder( - int index); - - /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> - */ - java.util.List<context.ContextOuterClass.ServiceId> - getSubServiceIdsList(); - /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> - */ - context.ContextOuterClass.ServiceId getSubServiceIds(int index); - /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> - */ - int getSubServiceIdsCount(); - /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> - getSubServiceIdsOrBuilderList(); + java.util.List<context.ContextOuterClass.ConnectionId> + getConnectionIdsList(); /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - context.ContextOuterClass.ServiceIdOrBuilder getSubServiceIdsOrBuilder( - int index); - + context.ContextOuterClass.ConnectionId getConnectionIds(int index); /** - * <code>.context.ConnectionSettings settings = 5;</code> - * @return Whether the settings field is set. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - boolean hasSettings(); + int getConnectionIdsCount(); /** - * <code>.context.ConnectionSettings settings = 5;</code> - * @return The settings. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - context.ContextOuterClass.ConnectionSettings getSettings(); + java.util.List<? extends context.ContextOuterClass.ConnectionIdOrBuilder> + getConnectionIdsOrBuilderList(); /** - * <code>.context.ConnectionSettings settings = 5;</code> + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - context.ContextOuterClass.ConnectionSettingsOrBuilder getSettingsOrBuilder(); + context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdsOrBuilder( + int index); } /** - * Protobuf type {@code context.Connection} + * Protobuf type {@code context.ConnectionIdList} */ - public static final class Connection extends + public static final class ConnectionIdList extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Connection) - ConnectionOrBuilder { + // @@protoc_insertion_point(message_implements:context.ConnectionIdList) + ConnectionIdListOrBuilder { private static final long serialVersionUID = 0L; - // Use Connection.newBuilder() to construct. - private Connection(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ConnectionIdList.newBuilder() to construct. + private ConnectionIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private Connection() { - pathHopsEndpointIds_ = java.util.Collections.emptyList(); - subServiceIds_ = java.util.Collections.emptyList(); + private ConnectionIdList() { + connectionIds_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new Connection(); + return new ConnectionIdList(); } @java.lang.Override @@ -46366,7 +51116,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private Connection( + private ConnectionIdList( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -46386,60 +51136,12 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.ConnectionId.Builder subBuilder = null; - if (connectionId_ != null) { - subBuilder = connectionId_.toBuilder(); - } - connectionId_ = input.readMessage(context.ContextOuterClass.ConnectionId.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(connectionId_); - connectionId_ = 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)) { - pathHopsEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(); + connectionIds_ = new java.util.ArrayList<context.ContextOuterClass.ConnectionId>(); mutable_bitField0_ |= 0x00000001; } - pathHopsEndpointIds_.add( - input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry)); - break; - } - case 34: { - if (!((mutable_bitField0_ & 0x00000002) != 0)) { - subServiceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(); - mutable_bitField0_ |= 0x00000002; - } - subServiceIds_.add( - input.readMessage(context.ContextOuterClass.ServiceId.parser(), extensionRegistry)); - break; - } - case 42: { - context.ContextOuterClass.ConnectionSettings.Builder subBuilder = null; - if (settings_ != null) { - subBuilder = settings_.toBuilder(); - } - settings_ = input.readMessage(context.ContextOuterClass.ConnectionSettings.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(settings_); - settings_ = subBuilder.buildPartial(); - } - + connectionIds_.add( + input.readMessage(context.ContextOuterClass.ConnectionId.parser(), extensionRegistry)); break; } default: { @@ -46458,10 +51160,7 @@ public final class ContextOuterClass { e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { - pathHopsEndpointIds_ = java.util.Collections.unmodifiableList(pathHopsEndpointIds_); - } - if (((mutable_bitField0_ & 0x00000002) != 0)) { - subServiceIds_ = java.util.Collections.unmodifiableList(subServiceIds_); + connectionIds_ = java.util.Collections.unmodifiableList(connectionIds_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); @@ -46469,173 +51168,55 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Connection_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionIdList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Connection_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionIdList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Connection.class, context.ContextOuterClass.Connection.Builder.class); - } - - public static final int CONNECTION_ID_FIELD_NUMBER = 1; - private context.ContextOuterClass.ConnectionId connectionId_; - /** - * <code>.context.ConnectionId connection_id = 1;</code> - * @return Whether the connectionId field is set. - */ - @java.lang.Override - public boolean hasConnectionId() { - return connectionId_ != null; - } - /** - * <code>.context.ConnectionId connection_id = 1;</code> - * @return The connectionId. - */ - @java.lang.Override - public context.ContextOuterClass.ConnectionId getConnectionId() { - return connectionId_ == null ? context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; - } - /** - * <code>.context.ConnectionId connection_id = 1;</code> - */ - @java.lang.Override - public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder() { - return getConnectionId(); - } - - public static final int SERVICE_ID_FIELD_NUMBER = 2; - private context.ContextOuterClass.ServiceId serviceId_; - /** - * <code>.context.ServiceId service_id = 2;</code> - * @return Whether the serviceId field is set. - */ - @java.lang.Override - public boolean hasServiceId() { - return serviceId_ != null; - } - /** - * <code>.context.ServiceId service_id = 2;</code> - * @return The serviceId. - */ - @java.lang.Override - public context.ContextOuterClass.ServiceId getServiceId() { - return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; - } - /** - * <code>.context.ServiceId service_id = 2;</code> - */ - @java.lang.Override - public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() { - return getServiceId(); - } - - public static final int PATH_HOPS_ENDPOINT_IDS_FIELD_NUMBER = 3; - private java.util.List<context.ContextOuterClass.EndPointId> pathHopsEndpointIds_; - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - @java.lang.Override - public java.util.List<context.ContextOuterClass.EndPointId> getPathHopsEndpointIdsList() { - return pathHopsEndpointIds_; - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> - getPathHopsEndpointIdsOrBuilderList() { - return pathHopsEndpointIds_; - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - @java.lang.Override - public int getPathHopsEndpointIdsCount() { - return pathHopsEndpointIds_.size(); - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - @java.lang.Override - public context.ContextOuterClass.EndPointId getPathHopsEndpointIds(int index) { - return pathHopsEndpointIds_.get(index); - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - @java.lang.Override - public context.ContextOuterClass.EndPointIdOrBuilder getPathHopsEndpointIdsOrBuilder( - int index) { - return pathHopsEndpointIds_.get(index); + context.ContextOuterClass.ConnectionIdList.class, context.ContextOuterClass.ConnectionIdList.Builder.class); } - public static final int SUB_SERVICE_IDS_FIELD_NUMBER = 4; - private java.util.List<context.ContextOuterClass.ServiceId> subServiceIds_; + public static final int CONNECTION_IDS_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.ConnectionId> connectionIds_; /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ @java.lang.Override - public java.util.List<context.ContextOuterClass.ServiceId> getSubServiceIdsList() { - return subServiceIds_; + public java.util.List<context.ContextOuterClass.ConnectionId> getConnectionIdsList() { + return connectionIds_; } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> - getSubServiceIdsOrBuilderList() { - return subServiceIds_; + public java.util.List<? extends context.ContextOuterClass.ConnectionIdOrBuilder> + getConnectionIdsOrBuilderList() { + return connectionIds_; } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ @java.lang.Override - public int getSubServiceIdsCount() { - return subServiceIds_.size(); + public int getConnectionIdsCount() { + return connectionIds_.size(); } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.ServiceId getSubServiceIds(int index) { - return subServiceIds_.get(index); + public context.ContextOuterClass.ConnectionId getConnectionIds(int index) { + return connectionIds_.get(index); } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.ServiceIdOrBuilder getSubServiceIdsOrBuilder( + public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdsOrBuilder( int index) { - return subServiceIds_.get(index); - } - - public static final int SETTINGS_FIELD_NUMBER = 5; - private context.ContextOuterClass.ConnectionSettings settings_; - /** - * <code>.context.ConnectionSettings settings = 5;</code> - * @return Whether the settings field is set. - */ - @java.lang.Override - public boolean hasSettings() { - return settings_ != null; - } - /** - * <code>.context.ConnectionSettings settings = 5;</code> - * @return The settings. - */ - @java.lang.Override - public context.ContextOuterClass.ConnectionSettings getSettings() { - return settings_ == null ? context.ContextOuterClass.ConnectionSettings.getDefaultInstance() : settings_; - } - /** - * <code>.context.ConnectionSettings settings = 5;</code> - */ - @java.lang.Override - public context.ContextOuterClass.ConnectionSettingsOrBuilder getSettingsOrBuilder() { - return getSettings(); + return connectionIds_.get(index); } private byte memoizedIsInitialized = -1; @@ -46652,20 +51233,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (connectionId_ != null) { - output.writeMessage(1, getConnectionId()); - } - if (serviceId_ != null) { - output.writeMessage(2, getServiceId()); - } - for (int i = 0; i < pathHopsEndpointIds_.size(); i++) { - output.writeMessage(3, pathHopsEndpointIds_.get(i)); - } - for (int i = 0; i < subServiceIds_.size(); i++) { - output.writeMessage(4, subServiceIds_.get(i)); - } - if (settings_ != null) { - output.writeMessage(5, getSettings()); + for (int i = 0; i < connectionIds_.size(); i++) { + output.writeMessage(1, connectionIds_.get(i)); } unknownFields.writeTo(output); } @@ -46676,25 +51245,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (connectionId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getConnectionId()); - } - if (serviceId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, getServiceId()); - } - for (int i = 0; i < pathHopsEndpointIds_.size(); i++) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(3, pathHopsEndpointIds_.get(i)); - } - for (int i = 0; i < subServiceIds_.size(); i++) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(4, subServiceIds_.get(i)); - } - if (settings_ != null) { + for (int i = 0; i < connectionIds_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(5, getSettings()); + .computeMessageSize(1, connectionIds_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -46706,30 +51259,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.Connection)) { + if (!(obj instanceof context.ContextOuterClass.ConnectionIdList)) { return super.equals(obj); } - context.ContextOuterClass.Connection other = (context.ContextOuterClass.Connection) obj; + context.ContextOuterClass.ConnectionIdList other = (context.ContextOuterClass.ConnectionIdList) obj; - if (hasConnectionId() != other.hasConnectionId()) return false; - if (hasConnectionId()) { - if (!getConnectionId() - .equals(other.getConnectionId())) return false; - } - if (hasServiceId() != other.hasServiceId()) return false; - if (hasServiceId()) { - if (!getServiceId() - .equals(other.getServiceId())) return false; - } - if (!getPathHopsEndpointIdsList() - .equals(other.getPathHopsEndpointIdsList())) return false; - if (!getSubServiceIdsList() - .equals(other.getSubServiceIdsList())) return false; - if (hasSettings() != other.hasSettings()) return false; - if (hasSettings()) { - if (!getSettings() - .equals(other.getSettings())) return false; - } + if (!getConnectionIdsList() + .equals(other.getConnectionIdsList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -46741,94 +51277,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasConnectionId()) { - hash = (37 * hash) + CONNECTION_ID_FIELD_NUMBER; - hash = (53 * hash) + getConnectionId().hashCode(); - } - if (hasServiceId()) { - hash = (37 * hash) + SERVICE_ID_FIELD_NUMBER; - hash = (53 * hash) + getServiceId().hashCode(); - } - if (getPathHopsEndpointIdsCount() > 0) { - hash = (37 * hash) + PATH_HOPS_ENDPOINT_IDS_FIELD_NUMBER; - hash = (53 * hash) + getPathHopsEndpointIdsList().hashCode(); - } - if (getSubServiceIdsCount() > 0) { - hash = (37 * hash) + SUB_SERVICE_IDS_FIELD_NUMBER; - hash = (53 * hash) + getSubServiceIdsList().hashCode(); - } - if (hasSettings()) { - hash = (37 * hash) + SETTINGS_FIELD_NUMBER; - hash = (53 * hash) + getSettings().hashCode(); + if (getConnectionIdsCount() > 0) { + hash = (37 * hash) + CONNECTION_IDS_FIELD_NUMBER; + hash = (53 * hash) + getConnectionIdsList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.Connection parseFrom( + public static context.ContextOuterClass.ConnectionIdList parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Connection parseFrom( + public static context.ContextOuterClass.ConnectionIdList parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Connection parseFrom( + public static context.ContextOuterClass.ConnectionIdList parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Connection parseFrom( + public static context.ContextOuterClass.ConnectionIdList parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Connection parseFrom(byte[] data) + public static context.ContextOuterClass.ConnectionIdList parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Connection parseFrom( + public static context.ContextOuterClass.ConnectionIdList parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Connection parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionIdList parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Connection parseFrom( + public static context.ContextOuterClass.ConnectionIdList 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 context.ContextOuterClass.Connection parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionIdList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.Connection parseDelimitedFrom( + public static context.ContextOuterClass.ConnectionIdList 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 context.ContextOuterClass.Connection parseFrom( + public static context.ContextOuterClass.ConnectionIdList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Connection parseFrom( + public static context.ContextOuterClass.ConnectionIdList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -46841,7 +51361,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.Connection prototype) { + public static Builder newBuilder(context.ContextOuterClass.ConnectionIdList prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -46857,26 +51377,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.Connection} + * Protobuf type {@code context.ConnectionIdList} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Connection) - context.ContextOuterClass.ConnectionOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ConnectionIdList) + context.ContextOuterClass.ConnectionIdListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Connection_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionIdList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Connection_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionIdList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Connection.class, context.ContextOuterClass.Connection.Builder.class); + context.ContextOuterClass.ConnectionIdList.class, context.ContextOuterClass.ConnectionIdList.Builder.class); } - // Construct using context.ContextOuterClass.Connection.newBuilder() + // Construct using context.ContextOuterClass.ConnectionIdList.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -46889,42 +51409,17 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getPathHopsEndpointIdsFieldBuilder(); - getSubServiceIdsFieldBuilder(); + getConnectionIdsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (connectionIdBuilder_ == null) { - connectionId_ = null; - } else { - connectionId_ = null; - connectionIdBuilder_ = null; - } - if (serviceIdBuilder_ == null) { - serviceId_ = null; - } else { - serviceId_ = null; - serviceIdBuilder_ = null; - } - if (pathHopsEndpointIdsBuilder_ == null) { - pathHopsEndpointIds_ = java.util.Collections.emptyList(); + if (connectionIdsBuilder_ == null) { + connectionIds_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); } else { - pathHopsEndpointIdsBuilder_.clear(); - } - if (subServiceIdsBuilder_ == null) { - subServiceIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000002); - } else { - subServiceIdsBuilder_.clear(); - } - if (settingsBuilder_ == null) { - settings_ = null; - } else { - settings_ = null; - settingsBuilder_ = null; + connectionIdsBuilder_.clear(); } return this; } @@ -46932,17 +51427,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Connection_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionIdList_descriptor; } @java.lang.Override - public context.ContextOuterClass.Connection getDefaultInstanceForType() { - return context.ContextOuterClass.Connection.getDefaultInstance(); + public context.ContextOuterClass.ConnectionIdList getDefaultInstanceForType() { + return context.ContextOuterClass.ConnectionIdList.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.Connection build() { - context.ContextOuterClass.Connection result = buildPartial(); + public context.ContextOuterClass.ConnectionIdList build() { + context.ContextOuterClass.ConnectionIdList result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -46950,41 +51445,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.Connection buildPartial() { - context.ContextOuterClass.Connection result = new context.ContextOuterClass.Connection(this); + public context.ContextOuterClass.ConnectionIdList buildPartial() { + context.ContextOuterClass.ConnectionIdList result = new context.ContextOuterClass.ConnectionIdList(this); int from_bitField0_ = bitField0_; - if (connectionIdBuilder_ == null) { - result.connectionId_ = connectionId_; - } else { - result.connectionId_ = connectionIdBuilder_.build(); - } - if (serviceIdBuilder_ == null) { - result.serviceId_ = serviceId_; - } else { - result.serviceId_ = serviceIdBuilder_.build(); - } - if (pathHopsEndpointIdsBuilder_ == null) { + if (connectionIdsBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { - pathHopsEndpointIds_ = java.util.Collections.unmodifiableList(pathHopsEndpointIds_); + connectionIds_ = java.util.Collections.unmodifiableList(connectionIds_); bitField0_ = (bitField0_ & ~0x00000001); } - result.pathHopsEndpointIds_ = pathHopsEndpointIds_; - } else { - result.pathHopsEndpointIds_ = pathHopsEndpointIdsBuilder_.build(); - } - if (subServiceIdsBuilder_ == null) { - if (((bitField0_ & 0x00000002) != 0)) { - subServiceIds_ = java.util.Collections.unmodifiableList(subServiceIds_); - bitField0_ = (bitField0_ & ~0x00000002); - } - result.subServiceIds_ = subServiceIds_; - } else { - result.subServiceIds_ = subServiceIdsBuilder_.build(); - } - if (settingsBuilder_ == null) { - result.settings_ = settings_; + result.connectionIds_ = connectionIds_; } else { - result.settings_ = settingsBuilder_.build(); + result.connectionIds_ = connectionIdsBuilder_.build(); } onBuilt(); return result; @@ -47021,80 +51492,45 @@ public final class ContextOuterClass { 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 context.ContextOuterClass.Connection) { - return mergeFrom((context.ContextOuterClass.Connection)other); - } else { - super.mergeFrom(other); - return this; - } - } - - public Builder mergeFrom(context.ContextOuterClass.Connection other) { - if (other == context.ContextOuterClass.Connection.getDefaultInstance()) return this; - if (other.hasConnectionId()) { - mergeConnectionId(other.getConnectionId()); - } - if (other.hasServiceId()) { - mergeServiceId(other.getServiceId()); - } - if (pathHopsEndpointIdsBuilder_ == null) { - if (!other.pathHopsEndpointIds_.isEmpty()) { - if (pathHopsEndpointIds_.isEmpty()) { - pathHopsEndpointIds_ = other.pathHopsEndpointIds_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensurePathHopsEndpointIdsIsMutable(); - pathHopsEndpointIds_.addAll(other.pathHopsEndpointIds_); - } - onChanged(); - } - } else { - if (!other.pathHopsEndpointIds_.isEmpty()) { - if (pathHopsEndpointIdsBuilder_.isEmpty()) { - pathHopsEndpointIdsBuilder_.dispose(); - pathHopsEndpointIdsBuilder_ = null; - pathHopsEndpointIds_ = other.pathHopsEndpointIds_; - bitField0_ = (bitField0_ & ~0x00000001); - pathHopsEndpointIdsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getPathHopsEndpointIdsFieldBuilder() : null; - } else { - pathHopsEndpointIdsBuilder_.addAllMessages(other.pathHopsEndpointIds_); - } - } + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof context.ContextOuterClass.ConnectionIdList) { + return mergeFrom((context.ContextOuterClass.ConnectionIdList)other); + } else { + super.mergeFrom(other); + return this; } - if (subServiceIdsBuilder_ == null) { - if (!other.subServiceIds_.isEmpty()) { - if (subServiceIds_.isEmpty()) { - subServiceIds_ = other.subServiceIds_; - bitField0_ = (bitField0_ & ~0x00000002); + } + + public Builder mergeFrom(context.ContextOuterClass.ConnectionIdList other) { + if (other == context.ContextOuterClass.ConnectionIdList.getDefaultInstance()) return this; + if (connectionIdsBuilder_ == null) { + if (!other.connectionIds_.isEmpty()) { + if (connectionIds_.isEmpty()) { + connectionIds_ = other.connectionIds_; + bitField0_ = (bitField0_ & ~0x00000001); } else { - ensureSubServiceIdsIsMutable(); - subServiceIds_.addAll(other.subServiceIds_); + ensureConnectionIdsIsMutable(); + connectionIds_.addAll(other.connectionIds_); } onChanged(); } } else { - if (!other.subServiceIds_.isEmpty()) { - if (subServiceIdsBuilder_.isEmpty()) { - subServiceIdsBuilder_.dispose(); - subServiceIdsBuilder_ = null; - subServiceIds_ = other.subServiceIds_; - bitField0_ = (bitField0_ & ~0x00000002); - subServiceIdsBuilder_ = + if (!other.connectionIds_.isEmpty()) { + if (connectionIdsBuilder_.isEmpty()) { + connectionIdsBuilder_.dispose(); + connectionIdsBuilder_ = null; + connectionIds_ = other.connectionIds_; + bitField0_ = (bitField0_ & ~0x00000001); + connectionIdsBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getSubServiceIdsFieldBuilder() : null; + getConnectionIdsFieldBuilder() : null; } else { - subServiceIdsBuilder_.addAllMessages(other.subServiceIds_); + connectionIdsBuilder_.addAllMessages(other.connectionIds_); } } } - if (other.hasSettings()) { - mergeSettings(other.getSettings()); - } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; @@ -47110,11 +51546,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.Connection parsedMessage = null; + context.ContextOuterClass.ConnectionIdList parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Connection) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ConnectionIdList) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -47125,841 +51561,1037 @@ public final class ContextOuterClass { } private int bitField0_; - private context.ContextOuterClass.ConnectionId connectionId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> connectionIdBuilder_; + private java.util.List<context.ContextOuterClass.ConnectionId> connectionIds_ = + java.util.Collections.emptyList(); + private void ensureConnectionIdsIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + connectionIds_ = new java.util.ArrayList<context.ContextOuterClass.ConnectionId>(connectionIds_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> connectionIdsBuilder_; + /** - * <code>.context.ConnectionId connection_id = 1;</code> - * @return Whether the connectionId field is set. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - public boolean hasConnectionId() { - return connectionIdBuilder_ != null || connectionId_ != null; + public java.util.List<context.ContextOuterClass.ConnectionId> getConnectionIdsList() { + if (connectionIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(connectionIds_); + } else { + return connectionIdsBuilder_.getMessageList(); + } } /** - * <code>.context.ConnectionId connection_id = 1;</code> - * @return The connectionId. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - public context.ContextOuterClass.ConnectionId getConnectionId() { - if (connectionIdBuilder_ == null) { - return connectionId_ == null ? context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; + public int getConnectionIdsCount() { + if (connectionIdsBuilder_ == null) { + return connectionIds_.size(); } else { - return connectionIdBuilder_.getMessage(); + return connectionIdsBuilder_.getCount(); } } /** - * <code>.context.ConnectionId connection_id = 1;</code> + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - public Builder setConnectionId(context.ContextOuterClass.ConnectionId value) { - if (connectionIdBuilder_ == null) { + public context.ContextOuterClass.ConnectionId getConnectionIds(int index) { + if (connectionIdsBuilder_ == null) { + return connectionIds_.get(index); + } else { + return connectionIdsBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.ConnectionId connection_ids = 1;</code> + */ + public Builder setConnectionIds( + int index, context.ContextOuterClass.ConnectionId value) { + if (connectionIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - connectionId_ = value; + ensureConnectionIdsIsMutable(); + connectionIds_.set(index, value); onChanged(); } else { - connectionIdBuilder_.setMessage(value); + connectionIdsBuilder_.setMessage(index, value); } - return this; } /** - * <code>.context.ConnectionId connection_id = 1;</code> + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - public Builder setConnectionId( - context.ContextOuterClass.ConnectionId.Builder builderForValue) { - if (connectionIdBuilder_ == null) { - connectionId_ = builderForValue.build(); + public Builder setConnectionIds( + int index, context.ContextOuterClass.ConnectionId.Builder builderForValue) { + if (connectionIdsBuilder_ == null) { + ensureConnectionIdsIsMutable(); + connectionIds_.set(index, builderForValue.build()); onChanged(); } else { - connectionIdBuilder_.setMessage(builderForValue.build()); + connectionIdsBuilder_.setMessage(index, builderForValue.build()); } - return this; } /** - * <code>.context.ConnectionId connection_id = 1;</code> + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - public Builder mergeConnectionId(context.ContextOuterClass.ConnectionId value) { - if (connectionIdBuilder_ == null) { - if (connectionId_ != null) { - connectionId_ = - context.ContextOuterClass.ConnectionId.newBuilder(connectionId_).mergeFrom(value).buildPartial(); - } else { - connectionId_ = value; + public Builder addConnectionIds(context.ContextOuterClass.ConnectionId value) { + if (connectionIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + ensureConnectionIdsIsMutable(); + connectionIds_.add(value); onChanged(); } else { - connectionIdBuilder_.mergeFrom(value); + connectionIdsBuilder_.addMessage(value); } - return this; } /** - * <code>.context.ConnectionId connection_id = 1;</code> + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - public Builder clearConnectionId() { - if (connectionIdBuilder_ == null) { - connectionId_ = null; + public Builder addConnectionIds( + int index, context.ContextOuterClass.ConnectionId value) { + if (connectionIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConnectionIdsIsMutable(); + connectionIds_.add(index, value); onChanged(); } else { - connectionId_ = null; - connectionIdBuilder_ = null; + connectionIdsBuilder_.addMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.ConnectionId connection_ids = 1;</code> + */ + public Builder addConnectionIds( + context.ContextOuterClass.ConnectionId.Builder builderForValue) { + if (connectionIdsBuilder_ == null) { + ensureConnectionIdsIsMutable(); + connectionIds_.add(builderForValue.build()); + onChanged(); + } else { + connectionIdsBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.ConnectionId connection_ids = 1;</code> + */ + public Builder addConnectionIds( + int index, context.ContextOuterClass.ConnectionId.Builder builderForValue) { + if (connectionIdsBuilder_ == null) { + ensureConnectionIdsIsMutable(); + connectionIds_.add(index, builderForValue.build()); + onChanged(); + } else { + connectionIdsBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.ConnectionId connection_ids = 1;</code> + */ + public Builder addAllConnectionIds( + java.lang.Iterable<? extends context.ContextOuterClass.ConnectionId> values) { + if (connectionIdsBuilder_ == null) { + ensureConnectionIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, connectionIds_); + onChanged(); + } else { + connectionIdsBuilder_.addAllMessages(values); + } + return this; + } + /** + * <code>repeated .context.ConnectionId connection_ids = 1;</code> + */ + public Builder clearConnectionIds() { + if (connectionIdsBuilder_ == null) { + connectionIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + connectionIdsBuilder_.clear(); + } + return this; + } + /** + * <code>repeated .context.ConnectionId connection_ids = 1;</code> + */ + public Builder removeConnectionIds(int index) { + if (connectionIdsBuilder_ == null) { + ensureConnectionIdsIsMutable(); + connectionIds_.remove(index); + onChanged(); + } else { + connectionIdsBuilder_.remove(index); + } + return this; + } + /** + * <code>repeated .context.ConnectionId connection_ids = 1;</code> + */ + public context.ContextOuterClass.ConnectionId.Builder getConnectionIdsBuilder( + int index) { + return getConnectionIdsFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .context.ConnectionId connection_ids = 1;</code> + */ + public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdsOrBuilder( + int index) { + if (connectionIdsBuilder_ == null) { + return connectionIds_.get(index); } else { + return connectionIdsBuilder_.getMessageOrBuilder(index); + } + } + /** + * <code>repeated .context.ConnectionId connection_ids = 1;</code> + */ + public java.util.List<? extends context.ContextOuterClass.ConnectionIdOrBuilder> + getConnectionIdsOrBuilderList() { + if (connectionIdsBuilder_ != null) { + return connectionIdsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(connectionIds_); + } + } + /** + * <code>repeated .context.ConnectionId connection_ids = 1;</code> + */ + public context.ContextOuterClass.ConnectionId.Builder addConnectionIdsBuilder() { + return getConnectionIdsFieldBuilder().addBuilder( + context.ContextOuterClass.ConnectionId.getDefaultInstance()); + } + /** + * <code>repeated .context.ConnectionId connection_ids = 1;</code> + */ + public context.ContextOuterClass.ConnectionId.Builder addConnectionIdsBuilder( + int index) { + return getConnectionIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.ConnectionId.getDefaultInstance()); + } + /** + * <code>repeated .context.ConnectionId connection_ids = 1;</code> + */ + public java.util.List<context.ContextOuterClass.ConnectionId.Builder> + getConnectionIdsBuilderList() { + return getConnectionIdsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> + getConnectionIdsFieldBuilder() { + if (connectionIdsBuilder_ == null) { + connectionIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder>( + connectionIds_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + connectionIds_ = null; + } + return connectionIdsBuilder_; + } + @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:context.ConnectionIdList) + } + + // @@protoc_insertion_point(class_scope:context.ConnectionIdList) + private static final context.ContextOuterClass.ConnectionIdList DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionIdList(); + } + + public static context.ContextOuterClass.ConnectionIdList getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<ConnectionIdList> + PARSER = new com.google.protobuf.AbstractParser<ConnectionIdList>() { + @java.lang.Override + public ConnectionIdList parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new ConnectionIdList(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<ConnectionIdList> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<ConnectionIdList> getParserForType() { + return PARSER; + } + + @java.lang.Override + public context.ContextOuterClass.ConnectionIdList getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface ConnectionListOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ConnectionList) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>repeated .context.Connection connections = 1;</code> + */ + java.util.List<context.ContextOuterClass.Connection> + getConnectionsList(); + /** + * <code>repeated .context.Connection connections = 1;</code> + */ + context.ContextOuterClass.Connection getConnections(int index); + /** + * <code>repeated .context.Connection connections = 1;</code> + */ + int getConnectionsCount(); + /** + * <code>repeated .context.Connection connections = 1;</code> + */ + java.util.List<? extends context.ContextOuterClass.ConnectionOrBuilder> + getConnectionsOrBuilderList(); + /** + * <code>repeated .context.Connection connections = 1;</code> + */ + context.ContextOuterClass.ConnectionOrBuilder getConnectionsOrBuilder( + int index); + } + /** + * Protobuf type {@code context.ConnectionList} + */ + public static final class ConnectionList extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:context.ConnectionList) + ConnectionListOrBuilder { + private static final long serialVersionUID = 0L; + // Use ConnectionList.newBuilder() to construct. + private ConnectionList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private ConnectionList() { + connections_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new ConnectionList(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private ConnectionList( + 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)) { + connections_ = new java.util.ArrayList<context.ContextOuterClass.Connection>(); + mutable_bitField0_ |= 0x00000001; + } + connections_.add( + input.readMessage(context.ContextOuterClass.Connection.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)) { + connections_ = java.util.Collections.unmodifiableList(connections_); } + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_ConnectionList_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_ConnectionList_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.ConnectionList.class, context.ContextOuterClass.ConnectionList.Builder.class); + } + + public static final int CONNECTIONS_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.Connection> connections_; + /** + * <code>repeated .context.Connection connections = 1;</code> + */ + @java.lang.Override + public java.util.List<context.ContextOuterClass.Connection> getConnectionsList() { + return connections_; + } + /** + * <code>repeated .context.Connection connections = 1;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.ConnectionOrBuilder> + getConnectionsOrBuilderList() { + return connections_; + } + /** + * <code>repeated .context.Connection connections = 1;</code> + */ + @java.lang.Override + public int getConnectionsCount() { + return connections_.size(); + } + /** + * <code>repeated .context.Connection connections = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.Connection getConnections(int index) { + return connections_.get(index); + } + /** + * <code>repeated .context.Connection connections = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ConnectionOrBuilder getConnectionsOrBuilder( + int index) { + return connections_.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; - return this; + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + for (int i = 0; i < connections_.size(); i++) { + output.writeMessage(1, connections_.get(i)); } - /** - * <code>.context.ConnectionId connection_id = 1;</code> - */ - public context.ContextOuterClass.ConnectionId.Builder getConnectionIdBuilder() { - - onChanged(); - return getConnectionIdFieldBuilder().getBuilder(); + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + for (int i = 0; i < connections_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, connections_.get(i)); } - /** - * <code>.context.ConnectionId connection_id = 1;</code> - */ - public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder() { - if (connectionIdBuilder_ != null) { - return connectionIdBuilder_.getMessageOrBuilder(); - } else { - return connectionId_ == null ? - context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; - } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; } - /** - * <code>.context.ConnectionId connection_id = 1;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> - getConnectionIdFieldBuilder() { - if (connectionIdBuilder_ == null) { - connectionIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder>( - getConnectionId(), - getParentForChildren(), - isClean()); - connectionId_ = null; - } - return connectionIdBuilder_; + if (!(obj instanceof context.ContextOuterClass.ConnectionList)) { + return super.equals(obj); } + context.ContextOuterClass.ConnectionList other = (context.ContextOuterClass.ConnectionList) obj; - private context.ContextOuterClass.ServiceId serviceId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> serviceIdBuilder_; - /** - * <code>.context.ServiceId service_id = 2;</code> - * @return Whether the serviceId field is set. - */ - public boolean hasServiceId() { - return serviceIdBuilder_ != null || serviceId_ != null; + if (!getConnectionsList() + .equals(other.getConnectionsList())) return false; + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; } - /** - * <code>.context.ServiceId service_id = 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(); - } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (getConnectionsCount() > 0) { + hash = (37 * hash) + CONNECTIONS_FIELD_NUMBER; + hash = (53 * hash) + getConnectionsList().hashCode(); } - /** - * <code>.context.ServiceId service_id = 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); - } + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } - return this; - } - /** - * <code>.context.ServiceId service_id = 2;</code> - */ - public Builder setServiceId( - context.ContextOuterClass.ServiceId.Builder builderForValue) { - if (serviceIdBuilder_ == null) { - serviceId_ = builderForValue.build(); - onChanged(); - } else { - serviceIdBuilder_.setMessage(builderForValue.build()); - } + public static context.ContextOuterClass.ConnectionList parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.ConnectionList parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.ConnectionList parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.ConnectionList parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.ConnectionList parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.ConnectionList parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.ConnectionList parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.ConnectionList 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 context.ContextOuterClass.ConnectionList parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static context.ContextOuterClass.ConnectionList 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 context.ContextOuterClass.ConnectionList parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.ConnectionList parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } - return this; - } - /** - * <code>.context.ServiceId service_id = 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); - } + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(context.ContextOuterClass.ConnectionList prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } - return this; + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code context.ConnectionList} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:context.ConnectionList) + context.ContextOuterClass.ConnectionListOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_ConnectionList_descriptor; } - /** - * <code>.context.ServiceId service_id = 2;</code> - */ - public Builder clearServiceId() { - if (serviceIdBuilder_ == null) { - serviceId_ = null; - onChanged(); - } else { - serviceId_ = null; - serviceIdBuilder_ = null; - } - return this; - } - /** - * <code>.context.ServiceId service_id = 2;</code> - */ - public context.ContextOuterClass.ServiceId.Builder getServiceIdBuilder() { - - onChanged(); - return getServiceIdFieldBuilder().getBuilder(); - } - /** - * <code>.context.ServiceId service_id = 2;</code> - */ - public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() { - if (serviceIdBuilder_ != null) { - return serviceIdBuilder_.getMessageOrBuilder(); - } else { - return serviceId_ == null ? - context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; - } - } - /** - * <code>.context.ServiceId service_id = 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_; + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_ConnectionList_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.ConnectionList.class, context.ContextOuterClass.ConnectionList.Builder.class); } - private java.util.List<context.ContextOuterClass.EndPointId> pathHopsEndpointIds_ = - java.util.Collections.emptyList(); - private void ensurePathHopsEndpointIdsIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - pathHopsEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(pathHopsEndpointIds_); - bitField0_ |= 0x00000001; - } + // Construct using context.ContextOuterClass.ConnectionList.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> pathHopsEndpointIdsBuilder_; - - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public java.util.List<context.ContextOuterClass.EndPointId> getPathHopsEndpointIdsList() { - if (pathHopsEndpointIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(pathHopsEndpointIds_); - } else { - return pathHopsEndpointIdsBuilder_.getMessageList(); - } - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public int getPathHopsEndpointIdsCount() { - if (pathHopsEndpointIdsBuilder_ == null) { - return pathHopsEndpointIds_.size(); - } else { - return pathHopsEndpointIdsBuilder_.getCount(); - } - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public context.ContextOuterClass.EndPointId getPathHopsEndpointIds(int index) { - if (pathHopsEndpointIdsBuilder_ == null) { - return pathHopsEndpointIds_.get(index); - } else { - return pathHopsEndpointIdsBuilder_.getMessage(index); - } + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public Builder setPathHopsEndpointIds( - int index, context.ContextOuterClass.EndPointId value) { - if (pathHopsEndpointIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensurePathHopsEndpointIdsIsMutable(); - pathHopsEndpointIds_.set(index, value); - onChanged(); - } else { - pathHopsEndpointIdsBuilder_.setMessage(index, value); + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getConnectionsFieldBuilder(); } - return this; } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public Builder setPathHopsEndpointIds( - int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (pathHopsEndpointIdsBuilder_ == null) { - ensurePathHopsEndpointIdsIsMutable(); - pathHopsEndpointIds_.set(index, builderForValue.build()); - onChanged(); + @java.lang.Override + public Builder clear() { + super.clear(); + if (connectionsBuilder_ == null) { + connections_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); } else { - pathHopsEndpointIdsBuilder_.setMessage(index, builderForValue.build()); + connectionsBuilder_.clear(); } return this; } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public Builder addPathHopsEndpointIds(context.ContextOuterClass.EndPointId value) { - if (pathHopsEndpointIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensurePathHopsEndpointIdsIsMutable(); - pathHopsEndpointIds_.add(value); - onChanged(); - } else { - pathHopsEndpointIdsBuilder_.addMessage(value); - } - return this; + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return context.ContextOuterClass.internal_static_context_ConnectionList_descriptor; } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public Builder addPathHopsEndpointIds( - int index, context.ContextOuterClass.EndPointId value) { - if (pathHopsEndpointIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensurePathHopsEndpointIdsIsMutable(); - pathHopsEndpointIds_.add(index, value); - onChanged(); - } else { - pathHopsEndpointIdsBuilder_.addMessage(index, value); - } - return this; + + @java.lang.Override + public context.ContextOuterClass.ConnectionList getDefaultInstanceForType() { + return context.ContextOuterClass.ConnectionList.getDefaultInstance(); } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public Builder addPathHopsEndpointIds( - context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (pathHopsEndpointIdsBuilder_ == null) { - ensurePathHopsEndpointIdsIsMutable(); - pathHopsEndpointIds_.add(builderForValue.build()); - onChanged(); - } else { - pathHopsEndpointIdsBuilder_.addMessage(builderForValue.build()); + + @java.lang.Override + public context.ContextOuterClass.ConnectionList build() { + context.ContextOuterClass.ConnectionList result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); } - return this; + return result; } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public Builder addPathHopsEndpointIds( - int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (pathHopsEndpointIdsBuilder_ == null) { - ensurePathHopsEndpointIdsIsMutable(); - pathHopsEndpointIds_.add(index, builderForValue.build()); - onChanged(); + + @java.lang.Override + public context.ContextOuterClass.ConnectionList buildPartial() { + context.ContextOuterClass.ConnectionList result = new context.ContextOuterClass.ConnectionList(this); + int from_bitField0_ = bitField0_; + if (connectionsBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + connections_ = java.util.Collections.unmodifiableList(connections_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.connections_ = connections_; } else { - pathHopsEndpointIdsBuilder_.addMessage(index, builderForValue.build()); + result.connections_ = connectionsBuilder_.build(); } - return this; + onBuilt(); + return result; } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public Builder addAllPathHopsEndpointIds( - java.lang.Iterable<? extends context.ContextOuterClass.EndPointId> values) { - if (pathHopsEndpointIdsBuilder_ == null) { - ensurePathHopsEndpointIdsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, pathHopsEndpointIds_); - onChanged(); - } else { - pathHopsEndpointIdsBuilder_.addAllMessages(values); - } - return this; + + @java.lang.Override + public Builder clone() { + return super.clone(); } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public Builder clearPathHopsEndpointIds() { - if (pathHopsEndpointIdsBuilder_ == null) { - pathHopsEndpointIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - } else { - pathHopsEndpointIdsBuilder_.clear(); - } - return this; + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public Builder removePathHopsEndpointIds(int index) { - if (pathHopsEndpointIdsBuilder_ == null) { - ensurePathHopsEndpointIdsIsMutable(); - pathHopsEndpointIds_.remove(index); - onChanged(); - } else { - pathHopsEndpointIdsBuilder_.remove(index); - } - return this; + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public context.ContextOuterClass.EndPointId.Builder getPathHopsEndpointIdsBuilder( - int index) { - return getPathHopsEndpointIdsFieldBuilder().getBuilder(index); + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public context.ContextOuterClass.EndPointIdOrBuilder getPathHopsEndpointIdsOrBuilder( - int index) { - if (pathHopsEndpointIdsBuilder_ == null) { - return pathHopsEndpointIds_.get(index); } else { - return pathHopsEndpointIdsBuilder_.getMessageOrBuilder(index); - } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> - getPathHopsEndpointIdsOrBuilderList() { - if (pathHopsEndpointIdsBuilder_ != null) { - return pathHopsEndpointIdsBuilder_.getMessageOrBuilderList(); + @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 context.ContextOuterClass.ConnectionList) { + return mergeFrom((context.ContextOuterClass.ConnectionList)other); } else { - return java.util.Collections.unmodifiableList(pathHopsEndpointIds_); + super.mergeFrom(other); + return this; } } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public context.ContextOuterClass.EndPointId.Builder addPathHopsEndpointIdsBuilder() { - return getPathHopsEndpointIdsFieldBuilder().addBuilder( - context.ContextOuterClass.EndPointId.getDefaultInstance()); - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public context.ContextOuterClass.EndPointId.Builder addPathHopsEndpointIdsBuilder( - int index) { - return getPathHopsEndpointIdsFieldBuilder().addBuilder( - index, context.ContextOuterClass.EndPointId.getDefaultInstance()); + + public Builder mergeFrom(context.ContextOuterClass.ConnectionList other) { + if (other == context.ContextOuterClass.ConnectionList.getDefaultInstance()) return this; + if (connectionsBuilder_ == null) { + if (!other.connections_.isEmpty()) { + if (connections_.isEmpty()) { + connections_ = other.connections_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureConnectionsIsMutable(); + connections_.addAll(other.connections_); + } + onChanged(); + } + } else { + if (!other.connections_.isEmpty()) { + if (connectionsBuilder_.isEmpty()) { + connectionsBuilder_.dispose(); + connectionsBuilder_ = null; + connections_ = other.connections_; + bitField0_ = (bitField0_ & ~0x00000001); + connectionsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getConnectionsFieldBuilder() : null; + } else { + connectionsBuilder_.addAllMessages(other.connections_); + } + } + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public java.util.List<context.ContextOuterClass.EndPointId.Builder> - getPathHopsEndpointIdsBuilderList() { - return getPathHopsEndpointIdsFieldBuilder().getBuilderList(); + + @java.lang.Override + public final boolean isInitialized() { + return true; } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> - getPathHopsEndpointIdsFieldBuilder() { - if (pathHopsEndpointIdsBuilder_ == null) { - pathHopsEndpointIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( - pathHopsEndpointIds_, - ((bitField0_ & 0x00000001) != 0), - getParentForChildren(), - isClean()); - pathHopsEndpointIds_ = null; + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + context.ContextOuterClass.ConnectionList parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.ConnectionList) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } } - return pathHopsEndpointIdsBuilder_; + return this; } + private int bitField0_; - private java.util.List<context.ContextOuterClass.ServiceId> subServiceIds_ = + private java.util.List<context.ContextOuterClass.Connection> connections_ = java.util.Collections.emptyList(); - private void ensureSubServiceIdsIsMutable() { - if (!((bitField0_ & 0x00000002) != 0)) { - subServiceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(subServiceIds_); - bitField0_ |= 0x00000002; + private void ensureConnectionsIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + connections_ = new java.util.ArrayList<context.ContextOuterClass.Connection>(connections_); + bitField0_ |= 0x00000001; } } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> subServiceIdsBuilder_; + context.ContextOuterClass.Connection, context.ContextOuterClass.Connection.Builder, context.ContextOuterClass.ConnectionOrBuilder> connectionsBuilder_; /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.Connection connections = 1;</code> */ - public java.util.List<context.ContextOuterClass.ServiceId> getSubServiceIdsList() { - if (subServiceIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(subServiceIds_); + public java.util.List<context.ContextOuterClass.Connection> getConnectionsList() { + if (connectionsBuilder_ == null) { + return java.util.Collections.unmodifiableList(connections_); } else { - return subServiceIdsBuilder_.getMessageList(); + return connectionsBuilder_.getMessageList(); } } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.Connection connections = 1;</code> */ - public int getSubServiceIdsCount() { - if (subServiceIdsBuilder_ == null) { - return subServiceIds_.size(); + public int getConnectionsCount() { + if (connectionsBuilder_ == null) { + return connections_.size(); } else { - return subServiceIdsBuilder_.getCount(); + return connectionsBuilder_.getCount(); } } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.Connection connections = 1;</code> */ - public context.ContextOuterClass.ServiceId getSubServiceIds(int index) { - if (subServiceIdsBuilder_ == null) { - return subServiceIds_.get(index); + public context.ContextOuterClass.Connection getConnections(int index) { + if (connectionsBuilder_ == null) { + return connections_.get(index); } else { - return subServiceIdsBuilder_.getMessage(index); + return connectionsBuilder_.getMessage(index); } } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.Connection connections = 1;</code> */ - public Builder setSubServiceIds( - int index, context.ContextOuterClass.ServiceId value) { - if (subServiceIdsBuilder_ == null) { + public Builder setConnections( + int index, context.ContextOuterClass.Connection value) { + if (connectionsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureSubServiceIdsIsMutable(); - subServiceIds_.set(index, value); + ensureConnectionsIsMutable(); + connections_.set(index, value); onChanged(); } else { - subServiceIdsBuilder_.setMessage(index, value); + connectionsBuilder_.setMessage(index, value); } return this; } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.Connection connections = 1;</code> */ - public Builder setSubServiceIds( - int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { - if (subServiceIdsBuilder_ == null) { - ensureSubServiceIdsIsMutable(); - subServiceIds_.set(index, builderForValue.build()); + public Builder setConnections( + int index, context.ContextOuterClass.Connection.Builder builderForValue) { + if (connectionsBuilder_ == null) { + ensureConnectionsIsMutable(); + connections_.set(index, builderForValue.build()); onChanged(); } else { - subServiceIdsBuilder_.setMessage(index, builderForValue.build()); + connectionsBuilder_.setMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.Connection connections = 1;</code> */ - public Builder addSubServiceIds(context.ContextOuterClass.ServiceId value) { - if (subServiceIdsBuilder_ == null) { + public Builder addConnections(context.ContextOuterClass.Connection value) { + if (connectionsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureSubServiceIdsIsMutable(); - subServiceIds_.add(value); + ensureConnectionsIsMutable(); + connections_.add(value); onChanged(); } else { - subServiceIdsBuilder_.addMessage(value); + connectionsBuilder_.addMessage(value); } return this; } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.Connection connections = 1;</code> */ - public Builder addSubServiceIds( - int index, context.ContextOuterClass.ServiceId value) { - if (subServiceIdsBuilder_ == null) { + public Builder addConnections( + int index, context.ContextOuterClass.Connection value) { + if (connectionsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureSubServiceIdsIsMutable(); - subServiceIds_.add(index, value); + ensureConnectionsIsMutable(); + connections_.add(index, value); onChanged(); } else { - subServiceIdsBuilder_.addMessage(index, value); + connectionsBuilder_.addMessage(index, value); } return this; } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.Connection connections = 1;</code> */ - public Builder addSubServiceIds( - context.ContextOuterClass.ServiceId.Builder builderForValue) { - if (subServiceIdsBuilder_ == null) { - ensureSubServiceIdsIsMutable(); - subServiceIds_.add(builderForValue.build()); + public Builder addConnections( + context.ContextOuterClass.Connection.Builder builderForValue) { + if (connectionsBuilder_ == null) { + ensureConnectionsIsMutable(); + connections_.add(builderForValue.build()); onChanged(); } else { - subServiceIdsBuilder_.addMessage(builderForValue.build()); + connectionsBuilder_.addMessage(builderForValue.build()); } return this; } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.Connection connections = 1;</code> */ - public Builder addSubServiceIds( - int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { - if (subServiceIdsBuilder_ == null) { - ensureSubServiceIdsIsMutable(); - subServiceIds_.add(index, builderForValue.build()); + public Builder addConnections( + int index, context.ContextOuterClass.Connection.Builder builderForValue) { + if (connectionsBuilder_ == null) { + ensureConnectionsIsMutable(); + connections_.add(index, builderForValue.build()); onChanged(); } else { - subServiceIdsBuilder_.addMessage(index, builderForValue.build()); + connectionsBuilder_.addMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.Connection connections = 1;</code> */ - public Builder addAllSubServiceIds( - java.lang.Iterable<? extends context.ContextOuterClass.ServiceId> values) { - if (subServiceIdsBuilder_ == null) { - ensureSubServiceIdsIsMutable(); + public Builder addAllConnections( + java.lang.Iterable<? extends context.ContextOuterClass.Connection> values) { + if (connectionsBuilder_ == null) { + ensureConnectionsIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, subServiceIds_); + values, connections_); onChanged(); } else { - subServiceIdsBuilder_.addAllMessages(values); + connectionsBuilder_.addAllMessages(values); } return this; } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.Connection connections = 1;</code> */ - public Builder clearSubServiceIds() { - if (subServiceIdsBuilder_ == null) { - subServiceIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000002); + public Builder clearConnections() { + if (connectionsBuilder_ == null) { + connections_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { - subServiceIdsBuilder_.clear(); + connectionsBuilder_.clear(); } return this; } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.Connection connections = 1;</code> */ - public Builder removeSubServiceIds(int index) { - if (subServiceIdsBuilder_ == null) { - ensureSubServiceIdsIsMutable(); - subServiceIds_.remove(index); + public Builder removeConnections(int index) { + if (connectionsBuilder_ == null) { + ensureConnectionsIsMutable(); + connections_.remove(index); onChanged(); } else { - subServiceIdsBuilder_.remove(index); + connectionsBuilder_.remove(index); } return this; } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.Connection connections = 1;</code> */ - public context.ContextOuterClass.ServiceId.Builder getSubServiceIdsBuilder( + public context.ContextOuterClass.Connection.Builder getConnectionsBuilder( int index) { - return getSubServiceIdsFieldBuilder().getBuilder(index); + return getConnectionsFieldBuilder().getBuilder(index); } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.Connection connections = 1;</code> */ - public context.ContextOuterClass.ServiceIdOrBuilder getSubServiceIdsOrBuilder( + public context.ContextOuterClass.ConnectionOrBuilder getConnectionsOrBuilder( int index) { - if (subServiceIdsBuilder_ == null) { - return subServiceIds_.get(index); } else { - return subServiceIdsBuilder_.getMessageOrBuilder(index); + if (connectionsBuilder_ == null) { + return connections_.get(index); } else { + return connectionsBuilder_.getMessageOrBuilder(index); } } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.Connection connections = 1;</code> */ - public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> - getSubServiceIdsOrBuilderList() { - if (subServiceIdsBuilder_ != null) { - return subServiceIdsBuilder_.getMessageOrBuilderList(); + public java.util.List<? extends context.ContextOuterClass.ConnectionOrBuilder> + getConnectionsOrBuilderList() { + if (connectionsBuilder_ != null) { + return connectionsBuilder_.getMessageOrBuilderList(); } else { - return java.util.Collections.unmodifiableList(subServiceIds_); + return java.util.Collections.unmodifiableList(connections_); } } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.Connection connections = 1;</code> */ - public context.ContextOuterClass.ServiceId.Builder addSubServiceIdsBuilder() { - return getSubServiceIdsFieldBuilder().addBuilder( - context.ContextOuterClass.ServiceId.getDefaultInstance()); + public context.ContextOuterClass.Connection.Builder addConnectionsBuilder() { + return getConnectionsFieldBuilder().addBuilder( + context.ContextOuterClass.Connection.getDefaultInstance()); } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.Connection connections = 1;</code> */ - public context.ContextOuterClass.ServiceId.Builder addSubServiceIdsBuilder( + public context.ContextOuterClass.Connection.Builder addConnectionsBuilder( int index) { - return getSubServiceIdsFieldBuilder().addBuilder( - index, context.ContextOuterClass.ServiceId.getDefaultInstance()); + return getConnectionsFieldBuilder().addBuilder( + index, context.ContextOuterClass.Connection.getDefaultInstance()); } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .context.Connection connections = 1;</code> */ - public java.util.List<context.ContextOuterClass.ServiceId.Builder> - getSubServiceIdsBuilderList() { - return getSubServiceIdsFieldBuilder().getBuilderList(); + public java.util.List<context.ContextOuterClass.Connection.Builder> + getConnectionsBuilderList() { + return getConnectionsFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> - getSubServiceIdsFieldBuilder() { - if (subServiceIdsBuilder_ == null) { - subServiceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder>( - subServiceIds_, - ((bitField0_ & 0x00000002) != 0), - getParentForChildren(), - isClean()); - subServiceIds_ = null; - } - return subServiceIdsBuilder_; - } - - private context.ContextOuterClass.ConnectionSettings settings_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings, context.ContextOuterClass.ConnectionSettings.Builder, context.ContextOuterClass.ConnectionSettingsOrBuilder> settingsBuilder_; - /** - * <code>.context.ConnectionSettings settings = 5;</code> - * @return Whether the settings field is set. - */ - public boolean hasSettings() { - return settingsBuilder_ != null || settings_ != null; - } - /** - * <code>.context.ConnectionSettings settings = 5;</code> - * @return The settings. - */ - public context.ContextOuterClass.ConnectionSettings getSettings() { - if (settingsBuilder_ == null) { - return settings_ == null ? context.ContextOuterClass.ConnectionSettings.getDefaultInstance() : settings_; - } else { - return settingsBuilder_.getMessage(); - } - } - /** - * <code>.context.ConnectionSettings settings = 5;</code> - */ - public Builder setSettings(context.ContextOuterClass.ConnectionSettings value) { - if (settingsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - settings_ = value; - onChanged(); - } else { - settingsBuilder_.setMessage(value); - } - - return this; - } - /** - * <code>.context.ConnectionSettings settings = 5;</code> - */ - public Builder setSettings( - context.ContextOuterClass.ConnectionSettings.Builder builderForValue) { - if (settingsBuilder_ == null) { - settings_ = builderForValue.build(); - onChanged(); - } else { - settingsBuilder_.setMessage(builderForValue.build()); - } - - return this; - } - /** - * <code>.context.ConnectionSettings settings = 5;</code> - */ - public Builder mergeSettings(context.ContextOuterClass.ConnectionSettings value) { - if (settingsBuilder_ == null) { - if (settings_ != null) { - settings_ = - context.ContextOuterClass.ConnectionSettings.newBuilder(settings_).mergeFrom(value).buildPartial(); - } else { - settings_ = value; - } - onChanged(); - } else { - settingsBuilder_.mergeFrom(value); - } - - return this; - } - /** - * <code>.context.ConnectionSettings settings = 5;</code> - */ - public Builder clearSettings() { - if (settingsBuilder_ == null) { - settings_ = null; - onChanged(); - } else { - settings_ = null; - settingsBuilder_ = null; - } - - return this; - } - /** - * <code>.context.ConnectionSettings settings = 5;</code> - */ - public context.ContextOuterClass.ConnectionSettings.Builder getSettingsBuilder() { - - onChanged(); - return getSettingsFieldBuilder().getBuilder(); - } - /** - * <code>.context.ConnectionSettings settings = 5;</code> - */ - public context.ContextOuterClass.ConnectionSettingsOrBuilder getSettingsOrBuilder() { - if (settingsBuilder_ != null) { - return settingsBuilder_.getMessageOrBuilder(); - } else { - return settings_ == null ? - context.ContextOuterClass.ConnectionSettings.getDefaultInstance() : settings_; - } - } - /** - * <code>.context.ConnectionSettings settings = 5;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings, context.ContextOuterClass.ConnectionSettings.Builder, context.ContextOuterClass.ConnectionSettingsOrBuilder> - getSettingsFieldBuilder() { - if (settingsBuilder_ == null) { - settingsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings, context.ContextOuterClass.ConnectionSettings.Builder, context.ContextOuterClass.ConnectionSettingsOrBuilder>( - getSettings(), + context.ContextOuterClass.Connection, context.ContextOuterClass.Connection.Builder, context.ContextOuterClass.ConnectionOrBuilder> + getConnectionsFieldBuilder() { + if (connectionsBuilder_ == null) { + connectionsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Connection, context.ContextOuterClass.Connection.Builder, context.ContextOuterClass.ConnectionOrBuilder>( + connections_, + ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); - settings_ = null; + connections_ = null; } - return settingsBuilder_; + return connectionsBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -47974,95 +52606,100 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.Connection) + // @@protoc_insertion_point(builder_scope:context.ConnectionList) } - // @@protoc_insertion_point(class_scope:context.Connection) - private static final context.ContextOuterClass.Connection DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ConnectionList) + private static final context.ContextOuterClass.ConnectionList DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Connection(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionList(); } - public static context.ContextOuterClass.Connection getDefaultInstance() { + public static context.ContextOuterClass.ConnectionList getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<Connection> - PARSER = new com.google.protobuf.AbstractParser<Connection>() { + private static final com.google.protobuf.Parser<ConnectionList> + PARSER = new com.google.protobuf.AbstractParser<ConnectionList>() { @java.lang.Override - public Connection parsePartialFrom( + public ConnectionList parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new Connection(input, extensionRegistry); + return new ConnectionList(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<Connection> parser() { + public static com.google.protobuf.Parser<ConnectionList> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<Connection> getParserForType() { + public com.google.protobuf.Parser<ConnectionList> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.Connection getDefaultInstanceForType() { + public context.ContextOuterClass.ConnectionList getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - - public interface ConnectionIdListOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ConnectionIdList) + + public interface ConnectionEventOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ConnectionEvent) com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. */ - java.util.List<context.ContextOuterClass.ConnectionId> - getConnectionIdsList(); + boolean hasEvent(); /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.Event event = 1;</code> + * @return The event. */ - context.ContextOuterClass.ConnectionId getConnectionIds(int index); + context.ContextOuterClass.Event getEvent(); /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.Event event = 1;</code> */ - int getConnectionIdsCount(); + context.ContextOuterClass.EventOrBuilder getEventOrBuilder(); + /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.ConnectionId connection_id = 2;</code> + * @return Whether the connectionId field is set. */ - java.util.List<? extends context.ContextOuterClass.ConnectionIdOrBuilder> - getConnectionIdsOrBuilderList(); + boolean hasConnectionId(); /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.ConnectionId connection_id = 2;</code> + * @return The connectionId. */ - context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdsOrBuilder( - int index); + context.ContextOuterClass.ConnectionId getConnectionId(); + /** + * <code>.context.ConnectionId connection_id = 2;</code> + */ + context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder(); } /** - * Protobuf type {@code context.ConnectionIdList} + * Protobuf type {@code context.ConnectionEvent} */ - public static final class ConnectionIdList extends + public static final class ConnectionEvent extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ConnectionIdList) - ConnectionIdListOrBuilder { + // @@protoc_insertion_point(message_implements:context.ConnectionEvent) + ConnectionEventOrBuilder { private static final long serialVersionUID = 0L; - // Use ConnectionIdList.newBuilder() to construct. - private ConnectionIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ConnectionEvent.newBuilder() to construct. + private ConnectionEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ConnectionIdList() { - connectionIds_ = java.util.Collections.emptyList(); + private ConnectionEvent() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ConnectionIdList(); + return new ConnectionEvent(); } @java.lang.Override @@ -48070,7 +52707,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ConnectionIdList( + private ConnectionEvent( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -48078,7 +52715,6 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } - int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -48090,12 +52726,29 @@ public final class ContextOuterClass { done = true; break; case 10: { - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - connectionIds_ = new java.util.ArrayList<context.ContextOuterClass.ConnectionId>(); - mutable_bitField0_ |= 0x00000001; + context.ContextOuterClass.Event.Builder subBuilder = null; + if (event_ != null) { + subBuilder = event_.toBuilder(); } - connectionIds_.add( - input.readMessage(context.ContextOuterClass.ConnectionId.parser(), extensionRegistry)); + event_ = input.readMessage(context.ContextOuterClass.Event.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(event_); + event_ = subBuilder.buildPartial(); + } + + break; + } + case 18: { + context.ContextOuterClass.ConnectionId.Builder subBuilder = null; + if (connectionId_ != null) { + subBuilder = connectionId_.toBuilder(); + } + connectionId_ = input.readMessage(context.ContextOuterClass.ConnectionId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(connectionId_); + connectionId_ = subBuilder.buildPartial(); + } + break; } default: { @@ -48113,64 +52766,73 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { - if (((mutable_bitField0_ & 0x00000001) != 0)) { - connectionIds_ = java.util.Collections.unmodifiableList(connectionIds_); - } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionIdList_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionEvent_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionIdList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionEvent_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionIdList.class, context.ContextOuterClass.ConnectionIdList.Builder.class); + context.ContextOuterClass.ConnectionEvent.class, context.ContextOuterClass.ConnectionEvent.Builder.class); } - public static final int CONNECTION_IDS_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.ConnectionId> connectionIds_; + public static final int EVENT_FIELD_NUMBER = 1; + private context.ContextOuterClass.Event event_; /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. */ @java.lang.Override - public java.util.List<context.ContextOuterClass.ConnectionId> getConnectionIdsList() { - return connectionIds_; + public boolean hasEvent() { + return event_ != null; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.Event event = 1;</code> + * @return The event. */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.ConnectionIdOrBuilder> - getConnectionIdsOrBuilderList() { - return connectionIds_; + public context.ContextOuterClass.Event getEvent() { + return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.Event event = 1;</code> */ @java.lang.Override - public int getConnectionIdsCount() { - return connectionIds_.size(); + public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { + return getEvent(); } + + public static final int CONNECTION_ID_FIELD_NUMBER = 2; + private context.ContextOuterClass.ConnectionId connectionId_; /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.ConnectionId connection_id = 2;</code> + * @return Whether the connectionId field is set. */ @java.lang.Override - public context.ContextOuterClass.ConnectionId getConnectionIds(int index) { - return connectionIds_.get(index); + public boolean hasConnectionId() { + return connectionId_ != null; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.ConnectionId connection_id = 2;</code> + * @return The connectionId. */ @java.lang.Override - public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdsOrBuilder( - int index) { - return connectionIds_.get(index); + public context.ContextOuterClass.ConnectionId getConnectionId() { + return connectionId_ == null ? context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; + } + /** + * <code>.context.ConnectionId connection_id = 2;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder() { + return getConnectionId(); } private byte memoizedIsInitialized = -1; @@ -48187,8 +52849,11 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < connectionIds_.size(); i++) { - output.writeMessage(1, connectionIds_.get(i)); + if (event_ != null) { + output.writeMessage(1, getEvent()); + } + if (connectionId_ != null) { + output.writeMessage(2, getConnectionId()); } unknownFields.writeTo(output); } @@ -48199,9 +52864,13 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < connectionIds_.size(); i++) { + if (event_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, connectionIds_.get(i)); + .computeMessageSize(1, getEvent()); + } + if (connectionId_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, getConnectionId()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -48213,13 +52882,21 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ConnectionIdList)) { + if (!(obj instanceof context.ContextOuterClass.ConnectionEvent)) { return super.equals(obj); } - context.ContextOuterClass.ConnectionIdList other = (context.ContextOuterClass.ConnectionIdList) obj; + context.ContextOuterClass.ConnectionEvent other = (context.ContextOuterClass.ConnectionEvent) obj; - if (!getConnectionIdsList() - .equals(other.getConnectionIdsList())) return false; + if (hasEvent() != other.hasEvent()) return false; + if (hasEvent()) { + if (!getEvent() + .equals(other.getEvent())) return false; + } + if (hasConnectionId() != other.hasConnectionId()) return false; + if (hasConnectionId()) { + if (!getConnectionId() + .equals(other.getConnectionId())) return false; + } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -48231,78 +52908,82 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getConnectionIdsCount() > 0) { - hash = (37 * hash) + CONNECTION_IDS_FIELD_NUMBER; - hash = (53 * hash) + getConnectionIdsList().hashCode(); + if (hasEvent()) { + hash = (37 * hash) + EVENT_FIELD_NUMBER; + hash = (53 * hash) + getEvent().hashCode(); + } + if (hasConnectionId()) { + hash = (37 * hash) + CONNECTION_ID_FIELD_NUMBER; + hash = (53 * hash) + getConnectionId().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ConnectionIdList parseFrom( + public static context.ContextOuterClass.ConnectionEvent parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionIdList parseFrom( + public static context.ContextOuterClass.ConnectionEvent parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionIdList parseFrom( + public static context.ContextOuterClass.ConnectionEvent parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionIdList parseFrom( + public static context.ContextOuterClass.ConnectionEvent parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionIdList parseFrom(byte[] data) + public static context.ContextOuterClass.ConnectionEvent parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionIdList parseFrom( + public static context.ContextOuterClass.ConnectionEvent parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionIdList parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionEvent parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionIdList parseFrom( + public static context.ContextOuterClass.ConnectionEvent 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 context.ContextOuterClass.ConnectionIdList parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionEvent parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionIdList parseDelimitedFrom( + public static context.ContextOuterClass.ConnectionEvent 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 context.ContextOuterClass.ConnectionIdList parseFrom( + public static context.ContextOuterClass.ConnectionEvent parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionIdList parseFrom( + public static context.ContextOuterClass.ConnectionEvent parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -48315,7 +52996,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ConnectionIdList prototype) { + public static Builder newBuilder(context.ContextOuterClass.ConnectionEvent prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -48331,26 +53012,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ConnectionIdList} + * Protobuf type {@code context.ConnectionEvent} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ConnectionIdList) - context.ContextOuterClass.ConnectionIdListOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ConnectionEvent) + context.ContextOuterClass.ConnectionEventOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionIdList_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionEvent_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionIdList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionEvent_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionIdList.class, context.ContextOuterClass.ConnectionIdList.Builder.class); + context.ContextOuterClass.ConnectionEvent.class, context.ContextOuterClass.ConnectionEvent.Builder.class); } - // Construct using context.ContextOuterClass.ConnectionIdList.newBuilder() + // Construct using context.ContextOuterClass.ConnectionEvent.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -48363,17 +53044,22 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getConnectionIdsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (connectionIdsBuilder_ == null) { - connectionIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + if (eventBuilder_ == null) { + event_ = null; } else { - connectionIdsBuilder_.clear(); + event_ = null; + eventBuilder_ = null; + } + if (connectionIdBuilder_ == null) { + connectionId_ = null; + } else { + connectionId_ = null; + connectionIdBuilder_ = null; } return this; } @@ -48381,17 +53067,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ConnectionIdList_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionEvent_descriptor; } @java.lang.Override - public context.ContextOuterClass.ConnectionIdList getDefaultInstanceForType() { - return context.ContextOuterClass.ConnectionIdList.getDefaultInstance(); + public context.ContextOuterClass.ConnectionEvent getDefaultInstanceForType() { + return context.ContextOuterClass.ConnectionEvent.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ConnectionIdList build() { - context.ContextOuterClass.ConnectionIdList result = buildPartial(); + public context.ContextOuterClass.ConnectionEvent build() { + context.ContextOuterClass.ConnectionEvent result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -48399,17 +53085,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ConnectionIdList buildPartial() { - context.ContextOuterClass.ConnectionIdList result = new context.ContextOuterClass.ConnectionIdList(this); - int from_bitField0_ = bitField0_; - if (connectionIdsBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { - connectionIds_ = java.util.Collections.unmodifiableList(connectionIds_); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.connectionIds_ = connectionIds_; + public context.ContextOuterClass.ConnectionEvent buildPartial() { + context.ContextOuterClass.ConnectionEvent result = new context.ContextOuterClass.ConnectionEvent(this); + if (eventBuilder_ == null) { + result.event_ = event_; } else { - result.connectionIds_ = connectionIdsBuilder_.build(); + result.event_ = eventBuilder_.build(); + } + if (connectionIdBuilder_ == null) { + result.connectionId_ = connectionId_; + } else { + result.connectionId_ = connectionIdBuilder_.build(); } onBuilt(); return result; @@ -48449,41 +53135,21 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ConnectionIdList) { - return mergeFrom((context.ContextOuterClass.ConnectionIdList)other); + if (other instanceof context.ContextOuterClass.ConnectionEvent) { + return mergeFrom((context.ContextOuterClass.ConnectionEvent)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ConnectionIdList other) { - if (other == context.ContextOuterClass.ConnectionIdList.getDefaultInstance()) return this; - if (connectionIdsBuilder_ == null) { - if (!other.connectionIds_.isEmpty()) { - if (connectionIds_.isEmpty()) { - connectionIds_ = other.connectionIds_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureConnectionIdsIsMutable(); - connectionIds_.addAll(other.connectionIds_); - } - onChanged(); - } - } else { - if (!other.connectionIds_.isEmpty()) { - if (connectionIdsBuilder_.isEmpty()) { - connectionIdsBuilder_.dispose(); - connectionIdsBuilder_ = null; - connectionIds_ = other.connectionIds_; - bitField0_ = (bitField0_ & ~0x00000001); - connectionIdsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getConnectionIdsFieldBuilder() : null; - } else { - connectionIdsBuilder_.addAllMessages(other.connectionIds_); - } - } + public Builder mergeFrom(context.ContextOuterClass.ConnectionEvent other) { + if (other == context.ContextOuterClass.ConnectionEvent.getDefaultInstance()) return this; + if (other.hasEvent()) { + mergeEvent(other.getEvent()); + } + if (other.hasConnectionId()) { + mergeConnectionId(other.getConnectionId()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -48500,11 +53166,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ConnectionIdList parsedMessage = null; + context.ContextOuterClass.ConnectionEvent parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ConnectionIdList) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ConnectionEvent) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -48513,246 +53179,243 @@ public final class ContextOuterClass { } return this; } - private int bitField0_; - - private java.util.List<context.ContextOuterClass.ConnectionId> connectionIds_ = - java.util.Collections.emptyList(); - private void ensureConnectionIdsIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - connectionIds_ = new java.util.ArrayList<context.ContextOuterClass.ConnectionId>(connectionIds_); - bitField0_ |= 0x00000001; - } - } - - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> connectionIdsBuilder_; + private context.ContextOuterClass.Event event_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> eventBuilder_; /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> - */ - public java.util.List<context.ContextOuterClass.ConnectionId> getConnectionIdsList() { - if (connectionIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(connectionIds_); - } else { - return connectionIdsBuilder_.getMessageList(); - } - } - /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. */ - public int getConnectionIdsCount() { - if (connectionIdsBuilder_ == null) { - return connectionIds_.size(); - } else { - return connectionIdsBuilder_.getCount(); - } + public boolean hasEvent() { + return eventBuilder_ != null || event_ != null; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.Event event = 1;</code> + * @return The event. */ - public context.ContextOuterClass.ConnectionId getConnectionIds(int index) { - if (connectionIdsBuilder_ == null) { - return connectionIds_.get(index); + public context.ContextOuterClass.Event getEvent() { + if (eventBuilder_ == null) { + return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; } else { - return connectionIdsBuilder_.getMessage(index); + return eventBuilder_.getMessage(); } } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.Event event = 1;</code> */ - public Builder setConnectionIds( - int index, context.ContextOuterClass.ConnectionId value) { - if (connectionIdsBuilder_ == null) { + public Builder setEvent(context.ContextOuterClass.Event value) { + if (eventBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureConnectionIdsIsMutable(); - connectionIds_.set(index, value); + event_ = value; onChanged(); } else { - connectionIdsBuilder_.setMessage(index, value); + eventBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.Event event = 1;</code> */ - public Builder setConnectionIds( - int index, context.ContextOuterClass.ConnectionId.Builder builderForValue) { - if (connectionIdsBuilder_ == null) { - ensureConnectionIdsIsMutable(); - connectionIds_.set(index, builderForValue.build()); + public Builder setEvent( + context.ContextOuterClass.Event.Builder builderForValue) { + if (eventBuilder_ == null) { + event_ = builderForValue.build(); onChanged(); } else { - connectionIdsBuilder_.setMessage(index, builderForValue.build()); + eventBuilder_.setMessage(builderForValue.build()); } + return this; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.Event event = 1;</code> */ - public Builder addConnectionIds(context.ContextOuterClass.ConnectionId value) { - if (connectionIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + public Builder mergeEvent(context.ContextOuterClass.Event value) { + if (eventBuilder_ == null) { + if (event_ != null) { + event_ = + context.ContextOuterClass.Event.newBuilder(event_).mergeFrom(value).buildPartial(); + } else { + event_ = value; } - ensureConnectionIdsIsMutable(); - connectionIds_.add(value); onChanged(); } else { - connectionIdsBuilder_.addMessage(value); + eventBuilder_.mergeFrom(value); } + return this; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.Event event = 1;</code> */ - public Builder addConnectionIds( - int index, context.ContextOuterClass.ConnectionId value) { - if (connectionIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureConnectionIdsIsMutable(); - connectionIds_.add(index, value); + public Builder clearEvent() { + if (eventBuilder_ == null) { + event_ = null; onChanged(); } else { - connectionIdsBuilder_.addMessage(index, value); + event_ = null; + eventBuilder_ = null; } + return this; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.Event event = 1;</code> */ - public Builder addConnectionIds( - context.ContextOuterClass.ConnectionId.Builder builderForValue) { - if (connectionIdsBuilder_ == null) { - ensureConnectionIdsIsMutable(); - connectionIds_.add(builderForValue.build()); - onChanged(); + public context.ContextOuterClass.Event.Builder getEventBuilder() { + + onChanged(); + return getEventFieldBuilder().getBuilder(); + } + /** + * <code>.context.Event event = 1;</code> + */ + public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { + if (eventBuilder_ != null) { + return eventBuilder_.getMessageOrBuilder(); } else { - connectionIdsBuilder_.addMessage(builderForValue.build()); + return event_ == null ? + context.ContextOuterClass.Event.getDefaultInstance() : event_; } - return this; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.Event event = 1;</code> */ - public Builder addConnectionIds( - int index, context.ContextOuterClass.ConnectionId.Builder builderForValue) { - if (connectionIdsBuilder_ == null) { - ensureConnectionIdsIsMutable(); - connectionIds_.add(index, builderForValue.build()); - onChanged(); - } else { - connectionIdsBuilder_.addMessage(index, builderForValue.build()); + 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(), + getParentForChildren(), + isClean()); + event_ = null; } - return this; + return eventBuilder_; } + + private context.ContextOuterClass.ConnectionId connectionId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> connectionIdBuilder_; /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.ConnectionId connection_id = 2;</code> + * @return Whether the connectionId field is set. */ - public Builder addAllConnectionIds( - java.lang.Iterable<? extends context.ContextOuterClass.ConnectionId> values) { - if (connectionIdsBuilder_ == null) { - ensureConnectionIdsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, connectionIds_); - onChanged(); + public boolean hasConnectionId() { + return connectionIdBuilder_ != null || connectionId_ != null; + } + /** + * <code>.context.ConnectionId connection_id = 2;</code> + * @return The connectionId. + */ + public context.ContextOuterClass.ConnectionId getConnectionId() { + if (connectionIdBuilder_ == null) { + return connectionId_ == null ? context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; } else { - connectionIdsBuilder_.addAllMessages(values); + return connectionIdBuilder_.getMessage(); } - return this; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.ConnectionId connection_id = 2;</code> */ - public Builder clearConnectionIds() { - if (connectionIdsBuilder_ == null) { - connectionIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + public Builder setConnectionId(context.ContextOuterClass.ConnectionId value) { + if (connectionIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + connectionId_ = value; onChanged(); } else { - connectionIdsBuilder_.clear(); + connectionIdBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.ConnectionId connection_id = 2;</code> */ - public Builder removeConnectionIds(int index) { - if (connectionIdsBuilder_ == null) { - ensureConnectionIdsIsMutable(); - connectionIds_.remove(index); + public Builder setConnectionId( + context.ContextOuterClass.ConnectionId.Builder builderForValue) { + if (connectionIdBuilder_ == null) { + connectionId_ = builderForValue.build(); onChanged(); } else { - connectionIdsBuilder_.remove(index); + connectionIdBuilder_.setMessage(builderForValue.build()); } + return this; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> - */ - public context.ContextOuterClass.ConnectionId.Builder getConnectionIdsBuilder( - int index) { - return getConnectionIdsFieldBuilder().getBuilder(index); - } - /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.ConnectionId connection_id = 2;</code> */ - public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdsOrBuilder( - int index) { - if (connectionIdsBuilder_ == null) { - return connectionIds_.get(index); } else { - return connectionIdsBuilder_.getMessageOrBuilder(index); + public Builder mergeConnectionId(context.ContextOuterClass.ConnectionId value) { + if (connectionIdBuilder_ == null) { + if (connectionId_ != null) { + connectionId_ = + context.ContextOuterClass.ConnectionId.newBuilder(connectionId_).mergeFrom(value).buildPartial(); + } else { + connectionId_ = value; + } + onChanged(); + } else { + connectionIdBuilder_.mergeFrom(value); } + + return this; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.ConnectionId connection_id = 2;</code> */ - public java.util.List<? extends context.ContextOuterClass.ConnectionIdOrBuilder> - getConnectionIdsOrBuilderList() { - if (connectionIdsBuilder_ != null) { - return connectionIdsBuilder_.getMessageOrBuilderList(); + public Builder clearConnectionId() { + if (connectionIdBuilder_ == null) { + connectionId_ = null; + onChanged(); } else { - return java.util.Collections.unmodifiableList(connectionIds_); + connectionId_ = null; + connectionIdBuilder_ = null; } + + return this; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.ConnectionId connection_id = 2;</code> */ - public context.ContextOuterClass.ConnectionId.Builder addConnectionIdsBuilder() { - return getConnectionIdsFieldBuilder().addBuilder( - context.ContextOuterClass.ConnectionId.getDefaultInstance()); + public context.ContextOuterClass.ConnectionId.Builder getConnectionIdBuilder() { + + onChanged(); + return getConnectionIdFieldBuilder().getBuilder(); } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.ConnectionId connection_id = 2;</code> */ - public context.ContextOuterClass.ConnectionId.Builder addConnectionIdsBuilder( - int index) { - return getConnectionIdsFieldBuilder().addBuilder( - index, context.ContextOuterClass.ConnectionId.getDefaultInstance()); + public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder() { + if (connectionIdBuilder_ != null) { + return connectionIdBuilder_.getMessageOrBuilder(); + } else { + return connectionId_ == null ? + context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; + } } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.ConnectionId connection_id = 2;</code> */ - public java.util.List<context.ContextOuterClass.ConnectionId.Builder> - getConnectionIdsBuilderList() { - return getConnectionIdsFieldBuilder().getBuilderList(); - } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> - getConnectionIdsFieldBuilder() { - if (connectionIdsBuilder_ == null) { - connectionIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + getConnectionIdFieldBuilder() { + if (connectionIdBuilder_ == null) { + connectionIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder>( - connectionIds_, - ((bitField0_ & 0x00000001) != 0), + getConnectionId(), getParentForChildren(), isClean()); - connectionIds_ = null; + connectionId_ = null; } - return connectionIdsBuilder_; + return connectionIdBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -48767,95 +53430,119 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ConnectionIdList) + // @@protoc_insertion_point(builder_scope:context.ConnectionEvent) } - // @@protoc_insertion_point(class_scope:context.ConnectionIdList) - private static final context.ContextOuterClass.ConnectionIdList DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ConnectionEvent) + private static final context.ContextOuterClass.ConnectionEvent DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionIdList(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionEvent(); } - public static context.ContextOuterClass.ConnectionIdList getDefaultInstance() { + public static context.ContextOuterClass.ConnectionEvent getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ConnectionIdList> - PARSER = new com.google.protobuf.AbstractParser<ConnectionIdList>() { + private static final com.google.protobuf.Parser<ConnectionEvent> + PARSER = new com.google.protobuf.AbstractParser<ConnectionEvent>() { @java.lang.Override - public ConnectionIdList parsePartialFrom( + public ConnectionEvent parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ConnectionIdList(input, extensionRegistry); + return new ConnectionEvent(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ConnectionIdList> parser() { + public static com.google.protobuf.Parser<ConnectionEvent> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ConnectionIdList> getParserForType() { + public com.google.protobuf.Parser<ConnectionEvent> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ConnectionIdList getDefaultInstanceForType() { + public context.ContextOuterClass.ConnectionEvent getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ConnectionListOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ConnectionList) + public interface EndPointIdOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.EndPointId) com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.TopologyId topology_id = 1;</code> + * @return Whether the topologyId field is set. */ - java.util.List<context.ContextOuterClass.Connection> - getConnectionsList(); + boolean hasTopologyId(); /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.TopologyId topology_id = 1;</code> + * @return The topologyId. */ - context.ContextOuterClass.Connection getConnections(int index); + context.ContextOuterClass.TopologyId getTopologyId(); /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.TopologyId topology_id = 1;</code> */ - int getConnectionsCount(); + context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder(); + /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.DeviceId device_id = 2;</code> + * @return Whether the deviceId field is set. */ - java.util.List<? extends context.ContextOuterClass.ConnectionOrBuilder> - getConnectionsOrBuilderList(); + boolean hasDeviceId(); /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.DeviceId device_id = 2;</code> + * @return The deviceId. */ - context.ContextOuterClass.ConnectionOrBuilder getConnectionsOrBuilder( - int index); + context.ContextOuterClass.DeviceId getDeviceId(); + /** + * <code>.context.DeviceId device_id = 2;</code> + */ + context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder(); + + /** + * <code>.context.Uuid endpoint_uuid = 3;</code> + * @return Whether the endpointUuid field is set. + */ + boolean hasEndpointUuid(); + /** + * <code>.context.Uuid endpoint_uuid = 3;</code> + * @return The endpointUuid. + */ + context.ContextOuterClass.Uuid getEndpointUuid(); + /** + * <code>.context.Uuid endpoint_uuid = 3;</code> + */ + context.ContextOuterClass.UuidOrBuilder getEndpointUuidOrBuilder(); } /** - * Protobuf type {@code context.ConnectionList} + * <pre> + * ----- Endpoint ------------------------------------------------------------------------------------------------------ + * </pre> + * + * Protobuf type {@code context.EndPointId} */ - public static final class ConnectionList extends + public static final class EndPointId extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ConnectionList) - ConnectionListOrBuilder { + // @@protoc_insertion_point(message_implements:context.EndPointId) + EndPointIdOrBuilder { private static final long serialVersionUID = 0L; - // Use ConnectionList.newBuilder() to construct. - private ConnectionList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use EndPointId.newBuilder() to construct. + private EndPointId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ConnectionList() { - connections_ = java.util.Collections.emptyList(); + private EndPointId() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ConnectionList(); + return new EndPointId(); } @java.lang.Override @@ -48863,7 +53550,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ConnectionList( + private EndPointId( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -48871,7 +53558,6 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } - int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -48883,12 +53569,42 @@ public final class ContextOuterClass { done = true; break; case 10: { - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - connections_ = new java.util.ArrayList<context.ContextOuterClass.Connection>(); - mutable_bitField0_ |= 0x00000001; + context.ContextOuterClass.TopologyId.Builder subBuilder = null; + if (topologyId_ != null) { + subBuilder = topologyId_.toBuilder(); } - connections_.add( - input.readMessage(context.ContextOuterClass.Connection.parser(), extensionRegistry)); + topologyId_ = input.readMessage(context.ContextOuterClass.TopologyId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(topologyId_); + topologyId_ = subBuilder.buildPartial(); + } + + break; + } + case 18: { + context.ContextOuterClass.DeviceId.Builder subBuilder = null; + if (deviceId_ != null) { + subBuilder = deviceId_.toBuilder(); + } + deviceId_ = input.readMessage(context.ContextOuterClass.DeviceId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(deviceId_); + deviceId_ = subBuilder.buildPartial(); + } + + break; + } + case 26: { + context.ContextOuterClass.Uuid.Builder subBuilder = null; + if (endpointUuid_ != null) { + subBuilder = endpointUuid_.toBuilder(); + } + endpointUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(endpointUuid_); + endpointUuid_ = subBuilder.buildPartial(); + } + break; } default: { @@ -48906,64 +53622,99 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { - if (((mutable_bitField0_ & 0x00000001) != 0)) { - connections_ = java.util.Collections.unmodifiableList(connections_); - } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionList_descriptor; + return context.ContextOuterClass.internal_static_context_EndPointId_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_EndPointId_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionList.class, context.ContextOuterClass.ConnectionList.Builder.class); + context.ContextOuterClass.EndPointId.class, context.ContextOuterClass.EndPointId.Builder.class); } - public static final int CONNECTIONS_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.Connection> connections_; + public static final int TOPOLOGY_ID_FIELD_NUMBER = 1; + private context.ContextOuterClass.TopologyId topologyId_; /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.TopologyId topology_id = 1;</code> + * @return Whether the topologyId field is set. */ @java.lang.Override - public java.util.List<context.ContextOuterClass.Connection> getConnectionsList() { - return connections_; + public boolean hasTopologyId() { + return topologyId_ != null; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.TopologyId topology_id = 1;</code> + * @return The topologyId. */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.ConnectionOrBuilder> - getConnectionsOrBuilderList() { - return connections_; + public context.ContextOuterClass.TopologyId getTopologyId() { + return topologyId_ == null ? context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.TopologyId topology_id = 1;</code> */ @java.lang.Override - public int getConnectionsCount() { - return connections_.size(); + public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder() { + return getTopologyId(); } + + public static final int DEVICE_ID_FIELD_NUMBER = 2; + private context.ContextOuterClass.DeviceId deviceId_; /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.DeviceId device_id = 2;</code> + * @return Whether the deviceId field is set. */ @java.lang.Override - public context.ContextOuterClass.Connection getConnections(int index) { - return connections_.get(index); + public boolean hasDeviceId() { + return deviceId_ != null; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.DeviceId device_id = 2;</code> + * @return The deviceId. */ @java.lang.Override - public context.ContextOuterClass.ConnectionOrBuilder getConnectionsOrBuilder( - int index) { - return connections_.get(index); + public context.ContextOuterClass.DeviceId getDeviceId() { + return deviceId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; + } + /** + * <code>.context.DeviceId device_id = 2;</code> + */ + @java.lang.Override + public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder() { + return getDeviceId(); + } + + public static final int ENDPOINT_UUID_FIELD_NUMBER = 3; + private context.ContextOuterClass.Uuid endpointUuid_; + /** + * <code>.context.Uuid endpoint_uuid = 3;</code> + * @return Whether the endpointUuid field is set. + */ + @java.lang.Override + public boolean hasEndpointUuid() { + return endpointUuid_ != null; + } + /** + * <code>.context.Uuid endpoint_uuid = 3;</code> + * @return The endpointUuid. + */ + @java.lang.Override + public context.ContextOuterClass.Uuid getEndpointUuid() { + return endpointUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : endpointUuid_; + } + /** + * <code>.context.Uuid endpoint_uuid = 3;</code> + */ + @java.lang.Override + public context.ContextOuterClass.UuidOrBuilder getEndpointUuidOrBuilder() { + return getEndpointUuid(); } private byte memoizedIsInitialized = -1; @@ -48980,8 +53731,14 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < connections_.size(); i++) { - output.writeMessage(1, connections_.get(i)); + if (topologyId_ != null) { + output.writeMessage(1, getTopologyId()); + } + if (deviceId_ != null) { + output.writeMessage(2, getDeviceId()); + } + if (endpointUuid_ != null) { + output.writeMessage(3, getEndpointUuid()); } unknownFields.writeTo(output); } @@ -48992,9 +53749,17 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < connections_.size(); i++) { + if (topologyId_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, connections_.get(i)); + .computeMessageSize(1, getTopologyId()); + } + if (deviceId_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, getDeviceId()); + } + if (endpointUuid_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(3, getEndpointUuid()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -49006,13 +53771,26 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ConnectionList)) { + if (!(obj instanceof context.ContextOuterClass.EndPointId)) { return super.equals(obj); } - context.ContextOuterClass.ConnectionList other = (context.ContextOuterClass.ConnectionList) obj; + context.ContextOuterClass.EndPointId other = (context.ContextOuterClass.EndPointId) obj; - if (!getConnectionsList() - .equals(other.getConnectionsList())) return false; + if (hasTopologyId() != other.hasTopologyId()) return false; + if (hasTopologyId()) { + if (!getTopologyId() + .equals(other.getTopologyId())) return false; + } + if (hasDeviceId() != other.hasDeviceId()) return false; + if (hasDeviceId()) { + if (!getDeviceId() + .equals(other.getDeviceId())) return false; + } + if (hasEndpointUuid() != other.hasEndpointUuid()) return false; + if (hasEndpointUuid()) { + if (!getEndpointUuid() + .equals(other.getEndpointUuid())) return false; + } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -49024,78 +53802,86 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getConnectionsCount() > 0) { - hash = (37 * hash) + CONNECTIONS_FIELD_NUMBER; - hash = (53 * hash) + getConnectionsList().hashCode(); + if (hasTopologyId()) { + hash = (37 * hash) + TOPOLOGY_ID_FIELD_NUMBER; + hash = (53 * hash) + getTopologyId().hashCode(); + } + if (hasDeviceId()) { + hash = (37 * hash) + DEVICE_ID_FIELD_NUMBER; + hash = (53 * hash) + getDeviceId().hashCode(); + } + if (hasEndpointUuid()) { + hash = (37 * hash) + ENDPOINT_UUID_FIELD_NUMBER; + hash = (53 * hash) + getEndpointUuid().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ConnectionList parseFrom( + public static context.ContextOuterClass.EndPointId parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionList parseFrom( + public static context.ContextOuterClass.EndPointId parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionList parseFrom( + public static context.ContextOuterClass.EndPointId parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionList parseFrom( + public static context.ContextOuterClass.EndPointId parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionList parseFrom(byte[] data) + public static context.ContextOuterClass.EndPointId parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionList parseFrom( + public static context.ContextOuterClass.EndPointId parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionList parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.EndPointId parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionList parseFrom( + public static context.ContextOuterClass.EndPointId 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 context.ContextOuterClass.ConnectionList parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.EndPointId parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionList parseDelimitedFrom( + public static context.ContextOuterClass.EndPointId 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 context.ContextOuterClass.ConnectionList parseFrom( + public static context.ContextOuterClass.EndPointId parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionList parseFrom( + public static context.ContextOuterClass.EndPointId parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -49108,7 +53894,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ConnectionList prototype) { + public static Builder newBuilder(context.ContextOuterClass.EndPointId prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -49124,26 +53910,30 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ConnectionList} + * <pre> + * ----- Endpoint ------------------------------------------------------------------------------------------------------ + * </pre> + * + * Protobuf type {@code context.EndPointId} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ConnectionList) - context.ContextOuterClass.ConnectionListOrBuilder { + // @@protoc_insertion_point(builder_implements:context.EndPointId) + context.ContextOuterClass.EndPointIdOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionList_descriptor; + return context.ContextOuterClass.internal_static_context_EndPointId_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_EndPointId_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionList.class, context.ContextOuterClass.ConnectionList.Builder.class); + context.ContextOuterClass.EndPointId.class, context.ContextOuterClass.EndPointId.Builder.class); } - // Construct using context.ContextOuterClass.ConnectionList.newBuilder() + // Construct using context.ContextOuterClass.EndPointId.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -49156,17 +53946,28 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getConnectionsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (connectionsBuilder_ == null) { - connections_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + if (topologyIdBuilder_ == null) { + topologyId_ = null; } else { - connectionsBuilder_.clear(); + topologyId_ = null; + topologyIdBuilder_ = null; + } + if (deviceIdBuilder_ == null) { + deviceId_ = null; + } else { + deviceId_ = null; + deviceIdBuilder_ = null; + } + if (endpointUuidBuilder_ == null) { + endpointUuid_ = null; + } else { + endpointUuid_ = null; + endpointUuidBuilder_ = null; } return this; } @@ -49174,17 +53975,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ConnectionList_descriptor; + return context.ContextOuterClass.internal_static_context_EndPointId_descriptor; } @java.lang.Override - public context.ContextOuterClass.ConnectionList getDefaultInstanceForType() { - return context.ContextOuterClass.ConnectionList.getDefaultInstance(); + public context.ContextOuterClass.EndPointId getDefaultInstanceForType() { + return context.ContextOuterClass.EndPointId.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ConnectionList build() { - context.ContextOuterClass.ConnectionList result = buildPartial(); + public context.ContextOuterClass.EndPointId build() { + context.ContextOuterClass.EndPointId result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -49192,17 +53993,22 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ConnectionList buildPartial() { - context.ContextOuterClass.ConnectionList result = new context.ContextOuterClass.ConnectionList(this); - int from_bitField0_ = bitField0_; - if (connectionsBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { - connections_ = java.util.Collections.unmodifiableList(connections_); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.connections_ = connections_; + public context.ContextOuterClass.EndPointId buildPartial() { + context.ContextOuterClass.EndPointId result = new context.ContextOuterClass.EndPointId(this); + if (topologyIdBuilder_ == null) { + result.topologyId_ = topologyId_; } else { - result.connections_ = connectionsBuilder_.build(); + result.topologyId_ = topologyIdBuilder_.build(); + } + if (deviceIdBuilder_ == null) { + result.deviceId_ = deviceId_; + } else { + result.deviceId_ = deviceIdBuilder_.build(); + } + if (endpointUuidBuilder_ == null) { + result.endpointUuid_ = endpointUuid_; + } else { + result.endpointUuid_ = endpointUuidBuilder_.build(); } onBuilt(); return result; @@ -49238,45 +54044,28 @@ public final class ContextOuterClass { 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 context.ContextOuterClass.ConnectionList) { - return mergeFrom((context.ContextOuterClass.ConnectionList)other); - } else { - super.mergeFrom(other); - return this; - } - } - - public Builder mergeFrom(context.ContextOuterClass.ConnectionList other) { - if (other == context.ContextOuterClass.ConnectionList.getDefaultInstance()) return this; - if (connectionsBuilder_ == null) { - if (!other.connections_.isEmpty()) { - if (connections_.isEmpty()) { - connections_ = other.connections_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureConnectionsIsMutable(); - connections_.addAll(other.connections_); - } - onChanged(); - } - } else { - if (!other.connections_.isEmpty()) { - if (connectionsBuilder_.isEmpty()) { - connectionsBuilder_.dispose(); - connectionsBuilder_ = null; - connections_ = other.connections_; - bitField0_ = (bitField0_ & ~0x00000001); - connectionsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getConnectionsFieldBuilder() : null; - } else { - connectionsBuilder_.addAllMessages(other.connections_); - } - } + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof context.ContextOuterClass.EndPointId) { + return mergeFrom((context.ContextOuterClass.EndPointId)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(context.ContextOuterClass.EndPointId other) { + if (other == context.ContextOuterClass.EndPointId.getDefaultInstance()) return this; + if (other.hasTopologyId()) { + mergeTopologyId(other.getTopologyId()); + } + if (other.hasDeviceId()) { + mergeDeviceId(other.getDeviceId()); + } + if (other.hasEndpointUuid()) { + mergeEndpointUuid(other.getEndpointUuid()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -49293,11 +54082,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ConnectionList parsedMessage = null; + context.ContextOuterClass.EndPointId parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ConnectionList) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.EndPointId) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -49306,246 +54095,362 @@ public final class ContextOuterClass { } return this; } - private int bitField0_; - private java.util.List<context.ContextOuterClass.Connection> connections_ = - java.util.Collections.emptyList(); - private void ensureConnectionsIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - connections_ = new java.util.ArrayList<context.ContextOuterClass.Connection>(connections_); - bitField0_ |= 0x00000001; - } + private context.ContextOuterClass.TopologyId topologyId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> topologyIdBuilder_; + /** + * <code>.context.TopologyId topology_id = 1;</code> + * @return Whether the topologyId field is set. + */ + public boolean hasTopologyId() { + return topologyIdBuilder_ != null || topologyId_ != null; } - - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Connection, context.ContextOuterClass.Connection.Builder, context.ContextOuterClass.ConnectionOrBuilder> connectionsBuilder_; - /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.TopologyId topology_id = 1;</code> + * @return The topologyId. */ - public java.util.List<context.ContextOuterClass.Connection> getConnectionsList() { - if (connectionsBuilder_ == null) { - return java.util.Collections.unmodifiableList(connections_); + public context.ContextOuterClass.TopologyId getTopologyId() { + if (topologyIdBuilder_ == null) { + return topologyId_ == null ? context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_; } else { - return connectionsBuilder_.getMessageList(); + return topologyIdBuilder_.getMessage(); } } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.TopologyId topology_id = 1;</code> */ - public int getConnectionsCount() { - if (connectionsBuilder_ == null) { - return connections_.size(); + public Builder setTopologyId(context.ContextOuterClass.TopologyId value) { + if (topologyIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + topologyId_ = value; + onChanged(); } else { - return connectionsBuilder_.getCount(); + topologyIdBuilder_.setMessage(value); } + + return this; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.TopologyId topology_id = 1;</code> */ - public context.ContextOuterClass.Connection getConnections(int index) { - if (connectionsBuilder_ == null) { - return connections_.get(index); + public Builder setTopologyId( + context.ContextOuterClass.TopologyId.Builder builderForValue) { + if (topologyIdBuilder_ == null) { + topologyId_ = builderForValue.build(); + onChanged(); } else { - return connectionsBuilder_.getMessage(index); + topologyIdBuilder_.setMessage(builderForValue.build()); } + + return this; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.TopologyId topology_id = 1;</code> */ - public Builder setConnections( - int index, context.ContextOuterClass.Connection value) { - if (connectionsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + public Builder mergeTopologyId(context.ContextOuterClass.TopologyId value) { + if (topologyIdBuilder_ == null) { + if (topologyId_ != null) { + topologyId_ = + context.ContextOuterClass.TopologyId.newBuilder(topologyId_).mergeFrom(value).buildPartial(); + } else { + topologyId_ = value; } - ensureConnectionsIsMutable(); - connections_.set(index, value); onChanged(); } else { - connectionsBuilder_.setMessage(index, value); + topologyIdBuilder_.mergeFrom(value); } + return this; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.TopologyId topology_id = 1;</code> */ - public Builder setConnections( - int index, context.ContextOuterClass.Connection.Builder builderForValue) { - if (connectionsBuilder_ == null) { - ensureConnectionsIsMutable(); - connections_.set(index, builderForValue.build()); + public Builder clearTopologyId() { + if (topologyIdBuilder_ == null) { + topologyId_ = null; onChanged(); } else { - connectionsBuilder_.setMessage(index, builderForValue.build()); + topologyId_ = null; + topologyIdBuilder_ = null; } + return this; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.TopologyId topology_id = 1;</code> */ - public Builder addConnections(context.ContextOuterClass.Connection value) { - if (connectionsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureConnectionsIsMutable(); - connections_.add(value); - onChanged(); + public context.ContextOuterClass.TopologyId.Builder getTopologyIdBuilder() { + + onChanged(); + return getTopologyIdFieldBuilder().getBuilder(); + } + /** + * <code>.context.TopologyId topology_id = 1;</code> + */ + public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder() { + if (topologyIdBuilder_ != null) { + return topologyIdBuilder_.getMessageOrBuilder(); } else { - connectionsBuilder_.addMessage(value); + return topologyId_ == null ? + context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_; } - return this; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.TopologyId topology_id = 1;</code> */ - public Builder addConnections( - int index, context.ContextOuterClass.Connection value) { - if (connectionsBuilder_ == null) { + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> + getTopologyIdFieldBuilder() { + if (topologyIdBuilder_ == null) { + topologyIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder>( + getTopologyId(), + getParentForChildren(), + isClean()); + topologyId_ = null; + } + return topologyIdBuilder_; + } + + private context.ContextOuterClass.DeviceId deviceId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> deviceIdBuilder_; + /** + * <code>.context.DeviceId device_id = 2;</code> + * @return Whether the deviceId field is set. + */ + public boolean hasDeviceId() { + return deviceIdBuilder_ != null || deviceId_ != null; + } + /** + * <code>.context.DeviceId device_id = 2;</code> + * @return The deviceId. + */ + public context.ContextOuterClass.DeviceId getDeviceId() { + if (deviceIdBuilder_ == null) { + return deviceId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; + } else { + return deviceIdBuilder_.getMessage(); + } + } + /** + * <code>.context.DeviceId device_id = 2;</code> + */ + public Builder setDeviceId(context.ContextOuterClass.DeviceId value) { + if (deviceIdBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureConnectionsIsMutable(); - connections_.add(index, value); + deviceId_ = value; onChanged(); } else { - connectionsBuilder_.addMessage(index, value); + deviceIdBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.DeviceId device_id = 2;</code> */ - public Builder addConnections( - context.ContextOuterClass.Connection.Builder builderForValue) { - if (connectionsBuilder_ == null) { - ensureConnectionsIsMutable(); - connections_.add(builderForValue.build()); + public Builder setDeviceId( + context.ContextOuterClass.DeviceId.Builder builderForValue) { + if (deviceIdBuilder_ == null) { + deviceId_ = builderForValue.build(); onChanged(); } else { - connectionsBuilder_.addMessage(builderForValue.build()); + deviceIdBuilder_.setMessage(builderForValue.build()); } + return this; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.DeviceId device_id = 2;</code> */ - public Builder addConnections( - int index, context.ContextOuterClass.Connection.Builder builderForValue) { - if (connectionsBuilder_ == null) { - ensureConnectionsIsMutable(); - connections_.add(index, builderForValue.build()); + public Builder mergeDeviceId(context.ContextOuterClass.DeviceId value) { + if (deviceIdBuilder_ == null) { + if (deviceId_ != null) { + deviceId_ = + context.ContextOuterClass.DeviceId.newBuilder(deviceId_).mergeFrom(value).buildPartial(); + } else { + deviceId_ = value; + } onChanged(); } else { - connectionsBuilder_.addMessage(index, builderForValue.build()); + deviceIdBuilder_.mergeFrom(value); } + return this; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.DeviceId device_id = 2;</code> */ - public Builder addAllConnections( - java.lang.Iterable<? extends context.ContextOuterClass.Connection> values) { - if (connectionsBuilder_ == null) { - ensureConnectionsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, connections_); + public Builder clearDeviceId() { + if (deviceIdBuilder_ == null) { + deviceId_ = null; onChanged(); } else { - connectionsBuilder_.addAllMessages(values); + deviceId_ = null; + deviceIdBuilder_ = null; } + return this; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.DeviceId device_id = 2;</code> */ - public Builder clearConnections() { - if (connectionsBuilder_ == null) { - connections_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); + public context.ContextOuterClass.DeviceId.Builder getDeviceIdBuilder() { + + onChanged(); + return getDeviceIdFieldBuilder().getBuilder(); + } + /** + * <code>.context.DeviceId device_id = 2;</code> + */ + public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder() { + if (deviceIdBuilder_ != null) { + return deviceIdBuilder_.getMessageOrBuilder(); } else { - connectionsBuilder_.clear(); + return deviceId_ == null ? + context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; } - return this; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.DeviceId device_id = 2;</code> */ - public Builder removeConnections(int index) { - if (connectionsBuilder_ == null) { - ensureConnectionsIsMutable(); - connections_.remove(index); + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> + getDeviceIdFieldBuilder() { + if (deviceIdBuilder_ == null) { + deviceIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder>( + getDeviceId(), + getParentForChildren(), + isClean()); + deviceId_ = null; + } + return deviceIdBuilder_; + } + + private context.ContextOuterClass.Uuid endpointUuid_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> endpointUuidBuilder_; + /** + * <code>.context.Uuid endpoint_uuid = 3;</code> + * @return Whether the endpointUuid field is set. + */ + public boolean hasEndpointUuid() { + return endpointUuidBuilder_ != null || endpointUuid_ != null; + } + /** + * <code>.context.Uuid endpoint_uuid = 3;</code> + * @return The endpointUuid. + */ + public context.ContextOuterClass.Uuid getEndpointUuid() { + if (endpointUuidBuilder_ == null) { + return endpointUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : endpointUuid_; + } else { + return endpointUuidBuilder_.getMessage(); + } + } + /** + * <code>.context.Uuid endpoint_uuid = 3;</code> + */ + public Builder setEndpointUuid(context.ContextOuterClass.Uuid value) { + if (endpointUuidBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + endpointUuid_ = value; onChanged(); } else { - connectionsBuilder_.remove(index); + endpointUuidBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.Uuid endpoint_uuid = 3;</code> */ - public context.ContextOuterClass.Connection.Builder getConnectionsBuilder( - int index) { - return getConnectionsFieldBuilder().getBuilder(index); + public Builder setEndpointUuid( + context.ContextOuterClass.Uuid.Builder builderForValue) { + if (endpointUuidBuilder_ == null) { + endpointUuid_ = builderForValue.build(); + onChanged(); + } else { + endpointUuidBuilder_.setMessage(builderForValue.build()); + } + + return this; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.Uuid endpoint_uuid = 3;</code> */ - public context.ContextOuterClass.ConnectionOrBuilder getConnectionsOrBuilder( - int index) { - if (connectionsBuilder_ == null) { - return connections_.get(index); } else { - return connectionsBuilder_.getMessageOrBuilder(index); + public Builder mergeEndpointUuid(context.ContextOuterClass.Uuid value) { + if (endpointUuidBuilder_ == null) { + if (endpointUuid_ != null) { + endpointUuid_ = + context.ContextOuterClass.Uuid.newBuilder(endpointUuid_).mergeFrom(value).buildPartial(); + } else { + endpointUuid_ = value; + } + onChanged(); + } else { + endpointUuidBuilder_.mergeFrom(value); } + + return this; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.Uuid endpoint_uuid = 3;</code> */ - public java.util.List<? extends context.ContextOuterClass.ConnectionOrBuilder> - getConnectionsOrBuilderList() { - if (connectionsBuilder_ != null) { - return connectionsBuilder_.getMessageOrBuilderList(); + public Builder clearEndpointUuid() { + if (endpointUuidBuilder_ == null) { + endpointUuid_ = null; + onChanged(); } else { - return java.util.Collections.unmodifiableList(connections_); + endpointUuid_ = null; + endpointUuidBuilder_ = null; } + + return this; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.Uuid endpoint_uuid = 3;</code> */ - public context.ContextOuterClass.Connection.Builder addConnectionsBuilder() { - return getConnectionsFieldBuilder().addBuilder( - context.ContextOuterClass.Connection.getDefaultInstance()); + public context.ContextOuterClass.Uuid.Builder getEndpointUuidBuilder() { + + onChanged(); + return getEndpointUuidFieldBuilder().getBuilder(); } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.Uuid endpoint_uuid = 3;</code> */ - public context.ContextOuterClass.Connection.Builder addConnectionsBuilder( - int index) { - return getConnectionsFieldBuilder().addBuilder( - index, context.ContextOuterClass.Connection.getDefaultInstance()); + public context.ContextOuterClass.UuidOrBuilder getEndpointUuidOrBuilder() { + if (endpointUuidBuilder_ != null) { + return endpointUuidBuilder_.getMessageOrBuilder(); + } else { + return endpointUuid_ == null ? + context.ContextOuterClass.Uuid.getDefaultInstance() : endpointUuid_; + } } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>.context.Uuid endpoint_uuid = 3;</code> */ - public java.util.List<context.ContextOuterClass.Connection.Builder> - getConnectionsBuilderList() { - return getConnectionsFieldBuilder().getBuilderList(); - } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Connection, context.ContextOuterClass.Connection.Builder, context.ContextOuterClass.ConnectionOrBuilder> - getConnectionsFieldBuilder() { - if (connectionsBuilder_ == null) { - connectionsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Connection, context.ContextOuterClass.Connection.Builder, context.ContextOuterClass.ConnectionOrBuilder>( - connections_, - ((bitField0_ & 0x00000001) != 0), + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> + getEndpointUuidFieldBuilder() { + if (endpointUuidBuilder_ == null) { + endpointUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>( + getEndpointUuid(), getParentForChildren(), isClean()); - connections_ = null; + endpointUuid_ = null; } - return connectionsBuilder_; + return endpointUuidBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -49560,100 +54465,156 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ConnectionList) + // @@protoc_insertion_point(builder_scope:context.EndPointId) } - // @@protoc_insertion_point(class_scope:context.ConnectionList) - private static final context.ContextOuterClass.ConnectionList DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.EndPointId) + private static final context.ContextOuterClass.EndPointId DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionList(); + DEFAULT_INSTANCE = new context.ContextOuterClass.EndPointId(); } - public static context.ContextOuterClass.ConnectionList getDefaultInstance() { + public static context.ContextOuterClass.EndPointId getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ConnectionList> - PARSER = new com.google.protobuf.AbstractParser<ConnectionList>() { + private static final com.google.protobuf.Parser<EndPointId> + PARSER = new com.google.protobuf.AbstractParser<EndPointId>() { @java.lang.Override - public ConnectionList parsePartialFrom( + public EndPointId parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ConnectionList(input, extensionRegistry); + return new EndPointId(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ConnectionList> parser() { + public static com.google.protobuf.Parser<EndPointId> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ConnectionList> getParserForType() { + public com.google.protobuf.Parser<EndPointId> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ConnectionList getDefaultInstanceForType() { + public context.ContextOuterClass.EndPointId getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ConnectionEventOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ConnectionEvent) + public interface EndPointOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.EndPoint) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ - boolean hasEvent(); + boolean hasEndpointId(); /** - * <code>.context.Event event = 1;</code> - * @return The event. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. */ - context.ContextOuterClass.Event getEvent(); + context.ContextOuterClass.EndPointId getEndpointId(); /** - * <code>.context.Event event = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - context.ContextOuterClass.EventOrBuilder getEventOrBuilder(); + context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder(); + + /** + * <code>string name = 2;</code> + * @return The name. + */ + java.lang.String getName(); + /** + * <code>string name = 2;</code> + * @return The bytes for name. + */ + com.google.protobuf.ByteString + getNameBytes(); + + /** + * <code>string endpoint_type = 3;</code> + * @return The endpointType. + */ + java.lang.String getEndpointType(); + /** + * <code>string endpoint_type = 3;</code> + * @return The bytes for endpointType. + */ + com.google.protobuf.ByteString + getEndpointTypeBytes(); + + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @return A list containing the kpiSampleTypes. + */ + java.util.List<kpi_sample_types.KpiSampleTypes.KpiSampleType> getKpiSampleTypesList(); + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @return The count of kpiSampleTypes. + */ + int getKpiSampleTypesCount(); + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @param index The index of the element to return. + * @return The kpiSampleTypes at the given index. + */ + kpi_sample_types.KpiSampleTypes.KpiSampleType getKpiSampleTypes(int index); + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @return A list containing the enum numeric values on the wire for kpiSampleTypes. + */ + java.util.List<java.lang.Integer> + getKpiSampleTypesValueList(); + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @param index The index of the value to return. + * @return The enum numeric value on the wire of kpiSampleTypes at the given index. + */ + int getKpiSampleTypesValue(int index); /** - * <code>.context.ConnectionId connection_id = 2;</code> - * @return Whether the connectionId field is set. + * <code>.context.Location endpoint_location = 5;</code> + * @return Whether the endpointLocation field is set. */ - boolean hasConnectionId(); + boolean hasEndpointLocation(); /** - * <code>.context.ConnectionId connection_id = 2;</code> - * @return The connectionId. + * <code>.context.Location endpoint_location = 5;</code> + * @return The endpointLocation. */ - context.ContextOuterClass.ConnectionId getConnectionId(); + context.ContextOuterClass.Location getEndpointLocation(); /** - * <code>.context.ConnectionId connection_id = 2;</code> + * <code>.context.Location endpoint_location = 5;</code> */ - context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder(); + context.ContextOuterClass.LocationOrBuilder getEndpointLocationOrBuilder(); } /** - * Protobuf type {@code context.ConnectionEvent} + * Protobuf type {@code context.EndPoint} */ - public static final class ConnectionEvent extends + public static final class EndPoint extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ConnectionEvent) - ConnectionEventOrBuilder { + // @@protoc_insertion_point(message_implements:context.EndPoint) + EndPointOrBuilder { private static final long serialVersionUID = 0L; - // Use ConnectionEvent.newBuilder() to construct. - private ConnectionEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use EndPoint.newBuilder() to construct. + private EndPoint(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ConnectionEvent() { + private EndPoint() { + name_ = ""; + endpointType_ = ""; + kpiSampleTypes_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ConnectionEvent(); + return new EndPoint(); } @java.lang.Override @@ -49661,7 +54622,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ConnectionEvent( + private EndPoint( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -49669,6 +54630,7 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } + int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -49680,27 +54642,62 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.Event.Builder subBuilder = null; - if (event_ != null) { - subBuilder = event_.toBuilder(); + context.ContextOuterClass.EndPointId.Builder subBuilder = null; + if (endpointId_ != null) { + subBuilder = endpointId_.toBuilder(); } - event_ = input.readMessage(context.ContextOuterClass.Event.parser(), extensionRegistry); + endpointId_ = input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(event_); - event_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(endpointId_); + endpointId_ = subBuilder.buildPartial(); } break; } case 18: { - context.ContextOuterClass.ConnectionId.Builder subBuilder = null; - if (connectionId_ != null) { - subBuilder = connectionId_.toBuilder(); + java.lang.String s = input.readStringRequireUtf8(); + + name_ = s; + break; + } + case 26: { + java.lang.String s = input.readStringRequireUtf8(); + + endpointType_ = s; + break; + } + case 32: { + int rawValue = input.readEnum(); + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + kpiSampleTypes_ = new java.util.ArrayList<java.lang.Integer>(); + mutable_bitField0_ |= 0x00000001; } - connectionId_ = input.readMessage(context.ContextOuterClass.ConnectionId.parser(), extensionRegistry); + kpiSampleTypes_.add(rawValue); + break; + } + case 34: { + int length = input.readRawVarint32(); + int oldLimit = input.pushLimit(length); + while(input.getBytesUntilLimit() > 0) { + int rawValue = input.readEnum(); + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + kpiSampleTypes_ = new java.util.ArrayList<java.lang.Integer>(); + mutable_bitField0_ |= 0x00000001; + } + kpiSampleTypes_.add(rawValue); + } + input.popLimit(oldLimit); + break; + } + case 42: { + context.ContextOuterClass.Location.Builder subBuilder = null; + if (endpointLocation_ != null) { + subBuilder = endpointLocation_.toBuilder(); + } + endpointLocation_ = input.readMessage(context.ContextOuterClass.Location.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(connectionId_); - connectionId_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(endpointLocation_); + endpointLocation_ = subBuilder.buildPartial(); } break; @@ -49720,73 +54717,210 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { + if (((mutable_bitField0_ & 0x00000001) != 0)) { + kpiSampleTypes_ = java.util.Collections.unmodifiableList(kpiSampleTypes_); + } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionEvent_descriptor; + return context.ContextOuterClass.internal_static_context_EndPoint_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionEvent_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_EndPoint_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionEvent.class, context.ContextOuterClass.ConnectionEvent.Builder.class); + context.ContextOuterClass.EndPoint.class, context.ContextOuterClass.EndPoint.Builder.class); } - public static final int EVENT_FIELD_NUMBER = 1; - private context.ContextOuterClass.Event event_; + public static final int ENDPOINT_ID_FIELD_NUMBER = 1; + private context.ContextOuterClass.EndPointId endpointId_; /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ @java.lang.Override - public boolean hasEvent() { - return event_ != null; + public boolean hasEndpointId() { + return endpointId_ != null; } /** - * <code>.context.Event event = 1;</code> - * @return The event. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. */ @java.lang.Override - public context.ContextOuterClass.Event getEvent() { - return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; + public context.ContextOuterClass.EndPointId getEndpointId() { + return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; } /** - * <code>.context.Event event = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { - return getEvent(); + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { + return getEndpointId(); } - public static final int CONNECTION_ID_FIELD_NUMBER = 2; - private context.ContextOuterClass.ConnectionId connectionId_; + public static final int NAME_FIELD_NUMBER = 2; + private volatile java.lang.Object name_; /** - * <code>.context.ConnectionId connection_id = 2;</code> - * @return Whether the connectionId field is set. + * <code>string name = 2;</code> + * @return The name. */ @java.lang.Override - public boolean hasConnectionId() { - return connectionId_ != null; + public java.lang.String getName() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } } /** - * <code>.context.ConnectionId connection_id = 2;</code> - * @return The connectionId. + * <code>string name = 2;</code> + * @return The bytes for name. */ @java.lang.Override - public context.ContextOuterClass.ConnectionId getConnectionId() { - return connectionId_ == null ? context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } + + public static final int ENDPOINT_TYPE_FIELD_NUMBER = 3; + private volatile java.lang.Object endpointType_; /** - * <code>.context.ConnectionId connection_id = 2;</code> + * <code>string endpoint_type = 3;</code> + * @return The endpointType. */ @java.lang.Override - public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder() { - return getConnectionId(); + public java.lang.String getEndpointType() { + java.lang.Object ref = endpointType_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + endpointType_ = s; + return s; + } + } + /** + * <code>string endpoint_type = 3;</code> + * @return The bytes for endpointType. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getEndpointTypeBytes() { + java.lang.Object ref = endpointType_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + endpointType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int KPI_SAMPLE_TYPES_FIELD_NUMBER = 4; + private java.util.List<java.lang.Integer> kpiSampleTypes_; + private static final com.google.protobuf.Internal.ListAdapter.Converter< + java.lang.Integer, kpi_sample_types.KpiSampleTypes.KpiSampleType> kpiSampleTypes_converter_ = + new com.google.protobuf.Internal.ListAdapter.Converter< + java.lang.Integer, kpi_sample_types.KpiSampleTypes.KpiSampleType>() { + public kpi_sample_types.KpiSampleTypes.KpiSampleType convert(java.lang.Integer from) { + @SuppressWarnings("deprecation") + kpi_sample_types.KpiSampleTypes.KpiSampleType result = kpi_sample_types.KpiSampleTypes.KpiSampleType.valueOf(from); + return result == null ? kpi_sample_types.KpiSampleTypes.KpiSampleType.UNRECOGNIZED : result; + } + }; + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @return A list containing the kpiSampleTypes. + */ + @java.lang.Override + public java.util.List<kpi_sample_types.KpiSampleTypes.KpiSampleType> getKpiSampleTypesList() { + return new com.google.protobuf.Internal.ListAdapter< + java.lang.Integer, kpi_sample_types.KpiSampleTypes.KpiSampleType>(kpiSampleTypes_, kpiSampleTypes_converter_); + } + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @return The count of kpiSampleTypes. + */ + @java.lang.Override + public int getKpiSampleTypesCount() { + return kpiSampleTypes_.size(); + } + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @param index The index of the element to return. + * @return The kpiSampleTypes at the given index. + */ + @java.lang.Override + public kpi_sample_types.KpiSampleTypes.KpiSampleType getKpiSampleTypes(int index) { + return kpiSampleTypes_converter_.convert(kpiSampleTypes_.get(index)); + } + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @return A list containing the enum numeric values on the wire for kpiSampleTypes. + */ + @java.lang.Override + public java.util.List<java.lang.Integer> + getKpiSampleTypesValueList() { + return kpiSampleTypes_; + } + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @param index The index of the value to return. + * @return The enum numeric value on the wire of kpiSampleTypes at the given index. + */ + @java.lang.Override + public int getKpiSampleTypesValue(int index) { + return kpiSampleTypes_.get(index); + } + private int kpiSampleTypesMemoizedSerializedSize; + + public static final int ENDPOINT_LOCATION_FIELD_NUMBER = 5; + private context.ContextOuterClass.Location endpointLocation_; + /** + * <code>.context.Location endpoint_location = 5;</code> + * @return Whether the endpointLocation field is set. + */ + @java.lang.Override + public boolean hasEndpointLocation() { + return endpointLocation_ != null; + } + /** + * <code>.context.Location endpoint_location = 5;</code> + * @return The endpointLocation. + */ + @java.lang.Override + public context.ContextOuterClass.Location getEndpointLocation() { + return endpointLocation_ == null ? context.ContextOuterClass.Location.getDefaultInstance() : endpointLocation_; + } + /** + * <code>.context.Location endpoint_location = 5;</code> + */ + @java.lang.Override + public context.ContextOuterClass.LocationOrBuilder getEndpointLocationOrBuilder() { + return getEndpointLocation(); } private byte memoizedIsInitialized = -1; @@ -49803,11 +54937,25 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (event_ != null) { - output.writeMessage(1, getEvent()); + getSerializedSize(); + if (endpointId_ != null) { + output.writeMessage(1, getEndpointId()); } - if (connectionId_ != null) { - output.writeMessage(2, getConnectionId()); + if (!getNameBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_); + } + if (!getEndpointTypeBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, endpointType_); + } + if (getKpiSampleTypesList().size() > 0) { + output.writeUInt32NoTag(34); + output.writeUInt32NoTag(kpiSampleTypesMemoizedSerializedSize); + } + for (int i = 0; i < kpiSampleTypes_.size(); i++) { + output.writeEnumNoTag(kpiSampleTypes_.get(i)); + } + if (endpointLocation_ != null) { + output.writeMessage(5, getEndpointLocation()); } unknownFields.writeTo(output); } @@ -49818,13 +54966,31 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (event_ != null) { + if (endpointId_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getEvent()); + .computeMessageSize(1, getEndpointId()); } - if (connectionId_ != null) { + if (!getNameBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_); + } + if (!getEndpointTypeBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, endpointType_); + } + { + int dataSize = 0; + for (int i = 0; i < kpiSampleTypes_.size(); i++) { + dataSize += com.google.protobuf.CodedOutputStream + .computeEnumSizeNoTag(kpiSampleTypes_.get(i)); + } + size += dataSize; + if (!getKpiSampleTypesList().isEmpty()) { size += 1; + size += com.google.protobuf.CodedOutputStream + .computeUInt32SizeNoTag(dataSize); + }kpiSampleTypesMemoizedSerializedSize = dataSize; + } + if (endpointLocation_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, getConnectionId()); + .computeMessageSize(5, getEndpointLocation()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -49836,20 +55002,25 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ConnectionEvent)) { + if (!(obj instanceof context.ContextOuterClass.EndPoint)) { return super.equals(obj); } - context.ContextOuterClass.ConnectionEvent other = (context.ContextOuterClass.ConnectionEvent) obj; + context.ContextOuterClass.EndPoint other = (context.ContextOuterClass.EndPoint) obj; - if (hasEvent() != other.hasEvent()) return false; - if (hasEvent()) { - if (!getEvent() - .equals(other.getEvent())) return false; + if (hasEndpointId() != other.hasEndpointId()) return false; + if (hasEndpointId()) { + if (!getEndpointId() + .equals(other.getEndpointId())) return false; } - if (hasConnectionId() != other.hasConnectionId()) return false; - if (hasConnectionId()) { - if (!getConnectionId() - .equals(other.getConnectionId())) return false; + if (!getName() + .equals(other.getName())) return false; + if (!getEndpointType() + .equals(other.getEndpointType())) return false; + if (!kpiSampleTypes_.equals(other.kpiSampleTypes_)) return false; + if (hasEndpointLocation() != other.hasEndpointLocation()) return false; + if (hasEndpointLocation()) { + if (!getEndpointLocation() + .equals(other.getEndpointLocation())) return false; } if (!unknownFields.equals(other.unknownFields)) return false; return true; @@ -49862,82 +55033,90 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasEvent()) { - hash = (37 * hash) + EVENT_FIELD_NUMBER; - hash = (53 * hash) + getEvent().hashCode(); + if (hasEndpointId()) { + hash = (37 * hash) + ENDPOINT_ID_FIELD_NUMBER; + hash = (53 * hash) + getEndpointId().hashCode(); } - if (hasConnectionId()) { - hash = (37 * hash) + CONNECTION_ID_FIELD_NUMBER; - hash = (53 * hash) + getConnectionId().hashCode(); + hash = (37 * hash) + NAME_FIELD_NUMBER; + hash = (53 * hash) + getName().hashCode(); + hash = (37 * hash) + ENDPOINT_TYPE_FIELD_NUMBER; + hash = (53 * hash) + getEndpointType().hashCode(); + if (getKpiSampleTypesCount() > 0) { + hash = (37 * hash) + KPI_SAMPLE_TYPES_FIELD_NUMBER; + hash = (53 * hash) + kpiSampleTypes_.hashCode(); + } + if (hasEndpointLocation()) { + hash = (37 * hash) + ENDPOINT_LOCATION_FIELD_NUMBER; + hash = (53 * hash) + getEndpointLocation().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ConnectionEvent parseFrom( + public static context.ContextOuterClass.EndPoint parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionEvent parseFrom( + public static context.ContextOuterClass.EndPoint parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionEvent parseFrom( + public static context.ContextOuterClass.EndPoint parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionEvent parseFrom( + public static context.ContextOuterClass.EndPoint parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionEvent parseFrom(byte[] data) + public static context.ContextOuterClass.EndPoint parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionEvent parseFrom( + public static context.ContextOuterClass.EndPoint parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionEvent parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.EndPoint parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionEvent parseFrom( + public static context.ContextOuterClass.EndPoint 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 context.ContextOuterClass.ConnectionEvent parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.EndPoint parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionEvent parseDelimitedFrom( + public static context.ContextOuterClass.EndPoint 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 context.ContextOuterClass.ConnectionEvent parseFrom( + public static context.ContextOuterClass.EndPoint parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionEvent parseFrom( + public static context.ContextOuterClass.EndPoint parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -49950,7 +55129,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ConnectionEvent prototype) { + public static Builder newBuilder(context.ContextOuterClass.EndPoint prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -49966,26 +55145,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ConnectionEvent} + * Protobuf type {@code context.EndPoint} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ConnectionEvent) - context.ContextOuterClass.ConnectionEventOrBuilder { + // @@protoc_insertion_point(builder_implements:context.EndPoint) + context.ContextOuterClass.EndPointOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionEvent_descriptor; + return context.ContextOuterClass.internal_static_context_EndPoint_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionEvent_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_EndPoint_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionEvent.class, context.ContextOuterClass.ConnectionEvent.Builder.class); + context.ContextOuterClass.EndPoint.class, context.ContextOuterClass.EndPoint.Builder.class); } - // Construct using context.ContextOuterClass.ConnectionEvent.newBuilder() + // Construct using context.ContextOuterClass.EndPoint.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -50003,17 +55182,23 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - if (eventBuilder_ == null) { - event_ = null; + if (endpointIdBuilder_ == null) { + endpointId_ = null; } else { - event_ = null; - eventBuilder_ = null; + endpointId_ = null; + endpointIdBuilder_ = null; } - if (connectionIdBuilder_ == null) { - connectionId_ = null; + name_ = ""; + + endpointType_ = ""; + + kpiSampleTypes_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + if (endpointLocationBuilder_ == null) { + endpointLocation_ = null; } else { - connectionId_ = null; - connectionIdBuilder_ = null; + endpointLocation_ = null; + endpointLocationBuilder_ = null; } return this; } @@ -50021,17 +55206,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ConnectionEvent_descriptor; + return context.ContextOuterClass.internal_static_context_EndPoint_descriptor; } @java.lang.Override - public context.ContextOuterClass.ConnectionEvent getDefaultInstanceForType() { - return context.ContextOuterClass.ConnectionEvent.getDefaultInstance(); + public context.ContextOuterClass.EndPoint getDefaultInstanceForType() { + return context.ContextOuterClass.EndPoint.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ConnectionEvent build() { - context.ContextOuterClass.ConnectionEvent result = buildPartial(); + public context.ContextOuterClass.EndPoint build() { + context.ContextOuterClass.EndPoint result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -50039,17 +55224,25 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ConnectionEvent buildPartial() { - context.ContextOuterClass.ConnectionEvent result = new context.ContextOuterClass.ConnectionEvent(this); - if (eventBuilder_ == null) { - result.event_ = event_; + public context.ContextOuterClass.EndPoint buildPartial() { + context.ContextOuterClass.EndPoint result = new context.ContextOuterClass.EndPoint(this); + int from_bitField0_ = bitField0_; + if (endpointIdBuilder_ == null) { + result.endpointId_ = endpointId_; } else { - result.event_ = eventBuilder_.build(); + result.endpointId_ = endpointIdBuilder_.build(); } - if (connectionIdBuilder_ == null) { - result.connectionId_ = connectionId_; + result.name_ = name_; + result.endpointType_ = endpointType_; + if (((bitField0_ & 0x00000001) != 0)) { + kpiSampleTypes_ = java.util.Collections.unmodifiableList(kpiSampleTypes_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.kpiSampleTypes_ = kpiSampleTypes_; + if (endpointLocationBuilder_ == null) { + result.endpointLocation_ = endpointLocation_; } else { - result.connectionId_ = connectionIdBuilder_.build(); + result.endpointLocation_ = endpointLocationBuilder_.build(); } onBuilt(); return result; @@ -50089,21 +55282,39 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ConnectionEvent) { - return mergeFrom((context.ContextOuterClass.ConnectionEvent)other); + if (other instanceof context.ContextOuterClass.EndPoint) { + return mergeFrom((context.ContextOuterClass.EndPoint)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ConnectionEvent other) { - if (other == context.ContextOuterClass.ConnectionEvent.getDefaultInstance()) return this; - if (other.hasEvent()) { - mergeEvent(other.getEvent()); + public Builder mergeFrom(context.ContextOuterClass.EndPoint other) { + if (other == context.ContextOuterClass.EndPoint.getDefaultInstance()) return this; + if (other.hasEndpointId()) { + mergeEndpointId(other.getEndpointId()); + } + if (!other.getName().isEmpty()) { + name_ = other.name_; + onChanged(); + } + if (!other.getEndpointType().isEmpty()) { + endpointType_ = other.endpointType_; + onChanged(); + } + if (!other.kpiSampleTypes_.isEmpty()) { + if (kpiSampleTypes_.isEmpty()) { + kpiSampleTypes_ = other.kpiSampleTypes_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureKpiSampleTypesIsMutable(); + kpiSampleTypes_.addAll(other.kpiSampleTypes_); + } + onChanged(); } - if (other.hasConnectionId()) { - mergeConnectionId(other.getConnectionId()); + if (other.hasEndpointLocation()) { + mergeEndpointLocation(other.getEndpointLocation()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -50120,11 +55331,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ConnectionEvent parsedMessage = null; + context.ContextOuterClass.EndPoint parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ConnectionEvent) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.EndPoint) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -50133,243 +55344,536 @@ public final class ContextOuterClass { } return this; } + private int bitField0_; - private context.ContextOuterClass.Event event_; + private context.ContextOuterClass.EndPointId endpointId_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> eventBuilder_; + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> endpointIdBuilder_; /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ - public boolean hasEvent() { - return eventBuilder_ != null || event_ != null; + public boolean hasEndpointId() { + return endpointIdBuilder_ != null || endpointId_ != null; } /** - * <code>.context.Event event = 1;</code> - * @return The event. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. */ - public context.ContextOuterClass.Event getEvent() { - if (eventBuilder_ == null) { - return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; + public context.ContextOuterClass.EndPointId getEndpointId() { + if (endpointIdBuilder_ == null) { + return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; } else { - return eventBuilder_.getMessage(); + return endpointIdBuilder_.getMessage(); } } /** - * <code>.context.Event event = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder setEvent(context.ContextOuterClass.Event value) { - if (eventBuilder_ == null) { + public Builder setEndpointId(context.ContextOuterClass.EndPointId value) { + if (endpointIdBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - event_ = value; + endpointId_ = value; onChanged(); } else { - eventBuilder_.setMessage(value); + endpointIdBuilder_.setMessage(value); } return this; } /** - * <code>.context.Event event = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder setEvent( - context.ContextOuterClass.Event.Builder builderForValue) { - if (eventBuilder_ == null) { - event_ = builderForValue.build(); + public Builder setEndpointId( + context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (endpointIdBuilder_ == null) { + endpointId_ = builderForValue.build(); onChanged(); } else { - eventBuilder_.setMessage(builderForValue.build()); + endpointIdBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.Event event = 1;</code> + * <code>.context.EndPointId endpoint_id = 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 mergeEndpointId(context.ContextOuterClass.EndPointId value) { + if (endpointIdBuilder_ == null) { + if (endpointId_ != null) { + endpointId_ = + context.ContextOuterClass.EndPointId.newBuilder(endpointId_).mergeFrom(value).buildPartial(); } else { - event_ = value; + endpointId_ = value; } onChanged(); } else { - eventBuilder_.mergeFrom(value); + endpointIdBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.Event event = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder clearEvent() { - if (eventBuilder_ == null) { - event_ = null; + public Builder clearEndpointId() { + if (endpointIdBuilder_ == null) { + endpointId_ = null; onChanged(); } else { - event_ = null; - eventBuilder_ = null; + endpointId_ = null; + endpointIdBuilder_ = null; } return this; } /** - * <code>.context.Event event = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public context.ContextOuterClass.Event.Builder getEventBuilder() { + public context.ContextOuterClass.EndPointId.Builder getEndpointIdBuilder() { onChanged(); - return getEventFieldBuilder().getBuilder(); + return getEndpointIdFieldBuilder().getBuilder(); } /** - * <code>.context.Event event = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { - if (eventBuilder_ != null) { - return eventBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { + if (endpointIdBuilder_ != null) { + return endpointIdBuilder_.getMessageOrBuilder(); } else { - return event_ == null ? - context.ContextOuterClass.Event.getDefaultInstance() : event_; + return endpointId_ == null ? + context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; } } /** - * <code>.context.Event event = 1;</code> + * <code>.context.EndPointId endpoint_id = 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(), + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> + getEndpointIdFieldBuilder() { + if (endpointIdBuilder_ == null) { + endpointIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( + getEndpointId(), getParentForChildren(), isClean()); - event_ = null; + endpointId_ = null; } - return eventBuilder_; + return endpointIdBuilder_; } - private context.ContextOuterClass.ConnectionId connectionId_; + private java.lang.Object name_ = ""; + /** + * <code>string name = 2;</code> + * @return The name. + */ + public java.lang.String getName() { + java.lang.Object ref = name_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * <code>string name = 2;</code> + * @return The bytes for name. + */ + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * <code>string name = 2;</code> + * @param value The name to set. + * @return This builder for chaining. + */ + public Builder setName( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + name_ = value; + onChanged(); + return this; + } + /** + * <code>string name = 2;</code> + * @return This builder for chaining. + */ + public Builder clearName() { + + name_ = getDefaultInstance().getName(); + onChanged(); + return this; + } + /** + * <code>string name = 2;</code> + * @param value The bytes for name to set. + * @return This builder for chaining. + */ + public Builder setNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + name_ = value; + onChanged(); + return this; + } + + private java.lang.Object endpointType_ = ""; + /** + * <code>string endpoint_type = 3;</code> + * @return The endpointType. + */ + public java.lang.String getEndpointType() { + java.lang.Object ref = endpointType_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + endpointType_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * <code>string endpoint_type = 3;</code> + * @return The bytes for endpointType. + */ + public com.google.protobuf.ByteString + getEndpointTypeBytes() { + java.lang.Object ref = endpointType_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + endpointType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * <code>string endpoint_type = 3;</code> + * @param value The endpointType to set. + * @return This builder for chaining. + */ + public Builder setEndpointType( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + endpointType_ = value; + onChanged(); + return this; + } + /** + * <code>string endpoint_type = 3;</code> + * @return This builder for chaining. + */ + public Builder clearEndpointType() { + + endpointType_ = getDefaultInstance().getEndpointType(); + onChanged(); + return this; + } + /** + * <code>string endpoint_type = 3;</code> + * @param value The bytes for endpointType to set. + * @return This builder for chaining. + */ + public Builder setEndpointTypeBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + endpointType_ = value; + onChanged(); + return this; + } + + private java.util.List<java.lang.Integer> kpiSampleTypes_ = + java.util.Collections.emptyList(); + private void ensureKpiSampleTypesIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + kpiSampleTypes_ = new java.util.ArrayList<java.lang.Integer>(kpiSampleTypes_); + bitField0_ |= 0x00000001; + } + } + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @return A list containing the kpiSampleTypes. + */ + public java.util.List<kpi_sample_types.KpiSampleTypes.KpiSampleType> getKpiSampleTypesList() { + return new com.google.protobuf.Internal.ListAdapter< + java.lang.Integer, kpi_sample_types.KpiSampleTypes.KpiSampleType>(kpiSampleTypes_, kpiSampleTypes_converter_); + } + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @return The count of kpiSampleTypes. + */ + public int getKpiSampleTypesCount() { + return kpiSampleTypes_.size(); + } + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @param index The index of the element to return. + * @return The kpiSampleTypes at the given index. + */ + public kpi_sample_types.KpiSampleTypes.KpiSampleType getKpiSampleTypes(int index) { + return kpiSampleTypes_converter_.convert(kpiSampleTypes_.get(index)); + } + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @param index The index to set the value at. + * @param value The kpiSampleTypes to set. + * @return This builder for chaining. + */ + public Builder setKpiSampleTypes( + int index, kpi_sample_types.KpiSampleTypes.KpiSampleType value) { + if (value == null) { + throw new NullPointerException(); + } + ensureKpiSampleTypesIsMutable(); + kpiSampleTypes_.set(index, value.getNumber()); + onChanged(); + return this; + } + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @param value The kpiSampleTypes to add. + * @return This builder for chaining. + */ + public Builder addKpiSampleTypes(kpi_sample_types.KpiSampleTypes.KpiSampleType value) { + if (value == null) { + throw new NullPointerException(); + } + ensureKpiSampleTypesIsMutable(); + kpiSampleTypes_.add(value.getNumber()); + onChanged(); + return this; + } + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @param values The kpiSampleTypes to add. + * @return This builder for chaining. + */ + public Builder addAllKpiSampleTypes( + java.lang.Iterable<? extends kpi_sample_types.KpiSampleTypes.KpiSampleType> values) { + ensureKpiSampleTypesIsMutable(); + for (kpi_sample_types.KpiSampleTypes.KpiSampleType value : values) { + kpiSampleTypes_.add(value.getNumber()); + } + onChanged(); + return this; + } + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @return This builder for chaining. + */ + public Builder clearKpiSampleTypes() { + kpiSampleTypes_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @return A list containing the enum numeric values on the wire for kpiSampleTypes. + */ + public java.util.List<java.lang.Integer> + getKpiSampleTypesValueList() { + return java.util.Collections.unmodifiableList(kpiSampleTypes_); + } + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @param index The index of the value to return. + * @return The enum numeric value on the wire of kpiSampleTypes at the given index. + */ + public int getKpiSampleTypesValue(int index) { + return kpiSampleTypes_.get(index); + } + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @param index The index of the value to return. + * @return The enum numeric value on the wire of kpiSampleTypes at the given index. + * @return This builder for chaining. + */ + public Builder setKpiSampleTypesValue( + int index, int value) { + ensureKpiSampleTypesIsMutable(); + kpiSampleTypes_.set(index, value); + onChanged(); + return this; + } + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @param value The enum numeric value on the wire for kpiSampleTypes to add. + * @return This builder for chaining. + */ + public Builder addKpiSampleTypesValue(int value) { + ensureKpiSampleTypesIsMutable(); + kpiSampleTypes_.add(value); + onChanged(); + return this; + } + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @param values The enum numeric values on the wire for kpiSampleTypes to add. + * @return This builder for chaining. + */ + public Builder addAllKpiSampleTypesValue( + java.lang.Iterable<java.lang.Integer> values) { + ensureKpiSampleTypesIsMutable(); + for (int value : values) { + kpiSampleTypes_.add(value); + } + onChanged(); + return this; + } + + private context.ContextOuterClass.Location endpointLocation_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> connectionIdBuilder_; + context.ContextOuterClass.Location, context.ContextOuterClass.Location.Builder, context.ContextOuterClass.LocationOrBuilder> endpointLocationBuilder_; /** - * <code>.context.ConnectionId connection_id = 2;</code> - * @return Whether the connectionId field is set. + * <code>.context.Location endpoint_location = 5;</code> + * @return Whether the endpointLocation field is set. */ - public boolean hasConnectionId() { - return connectionIdBuilder_ != null || connectionId_ != null; + public boolean hasEndpointLocation() { + return endpointLocationBuilder_ != null || endpointLocation_ != null; } /** - * <code>.context.ConnectionId connection_id = 2;</code> - * @return The connectionId. + * <code>.context.Location endpoint_location = 5;</code> + * @return The endpointLocation. */ - public context.ContextOuterClass.ConnectionId getConnectionId() { - if (connectionIdBuilder_ == null) { - return connectionId_ == null ? context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; + public context.ContextOuterClass.Location getEndpointLocation() { + if (endpointLocationBuilder_ == null) { + return endpointLocation_ == null ? context.ContextOuterClass.Location.getDefaultInstance() : endpointLocation_; } else { - return connectionIdBuilder_.getMessage(); + return endpointLocationBuilder_.getMessage(); } } /** - * <code>.context.ConnectionId connection_id = 2;</code> + * <code>.context.Location endpoint_location = 5;</code> */ - public Builder setConnectionId(context.ContextOuterClass.ConnectionId value) { - if (connectionIdBuilder_ == null) { + public Builder setEndpointLocation(context.ContextOuterClass.Location value) { + if (endpointLocationBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - connectionId_ = value; + endpointLocation_ = value; onChanged(); } else { - connectionIdBuilder_.setMessage(value); + endpointLocationBuilder_.setMessage(value); } return this; } /** - * <code>.context.ConnectionId connection_id = 2;</code> + * <code>.context.Location endpoint_location = 5;</code> */ - public Builder setConnectionId( - context.ContextOuterClass.ConnectionId.Builder builderForValue) { - if (connectionIdBuilder_ == null) { - connectionId_ = builderForValue.build(); + public Builder setEndpointLocation( + context.ContextOuterClass.Location.Builder builderForValue) { + if (endpointLocationBuilder_ == null) { + endpointLocation_ = builderForValue.build(); onChanged(); } else { - connectionIdBuilder_.setMessage(builderForValue.build()); + endpointLocationBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.ConnectionId connection_id = 2;</code> + * <code>.context.Location endpoint_location = 5;</code> */ - public Builder mergeConnectionId(context.ContextOuterClass.ConnectionId value) { - if (connectionIdBuilder_ == null) { - if (connectionId_ != null) { - connectionId_ = - context.ContextOuterClass.ConnectionId.newBuilder(connectionId_).mergeFrom(value).buildPartial(); + public Builder mergeEndpointLocation(context.ContextOuterClass.Location value) { + if (endpointLocationBuilder_ == null) { + if (endpointLocation_ != null) { + endpointLocation_ = + context.ContextOuterClass.Location.newBuilder(endpointLocation_).mergeFrom(value).buildPartial(); } else { - connectionId_ = value; + endpointLocation_ = value; } onChanged(); } else { - connectionIdBuilder_.mergeFrom(value); + endpointLocationBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.ConnectionId connection_id = 2;</code> + * <code>.context.Location endpoint_location = 5;</code> */ - public Builder clearConnectionId() { - if (connectionIdBuilder_ == null) { - connectionId_ = null; + public Builder clearEndpointLocation() { + if (endpointLocationBuilder_ == null) { + endpointLocation_ = null; onChanged(); } else { - connectionId_ = null; - connectionIdBuilder_ = null; + endpointLocation_ = null; + endpointLocationBuilder_ = null; } return this; } /** - * <code>.context.ConnectionId connection_id = 2;</code> + * <code>.context.Location endpoint_location = 5;</code> */ - public context.ContextOuterClass.ConnectionId.Builder getConnectionIdBuilder() { + public context.ContextOuterClass.Location.Builder getEndpointLocationBuilder() { onChanged(); - return getConnectionIdFieldBuilder().getBuilder(); + return getEndpointLocationFieldBuilder().getBuilder(); } /** - * <code>.context.ConnectionId connection_id = 2;</code> + * <code>.context.Location endpoint_location = 5;</code> */ - public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder() { - if (connectionIdBuilder_ != null) { - return connectionIdBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.LocationOrBuilder getEndpointLocationOrBuilder() { + if (endpointLocationBuilder_ != null) { + return endpointLocationBuilder_.getMessageOrBuilder(); } else { - return connectionId_ == null ? - context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; + return endpointLocation_ == null ? + context.ContextOuterClass.Location.getDefaultInstance() : endpointLocation_; } } /** - * <code>.context.ConnectionId connection_id = 2;</code> + * <code>.context.Location endpoint_location = 5;</code> */ private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> - getConnectionIdFieldBuilder() { - if (connectionIdBuilder_ == null) { - connectionIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder>( - getConnectionId(), + context.ContextOuterClass.Location, context.ContextOuterClass.Location.Builder, context.ContextOuterClass.LocationOrBuilder> + getEndpointLocationFieldBuilder() { + if (endpointLocationBuilder_ == null) { + endpointLocationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Location, context.ContextOuterClass.Location.Builder, context.ContextOuterClass.LocationOrBuilder>( + getEndpointLocation(), getParentForChildren(), isClean()); - connectionId_ = null; + endpointLocation_ = null; } - return connectionIdBuilder_; + return endpointLocationBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -50384,119 +55888,124 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ConnectionEvent) + // @@protoc_insertion_point(builder_scope:context.EndPoint) } - // @@protoc_insertion_point(class_scope:context.ConnectionEvent) - private static final context.ContextOuterClass.ConnectionEvent DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.EndPoint) + private static final context.ContextOuterClass.EndPoint DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionEvent(); + DEFAULT_INSTANCE = new context.ContextOuterClass.EndPoint(); } - public static context.ContextOuterClass.ConnectionEvent getDefaultInstance() { + public static context.ContextOuterClass.EndPoint getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ConnectionEvent> - PARSER = new com.google.protobuf.AbstractParser<ConnectionEvent>() { + private static final com.google.protobuf.Parser<EndPoint> + PARSER = new com.google.protobuf.AbstractParser<EndPoint>() { @java.lang.Override - public ConnectionEvent parsePartialFrom( + public EndPoint parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ConnectionEvent(input, extensionRegistry); + return new EndPoint(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ConnectionEvent> parser() { + public static com.google.protobuf.Parser<EndPoint> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ConnectionEvent> getParserForType() { + public com.google.protobuf.Parser<EndPoint> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ConnectionEvent getDefaultInstanceForType() { + public context.ContextOuterClass.EndPoint getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface EndPointIdOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.EndPointId) + public interface EndPointNameOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.EndPointName) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.TopologyId topology_id = 1;</code> - * @return Whether the topologyId field is set. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ - boolean hasTopologyId(); + boolean hasEndpointId(); /** - * <code>.context.TopologyId topology_id = 1;</code> - * @return The topologyId. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. */ - context.ContextOuterClass.TopologyId getTopologyId(); + context.ContextOuterClass.EndPointId getEndpointId(); /** - * <code>.context.TopologyId topology_id = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder(); + context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder(); /** - * <code>.context.DeviceId device_id = 2;</code> - * @return Whether the deviceId field is set. + * <code>string device_name = 2;</code> + * @return The deviceName. */ - boolean hasDeviceId(); + java.lang.String getDeviceName(); /** - * <code>.context.DeviceId device_id = 2;</code> - * @return The deviceId. + * <code>string device_name = 2;</code> + * @return The bytes for deviceName. */ - context.ContextOuterClass.DeviceId getDeviceId(); + com.google.protobuf.ByteString + getDeviceNameBytes(); + /** - * <code>.context.DeviceId device_id = 2;</code> + * <code>string endpoint_name = 3;</code> + * @return The endpointName. */ - context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder(); - + java.lang.String getEndpointName(); /** - * <code>.context.Uuid endpoint_uuid = 3;</code> - * @return Whether the endpointUuid field is set. + * <code>string endpoint_name = 3;</code> + * @return The bytes for endpointName. */ - boolean hasEndpointUuid(); + com.google.protobuf.ByteString + getEndpointNameBytes(); + /** - * <code>.context.Uuid endpoint_uuid = 3;</code> - * @return The endpointUuid. + * <code>string endpoint_type = 4;</code> + * @return The endpointType. */ - context.ContextOuterClass.Uuid getEndpointUuid(); + java.lang.String getEndpointType(); /** - * <code>.context.Uuid endpoint_uuid = 3;</code> + * <code>string endpoint_type = 4;</code> + * @return The bytes for endpointType. */ - context.ContextOuterClass.UuidOrBuilder getEndpointUuidOrBuilder(); + com.google.protobuf.ByteString + getEndpointTypeBytes(); } /** - * <pre> - * ----- Endpoint ------------------------------------------------------------------------------------------------------ - * </pre> - * - * Protobuf type {@code context.EndPointId} + * Protobuf type {@code context.EndPointName} */ - public static final class EndPointId extends + public static final class EndPointName extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.EndPointId) - EndPointIdOrBuilder { + // @@protoc_insertion_point(message_implements:context.EndPointName) + EndPointNameOrBuilder { private static final long serialVersionUID = 0L; - // Use EndPointId.newBuilder() to construct. - private EndPointId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use EndPointName.newBuilder() to construct. + private EndPointName(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private EndPointId() { + private EndPointName() { + deviceName_ = ""; + endpointName_ = ""; + endpointType_ = ""; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new EndPointId(); + return new EndPointName(); } @java.lang.Override @@ -50504,7 +56013,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private EndPointId( + private EndPointName( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -50523,42 +56032,34 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.TopologyId.Builder subBuilder = null; - if (topologyId_ != null) { - subBuilder = topologyId_.toBuilder(); + context.ContextOuterClass.EndPointId.Builder subBuilder = null; + if (endpointId_ != null) { + subBuilder = endpointId_.toBuilder(); } - topologyId_ = input.readMessage(context.ContextOuterClass.TopologyId.parser(), extensionRegistry); + endpointId_ = input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(topologyId_); - topologyId_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(endpointId_); + endpointId_ = subBuilder.buildPartial(); } break; } case 18: { - context.ContextOuterClass.DeviceId.Builder subBuilder = null; - if (deviceId_ != null) { - subBuilder = deviceId_.toBuilder(); - } - deviceId_ = input.readMessage(context.ContextOuterClass.DeviceId.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(deviceId_); - deviceId_ = subBuilder.buildPartial(); - } + java.lang.String s = input.readStringRequireUtf8(); + deviceName_ = s; break; } case 26: { - context.ContextOuterClass.Uuid.Builder subBuilder = null; - if (endpointUuid_ != null) { - subBuilder = endpointUuid_.toBuilder(); - } - endpointUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(endpointUuid_); - endpointUuid_ = subBuilder.buildPartial(); - } + java.lang.String s = input.readStringRequireUtf8(); + + endpointName_ = s; + break; + } + case 34: { + java.lang.String s = input.readStringRequireUtf8(); + endpointType_ = s; break; } default: { @@ -50582,93 +56083,155 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_EndPointId_descriptor; + return context.ContextOuterClass.internal_static_context_EndPointName_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_EndPointId_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_EndPointName_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.EndPointId.class, context.ContextOuterClass.EndPointId.Builder.class); + context.ContextOuterClass.EndPointName.class, context.ContextOuterClass.EndPointName.Builder.class); } - public static final int TOPOLOGY_ID_FIELD_NUMBER = 1; - private context.ContextOuterClass.TopologyId topologyId_; + public static final int ENDPOINT_ID_FIELD_NUMBER = 1; + private context.ContextOuterClass.EndPointId endpointId_; /** - * <code>.context.TopologyId topology_id = 1;</code> - * @return Whether the topologyId field is set. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ @java.lang.Override - public boolean hasTopologyId() { - return topologyId_ != null; + public boolean hasEndpointId() { + return endpointId_ != null; } /** - * <code>.context.TopologyId topology_id = 1;</code> - * @return The topologyId. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. */ @java.lang.Override - public context.ContextOuterClass.TopologyId getTopologyId() { - return topologyId_ == null ? context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_; + public context.ContextOuterClass.EndPointId getEndpointId() { + return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; } /** - * <code>.context.TopologyId topology_id = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder() { - return getTopologyId(); + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { + return getEndpointId(); } - public static final int DEVICE_ID_FIELD_NUMBER = 2; - private context.ContextOuterClass.DeviceId deviceId_; + public static final int DEVICE_NAME_FIELD_NUMBER = 2; + private volatile java.lang.Object deviceName_; /** - * <code>.context.DeviceId device_id = 2;</code> - * @return Whether the deviceId field is set. + * <code>string device_name = 2;</code> + * @return The deviceName. */ @java.lang.Override - public boolean hasDeviceId() { - return deviceId_ != null; + public java.lang.String getDeviceName() { + java.lang.Object ref = deviceName_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + deviceName_ = s; + return s; + } } /** - * <code>.context.DeviceId device_id = 2;</code> - * @return The deviceId. + * <code>string device_name = 2;</code> + * @return The bytes for deviceName. */ @java.lang.Override - public context.ContextOuterClass.DeviceId getDeviceId() { - return deviceId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; + public com.google.protobuf.ByteString + getDeviceNameBytes() { + java.lang.Object ref = deviceName_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + deviceName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } + + public static final int ENDPOINT_NAME_FIELD_NUMBER = 3; + private volatile java.lang.Object endpointName_; /** - * <code>.context.DeviceId device_id = 2;</code> + * <code>string endpoint_name = 3;</code> + * @return The endpointName. */ @java.lang.Override - public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder() { - return getDeviceId(); + public java.lang.String getEndpointName() { + java.lang.Object ref = endpointName_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + endpointName_ = s; + return s; + } } - - public static final int ENDPOINT_UUID_FIELD_NUMBER = 3; - private context.ContextOuterClass.Uuid endpointUuid_; /** - * <code>.context.Uuid endpoint_uuid = 3;</code> - * @return Whether the endpointUuid field is set. + * <code>string endpoint_name = 3;</code> + * @return The bytes for endpointName. */ @java.lang.Override - public boolean hasEndpointUuid() { - return endpointUuid_ != null; + public com.google.protobuf.ByteString + getEndpointNameBytes() { + java.lang.Object ref = endpointName_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + endpointName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } + + public static final int ENDPOINT_TYPE_FIELD_NUMBER = 4; + private volatile java.lang.Object endpointType_; /** - * <code>.context.Uuid endpoint_uuid = 3;</code> - * @return The endpointUuid. + * <code>string endpoint_type = 4;</code> + * @return The endpointType. */ @java.lang.Override - public context.ContextOuterClass.Uuid getEndpointUuid() { - return endpointUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : endpointUuid_; + public java.lang.String getEndpointType() { + java.lang.Object ref = endpointType_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + endpointType_ = s; + return s; + } } /** - * <code>.context.Uuid endpoint_uuid = 3;</code> + * <code>string endpoint_type = 4;</code> + * @return The bytes for endpointType. */ @java.lang.Override - public context.ContextOuterClass.UuidOrBuilder getEndpointUuidOrBuilder() { - return getEndpointUuid(); + public com.google.protobuf.ByteString + getEndpointTypeBytes() { + java.lang.Object ref = endpointType_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + endpointType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } private byte memoizedIsInitialized = -1; @@ -50685,14 +56248,17 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (topologyId_ != null) { - output.writeMessage(1, getTopologyId()); + if (endpointId_ != null) { + output.writeMessage(1, getEndpointId()); } - if (deviceId_ != null) { - output.writeMessage(2, getDeviceId()); + if (!getDeviceNameBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, deviceName_); } - if (endpointUuid_ != null) { - output.writeMessage(3, getEndpointUuid()); + if (!getEndpointNameBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, endpointName_); + } + if (!getEndpointTypeBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 4, endpointType_); } unknownFields.writeTo(output); } @@ -50703,17 +56269,18 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (topologyId_ != null) { + if (endpointId_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getTopologyId()); + .computeMessageSize(1, getEndpointId()); } - if (deviceId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, getDeviceId()); + if (!getDeviceNameBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, deviceName_); } - if (endpointUuid_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(3, getEndpointUuid()); + if (!getEndpointNameBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, endpointName_); + } + if (!getEndpointTypeBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, endpointType_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -50725,26 +56292,22 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.EndPointId)) { + if (!(obj instanceof context.ContextOuterClass.EndPointName)) { return super.equals(obj); } - context.ContextOuterClass.EndPointId other = (context.ContextOuterClass.EndPointId) obj; + context.ContextOuterClass.EndPointName other = (context.ContextOuterClass.EndPointName) obj; - if (hasTopologyId() != other.hasTopologyId()) return false; - if (hasTopologyId()) { - if (!getTopologyId() - .equals(other.getTopologyId())) return false; - } - if (hasDeviceId() != other.hasDeviceId()) return false; - if (hasDeviceId()) { - if (!getDeviceId() - .equals(other.getDeviceId())) return false; - } - if (hasEndpointUuid() != other.hasEndpointUuid()) return false; - if (hasEndpointUuid()) { - if (!getEndpointUuid() - .equals(other.getEndpointUuid())) return false; + if (hasEndpointId() != other.hasEndpointId()) return false; + if (hasEndpointId()) { + if (!getEndpointId() + .equals(other.getEndpointId())) return false; } + if (!getDeviceName() + .equals(other.getDeviceName())) return false; + if (!getEndpointName() + .equals(other.getEndpointName())) return false; + if (!getEndpointType() + .equals(other.getEndpointType())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -50756,86 +56319,84 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasTopologyId()) { - hash = (37 * hash) + TOPOLOGY_ID_FIELD_NUMBER; - hash = (53 * hash) + getTopologyId().hashCode(); - } - if (hasDeviceId()) { - hash = (37 * hash) + DEVICE_ID_FIELD_NUMBER; - hash = (53 * hash) + getDeviceId().hashCode(); - } - if (hasEndpointUuid()) { - hash = (37 * hash) + ENDPOINT_UUID_FIELD_NUMBER; - hash = (53 * hash) + getEndpointUuid().hashCode(); + if (hasEndpointId()) { + hash = (37 * hash) + ENDPOINT_ID_FIELD_NUMBER; + hash = (53 * hash) + getEndpointId().hashCode(); } + hash = (37 * hash) + DEVICE_NAME_FIELD_NUMBER; + hash = (53 * hash) + getDeviceName().hashCode(); + hash = (37 * hash) + ENDPOINT_NAME_FIELD_NUMBER; + hash = (53 * hash) + getEndpointName().hashCode(); + hash = (37 * hash) + ENDPOINT_TYPE_FIELD_NUMBER; + hash = (53 * hash) + getEndpointType().hashCode(); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.EndPointId parseFrom( + public static context.ContextOuterClass.EndPointName parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.EndPointId parseFrom( + public static context.ContextOuterClass.EndPointName parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.EndPointId parseFrom( + public static context.ContextOuterClass.EndPointName parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.EndPointId parseFrom( + public static context.ContextOuterClass.EndPointName parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.EndPointId parseFrom(byte[] data) + public static context.ContextOuterClass.EndPointName parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.EndPointId parseFrom( + public static context.ContextOuterClass.EndPointName parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.EndPointId parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.EndPointName parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.EndPointId parseFrom( + public static context.ContextOuterClass.EndPointName 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 context.ContextOuterClass.EndPointId parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.EndPointName parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.EndPointId parseDelimitedFrom( + public static context.ContextOuterClass.EndPointName 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 context.ContextOuterClass.EndPointId parseFrom( + public static context.ContextOuterClass.EndPointName parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.EndPointId parseFrom( + public static context.ContextOuterClass.EndPointName parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -50848,7 +56409,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.EndPointId prototype) { + public static Builder newBuilder(context.ContextOuterClass.EndPointName prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -50864,30 +56425,26 @@ public final class ContextOuterClass { return builder; } /** - * <pre> - * ----- Endpoint ------------------------------------------------------------------------------------------------------ - * </pre> - * - * Protobuf type {@code context.EndPointId} + * Protobuf type {@code context.EndPointName} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.EndPointId) - context.ContextOuterClass.EndPointIdOrBuilder { + // @@protoc_insertion_point(builder_implements:context.EndPointName) + context.ContextOuterClass.EndPointNameOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_EndPointId_descriptor; + return context.ContextOuterClass.internal_static_context_EndPointName_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_EndPointId_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_EndPointName_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.EndPointId.class, context.ContextOuterClass.EndPointId.Builder.class); + context.ContextOuterClass.EndPointName.class, context.ContextOuterClass.EndPointName.Builder.class); } - // Construct using context.ContextOuterClass.EndPointId.newBuilder() + // Construct using context.ContextOuterClass.EndPointName.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -50905,41 +56462,35 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - if (topologyIdBuilder_ == null) { - topologyId_ = null; - } else { - topologyId_ = null; - topologyIdBuilder_ = null; - } - if (deviceIdBuilder_ == null) { - deviceId_ = null; - } else { - deviceId_ = null; - deviceIdBuilder_ = null; - } - if (endpointUuidBuilder_ == null) { - endpointUuid_ = null; + if (endpointIdBuilder_ == null) { + endpointId_ = null; } else { - endpointUuid_ = null; - endpointUuidBuilder_ = null; + endpointId_ = null; + endpointIdBuilder_ = null; } + deviceName_ = ""; + + endpointName_ = ""; + + endpointType_ = ""; + return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_EndPointId_descriptor; + return context.ContextOuterClass.internal_static_context_EndPointName_descriptor; } @java.lang.Override - public context.ContextOuterClass.EndPointId getDefaultInstanceForType() { - return context.ContextOuterClass.EndPointId.getDefaultInstance(); + public context.ContextOuterClass.EndPointName getDefaultInstanceForType() { + return context.ContextOuterClass.EndPointName.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.EndPointId build() { - context.ContextOuterClass.EndPointId result = buildPartial(); + public context.ContextOuterClass.EndPointName build() { + context.ContextOuterClass.EndPointName result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -50947,23 +56498,16 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.EndPointId buildPartial() { - context.ContextOuterClass.EndPointId result = new context.ContextOuterClass.EndPointId(this); - if (topologyIdBuilder_ == null) { - result.topologyId_ = topologyId_; - } else { - result.topologyId_ = topologyIdBuilder_.build(); - } - if (deviceIdBuilder_ == null) { - result.deviceId_ = deviceId_; - } else { - result.deviceId_ = deviceIdBuilder_.build(); - } - if (endpointUuidBuilder_ == null) { - result.endpointUuid_ = endpointUuid_; + public context.ContextOuterClass.EndPointName buildPartial() { + context.ContextOuterClass.EndPointName result = new context.ContextOuterClass.EndPointName(this); + if (endpointIdBuilder_ == null) { + result.endpointId_ = endpointId_; } else { - result.endpointUuid_ = endpointUuidBuilder_.build(); + result.endpointId_ = endpointIdBuilder_.build(); } + result.deviceName_ = deviceName_; + result.endpointName_ = endpointName_; + result.endpointType_ = endpointType_; onBuilt(); return result; } @@ -51002,24 +56546,30 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.EndPointId) { - return mergeFrom((context.ContextOuterClass.EndPointId)other); + if (other instanceof context.ContextOuterClass.EndPointName) { + return mergeFrom((context.ContextOuterClass.EndPointName)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.EndPointId other) { - if (other == context.ContextOuterClass.EndPointId.getDefaultInstance()) return this; - if (other.hasTopologyId()) { - mergeTopologyId(other.getTopologyId()); + public Builder mergeFrom(context.ContextOuterClass.EndPointName other) { + if (other == context.ContextOuterClass.EndPointName.getDefaultInstance()) return this; + if (other.hasEndpointId()) { + mergeEndpointId(other.getEndpointId()); } - if (other.hasDeviceId()) { - mergeDeviceId(other.getDeviceId()); + if (!other.getDeviceName().isEmpty()) { + deviceName_ = other.deviceName_; + onChanged(); } - if (other.hasEndpointUuid()) { - mergeEndpointUuid(other.getEndpointUuid()); + if (!other.getEndpointName().isEmpty()) { + endpointName_ = other.endpointName_; + onChanged(); + } + if (!other.getEndpointType().isEmpty()) { + endpointType_ = other.endpointType_; + onChanged(); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -51036,11 +56586,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.EndPointId parsedMessage = null; + context.ContextOuterClass.EndPointName parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.EndPointId) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.EndPointName) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -51050,361 +56600,351 @@ public final class ContextOuterClass { return this; } - private context.ContextOuterClass.TopologyId topologyId_; + private context.ContextOuterClass.EndPointId endpointId_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> topologyIdBuilder_; + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> endpointIdBuilder_; /** - * <code>.context.TopologyId topology_id = 1;</code> - * @return Whether the topologyId field is set. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ - public boolean hasTopologyId() { - return topologyIdBuilder_ != null || topologyId_ != null; + public boolean hasEndpointId() { + return endpointIdBuilder_ != null || endpointId_ != null; } /** - * <code>.context.TopologyId topology_id = 1;</code> - * @return The topologyId. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. */ - public context.ContextOuterClass.TopologyId getTopologyId() { - if (topologyIdBuilder_ == null) { - return topologyId_ == null ? context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_; + public context.ContextOuterClass.EndPointId getEndpointId() { + if (endpointIdBuilder_ == null) { + return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; } else { - return topologyIdBuilder_.getMessage(); + return endpointIdBuilder_.getMessage(); } } /** - * <code>.context.TopologyId topology_id = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder setTopologyId(context.ContextOuterClass.TopologyId value) { - if (topologyIdBuilder_ == null) { + public Builder setEndpointId(context.ContextOuterClass.EndPointId value) { + if (endpointIdBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - topologyId_ = value; + endpointId_ = value; onChanged(); } else { - topologyIdBuilder_.setMessage(value); + endpointIdBuilder_.setMessage(value); } return this; } /** - * <code>.context.TopologyId topology_id = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder setTopologyId( - context.ContextOuterClass.TopologyId.Builder builderForValue) { - if (topologyIdBuilder_ == null) { - topologyId_ = builderForValue.build(); + public Builder setEndpointId( + context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (endpointIdBuilder_ == null) { + endpointId_ = builderForValue.build(); onChanged(); } else { - topologyIdBuilder_.setMessage(builderForValue.build()); + endpointIdBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.TopologyId topology_id = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder mergeTopologyId(context.ContextOuterClass.TopologyId value) { - if (topologyIdBuilder_ == null) { - if (topologyId_ != null) { - topologyId_ = - context.ContextOuterClass.TopologyId.newBuilder(topologyId_).mergeFrom(value).buildPartial(); + public Builder mergeEndpointId(context.ContextOuterClass.EndPointId value) { + if (endpointIdBuilder_ == null) { + if (endpointId_ != null) { + endpointId_ = + context.ContextOuterClass.EndPointId.newBuilder(endpointId_).mergeFrom(value).buildPartial(); } else { - topologyId_ = value; + endpointId_ = value; } onChanged(); } else { - topologyIdBuilder_.mergeFrom(value); + endpointIdBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.TopologyId topology_id = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder clearTopologyId() { - if (topologyIdBuilder_ == null) { - topologyId_ = null; + public Builder clearEndpointId() { + if (endpointIdBuilder_ == null) { + endpointId_ = null; onChanged(); } else { - topologyId_ = null; - topologyIdBuilder_ = null; + endpointId_ = null; + endpointIdBuilder_ = null; } return this; } /** - * <code>.context.TopologyId topology_id = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public context.ContextOuterClass.TopologyId.Builder getTopologyIdBuilder() { + public context.ContextOuterClass.EndPointId.Builder getEndpointIdBuilder() { onChanged(); - return getTopologyIdFieldBuilder().getBuilder(); + return getEndpointIdFieldBuilder().getBuilder(); } /** - * <code>.context.TopologyId topology_id = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder() { - if (topologyIdBuilder_ != null) { - return topologyIdBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { + if (endpointIdBuilder_ != null) { + return endpointIdBuilder_.getMessageOrBuilder(); } else { - return topologyId_ == null ? - context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_; + return endpointId_ == null ? + context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; } } /** - * <code>.context.TopologyId topology_id = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> - getTopologyIdFieldBuilder() { - if (topologyIdBuilder_ == null) { - topologyIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder>( - getTopologyId(), + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> + getEndpointIdFieldBuilder() { + if (endpointIdBuilder_ == null) { + endpointIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( + getEndpointId(), getParentForChildren(), isClean()); - topologyId_ = null; + endpointId_ = null; } - return topologyIdBuilder_; + return endpointIdBuilder_; } - private context.ContextOuterClass.DeviceId deviceId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> deviceIdBuilder_; - /** - * <code>.context.DeviceId device_id = 2;</code> - * @return Whether the deviceId field is set. - */ - public boolean hasDeviceId() { - return deviceIdBuilder_ != null || deviceId_ != null; - } - /** - * <code>.context.DeviceId device_id = 2;</code> - * @return The deviceId. - */ - public context.ContextOuterClass.DeviceId getDeviceId() { - if (deviceIdBuilder_ == null) { - return deviceId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; - } else { - return deviceIdBuilder_.getMessage(); - } - } + private java.lang.Object deviceName_ = ""; /** - * <code>.context.DeviceId device_id = 2;</code> + * <code>string device_name = 2;</code> + * @return The deviceName. */ - public Builder setDeviceId(context.ContextOuterClass.DeviceId value) { - if (deviceIdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - deviceId_ = value; - onChanged(); + public java.lang.String getDeviceName() { + java.lang.Object ref = deviceName_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + deviceName_ = s; + return s; } else { - deviceIdBuilder_.setMessage(value); + return (java.lang.String) ref; } - - return this; } /** - * <code>.context.DeviceId device_id = 2;</code> + * <code>string device_name = 2;</code> + * @return The bytes for deviceName. */ - public Builder setDeviceId( - context.ContextOuterClass.DeviceId.Builder builderForValue) { - if (deviceIdBuilder_ == null) { - deviceId_ = builderForValue.build(); - onChanged(); + public com.google.protobuf.ByteString + getDeviceNameBytes() { + java.lang.Object ref = deviceName_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + deviceName_ = b; + return b; } else { - deviceIdBuilder_.setMessage(builderForValue.build()); + return (com.google.protobuf.ByteString) ref; } - - return this; } /** - * <code>.context.DeviceId device_id = 2;</code> + * <code>string device_name = 2;</code> + * @param value The deviceName to set. + * @return This builder for chaining. */ - public Builder mergeDeviceId(context.ContextOuterClass.DeviceId value) { - if (deviceIdBuilder_ == null) { - if (deviceId_ != null) { - deviceId_ = - context.ContextOuterClass.DeviceId.newBuilder(deviceId_).mergeFrom(value).buildPartial(); - } else { - deviceId_ = value; - } - onChanged(); - } else { - deviceIdBuilder_.mergeFrom(value); - } - + public Builder setDeviceName( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + deviceName_ = value; + onChanged(); return this; } /** - * <code>.context.DeviceId device_id = 2;</code> + * <code>string device_name = 2;</code> + * @return This builder for chaining. */ - public Builder clearDeviceId() { - if (deviceIdBuilder_ == null) { - deviceId_ = null; - onChanged(); - } else { - deviceId_ = null; - deviceIdBuilder_ = null; - } - + public Builder clearDeviceName() { + + deviceName_ = getDefaultInstance().getDeviceName(); + onChanged(); return this; } /** - * <code>.context.DeviceId device_id = 2;</code> + * <code>string device_name = 2;</code> + * @param value The bytes for deviceName to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.DeviceId.Builder getDeviceIdBuilder() { + public Builder setDeviceNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + deviceName_ = value; onChanged(); - return getDeviceIdFieldBuilder().getBuilder(); + return this; } + + private java.lang.Object endpointName_ = ""; /** - * <code>.context.DeviceId device_id = 2;</code> + * <code>string endpoint_name = 3;</code> + * @return The endpointName. */ - public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder() { - if (deviceIdBuilder_ != null) { - return deviceIdBuilder_.getMessageOrBuilder(); + public java.lang.String getEndpointName() { + java.lang.Object ref = endpointName_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + endpointName_ = s; + return s; } else { - return deviceId_ == null ? - context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; + return (java.lang.String) ref; } } /** - * <code>.context.DeviceId device_id = 2;</code> + * <code>string endpoint_name = 3;</code> + * @return The bytes for endpointName. */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> - getDeviceIdFieldBuilder() { - if (deviceIdBuilder_ == null) { - deviceIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder>( - getDeviceId(), - getParentForChildren(), - isClean()); - deviceId_ = null; + public com.google.protobuf.ByteString + getEndpointNameBytes() { + java.lang.Object ref = endpointName_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + endpointName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } - return deviceIdBuilder_; } - - private context.ContextOuterClass.Uuid endpointUuid_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> endpointUuidBuilder_; /** - * <code>.context.Uuid endpoint_uuid = 3;</code> - * @return Whether the endpointUuid field is set. + * <code>string endpoint_name = 3;</code> + * @param value The endpointName to set. + * @return This builder for chaining. */ - public boolean hasEndpointUuid() { - return endpointUuidBuilder_ != null || endpointUuid_ != null; + public Builder setEndpointName( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + endpointName_ = value; + onChanged(); + return this; } /** - * <code>.context.Uuid endpoint_uuid = 3;</code> - * @return The endpointUuid. + * <code>string endpoint_name = 3;</code> + * @return This builder for chaining. */ - public context.ContextOuterClass.Uuid getEndpointUuid() { - if (endpointUuidBuilder_ == null) { - return endpointUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : endpointUuid_; - } else { - return endpointUuidBuilder_.getMessage(); - } + public Builder clearEndpointName() { + + endpointName_ = getDefaultInstance().getEndpointName(); + onChanged(); + return this; } /** - * <code>.context.Uuid endpoint_uuid = 3;</code> + * <code>string endpoint_name = 3;</code> + * @param value The bytes for endpointName to set. + * @return This builder for chaining. */ - public Builder setEndpointUuid(context.ContextOuterClass.Uuid value) { - if (endpointUuidBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - endpointUuid_ = value; - onChanged(); - } else { - endpointUuidBuilder_.setMessage(value); - } - + public Builder setEndpointNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + endpointName_ = value; + onChanged(); return this; } + + private java.lang.Object endpointType_ = ""; /** - * <code>.context.Uuid endpoint_uuid = 3;</code> + * <code>string endpoint_type = 4;</code> + * @return The endpointType. */ - public Builder setEndpointUuid( - context.ContextOuterClass.Uuid.Builder builderForValue) { - if (endpointUuidBuilder_ == null) { - endpointUuid_ = builderForValue.build(); - onChanged(); + public java.lang.String getEndpointType() { + java.lang.Object ref = endpointType_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + endpointType_ = s; + return s; } else { - endpointUuidBuilder_.setMessage(builderForValue.build()); + return (java.lang.String) ref; } - - return this; } /** - * <code>.context.Uuid endpoint_uuid = 3;</code> + * <code>string endpoint_type = 4;</code> + * @return The bytes for endpointType. */ - public Builder mergeEndpointUuid(context.ContextOuterClass.Uuid value) { - if (endpointUuidBuilder_ == null) { - if (endpointUuid_ != null) { - endpointUuid_ = - context.ContextOuterClass.Uuid.newBuilder(endpointUuid_).mergeFrom(value).buildPartial(); - } else { - endpointUuid_ = value; - } - onChanged(); + public com.google.protobuf.ByteString + getEndpointTypeBytes() { + java.lang.Object ref = endpointType_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + endpointType_ = b; + return b; } else { - endpointUuidBuilder_.mergeFrom(value); + return (com.google.protobuf.ByteString) ref; } - - return this; } /** - * <code>.context.Uuid endpoint_uuid = 3;</code> + * <code>string endpoint_type = 4;</code> + * @param value The endpointType to set. + * @return This builder for chaining. */ - public Builder clearEndpointUuid() { - if (endpointUuidBuilder_ == null) { - endpointUuid_ = null; - onChanged(); - } else { - endpointUuid_ = null; - endpointUuidBuilder_ = null; - } - + public Builder setEndpointType( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + endpointType_ = value; + onChanged(); return this; } /** - * <code>.context.Uuid endpoint_uuid = 3;</code> + * <code>string endpoint_type = 4;</code> + * @return This builder for chaining. */ - public context.ContextOuterClass.Uuid.Builder getEndpointUuidBuilder() { + public Builder clearEndpointType() { + endpointType_ = getDefaultInstance().getEndpointType(); onChanged(); - return getEndpointUuidFieldBuilder().getBuilder(); - } - /** - * <code>.context.Uuid endpoint_uuid = 3;</code> - */ - public context.ContextOuterClass.UuidOrBuilder getEndpointUuidOrBuilder() { - if (endpointUuidBuilder_ != null) { - return endpointUuidBuilder_.getMessageOrBuilder(); - } else { - return endpointUuid_ == null ? - context.ContextOuterClass.Uuid.getDefaultInstance() : endpointUuid_; - } + return this; } /** - * <code>.context.Uuid endpoint_uuid = 3;</code> + * <code>string endpoint_type = 4;</code> + * @param value The bytes for endpointType to set. + * @return This builder for chaining. */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> - getEndpointUuidFieldBuilder() { - if (endpointUuidBuilder_ == null) { - endpointUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>( - getEndpointUuid(), - getParentForChildren(), - isClean()); - endpointUuid_ = null; - } - return endpointUuidBuilder_; + public Builder setEndpointTypeBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + endpointType_ = value; + onChanged(); + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -51419,156 +56959,95 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.EndPointId) + // @@protoc_insertion_point(builder_scope:context.EndPointName) } - // @@protoc_insertion_point(class_scope:context.EndPointId) - private static final context.ContextOuterClass.EndPointId DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.EndPointName) + private static final context.ContextOuterClass.EndPointName DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.EndPointId(); + DEFAULT_INSTANCE = new context.ContextOuterClass.EndPointName(); } - public static context.ContextOuterClass.EndPointId getDefaultInstance() { + public static context.ContextOuterClass.EndPointName getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<EndPointId> - PARSER = new com.google.protobuf.AbstractParser<EndPointId>() { + private static final com.google.protobuf.Parser<EndPointName> + PARSER = new com.google.protobuf.AbstractParser<EndPointName>() { @java.lang.Override - public EndPointId parsePartialFrom( + public EndPointName parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new EndPointId(input, extensionRegistry); + return new EndPointName(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<EndPointId> parser() { + public static com.google.protobuf.Parser<EndPointName> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<EndPointId> getParserForType() { + public com.google.protobuf.Parser<EndPointName> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.EndPointId getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - - } - - public interface EndPointOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.EndPoint) - com.google.protobuf.MessageOrBuilder { - - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return Whether the endpointId field is set. - */ - boolean hasEndpointId(); - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return The endpointId. - */ - context.ContextOuterClass.EndPointId getEndpointId(); - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder(); - - /** - * <code>string name = 2;</code> - * @return The name. - */ - java.lang.String getName(); - /** - * <code>string name = 2;</code> - * @return The bytes for name. - */ - com.google.protobuf.ByteString - getNameBytes(); + public context.ContextOuterClass.EndPointName getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } - /** - * <code>string endpoint_type = 3;</code> - * @return The endpointType. - */ - java.lang.String getEndpointType(); - /** - * <code>string endpoint_type = 3;</code> - * @return The bytes for endpointType. - */ - com.google.protobuf.ByteString - getEndpointTypeBytes(); + } + + public interface EndPointIdListOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.EndPointIdList) + com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> - * @return A list containing the kpiSampleTypes. - */ - java.util.List<kpi_sample_types.KpiSampleTypes.KpiSampleType> getKpiSampleTypesList(); - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> - * @return The count of kpiSampleTypes. - */ - int getKpiSampleTypesCount(); - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> - * @param index The index of the element to return. - * @return The kpiSampleTypes at the given index. - */ - kpi_sample_types.KpiSampleTypes.KpiSampleType getKpiSampleTypes(int index); - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> - * @return A list containing the enum numeric values on the wire for kpiSampleTypes. + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - java.util.List<java.lang.Integer> - getKpiSampleTypesValueList(); + java.util.List<context.ContextOuterClass.EndPointId> + getEndpointIdsList(); /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> - * @param index The index of the value to return. - * @return The enum numeric value on the wire of kpiSampleTypes at the given index. + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - int getKpiSampleTypesValue(int index); - + context.ContextOuterClass.EndPointId getEndpointIds(int index); /** - * <code>.context.Location endpoint_location = 5;</code> - * @return Whether the endpointLocation field is set. + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - boolean hasEndpointLocation(); + int getEndpointIdsCount(); /** - * <code>.context.Location endpoint_location = 5;</code> - * @return The endpointLocation. + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - context.ContextOuterClass.Location getEndpointLocation(); + java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getEndpointIdsOrBuilderList(); /** - * <code>.context.Location endpoint_location = 5;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - context.ContextOuterClass.LocationOrBuilder getEndpointLocationOrBuilder(); + context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdsOrBuilder( + int index); } /** - * Protobuf type {@code context.EndPoint} + * Protobuf type {@code context.EndPointIdList} */ - public static final class EndPoint extends + public static final class EndPointIdList extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.EndPoint) - EndPointOrBuilder { + // @@protoc_insertion_point(message_implements:context.EndPointIdList) + EndPointIdListOrBuilder { private static final long serialVersionUID = 0L; - // Use EndPoint.newBuilder() to construct. - private EndPoint(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use EndPointIdList.newBuilder() to construct. + private EndPointIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private EndPoint() { - name_ = ""; - endpointType_ = ""; - kpiSampleTypes_ = java.util.Collections.emptyList(); + private EndPointIdList() { + endpointIds_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new EndPoint(); + return new EndPointIdList(); } @java.lang.Override @@ -51576,7 +57055,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private EndPoint( + private EndPointIdList( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -51596,64 +57075,12 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.EndPointId.Builder subBuilder = null; - if (endpointId_ != null) { - subBuilder = endpointId_.toBuilder(); - } - endpointId_ = input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(endpointId_); - endpointId_ = subBuilder.buildPartial(); - } - - break; - } - case 18: { - java.lang.String s = input.readStringRequireUtf8(); - - name_ = s; - break; - } - case 26: { - java.lang.String s = input.readStringRequireUtf8(); - - endpointType_ = s; - break; - } - case 32: { - int rawValue = input.readEnum(); if (!((mutable_bitField0_ & 0x00000001) != 0)) { - kpiSampleTypes_ = new java.util.ArrayList<java.lang.Integer>(); + endpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(); mutable_bitField0_ |= 0x00000001; } - kpiSampleTypes_.add(rawValue); - break; - } - case 34: { - int length = input.readRawVarint32(); - int oldLimit = input.pushLimit(length); - while(input.getBytesUntilLimit() > 0) { - int rawValue = input.readEnum(); - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - kpiSampleTypes_ = new java.util.ArrayList<java.lang.Integer>(); - mutable_bitField0_ |= 0x00000001; - } - kpiSampleTypes_.add(rawValue); - } - input.popLimit(oldLimit); - break; - } - case 42: { - context.ContextOuterClass.Location.Builder subBuilder = null; - if (endpointLocation_ != null) { - subBuilder = endpointLocation_.toBuilder(); - } - endpointLocation_ = input.readMessage(context.ContextOuterClass.Location.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(endpointLocation_); - endpointLocation_ = subBuilder.buildPartial(); - } - + endpointIds_.add( + input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry)); break; } default: { @@ -51672,7 +57099,7 @@ public final class ContextOuterClass { e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { - kpiSampleTypes_ = java.util.Collections.unmodifiableList(kpiSampleTypes_); + endpointIds_ = java.util.Collections.unmodifiableList(endpointIds_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); @@ -51680,201 +57107,55 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_EndPoint_descriptor; + return context.ContextOuterClass.internal_static_context_EndPointIdList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_EndPoint_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_EndPointIdList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.EndPoint.class, context.ContextOuterClass.EndPoint.Builder.class); - } - - public static final int ENDPOINT_ID_FIELD_NUMBER = 1; - private context.ContextOuterClass.EndPointId endpointId_; - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return Whether the endpointId field is set. - */ - @java.lang.Override - public boolean hasEndpointId() { - return endpointId_ != null; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return The endpointId. - */ - @java.lang.Override - public context.ContextOuterClass.EndPointId getEndpointId() { - return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - @java.lang.Override - public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { - return getEndpointId(); - } - - public static final int NAME_FIELD_NUMBER = 2; - private volatile java.lang.Object name_; - /** - * <code>string name = 2;</code> - * @return The name. - */ - @java.lang.Override - public java.lang.String getName() { - java.lang.Object ref = name_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - name_ = s; - return s; - } - } - /** - * <code>string name = 2;</code> - * @return The bytes for name. - */ - @java.lang.Override - public com.google.protobuf.ByteString - getNameBytes() { - java.lang.Object ref = name_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - name_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - - public static final int ENDPOINT_TYPE_FIELD_NUMBER = 3; - private volatile java.lang.Object endpointType_; - /** - * <code>string endpoint_type = 3;</code> - * @return The endpointType. - */ - @java.lang.Override - public java.lang.String getEndpointType() { - java.lang.Object ref = endpointType_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - endpointType_ = s; - return s; - } - } - /** - * <code>string endpoint_type = 3;</code> - * @return The bytes for endpointType. - */ - @java.lang.Override - public com.google.protobuf.ByteString - getEndpointTypeBytes() { - java.lang.Object ref = endpointType_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - endpointType_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + context.ContextOuterClass.EndPointIdList.class, context.ContextOuterClass.EndPointIdList.Builder.class); } - public static final int KPI_SAMPLE_TYPES_FIELD_NUMBER = 4; - private java.util.List<java.lang.Integer> kpiSampleTypes_; - private static final com.google.protobuf.Internal.ListAdapter.Converter< - java.lang.Integer, kpi_sample_types.KpiSampleTypes.KpiSampleType> kpiSampleTypes_converter_ = - new com.google.protobuf.Internal.ListAdapter.Converter< - java.lang.Integer, kpi_sample_types.KpiSampleTypes.KpiSampleType>() { - public kpi_sample_types.KpiSampleTypes.KpiSampleType convert(java.lang.Integer from) { - @SuppressWarnings("deprecation") - kpi_sample_types.KpiSampleTypes.KpiSampleType result = kpi_sample_types.KpiSampleTypes.KpiSampleType.valueOf(from); - return result == null ? kpi_sample_types.KpiSampleTypes.KpiSampleType.UNRECOGNIZED : result; - } - }; - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> - * @return A list containing the kpiSampleTypes. - */ - @java.lang.Override - public java.util.List<kpi_sample_types.KpiSampleTypes.KpiSampleType> getKpiSampleTypesList() { - return new com.google.protobuf.Internal.ListAdapter< - java.lang.Integer, kpi_sample_types.KpiSampleTypes.KpiSampleType>(kpiSampleTypes_, kpiSampleTypes_converter_); - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> - * @return The count of kpiSampleTypes. - */ - @java.lang.Override - public int getKpiSampleTypesCount() { - return kpiSampleTypes_.size(); - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> - * @param index The index of the element to return. - * @return The kpiSampleTypes at the given index. - */ - @java.lang.Override - public kpi_sample_types.KpiSampleTypes.KpiSampleType getKpiSampleTypes(int index) { - return kpiSampleTypes_converter_.convert(kpiSampleTypes_.get(index)); - } + public static final int ENDPOINT_IDS_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.EndPointId> endpointIds_; /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> - * @return A list containing the enum numeric values on the wire for kpiSampleTypes. + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ @java.lang.Override - public java.util.List<java.lang.Integer> - getKpiSampleTypesValueList() { - return kpiSampleTypes_; + public java.util.List<context.ContextOuterClass.EndPointId> getEndpointIdsList() { + return endpointIds_; } /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> - * @param index The index of the value to return. - * @return The enum numeric value on the wire of kpiSampleTypes at the given index. + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ @java.lang.Override - public int getKpiSampleTypesValue(int index) { - return kpiSampleTypes_.get(index); + public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getEndpointIdsOrBuilderList() { + return endpointIds_; } - private int kpiSampleTypesMemoizedSerializedSize; - - public static final int ENDPOINT_LOCATION_FIELD_NUMBER = 5; - private context.ContextOuterClass.Location endpointLocation_; /** - * <code>.context.Location endpoint_location = 5;</code> - * @return Whether the endpointLocation field is set. + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ @java.lang.Override - public boolean hasEndpointLocation() { - return endpointLocation_ != null; + public int getEndpointIdsCount() { + return endpointIds_.size(); } /** - * <code>.context.Location endpoint_location = 5;</code> - * @return The endpointLocation. + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.Location getEndpointLocation() { - return endpointLocation_ == null ? context.ContextOuterClass.Location.getDefaultInstance() : endpointLocation_; + public context.ContextOuterClass.EndPointId getEndpointIds(int index) { + return endpointIds_.get(index); } /** - * <code>.context.Location endpoint_location = 5;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.LocationOrBuilder getEndpointLocationOrBuilder() { - return getEndpointLocation(); + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdsOrBuilder( + int index) { + return endpointIds_.get(index); } private byte memoizedIsInitialized = -1; @@ -51891,25 +57172,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - getSerializedSize(); - if (endpointId_ != null) { - output.writeMessage(1, getEndpointId()); - } - if (!getNameBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_); - } - if (!getEndpointTypeBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 3, endpointType_); - } - if (getKpiSampleTypesList().size() > 0) { - output.writeUInt32NoTag(34); - output.writeUInt32NoTag(kpiSampleTypesMemoizedSerializedSize); - } - for (int i = 0; i < kpiSampleTypes_.size(); i++) { - output.writeEnumNoTag(kpiSampleTypes_.get(i)); - } - if (endpointLocation_ != null) { - output.writeMessage(5, getEndpointLocation()); + for (int i = 0; i < endpointIds_.size(); i++) { + output.writeMessage(1, endpointIds_.get(i)); } unknownFields.writeTo(output); } @@ -51920,31 +57184,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (endpointId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getEndpointId()); - } - if (!getNameBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_); - } - if (!getEndpointTypeBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, endpointType_); - } - { - int dataSize = 0; - for (int i = 0; i < kpiSampleTypes_.size(); i++) { - dataSize += com.google.protobuf.CodedOutputStream - .computeEnumSizeNoTag(kpiSampleTypes_.get(i)); - } - size += dataSize; - if (!getKpiSampleTypesList().isEmpty()) { size += 1; - size += com.google.protobuf.CodedOutputStream - .computeUInt32SizeNoTag(dataSize); - }kpiSampleTypesMemoizedSerializedSize = dataSize; - } - if (endpointLocation_ != null) { + for (int i = 0; i < endpointIds_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(5, getEndpointLocation()); + .computeMessageSize(1, endpointIds_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -51956,26 +57198,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.EndPoint)) { + if (!(obj instanceof context.ContextOuterClass.EndPointIdList)) { return super.equals(obj); } - context.ContextOuterClass.EndPoint other = (context.ContextOuterClass.EndPoint) obj; + context.ContextOuterClass.EndPointIdList other = (context.ContextOuterClass.EndPointIdList) obj; - if (hasEndpointId() != other.hasEndpointId()) return false; - if (hasEndpointId()) { - if (!getEndpointId() - .equals(other.getEndpointId())) return false; - } - if (!getName() - .equals(other.getName())) return false; - if (!getEndpointType() - .equals(other.getEndpointType())) return false; - if (!kpiSampleTypes_.equals(other.kpiSampleTypes_)) return false; - if (hasEndpointLocation() != other.hasEndpointLocation()) return false; - if (hasEndpointLocation()) { - if (!getEndpointLocation() - .equals(other.getEndpointLocation())) return false; - } + if (!getEndpointIdsList() + .equals(other.getEndpointIdsList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -51987,90 +57216,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasEndpointId()) { - hash = (37 * hash) + ENDPOINT_ID_FIELD_NUMBER; - hash = (53 * hash) + getEndpointId().hashCode(); - } - hash = (37 * hash) + NAME_FIELD_NUMBER; - hash = (53 * hash) + getName().hashCode(); - hash = (37 * hash) + ENDPOINT_TYPE_FIELD_NUMBER; - hash = (53 * hash) + getEndpointType().hashCode(); - if (getKpiSampleTypesCount() > 0) { - hash = (37 * hash) + KPI_SAMPLE_TYPES_FIELD_NUMBER; - hash = (53 * hash) + kpiSampleTypes_.hashCode(); - } - if (hasEndpointLocation()) { - hash = (37 * hash) + ENDPOINT_LOCATION_FIELD_NUMBER; - hash = (53 * hash) + getEndpointLocation().hashCode(); + if (getEndpointIdsCount() > 0) { + hash = (37 * hash) + ENDPOINT_IDS_FIELD_NUMBER; + hash = (53 * hash) + getEndpointIdsList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.EndPoint parseFrom( + public static context.ContextOuterClass.EndPointIdList parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.EndPoint parseFrom( + public static context.ContextOuterClass.EndPointIdList parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.EndPoint parseFrom( + public static context.ContextOuterClass.EndPointIdList parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.EndPoint parseFrom( + public static context.ContextOuterClass.EndPointIdList parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.EndPoint parseFrom(byte[] data) + public static context.ContextOuterClass.EndPointIdList parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.EndPoint parseFrom( + public static context.ContextOuterClass.EndPointIdList parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.EndPoint parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.EndPointIdList parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.EndPoint parseFrom( + public static context.ContextOuterClass.EndPointIdList 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 context.ContextOuterClass.EndPoint parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.EndPointIdList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.EndPoint parseDelimitedFrom( + public static context.ContextOuterClass.EndPointIdList 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 context.ContextOuterClass.EndPoint parseFrom( + public static context.ContextOuterClass.EndPointIdList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.EndPoint parseFrom( + public static context.ContextOuterClass.EndPointIdList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -52083,7 +57300,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.EndPoint prototype) { + public static Builder newBuilder(context.ContextOuterClass.EndPointIdList prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -52099,26 +57316,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.EndPoint} + * Protobuf type {@code context.EndPointIdList} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.EndPoint) - context.ContextOuterClass.EndPointOrBuilder { + // @@protoc_insertion_point(builder_implements:context.EndPointIdList) + context.ContextOuterClass.EndPointIdListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_EndPoint_descriptor; + return context.ContextOuterClass.internal_static_context_EndPointIdList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_EndPoint_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_EndPointIdList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.EndPoint.class, context.ContextOuterClass.EndPoint.Builder.class); + context.ContextOuterClass.EndPointIdList.class, context.ContextOuterClass.EndPointIdList.Builder.class); } - // Construct using context.ContextOuterClass.EndPoint.newBuilder() + // Construct using context.ContextOuterClass.EndPointIdList.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -52131,28 +57348,17 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { + getEndpointIdsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (endpointIdBuilder_ == null) { - endpointId_ = null; - } else { - endpointId_ = null; - endpointIdBuilder_ = null; - } - name_ = ""; - - endpointType_ = ""; - - kpiSampleTypes_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - if (endpointLocationBuilder_ == null) { - endpointLocation_ = null; + if (endpointIdsBuilder_ == null) { + endpointIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); } else { - endpointLocation_ = null; - endpointLocationBuilder_ = null; + endpointIdsBuilder_.clear(); } return this; } @@ -52160,17 +57366,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_EndPoint_descriptor; + return context.ContextOuterClass.internal_static_context_EndPointIdList_descriptor; } @java.lang.Override - public context.ContextOuterClass.EndPoint getDefaultInstanceForType() { - return context.ContextOuterClass.EndPoint.getDefaultInstance(); + public context.ContextOuterClass.EndPointIdList getDefaultInstanceForType() { + return context.ContextOuterClass.EndPointIdList.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.EndPoint build() { - context.ContextOuterClass.EndPoint result = buildPartial(); + public context.ContextOuterClass.EndPointIdList build() { + context.ContextOuterClass.EndPointIdList result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -52178,25 +57384,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.EndPoint buildPartial() { - context.ContextOuterClass.EndPoint result = new context.ContextOuterClass.EndPoint(this); + public context.ContextOuterClass.EndPointIdList buildPartial() { + context.ContextOuterClass.EndPointIdList result = new context.ContextOuterClass.EndPointIdList(this); int from_bitField0_ = bitField0_; - if (endpointIdBuilder_ == null) { - result.endpointId_ = endpointId_; - } else { - result.endpointId_ = endpointIdBuilder_.build(); - } - result.name_ = name_; - result.endpointType_ = endpointType_; - if (((bitField0_ & 0x00000001) != 0)) { - kpiSampleTypes_ = java.util.Collections.unmodifiableList(kpiSampleTypes_); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.kpiSampleTypes_ = kpiSampleTypes_; - if (endpointLocationBuilder_ == null) { - result.endpointLocation_ = endpointLocation_; + if (endpointIdsBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + endpointIds_ = java.util.Collections.unmodifiableList(endpointIds_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.endpointIds_ = endpointIds_; } else { - result.endpointLocation_ = endpointLocationBuilder_.build(); + result.endpointIds_ = endpointIdsBuilder_.build(); } onBuilt(); return result; @@ -52236,39 +57434,41 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.EndPoint) { - return mergeFrom((context.ContextOuterClass.EndPoint)other); + if (other instanceof context.ContextOuterClass.EndPointIdList) { + return mergeFrom((context.ContextOuterClass.EndPointIdList)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.EndPoint other) { - if (other == context.ContextOuterClass.EndPoint.getDefaultInstance()) return this; - if (other.hasEndpointId()) { - mergeEndpointId(other.getEndpointId()); - } - if (!other.getName().isEmpty()) { - name_ = other.name_; - onChanged(); - } - if (!other.getEndpointType().isEmpty()) { - endpointType_ = other.endpointType_; - onChanged(); - } - if (!other.kpiSampleTypes_.isEmpty()) { - if (kpiSampleTypes_.isEmpty()) { - kpiSampleTypes_ = other.kpiSampleTypes_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureKpiSampleTypesIsMutable(); - kpiSampleTypes_.addAll(other.kpiSampleTypes_); + public Builder mergeFrom(context.ContextOuterClass.EndPointIdList other) { + if (other == context.ContextOuterClass.EndPointIdList.getDefaultInstance()) return this; + if (endpointIdsBuilder_ == null) { + if (!other.endpointIds_.isEmpty()) { + if (endpointIds_.isEmpty()) { + endpointIds_ = other.endpointIds_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureEndpointIdsIsMutable(); + endpointIds_.addAll(other.endpointIds_); + } + onChanged(); + } + } else { + if (!other.endpointIds_.isEmpty()) { + if (endpointIdsBuilder_.isEmpty()) { + endpointIdsBuilder_.dispose(); + endpointIdsBuilder_ = null; + endpointIds_ = other.endpointIds_; + bitField0_ = (bitField0_ & ~0x00000001); + endpointIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getEndpointIdsFieldBuilder() : null; + } else { + endpointIdsBuilder_.addAllMessages(other.endpointIds_); + } } - onChanged(); - } - if (other.hasEndpointLocation()) { - mergeEndpointLocation(other.getEndpointLocation()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -52285,11 +57485,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.EndPoint parsedMessage = null; + context.ContextOuterClass.EndPointIdList parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.EndPoint) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.EndPointIdList) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -52300,534 +57500,244 @@ public final class ContextOuterClass { } private int bitField0_; - private context.ContextOuterClass.EndPointId endpointId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> endpointIdBuilder_; - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return Whether the endpointId field is set. - */ - public boolean hasEndpointId() { - return endpointIdBuilder_ != null || endpointId_ != null; + private java.util.List<context.ContextOuterClass.EndPointId> endpointIds_ = + java.util.Collections.emptyList(); + private void ensureEndpointIdsIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + endpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(endpointIds_); + bitField0_ |= 0x00000001; + } } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> endpointIdsBuilder_; + /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return The endpointId. + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public context.ContextOuterClass.EndPointId getEndpointId() { - if (endpointIdBuilder_ == null) { - return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; + public java.util.List<context.ContextOuterClass.EndPointId> getEndpointIdsList() { + if (endpointIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(endpointIds_); } else { - return endpointIdBuilder_.getMessage(); + return endpointIdsBuilder_.getMessageList(); } } /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public Builder setEndpointId(context.ContextOuterClass.EndPointId value) { - if (endpointIdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - endpointId_ = value; - onChanged(); + public int getEndpointIdsCount() { + if (endpointIdsBuilder_ == null) { + return endpointIds_.size(); } else { - endpointIdBuilder_.setMessage(value); + return endpointIdsBuilder_.getCount(); } - - return this; } /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public Builder setEndpointId( - context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (endpointIdBuilder_ == null) { - endpointId_ = builderForValue.build(); - onChanged(); + public context.ContextOuterClass.EndPointId getEndpointIds(int index) { + if (endpointIdsBuilder_ == null) { + return endpointIds_.get(index); } else { - endpointIdBuilder_.setMessage(builderForValue.build()); + return endpointIdsBuilder_.getMessage(index); } - - return this; } /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public Builder mergeEndpointId(context.ContextOuterClass.EndPointId value) { - if (endpointIdBuilder_ == null) { - if (endpointId_ != null) { - endpointId_ = - context.ContextOuterClass.EndPointId.newBuilder(endpointId_).mergeFrom(value).buildPartial(); - } else { - endpointId_ = value; + public Builder setEndpointIds( + int index, context.ContextOuterClass.EndPointId value) { + if (endpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + ensureEndpointIdsIsMutable(); + endpointIds_.set(index, value); onChanged(); } else { - endpointIdBuilder_.mergeFrom(value); + endpointIdsBuilder_.setMessage(index, value); } - return this; } /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public Builder clearEndpointId() { - if (endpointIdBuilder_ == null) { - endpointId_ = null; + public Builder setEndpointIds( + int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (endpointIdsBuilder_ == null) { + ensureEndpointIdsIsMutable(); + endpointIds_.set(index, builderForValue.build()); onChanged(); } else { - endpointId_ = null; - endpointIdBuilder_ = null; + endpointIdsBuilder_.setMessage(index, builderForValue.build()); } - return this; } /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public context.ContextOuterClass.EndPointId.Builder getEndpointIdBuilder() { - - onChanged(); - return getEndpointIdFieldBuilder().getBuilder(); - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { - if (endpointIdBuilder_ != null) { - return endpointIdBuilder_.getMessageOrBuilder(); - } else { - return endpointId_ == null ? - context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; - } - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> - getEndpointIdFieldBuilder() { - if (endpointIdBuilder_ == null) { - endpointIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( - getEndpointId(), - getParentForChildren(), - isClean()); - endpointId_ = null; - } - return endpointIdBuilder_; - } - - private java.lang.Object name_ = ""; - /** - * <code>string name = 2;</code> - * @return The name. - */ - public java.lang.String getName() { - java.lang.Object ref = name_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - name_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - /** - * <code>string name = 2;</code> - * @return The bytes for name. + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public com.google.protobuf.ByteString - getNameBytes() { - java.lang.Object ref = name_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - name_ = b; - return b; + public Builder addEndpointIds(context.ContextOuterClass.EndPointId value) { + if (endpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureEndpointIdsIsMutable(); + endpointIds_.add(value); + onChanged(); } else { - return (com.google.protobuf.ByteString) ref; + endpointIdsBuilder_.addMessage(value); } - } - /** - * <code>string name = 2;</code> - * @param value The name to set. - * @return This builder for chaining. - */ - public Builder setName( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - name_ = value; - onChanged(); - return this; - } - /** - * <code>string name = 2;</code> - * @return This builder for chaining. - */ - public Builder clearName() { - - name_ = getDefaultInstance().getName(); - onChanged(); - return this; - } - /** - * <code>string name = 2;</code> - * @param value The bytes for name to set. - * @return This builder for chaining. - */ - public Builder setNameBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - name_ = value; - onChanged(); return this; } - - private java.lang.Object endpointType_ = ""; - /** - * <code>string endpoint_type = 3;</code> - * @return The endpointType. - */ - public java.lang.String getEndpointType() { - java.lang.Object ref = endpointType_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - endpointType_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } /** - * <code>string endpoint_type = 3;</code> - * @return The bytes for endpointType. + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public com.google.protobuf.ByteString - getEndpointTypeBytes() { - java.lang.Object ref = endpointType_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - endpointType_ = b; - return b; + public Builder addEndpointIds( + int index, context.ContextOuterClass.EndPointId value) { + if (endpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureEndpointIdsIsMutable(); + endpointIds_.add(index, value); + onChanged(); } else { - return (com.google.protobuf.ByteString) ref; - } - } - /** - * <code>string endpoint_type = 3;</code> - * @param value The endpointType to set. - * @return This builder for chaining. - */ - public Builder setEndpointType( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - endpointType_ = value; - onChanged(); - return this; - } - /** - * <code>string endpoint_type = 3;</code> - * @return This builder for chaining. - */ - public Builder clearEndpointType() { - - endpointType_ = getDefaultInstance().getEndpointType(); - onChanged(); - return this; - } - /** - * <code>string endpoint_type = 3;</code> - * @param value The bytes for endpointType to set. - * @return This builder for chaining. - */ - public Builder setEndpointTypeBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - endpointType_ = value; - onChanged(); - return this; - } - - private java.util.List<java.lang.Integer> kpiSampleTypes_ = - java.util.Collections.emptyList(); - private void ensureKpiSampleTypesIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - kpiSampleTypes_ = new java.util.ArrayList<java.lang.Integer>(kpiSampleTypes_); - bitField0_ |= 0x00000001; - } - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> - * @return A list containing the kpiSampleTypes. - */ - public java.util.List<kpi_sample_types.KpiSampleTypes.KpiSampleType> getKpiSampleTypesList() { - return new com.google.protobuf.Internal.ListAdapter< - java.lang.Integer, kpi_sample_types.KpiSampleTypes.KpiSampleType>(kpiSampleTypes_, kpiSampleTypes_converter_); - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> - * @return The count of kpiSampleTypes. - */ - public int getKpiSampleTypesCount() { - return kpiSampleTypes_.size(); - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> - * @param index The index of the element to return. - * @return The kpiSampleTypes at the given index. - */ - public kpi_sample_types.KpiSampleTypes.KpiSampleType getKpiSampleTypes(int index) { - return kpiSampleTypes_converter_.convert(kpiSampleTypes_.get(index)); - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> - * @param index The index to set the value at. - * @param value The kpiSampleTypes to set. - * @return This builder for chaining. - */ - public Builder setKpiSampleTypes( - int index, kpi_sample_types.KpiSampleTypes.KpiSampleType value) { - if (value == null) { - throw new NullPointerException(); - } - ensureKpiSampleTypesIsMutable(); - kpiSampleTypes_.set(index, value.getNumber()); - onChanged(); - return this; - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> - * @param value The kpiSampleTypes to add. - * @return This builder for chaining. - */ - public Builder addKpiSampleTypes(kpi_sample_types.KpiSampleTypes.KpiSampleType value) { - if (value == null) { - throw new NullPointerException(); - } - ensureKpiSampleTypesIsMutable(); - kpiSampleTypes_.add(value.getNumber()); - onChanged(); - return this; - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> - * @param values The kpiSampleTypes to add. - * @return This builder for chaining. - */ - public Builder addAllKpiSampleTypes( - java.lang.Iterable<? extends kpi_sample_types.KpiSampleTypes.KpiSampleType> values) { - ensureKpiSampleTypesIsMutable(); - for (kpi_sample_types.KpiSampleTypes.KpiSampleType value : values) { - kpiSampleTypes_.add(value.getNumber()); - } - onChanged(); - return this; - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> - * @return This builder for chaining. - */ - public Builder clearKpiSampleTypes() { - kpiSampleTypes_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - return this; - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> - * @return A list containing the enum numeric values on the wire for kpiSampleTypes. - */ - public java.util.List<java.lang.Integer> - getKpiSampleTypesValueList() { - return java.util.Collections.unmodifiableList(kpiSampleTypes_); - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> - * @param index The index of the value to return. - * @return The enum numeric value on the wire of kpiSampleTypes at the given index. - */ - public int getKpiSampleTypesValue(int index) { - return kpiSampleTypes_.get(index); - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> - * @param index The index of the value to return. - * @return The enum numeric value on the wire of kpiSampleTypes at the given index. - * @return This builder for chaining. - */ - public Builder setKpiSampleTypesValue( - int index, int value) { - ensureKpiSampleTypesIsMutable(); - kpiSampleTypes_.set(index, value); - onChanged(); - return this; - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> - * @param value The enum numeric value on the wire for kpiSampleTypes to add. - * @return This builder for chaining. - */ - public Builder addKpiSampleTypesValue(int value) { - ensureKpiSampleTypesIsMutable(); - kpiSampleTypes_.add(value); - onChanged(); - return this; - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> - * @param values The enum numeric values on the wire for kpiSampleTypes to add. - * @return This builder for chaining. - */ - public Builder addAllKpiSampleTypesValue( - java.lang.Iterable<java.lang.Integer> values) { - ensureKpiSampleTypesIsMutable(); - for (int value : values) { - kpiSampleTypes_.add(value); + endpointIdsBuilder_.addMessage(index, value); } - onChanged(); return this; } - - private context.ContextOuterClass.Location endpointLocation_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Location, context.ContextOuterClass.Location.Builder, context.ContextOuterClass.LocationOrBuilder> endpointLocationBuilder_; - /** - * <code>.context.Location endpoint_location = 5;</code> - * @return Whether the endpointLocation field is set. - */ - public boolean hasEndpointLocation() { - return endpointLocationBuilder_ != null || endpointLocation_ != null; - } /** - * <code>.context.Location endpoint_location = 5;</code> - * @return The endpointLocation. - */ - public context.ContextOuterClass.Location getEndpointLocation() { - if (endpointLocationBuilder_ == null) { - return endpointLocation_ == null ? context.ContextOuterClass.Location.getDefaultInstance() : endpointLocation_; + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> + */ + public Builder addEndpointIds( + context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (endpointIdsBuilder_ == null) { + ensureEndpointIdsIsMutable(); + endpointIds_.add(builderForValue.build()); + onChanged(); } else { - return endpointLocationBuilder_.getMessage(); + endpointIdsBuilder_.addMessage(builderForValue.build()); } + return this; } /** - * <code>.context.Location endpoint_location = 5;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public Builder setEndpointLocation(context.ContextOuterClass.Location value) { - if (endpointLocationBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - endpointLocation_ = value; + public Builder addEndpointIds( + int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (endpointIdsBuilder_ == null) { + ensureEndpointIdsIsMutable(); + endpointIds_.add(index, builderForValue.build()); onChanged(); } else { - endpointLocationBuilder_.setMessage(value); + endpointIdsBuilder_.addMessage(index, builderForValue.build()); } - return this; } /** - * <code>.context.Location endpoint_location = 5;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public Builder setEndpointLocation( - context.ContextOuterClass.Location.Builder builderForValue) { - if (endpointLocationBuilder_ == null) { - endpointLocation_ = builderForValue.build(); + public Builder addAllEndpointIds( + java.lang.Iterable<? extends context.ContextOuterClass.EndPointId> values) { + if (endpointIdsBuilder_ == null) { + ensureEndpointIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, endpointIds_); onChanged(); } else { - endpointLocationBuilder_.setMessage(builderForValue.build()); + endpointIdsBuilder_.addAllMessages(values); } - return this; } /** - * <code>.context.Location endpoint_location = 5;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public Builder mergeEndpointLocation(context.ContextOuterClass.Location value) { - if (endpointLocationBuilder_ == null) { - if (endpointLocation_ != null) { - endpointLocation_ = - context.ContextOuterClass.Location.newBuilder(endpointLocation_).mergeFrom(value).buildPartial(); - } else { - endpointLocation_ = value; - } + public Builder clearEndpointIds() { + if (endpointIdsBuilder_ == null) { + endpointIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { - endpointLocationBuilder_.mergeFrom(value); + endpointIdsBuilder_.clear(); } - return this; } /** - * <code>.context.Location endpoint_location = 5;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public Builder clearEndpointLocation() { - if (endpointLocationBuilder_ == null) { - endpointLocation_ = null; + public Builder removeEndpointIds(int index) { + if (endpointIdsBuilder_ == null) { + ensureEndpointIdsIsMutable(); + endpointIds_.remove(index); onChanged(); } else { - endpointLocation_ = null; - endpointLocationBuilder_ = null; + endpointIdsBuilder_.remove(index); } - return this; } /** - * <code>.context.Location endpoint_location = 5;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public context.ContextOuterClass.Location.Builder getEndpointLocationBuilder() { - - onChanged(); - return getEndpointLocationFieldBuilder().getBuilder(); + public context.ContextOuterClass.EndPointId.Builder getEndpointIdsBuilder( + int index) { + return getEndpointIdsFieldBuilder().getBuilder(index); } /** - * <code>.context.Location endpoint_location = 5;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public context.ContextOuterClass.LocationOrBuilder getEndpointLocationOrBuilder() { - if (endpointLocationBuilder_ != null) { - return endpointLocationBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdsOrBuilder( + int index) { + if (endpointIdsBuilder_ == null) { + return endpointIds_.get(index); } else { + return endpointIdsBuilder_.getMessageOrBuilder(index); + } + } + /** + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> + */ + public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getEndpointIdsOrBuilderList() { + if (endpointIdsBuilder_ != null) { + return endpointIdsBuilder_.getMessageOrBuilderList(); } else { - return endpointLocation_ == null ? - context.ContextOuterClass.Location.getDefaultInstance() : endpointLocation_; + return java.util.Collections.unmodifiableList(endpointIds_); } } /** - * <code>.context.Location endpoint_location = 5;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Location, context.ContextOuterClass.Location.Builder, context.ContextOuterClass.LocationOrBuilder> - getEndpointLocationFieldBuilder() { - if (endpointLocationBuilder_ == null) { - endpointLocationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Location, context.ContextOuterClass.Location.Builder, context.ContextOuterClass.LocationOrBuilder>( - getEndpointLocation(), + public context.ContextOuterClass.EndPointId.Builder addEndpointIdsBuilder() { + return getEndpointIdsFieldBuilder().addBuilder( + context.ContextOuterClass.EndPointId.getDefaultInstance()); + } + /** + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> + */ + public context.ContextOuterClass.EndPointId.Builder addEndpointIdsBuilder( + int index) { + return getEndpointIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.EndPointId.getDefaultInstance()); + } + /** + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> + */ + public java.util.List<context.ContextOuterClass.EndPointId.Builder> + getEndpointIdsBuilderList() { + return getEndpointIdsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> + getEndpointIdsFieldBuilder() { + if (endpointIdsBuilder_ == null) { + endpointIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( + endpointIds_, + ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); - endpointLocation_ = null; + endpointIds_ = null; } - return endpointLocationBuilder_; + return endpointIdsBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -52842,124 +57752,95 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.EndPoint) + // @@protoc_insertion_point(builder_scope:context.EndPointIdList) } - // @@protoc_insertion_point(class_scope:context.EndPoint) - private static final context.ContextOuterClass.EndPoint DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.EndPointIdList) + private static final context.ContextOuterClass.EndPointIdList DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.EndPoint(); + DEFAULT_INSTANCE = new context.ContextOuterClass.EndPointIdList(); } - public static context.ContextOuterClass.EndPoint getDefaultInstance() { + public static context.ContextOuterClass.EndPointIdList getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<EndPoint> - PARSER = new com.google.protobuf.AbstractParser<EndPoint>() { + private static final com.google.protobuf.Parser<EndPointIdList> + PARSER = new com.google.protobuf.AbstractParser<EndPointIdList>() { @java.lang.Override - public EndPoint parsePartialFrom( + public EndPointIdList parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new EndPoint(input, extensionRegistry); + return new EndPointIdList(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<EndPoint> parser() { + public static com.google.protobuf.Parser<EndPointIdList> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<EndPoint> getParserForType() { + public com.google.protobuf.Parser<EndPointIdList> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.EndPoint getDefaultInstanceForType() { + public context.ContextOuterClass.EndPointIdList getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface EndPointNameOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.EndPointName) + public interface EndPointNameListOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.EndPointNameList) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return Whether the endpointId field is set. - */ - boolean hasEndpointId(); - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return The endpointId. - */ - context.ContextOuterClass.EndPointId getEndpointId(); - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder(); - - /** - * <code>string device_name = 2;</code> - * @return The deviceName. - */ - java.lang.String getDeviceName(); - /** - * <code>string device_name = 2;</code> - * @return The bytes for deviceName. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - com.google.protobuf.ByteString - getDeviceNameBytes(); - + java.util.List<context.ContextOuterClass.EndPointName> + getEndpointNamesList(); /** - * <code>string endpoint_name = 3;</code> - * @return The endpointName. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - java.lang.String getEndpointName(); + context.ContextOuterClass.EndPointName getEndpointNames(int index); /** - * <code>string endpoint_name = 3;</code> - * @return The bytes for endpointName. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - com.google.protobuf.ByteString - getEndpointNameBytes(); - + int getEndpointNamesCount(); /** - * <code>string endpoint_type = 4;</code> - * @return The endpointType. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - java.lang.String getEndpointType(); + java.util.List<? extends context.ContextOuterClass.EndPointNameOrBuilder> + getEndpointNamesOrBuilderList(); /** - * <code>string endpoint_type = 4;</code> - * @return The bytes for endpointType. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - com.google.protobuf.ByteString - getEndpointTypeBytes(); + context.ContextOuterClass.EndPointNameOrBuilder getEndpointNamesOrBuilder( + int index); } /** - * Protobuf type {@code context.EndPointName} + * Protobuf type {@code context.EndPointNameList} */ - public static final class EndPointName extends + public static final class EndPointNameList extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.EndPointName) - EndPointNameOrBuilder { + // @@protoc_insertion_point(message_implements:context.EndPointNameList) + EndPointNameListOrBuilder { private static final long serialVersionUID = 0L; - // Use EndPointName.newBuilder() to construct. - private EndPointName(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use EndPointNameList.newBuilder() to construct. + private EndPointNameList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private EndPointName() { - deviceName_ = ""; - endpointName_ = ""; - endpointType_ = ""; + private EndPointNameList() { + endpointNames_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new EndPointName(); + return new EndPointNameList(); } @java.lang.Override @@ -52967,7 +57848,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private EndPointName( + private EndPointNameList( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -52975,6 +57856,7 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } + int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -52986,34 +57868,12 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.EndPointId.Builder subBuilder = null; - if (endpointId_ != null) { - subBuilder = endpointId_.toBuilder(); - } - endpointId_ = input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(endpointId_); - endpointId_ = subBuilder.buildPartial(); + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + endpointNames_ = new java.util.ArrayList<context.ContextOuterClass.EndPointName>(); + mutable_bitField0_ |= 0x00000001; } - - break; - } - case 18: { - java.lang.String s = input.readStringRequireUtf8(); - - deviceName_ = s; - break; - } - case 26: { - java.lang.String s = input.readStringRequireUtf8(); - - endpointName_ = s; - break; - } - case 34: { - java.lang.String s = input.readStringRequireUtf8(); - - endpointType_ = s; + endpointNames_.add( + input.readMessage(context.ContextOuterClass.EndPointName.parser(), extensionRegistry)); break; } default: { @@ -53031,161 +57891,64 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { + if (((mutable_bitField0_ & 0x00000001) != 0)) { + endpointNames_ = java.util.Collections.unmodifiableList(endpointNames_); + } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_EndPointName_descriptor; + return context.ContextOuterClass.internal_static_context_EndPointNameList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_EndPointName_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_EndPointNameList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.EndPointName.class, context.ContextOuterClass.EndPointName.Builder.class); - } - - public static final int ENDPOINT_ID_FIELD_NUMBER = 1; - private context.ContextOuterClass.EndPointId endpointId_; - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return Whether the endpointId field is set. - */ - @java.lang.Override - public boolean hasEndpointId() { - return endpointId_ != null; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return The endpointId. - */ - @java.lang.Override - public context.ContextOuterClass.EndPointId getEndpointId() { - return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - @java.lang.Override - public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { - return getEndpointId(); + context.ContextOuterClass.EndPointNameList.class, context.ContextOuterClass.EndPointNameList.Builder.class); } - public static final int DEVICE_NAME_FIELD_NUMBER = 2; - private volatile java.lang.Object deviceName_; - /** - * <code>string device_name = 2;</code> - * @return The deviceName. - */ - @java.lang.Override - public java.lang.String getDeviceName() { - java.lang.Object ref = deviceName_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - deviceName_ = s; - return s; - } - } + public static final int ENDPOINT_NAMES_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.EndPointName> endpointNames_; /** - * <code>string device_name = 2;</code> - * @return The bytes for deviceName. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ @java.lang.Override - public com.google.protobuf.ByteString - getDeviceNameBytes() { - java.lang.Object ref = deviceName_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - deviceName_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public java.util.List<context.ContextOuterClass.EndPointName> getEndpointNamesList() { + return endpointNames_; } - - public static final int ENDPOINT_NAME_FIELD_NUMBER = 3; - private volatile java.lang.Object endpointName_; /** - * <code>string endpoint_name = 3;</code> - * @return The endpointName. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ @java.lang.Override - public java.lang.String getEndpointName() { - java.lang.Object ref = endpointName_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - endpointName_ = s; - return s; - } + public java.util.List<? extends context.ContextOuterClass.EndPointNameOrBuilder> + getEndpointNamesOrBuilderList() { + return endpointNames_; } /** - * <code>string endpoint_name = 3;</code> - * @return The bytes for endpointName. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ @java.lang.Override - public com.google.protobuf.ByteString - getEndpointNameBytes() { - java.lang.Object ref = endpointName_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - endpointName_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public int getEndpointNamesCount() { + return endpointNames_.size(); } - - public static final int ENDPOINT_TYPE_FIELD_NUMBER = 4; - private volatile java.lang.Object endpointType_; /** - * <code>string endpoint_type = 4;</code> - * @return The endpointType. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ @java.lang.Override - public java.lang.String getEndpointType() { - java.lang.Object ref = endpointType_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - endpointType_ = s; - return s; - } + public context.ContextOuterClass.EndPointName getEndpointNames(int index) { + return endpointNames_.get(index); } /** - * <code>string endpoint_type = 4;</code> - * @return The bytes for endpointType. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ @java.lang.Override - public com.google.protobuf.ByteString - getEndpointTypeBytes() { - java.lang.Object ref = endpointType_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - endpointType_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public context.ContextOuterClass.EndPointNameOrBuilder getEndpointNamesOrBuilder( + int index) { + return endpointNames_.get(index); } private byte memoizedIsInitialized = -1; @@ -53202,17 +57965,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (endpointId_ != null) { - output.writeMessage(1, getEndpointId()); - } - if (!getDeviceNameBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, deviceName_); - } - if (!getEndpointNameBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 3, endpointName_); - } - if (!getEndpointTypeBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 4, endpointType_); + for (int i = 0; i < endpointNames_.size(); i++) { + output.writeMessage(1, endpointNames_.get(i)); } unknownFields.writeTo(output); } @@ -53223,18 +57977,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (endpointId_ != null) { + for (int i = 0; i < endpointNames_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getEndpointId()); - } - if (!getDeviceNameBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, deviceName_); - } - if (!getEndpointNameBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, endpointName_); - } - if (!getEndpointTypeBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, endpointType_); + .computeMessageSize(1, endpointNames_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -53246,22 +57991,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.EndPointName)) { + if (!(obj instanceof context.ContextOuterClass.EndPointNameList)) { return super.equals(obj); } - context.ContextOuterClass.EndPointName other = (context.ContextOuterClass.EndPointName) obj; + context.ContextOuterClass.EndPointNameList other = (context.ContextOuterClass.EndPointNameList) obj; - if (hasEndpointId() != other.hasEndpointId()) return false; - if (hasEndpointId()) { - if (!getEndpointId() - .equals(other.getEndpointId())) return false; - } - if (!getDeviceName() - .equals(other.getDeviceName())) return false; - if (!getEndpointName() - .equals(other.getEndpointName())) return false; - if (!getEndpointType() - .equals(other.getEndpointType())) return false; + if (!getEndpointNamesList() + .equals(other.getEndpointNamesList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -53273,84 +58009,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasEndpointId()) { - hash = (37 * hash) + ENDPOINT_ID_FIELD_NUMBER; - hash = (53 * hash) + getEndpointId().hashCode(); + if (getEndpointNamesCount() > 0) { + hash = (37 * hash) + ENDPOINT_NAMES_FIELD_NUMBER; + hash = (53 * hash) + getEndpointNamesList().hashCode(); } - hash = (37 * hash) + DEVICE_NAME_FIELD_NUMBER; - hash = (53 * hash) + getDeviceName().hashCode(); - hash = (37 * hash) + ENDPOINT_NAME_FIELD_NUMBER; - hash = (53 * hash) + getEndpointName().hashCode(); - hash = (37 * hash) + ENDPOINT_TYPE_FIELD_NUMBER; - hash = (53 * hash) + getEndpointType().hashCode(); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.EndPointName parseFrom( + public static context.ContextOuterClass.EndPointNameList parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.EndPointName parseFrom( + public static context.ContextOuterClass.EndPointNameList parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.EndPointName parseFrom( + public static context.ContextOuterClass.EndPointNameList parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.EndPointName parseFrom( + public static context.ContextOuterClass.EndPointNameList parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.EndPointName parseFrom(byte[] data) + public static context.ContextOuterClass.EndPointNameList parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.EndPointName parseFrom( + public static context.ContextOuterClass.EndPointNameList parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.EndPointName parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.EndPointNameList parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.EndPointName parseFrom( + public static context.ContextOuterClass.EndPointNameList 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 context.ContextOuterClass.EndPointName parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.EndPointNameList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.EndPointName parseDelimitedFrom( + public static context.ContextOuterClass.EndPointNameList 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 context.ContextOuterClass.EndPointName parseFrom( + public static context.ContextOuterClass.EndPointNameList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.EndPointName parseFrom( + public static context.ContextOuterClass.EndPointNameList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -53363,7 +58093,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.EndPointName prototype) { + public static Builder newBuilder(context.ContextOuterClass.EndPointNameList prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -53379,26 +58109,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.EndPointName} + * Protobuf type {@code context.EndPointNameList} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.EndPointName) - context.ContextOuterClass.EndPointNameOrBuilder { + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:context.EndPointNameList) + context.ContextOuterClass.EndPointNameListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_EndPointName_descriptor; + return context.ContextOuterClass.internal_static_context_EndPointNameList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_EndPointName_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_EndPointNameList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.EndPointName.class, context.ContextOuterClass.EndPointName.Builder.class); + context.ContextOuterClass.EndPointNameList.class, context.ContextOuterClass.EndPointNameList.Builder.class); } - // Construct using context.ContextOuterClass.EndPointName.newBuilder() + // Construct using context.ContextOuterClass.EndPointNameList.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -53411,40 +58141,35 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { + getEndpointNamesFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (endpointIdBuilder_ == null) { - endpointId_ = null; + if (endpointNamesBuilder_ == null) { + endpointNames_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); } else { - endpointId_ = null; - endpointIdBuilder_ = null; + endpointNamesBuilder_.clear(); } - deviceName_ = ""; - - endpointName_ = ""; - - endpointType_ = ""; - return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_EndPointName_descriptor; + return context.ContextOuterClass.internal_static_context_EndPointNameList_descriptor; } @java.lang.Override - public context.ContextOuterClass.EndPointName getDefaultInstanceForType() { - return context.ContextOuterClass.EndPointName.getDefaultInstance(); + public context.ContextOuterClass.EndPointNameList getDefaultInstanceForType() { + return context.ContextOuterClass.EndPointNameList.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.EndPointName build() { - context.ContextOuterClass.EndPointName result = buildPartial(); + public context.ContextOuterClass.EndPointNameList build() { + context.ContextOuterClass.EndPointNameList result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -53452,16 +58177,18 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.EndPointName buildPartial() { - context.ContextOuterClass.EndPointName result = new context.ContextOuterClass.EndPointName(this); - if (endpointIdBuilder_ == null) { - result.endpointId_ = endpointId_; + public context.ContextOuterClass.EndPointNameList buildPartial() { + context.ContextOuterClass.EndPointNameList result = new context.ContextOuterClass.EndPointNameList(this); + int from_bitField0_ = bitField0_; + if (endpointNamesBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + endpointNames_ = java.util.Collections.unmodifiableList(endpointNames_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.endpointNames_ = endpointNames_; } else { - result.endpointId_ = endpointIdBuilder_.build(); + result.endpointNames_ = endpointNamesBuilder_.build(); } - result.deviceName_ = deviceName_; - result.endpointName_ = endpointName_; - result.endpointType_ = endpointType_; onBuilt(); return result; } @@ -53500,30 +58227,41 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.EndPointName) { - return mergeFrom((context.ContextOuterClass.EndPointName)other); + if (other instanceof context.ContextOuterClass.EndPointNameList) { + return mergeFrom((context.ContextOuterClass.EndPointNameList)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.EndPointName other) { - if (other == context.ContextOuterClass.EndPointName.getDefaultInstance()) return this; - if (other.hasEndpointId()) { - mergeEndpointId(other.getEndpointId()); - } - if (!other.getDeviceName().isEmpty()) { - deviceName_ = other.deviceName_; - onChanged(); - } - if (!other.getEndpointName().isEmpty()) { - endpointName_ = other.endpointName_; - onChanged(); - } - if (!other.getEndpointType().isEmpty()) { - endpointType_ = other.endpointType_; - onChanged(); + public Builder mergeFrom(context.ContextOuterClass.EndPointNameList other) { + if (other == context.ContextOuterClass.EndPointNameList.getDefaultInstance()) return this; + if (endpointNamesBuilder_ == null) { + if (!other.endpointNames_.isEmpty()) { + if (endpointNames_.isEmpty()) { + endpointNames_ = other.endpointNames_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureEndpointNamesIsMutable(); + endpointNames_.addAll(other.endpointNames_); + } + onChanged(); + } + } else { + if (!other.endpointNames_.isEmpty()) { + if (endpointNamesBuilder_.isEmpty()) { + endpointNamesBuilder_.dispose(); + endpointNamesBuilder_ = null; + endpointNames_ = other.endpointNames_; + bitField0_ = (bitField0_ & ~0x00000001); + endpointNamesBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getEndpointNamesFieldBuilder() : null; + } else { + endpointNamesBuilder_.addAllMessages(other.endpointNames_); + } + } } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -53540,11 +58278,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.EndPointName parsedMessage = null; + context.ContextOuterClass.EndPointNameList parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.EndPointName) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.EndPointNameList) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -53553,352 +58291,246 @@ public final class ContextOuterClass { } return this; } + private int bitField0_; + + private java.util.List<context.ContextOuterClass.EndPointName> endpointNames_ = + java.util.Collections.emptyList(); + private void ensureEndpointNamesIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + endpointNames_ = new java.util.ArrayList<context.ContextOuterClass.EndPointName>(endpointNames_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointName, context.ContextOuterClass.EndPointName.Builder, context.ContextOuterClass.EndPointNameOrBuilder> endpointNamesBuilder_; - private context.ContextOuterClass.EndPointId endpointId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> endpointIdBuilder_; /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return Whether the endpointId field is set. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public boolean hasEndpointId() { - return endpointIdBuilder_ != null || endpointId_ != null; + public java.util.List<context.ContextOuterClass.EndPointName> getEndpointNamesList() { + if (endpointNamesBuilder_ == null) { + return java.util.Collections.unmodifiableList(endpointNames_); + } else { + return endpointNamesBuilder_.getMessageList(); + } } /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return The endpointId. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public context.ContextOuterClass.EndPointId getEndpointId() { - if (endpointIdBuilder_ == null) { - return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; + public int getEndpointNamesCount() { + if (endpointNamesBuilder_ == null) { + return endpointNames_.size(); } else { - return endpointIdBuilder_.getMessage(); + return endpointNamesBuilder_.getCount(); } } /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public Builder setEndpointId(context.ContextOuterClass.EndPointId value) { - if (endpointIdBuilder_ == null) { + public context.ContextOuterClass.EndPointName getEndpointNames(int index) { + if (endpointNamesBuilder_ == null) { + return endpointNames_.get(index); + } else { + return endpointNamesBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.EndPointName endpoint_names = 1;</code> + */ + public Builder setEndpointNames( + int index, context.ContextOuterClass.EndPointName value) { + if (endpointNamesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - endpointId_ = value; + ensureEndpointNamesIsMutable(); + endpointNames_.set(index, value); onChanged(); } else { - endpointIdBuilder_.setMessage(value); + endpointNamesBuilder_.setMessage(index, value); } - return this; } /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public Builder setEndpointId( - context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (endpointIdBuilder_ == null) { - endpointId_ = builderForValue.build(); + public Builder setEndpointNames( + int index, context.ContextOuterClass.EndPointName.Builder builderForValue) { + if (endpointNamesBuilder_ == null) { + ensureEndpointNamesIsMutable(); + endpointNames_.set(index, builderForValue.build()); onChanged(); } else { - endpointIdBuilder_.setMessage(builderForValue.build()); + endpointNamesBuilder_.setMessage(index, builderForValue.build()); } - return this; } /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public Builder mergeEndpointId(context.ContextOuterClass.EndPointId value) { - if (endpointIdBuilder_ == null) { - if (endpointId_ != null) { - endpointId_ = - context.ContextOuterClass.EndPointId.newBuilder(endpointId_).mergeFrom(value).buildPartial(); - } else { - endpointId_ = value; + public Builder addEndpointNames(context.ContextOuterClass.EndPointName value) { + if (endpointNamesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + ensureEndpointNamesIsMutable(); + endpointNames_.add(value); onChanged(); } else { - endpointIdBuilder_.mergeFrom(value); + endpointNamesBuilder_.addMessage(value); } - return this; } /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public Builder clearEndpointId() { - if (endpointIdBuilder_ == null) { - endpointId_ = null; + public Builder addEndpointNames( + int index, context.ContextOuterClass.EndPointName value) { + if (endpointNamesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureEndpointNamesIsMutable(); + endpointNames_.add(index, value); onChanged(); } else { - endpointId_ = null; - endpointIdBuilder_ = null; + endpointNamesBuilder_.addMessage(index, value); } - return this; } /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public context.ContextOuterClass.EndPointId.Builder getEndpointIdBuilder() { - - onChanged(); - return getEndpointIdFieldBuilder().getBuilder(); - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { - if (endpointIdBuilder_ != null) { - return endpointIdBuilder_.getMessageOrBuilder(); + public Builder addEndpointNames( + context.ContextOuterClass.EndPointName.Builder builderForValue) { + if (endpointNamesBuilder_ == null) { + ensureEndpointNamesIsMutable(); + endpointNames_.add(builderForValue.build()); + onChanged(); } else { - return endpointId_ == null ? - context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; - } - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> - getEndpointIdFieldBuilder() { - if (endpointIdBuilder_ == null) { - endpointIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( - getEndpointId(), - getParentForChildren(), - isClean()); - endpointId_ = null; + endpointNamesBuilder_.addMessage(builderForValue.build()); } - return endpointIdBuilder_; + return this; } - - private java.lang.Object deviceName_ = ""; /** - * <code>string device_name = 2;</code> - * @return The deviceName. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public java.lang.String getDeviceName() { - java.lang.Object ref = deviceName_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - deviceName_ = s; - return s; + public Builder addEndpointNames( + int index, context.ContextOuterClass.EndPointName.Builder builderForValue) { + if (endpointNamesBuilder_ == null) { + ensureEndpointNamesIsMutable(); + endpointNames_.add(index, builderForValue.build()); + onChanged(); } else { - return (java.lang.String) ref; + endpointNamesBuilder_.addMessage(index, builderForValue.build()); } + return this; } /** - * <code>string device_name = 2;</code> - * @return The bytes for deviceName. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public com.google.protobuf.ByteString - getDeviceNameBytes() { - java.lang.Object ref = deviceName_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - deviceName_ = b; - return b; + public Builder addAllEndpointNames( + java.lang.Iterable<? extends context.ContextOuterClass.EndPointName> values) { + if (endpointNamesBuilder_ == null) { + ensureEndpointNamesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, endpointNames_); + onChanged(); } else { - return (com.google.protobuf.ByteString) ref; + endpointNamesBuilder_.addAllMessages(values); } - } - /** - * <code>string device_name = 2;</code> - * @param value The deviceName to set. - * @return This builder for chaining. - */ - public Builder setDeviceName( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - deviceName_ = value; - onChanged(); - return this; - } - /** - * <code>string device_name = 2;</code> - * @return This builder for chaining. - */ - public Builder clearDeviceName() { - - deviceName_ = getDefaultInstance().getDeviceName(); - onChanged(); - return this; - } - /** - * <code>string device_name = 2;</code> - * @param value The bytes for deviceName to set. - * @return This builder for chaining. - */ - public Builder setDeviceNameBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - deviceName_ = value; - onChanged(); return this; } - - private java.lang.Object endpointName_ = ""; /** - * <code>string endpoint_name = 3;</code> - * @return The endpointName. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public java.lang.String getEndpointName() { - java.lang.Object ref = endpointName_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - endpointName_ = s; - return s; + public Builder clearEndpointNames() { + if (endpointNamesBuilder_ == null) { + endpointNames_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); } else { - return (java.lang.String) ref; + endpointNamesBuilder_.clear(); } + return this; } /** - * <code>string endpoint_name = 3;</code> - * @return The bytes for endpointName. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public com.google.protobuf.ByteString - getEndpointNameBytes() { - java.lang.Object ref = endpointName_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - endpointName_ = b; - return b; + public Builder removeEndpointNames(int index) { + if (endpointNamesBuilder_ == null) { + ensureEndpointNamesIsMutable(); + endpointNames_.remove(index); + onChanged(); } else { - return (com.google.protobuf.ByteString) ref; + endpointNamesBuilder_.remove(index); } - } - /** - * <code>string endpoint_name = 3;</code> - * @param value The endpointName to set. - * @return This builder for chaining. - */ - public Builder setEndpointName( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - endpointName_ = value; - onChanged(); - return this; - } - /** - * <code>string endpoint_name = 3;</code> - * @return This builder for chaining. - */ - public Builder clearEndpointName() { - - endpointName_ = getDefaultInstance().getEndpointName(); - onChanged(); return this; } /** - * <code>string endpoint_name = 3;</code> - * @param value The bytes for endpointName to set. - * @return This builder for chaining. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public Builder setEndpointNameBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - endpointName_ = value; - onChanged(); - return this; + public context.ContextOuterClass.EndPointName.Builder getEndpointNamesBuilder( + int index) { + return getEndpointNamesFieldBuilder().getBuilder(index); } - - private java.lang.Object endpointType_ = ""; /** - * <code>string endpoint_type = 4;</code> - * @return The endpointType. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public java.lang.String getEndpointType() { - java.lang.Object ref = endpointType_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - endpointType_ = s; - return s; - } else { - return (java.lang.String) ref; + public context.ContextOuterClass.EndPointNameOrBuilder getEndpointNamesOrBuilder( + int index) { + if (endpointNamesBuilder_ == null) { + return endpointNames_.get(index); } else { + return endpointNamesBuilder_.getMessageOrBuilder(index); } } /** - * <code>string endpoint_type = 4;</code> - * @return The bytes for endpointType. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public com.google.protobuf.ByteString - getEndpointTypeBytes() { - java.lang.Object ref = endpointType_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - endpointType_ = b; - return b; + public java.util.List<? extends context.ContextOuterClass.EndPointNameOrBuilder> + getEndpointNamesOrBuilderList() { + if (endpointNamesBuilder_ != null) { + return endpointNamesBuilder_.getMessageOrBuilderList(); } else { - return (com.google.protobuf.ByteString) ref; + return java.util.Collections.unmodifiableList(endpointNames_); } } /** - * <code>string endpoint_type = 4;</code> - * @param value The endpointType to set. - * @return This builder for chaining. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public Builder setEndpointType( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - endpointType_ = value; - onChanged(); - return this; + public context.ContextOuterClass.EndPointName.Builder addEndpointNamesBuilder() { + return getEndpointNamesFieldBuilder().addBuilder( + context.ContextOuterClass.EndPointName.getDefaultInstance()); } /** - * <code>string endpoint_type = 4;</code> - * @return This builder for chaining. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public Builder clearEndpointType() { - - endpointType_ = getDefaultInstance().getEndpointType(); - onChanged(); - return this; + public context.ContextOuterClass.EndPointName.Builder addEndpointNamesBuilder( + int index) { + return getEndpointNamesFieldBuilder().addBuilder( + index, context.ContextOuterClass.EndPointName.getDefaultInstance()); } /** - * <code>string endpoint_type = 4;</code> - * @param value The bytes for endpointType to set. - * @return This builder for chaining. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public Builder setEndpointTypeBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - endpointType_ = value; - onChanged(); - return this; + public java.util.List<context.ContextOuterClass.EndPointName.Builder> + getEndpointNamesBuilderList() { + return getEndpointNamesFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointName, context.ContextOuterClass.EndPointName.Builder, context.ContextOuterClass.EndPointNameOrBuilder> + getEndpointNamesFieldBuilder() { + if (endpointNamesBuilder_ == null) { + endpointNamesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointName, context.ContextOuterClass.EndPointName.Builder, context.ContextOuterClass.EndPointNameOrBuilder>( + endpointNames_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + endpointNames_ = null; + } + return endpointNamesBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -53913,95 +58545,96 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.EndPointName) + // @@protoc_insertion_point(builder_scope:context.EndPointNameList) } - // @@protoc_insertion_point(class_scope:context.EndPointName) - private static final context.ContextOuterClass.EndPointName DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.EndPointNameList) + private static final context.ContextOuterClass.EndPointNameList DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.EndPointName(); + DEFAULT_INSTANCE = new context.ContextOuterClass.EndPointNameList(); } - public static context.ContextOuterClass.EndPointName getDefaultInstance() { + public static context.ContextOuterClass.EndPointNameList getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<EndPointName> - PARSER = new com.google.protobuf.AbstractParser<EndPointName>() { + private static final com.google.protobuf.Parser<EndPointNameList> + PARSER = new com.google.protobuf.AbstractParser<EndPointNameList>() { @java.lang.Override - public EndPointName parsePartialFrom( + public EndPointNameList parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new EndPointName(input, extensionRegistry); + return new EndPointNameList(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<EndPointName> parser() { + public static com.google.protobuf.Parser<EndPointNameList> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<EndPointName> getParserForType() { + public com.google.protobuf.Parser<EndPointNameList> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.EndPointName getDefaultInstanceForType() { + public context.ContextOuterClass.EndPointNameList getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface EndPointIdListOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.EndPointIdList) + public interface ConfigRule_CustomOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ConfigRule_Custom) com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> - */ - java.util.List<context.ContextOuterClass.EndPointId> - getEndpointIdsList(); - /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> + * <code>string resource_key = 1;</code> + * @return The resourceKey. */ - context.ContextOuterClass.EndPointId getEndpointIds(int index); + java.lang.String getResourceKey(); /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> + * <code>string resource_key = 1;</code> + * @return The bytes for resourceKey. */ - int getEndpointIdsCount(); + com.google.protobuf.ByteString + getResourceKeyBytes(); + /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> + * <code>string resource_value = 2;</code> + * @return The resourceValue. */ - java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> - getEndpointIdsOrBuilderList(); + java.lang.String getResourceValue(); /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> + * <code>string resource_value = 2;</code> + * @return The bytes for resourceValue. */ - context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdsOrBuilder( - int index); + com.google.protobuf.ByteString + getResourceValueBytes(); } /** - * Protobuf type {@code context.EndPointIdList} + * Protobuf type {@code context.ConfigRule_Custom} */ - public static final class EndPointIdList extends + public static final class ConfigRule_Custom extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.EndPointIdList) - EndPointIdListOrBuilder { + // @@protoc_insertion_point(message_implements:context.ConfigRule_Custom) + ConfigRule_CustomOrBuilder { private static final long serialVersionUID = 0L; - // Use EndPointIdList.newBuilder() to construct. - private EndPointIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ConfigRule_Custom.newBuilder() to construct. + private ConfigRule_Custom(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private EndPointIdList() { - endpointIds_ = java.util.Collections.emptyList(); + private ConfigRule_Custom() { + resourceKey_ = ""; + resourceValue_ = ""; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new EndPointIdList(); + return new ConfigRule_Custom(); } @java.lang.Override @@ -54009,7 +58642,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private EndPointIdList( + private ConfigRule_Custom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -54017,7 +58650,6 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } - int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -54029,12 +58661,15 @@ public final class ContextOuterClass { done = true; break; case 10: { - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - endpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(); - mutable_bitField0_ |= 0x00000001; - } - endpointIds_.add( - input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry)); + java.lang.String s = input.readStringRequireUtf8(); + + resourceKey_ = s; + break; + } + case 18: { + java.lang.String s = input.readStringRequireUtf8(); + + resourceValue_ = s; break; } default: { @@ -54052,64 +58687,97 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { - if (((mutable_bitField0_ & 0x00000001) != 0)) { - endpointIds_ = java.util.Collections.unmodifiableList(endpointIds_); - } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_EndPointIdList_descriptor; + return context.ContextOuterClass.internal_static_context_ConfigRule_Custom_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_EndPointIdList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConfigRule_Custom_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.EndPointIdList.class, context.ContextOuterClass.EndPointIdList.Builder.class); + context.ContextOuterClass.ConfigRule_Custom.class, context.ContextOuterClass.ConfigRule_Custom.Builder.class); } - public static final int ENDPOINT_IDS_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.EndPointId> endpointIds_; - /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> - */ - @java.lang.Override - public java.util.List<context.ContextOuterClass.EndPointId> getEndpointIdsList() { - return endpointIds_; - } + public static final int RESOURCE_KEY_FIELD_NUMBER = 1; + private volatile java.lang.Object resourceKey_; /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> + * <code>string resource_key = 1;</code> + * @return The resourceKey. */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> - getEndpointIdsOrBuilderList() { - return endpointIds_; + public java.lang.String getResourceKey() { + java.lang.Object ref = resourceKey_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + resourceKey_ = s; + return s; + } } /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> + * <code>string resource_key = 1;</code> + * @return The bytes for resourceKey. */ @java.lang.Override - public int getEndpointIdsCount() { - return endpointIds_.size(); + public com.google.protobuf.ByteString + getResourceKeyBytes() { + java.lang.Object ref = resourceKey_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + resourceKey_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } + + public static final int RESOURCE_VALUE_FIELD_NUMBER = 2; + private volatile java.lang.Object resourceValue_; /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> + * <code>string resource_value = 2;</code> + * @return The resourceValue. */ @java.lang.Override - public context.ContextOuterClass.EndPointId getEndpointIds(int index) { - return endpointIds_.get(index); + public java.lang.String getResourceValue() { + java.lang.Object ref = resourceValue_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + resourceValue_ = s; + return s; + } } /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> + * <code>string resource_value = 2;</code> + * @return The bytes for resourceValue. */ @java.lang.Override - public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdsOrBuilder( - int index) { - return endpointIds_.get(index); + public com.google.protobuf.ByteString + getResourceValueBytes() { + java.lang.Object ref = resourceValue_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + resourceValue_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } private byte memoizedIsInitialized = -1; @@ -54126,8 +58794,11 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < endpointIds_.size(); i++) { - output.writeMessage(1, endpointIds_.get(i)); + if (!getResourceKeyBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, resourceKey_); + } + if (!getResourceValueBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, resourceValue_); } unknownFields.writeTo(output); } @@ -54138,9 +58809,11 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < endpointIds_.size(); i++) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, endpointIds_.get(i)); + if (!getResourceKeyBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, resourceKey_); + } + if (!getResourceValueBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, resourceValue_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -54152,13 +58825,15 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.EndPointIdList)) { + if (!(obj instanceof context.ContextOuterClass.ConfigRule_Custom)) { return super.equals(obj); } - context.ContextOuterClass.EndPointIdList other = (context.ContextOuterClass.EndPointIdList) obj; + context.ContextOuterClass.ConfigRule_Custom other = (context.ContextOuterClass.ConfigRule_Custom) obj; - if (!getEndpointIdsList() - .equals(other.getEndpointIdsList())) return false; + if (!getResourceKey() + .equals(other.getResourceKey())) return false; + if (!getResourceValue() + .equals(other.getResourceValue())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -54170,78 +58845,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getEndpointIdsCount() > 0) { - hash = (37 * hash) + ENDPOINT_IDS_FIELD_NUMBER; - hash = (53 * hash) + getEndpointIdsList().hashCode(); - } + hash = (37 * hash) + RESOURCE_KEY_FIELD_NUMBER; + hash = (53 * hash) + getResourceKey().hashCode(); + hash = (37 * hash) + RESOURCE_VALUE_FIELD_NUMBER; + hash = (53 * hash) + getResourceValue().hashCode(); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.EndPointIdList parseFrom( + public static context.ContextOuterClass.ConfigRule_Custom parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.EndPointIdList parseFrom( + public static context.ContextOuterClass.ConfigRule_Custom parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.EndPointIdList parseFrom( + public static context.ContextOuterClass.ConfigRule_Custom parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.EndPointIdList parseFrom( + public static context.ContextOuterClass.ConfigRule_Custom parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.EndPointIdList parseFrom(byte[] data) + public static context.ContextOuterClass.ConfigRule_Custom parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.EndPointIdList parseFrom( + public static context.ContextOuterClass.ConfigRule_Custom parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.EndPointIdList parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConfigRule_Custom parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.EndPointIdList parseFrom( + public static context.ContextOuterClass.ConfigRule_Custom 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 context.ContextOuterClass.EndPointIdList parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConfigRule_Custom parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.EndPointIdList parseDelimitedFrom( + public static context.ContextOuterClass.ConfigRule_Custom 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 context.ContextOuterClass.EndPointIdList parseFrom( + public static context.ContextOuterClass.ConfigRule_Custom parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.EndPointIdList parseFrom( + public static context.ContextOuterClass.ConfigRule_Custom parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -54254,7 +58929,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.EndPointIdList prototype) { + public static Builder newBuilder(context.ContextOuterClass.ConfigRule_Custom prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -54270,26 +58945,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.EndPointIdList} + * Protobuf type {@code context.ConfigRule_Custom} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.EndPointIdList) - context.ContextOuterClass.EndPointIdListOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ConfigRule_Custom) + context.ContextOuterClass.ConfigRule_CustomOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_EndPointIdList_descriptor; + return context.ContextOuterClass.internal_static_context_ConfigRule_Custom_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_EndPointIdList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConfigRule_Custom_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.EndPointIdList.class, context.ContextOuterClass.EndPointIdList.Builder.class); + context.ContextOuterClass.ConfigRule_Custom.class, context.ContextOuterClass.ConfigRule_Custom.Builder.class); } - // Construct using context.ContextOuterClass.EndPointIdList.newBuilder() + // Construct using context.ContextOuterClass.ConfigRule_Custom.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -54302,35 +58977,32 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getEndpointIdsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (endpointIdsBuilder_ == null) { - endpointIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - } else { - endpointIdsBuilder_.clear(); - } + resourceKey_ = ""; + + resourceValue_ = ""; + return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_EndPointIdList_descriptor; + return context.ContextOuterClass.internal_static_context_ConfigRule_Custom_descriptor; } @java.lang.Override - public context.ContextOuterClass.EndPointIdList getDefaultInstanceForType() { - return context.ContextOuterClass.EndPointIdList.getDefaultInstance(); + public context.ContextOuterClass.ConfigRule_Custom getDefaultInstanceForType() { + return context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.EndPointIdList build() { - context.ContextOuterClass.EndPointIdList result = buildPartial(); + public context.ContextOuterClass.ConfigRule_Custom build() { + context.ContextOuterClass.ConfigRule_Custom result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -54338,18 +59010,10 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.EndPointIdList buildPartial() { - context.ContextOuterClass.EndPointIdList result = new context.ContextOuterClass.EndPointIdList(this); - int from_bitField0_ = bitField0_; - if (endpointIdsBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { - endpointIds_ = java.util.Collections.unmodifiableList(endpointIds_); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.endpointIds_ = endpointIds_; - } else { - result.endpointIds_ = endpointIdsBuilder_.build(); - } + public context.ContextOuterClass.ConfigRule_Custom buildPartial() { + context.ContextOuterClass.ConfigRule_Custom result = new context.ContextOuterClass.ConfigRule_Custom(this); + result.resourceKey_ = resourceKey_; + result.resourceValue_ = resourceValue_; onBuilt(); return result; } @@ -54388,41 +59052,23 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.EndPointIdList) { - return mergeFrom((context.ContextOuterClass.EndPointIdList)other); + if (other instanceof context.ContextOuterClass.ConfigRule_Custom) { + return mergeFrom((context.ContextOuterClass.ConfigRule_Custom)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.EndPointIdList other) { - if (other == context.ContextOuterClass.EndPointIdList.getDefaultInstance()) return this; - if (endpointIdsBuilder_ == null) { - if (!other.endpointIds_.isEmpty()) { - if (endpointIds_.isEmpty()) { - endpointIds_ = other.endpointIds_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureEndpointIdsIsMutable(); - endpointIds_.addAll(other.endpointIds_); - } - onChanged(); - } - } else { - if (!other.endpointIds_.isEmpty()) { - if (endpointIdsBuilder_.isEmpty()) { - endpointIdsBuilder_.dispose(); - endpointIdsBuilder_ = null; - endpointIds_ = other.endpointIds_; - bitField0_ = (bitField0_ & ~0x00000001); - endpointIdsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getEndpointIdsFieldBuilder() : null; - } else { - endpointIdsBuilder_.addAllMessages(other.endpointIds_); - } - } + public Builder mergeFrom(context.ContextOuterClass.ConfigRule_Custom other) { + if (other == context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance()) return this; + if (!other.getResourceKey().isEmpty()) { + resourceKey_ = other.resourceKey_; + onChanged(); + } + if (!other.getResourceValue().isEmpty()) { + resourceValue_ = other.resourceValue_; + onChanged(); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -54439,11 +59085,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.EndPointIdList parsedMessage = null; + context.ContextOuterClass.ConfigRule_Custom parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.EndPointIdList) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ConfigRule_Custom) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -54452,246 +59098,157 @@ public final class ContextOuterClass { } return this; } - private int bitField0_; - - private java.util.List<context.ContextOuterClass.EndPointId> endpointIds_ = - java.util.Collections.emptyList(); - private void ensureEndpointIdsIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - endpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(endpointIds_); - bitField0_ |= 0x00000001; - } - } - - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> endpointIdsBuilder_; + private java.lang.Object resourceKey_ = ""; /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> - */ - public java.util.List<context.ContextOuterClass.EndPointId> getEndpointIdsList() { - if (endpointIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(endpointIds_); - } else { - return endpointIdsBuilder_.getMessageList(); - } - } - /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> - */ - public int getEndpointIdsCount() { - if (endpointIdsBuilder_ == null) { - return endpointIds_.size(); - } else { - return endpointIdsBuilder_.getCount(); - } - } - /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> - */ - public context.ContextOuterClass.EndPointId getEndpointIds(int index) { - if (endpointIdsBuilder_ == null) { - return endpointIds_.get(index); - } else { - return endpointIdsBuilder_.getMessage(index); - } - } - /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> - */ - public Builder setEndpointIds( - int index, context.ContextOuterClass.EndPointId value) { - if (endpointIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureEndpointIdsIsMutable(); - endpointIds_.set(index, value); - onChanged(); - } else { - endpointIdsBuilder_.setMessage(index, value); - } - return this; - } - /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> - */ - public Builder setEndpointIds( - int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (endpointIdsBuilder_ == null) { - ensureEndpointIdsIsMutable(); - endpointIds_.set(index, builderForValue.build()); - onChanged(); - } else { - endpointIdsBuilder_.setMessage(index, builderForValue.build()); - } - return this; - } - /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> - */ - public Builder addEndpointIds(context.ContextOuterClass.EndPointId value) { - if (endpointIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureEndpointIdsIsMutable(); - endpointIds_.add(value); - onChanged(); - } else { - endpointIdsBuilder_.addMessage(value); - } - return this; - } - /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> - */ - public Builder addEndpointIds( - int index, context.ContextOuterClass.EndPointId value) { - if (endpointIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureEndpointIdsIsMutable(); - endpointIds_.add(index, value); - onChanged(); - } else { - endpointIdsBuilder_.addMessage(index, value); - } - return this; - } - /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> + * <code>string resource_key = 1;</code> + * @return The resourceKey. */ - public Builder addEndpointIds( - context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (endpointIdsBuilder_ == null) { - ensureEndpointIdsIsMutable(); - endpointIds_.add(builderForValue.build()); - onChanged(); + public java.lang.String getResourceKey() { + java.lang.Object ref = resourceKey_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + resourceKey_ = s; + return s; } else { - endpointIdsBuilder_.addMessage(builderForValue.build()); + return (java.lang.String) ref; } - return this; } /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> + * <code>string resource_key = 1;</code> + * @return The bytes for resourceKey. */ - public Builder addEndpointIds( - int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (endpointIdsBuilder_ == null) { - ensureEndpointIdsIsMutable(); - endpointIds_.add(index, builderForValue.build()); - onChanged(); + public com.google.protobuf.ByteString + getResourceKeyBytes() { + java.lang.Object ref = resourceKey_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + resourceKey_ = b; + return b; } else { - endpointIdsBuilder_.addMessage(index, builderForValue.build()); + return (com.google.protobuf.ByteString) ref; } - return this; } /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> + * <code>string resource_key = 1;</code> + * @param value The resourceKey to set. + * @return This builder for chaining. */ - public Builder addAllEndpointIds( - java.lang.Iterable<? extends context.ContextOuterClass.EndPointId> values) { - if (endpointIdsBuilder_ == null) { - ensureEndpointIdsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, endpointIds_); - onChanged(); - } else { - endpointIdsBuilder_.addAllMessages(values); - } + public Builder setResourceKey( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + resourceKey_ = value; + onChanged(); return this; } /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> + * <code>string resource_key = 1;</code> + * @return This builder for chaining. */ - public Builder clearEndpointIds() { - if (endpointIdsBuilder_ == null) { - endpointIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - } else { - endpointIdsBuilder_.clear(); - } + public Builder clearResourceKey() { + + resourceKey_ = getDefaultInstance().getResourceKey(); + onChanged(); return this; } /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> + * <code>string resource_key = 1;</code> + * @param value The bytes for resourceKey to set. + * @return This builder for chaining. */ - public Builder removeEndpointIds(int index) { - if (endpointIdsBuilder_ == null) { - ensureEndpointIdsIsMutable(); - endpointIds_.remove(index); - onChanged(); - } else { - endpointIdsBuilder_.remove(index); - } + public Builder setResourceKeyBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + resourceKey_ = value; + onChanged(); return this; } + + private java.lang.Object resourceValue_ = ""; /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> - */ - public context.ContextOuterClass.EndPointId.Builder getEndpointIdsBuilder( - int index) { - return getEndpointIdsFieldBuilder().getBuilder(index); - } - /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> + * <code>string resource_value = 2;</code> + * @return The resourceValue. */ - public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdsOrBuilder( - int index) { - if (endpointIdsBuilder_ == null) { - return endpointIds_.get(index); } else { - return endpointIdsBuilder_.getMessageOrBuilder(index); + public java.lang.String getResourceValue() { + java.lang.Object ref = resourceValue_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + resourceValue_ = s; + return s; + } else { + return (java.lang.String) ref; } } /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> + * <code>string resource_value = 2;</code> + * @return The bytes for resourceValue. */ - public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> - getEndpointIdsOrBuilderList() { - if (endpointIdsBuilder_ != null) { - return endpointIdsBuilder_.getMessageOrBuilderList(); + public com.google.protobuf.ByteString + getResourceValueBytes() { + java.lang.Object ref = resourceValue_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + resourceValue_ = b; + return b; } else { - return java.util.Collections.unmodifiableList(endpointIds_); + return (com.google.protobuf.ByteString) ref; } } /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> + * <code>string resource_value = 2;</code> + * @param value The resourceValue to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.EndPointId.Builder addEndpointIdsBuilder() { - return getEndpointIdsFieldBuilder().addBuilder( - context.ContextOuterClass.EndPointId.getDefaultInstance()); + public Builder setResourceValue( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + resourceValue_ = value; + onChanged(); + return this; } /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> + * <code>string resource_value = 2;</code> + * @return This builder for chaining. */ - public context.ContextOuterClass.EndPointId.Builder addEndpointIdsBuilder( - int index) { - return getEndpointIdsFieldBuilder().addBuilder( - index, context.ContextOuterClass.EndPointId.getDefaultInstance()); + public Builder clearResourceValue() { + + resourceValue_ = getDefaultInstance().getResourceValue(); + onChanged(); + return this; } /** - * <code>repeated .context.EndPointId endpoint_ids = 1;</code> + * <code>string resource_value = 2;</code> + * @param value The bytes for resourceValue to set. + * @return This builder for chaining. */ - public java.util.List<context.ContextOuterClass.EndPointId.Builder> - getEndpointIdsBuilderList() { - return getEndpointIdsFieldBuilder().getBuilderList(); - } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> - getEndpointIdsFieldBuilder() { - if (endpointIdsBuilder_ == null) { - endpointIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( - endpointIds_, - ((bitField0_ & 0x00000001) != 0), - getParentForChildren(), - isClean()); - endpointIds_ = null; - } - return endpointIdsBuilder_; + public Builder setResourceValueBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + resourceValue_ = value; + onChanged(); + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -54706,95 +59263,100 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.EndPointIdList) + // @@protoc_insertion_point(builder_scope:context.ConfigRule_Custom) } - // @@protoc_insertion_point(class_scope:context.EndPointIdList) - private static final context.ContextOuterClass.EndPointIdList DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ConfigRule_Custom) + private static final context.ContextOuterClass.ConfigRule_Custom DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.EndPointIdList(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ConfigRule_Custom(); } - public static context.ContextOuterClass.EndPointIdList getDefaultInstance() { + public static context.ContextOuterClass.ConfigRule_Custom getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<EndPointIdList> - PARSER = new com.google.protobuf.AbstractParser<EndPointIdList>() { + private static final com.google.protobuf.Parser<ConfigRule_Custom> + PARSER = new com.google.protobuf.AbstractParser<ConfigRule_Custom>() { @java.lang.Override - public EndPointIdList parsePartialFrom( + public ConfigRule_Custom parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new EndPointIdList(input, extensionRegistry); + return new ConfigRule_Custom(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<EndPointIdList> parser() { + public static com.google.protobuf.Parser<ConfigRule_Custom> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<EndPointIdList> getParserForType() { + public com.google.protobuf.Parser<ConfigRule_Custom> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.EndPointIdList getDefaultInstanceForType() { + public context.ContextOuterClass.ConfigRule_Custom getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface EndPointNameListOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.EndPointNameList) + public interface ConfigRule_ACLOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ConfigRule_ACL) com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ - java.util.List<context.ContextOuterClass.EndPointName> - getEndpointNamesList(); + boolean hasEndpointId(); /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. */ - context.ContextOuterClass.EndPointName getEndpointNames(int index); + context.ContextOuterClass.EndPointId getEndpointId(); /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - int getEndpointNamesCount(); + context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder(); + /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.acl.AclRuleSet rule_set = 2;</code> + * @return Whether the ruleSet field is set. */ - java.util.List<? extends context.ContextOuterClass.EndPointNameOrBuilder> - getEndpointNamesOrBuilderList(); + boolean hasRuleSet(); /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.acl.AclRuleSet rule_set = 2;</code> + * @return The ruleSet. */ - context.ContextOuterClass.EndPointNameOrBuilder getEndpointNamesOrBuilder( - int index); + acl.Acl.AclRuleSet getRuleSet(); + /** + * <code>.acl.AclRuleSet rule_set = 2;</code> + */ + acl.Acl.AclRuleSetOrBuilder getRuleSetOrBuilder(); } /** - * Protobuf type {@code context.EndPointNameList} + * Protobuf type {@code context.ConfigRule_ACL} */ - public static final class EndPointNameList extends + public static final class ConfigRule_ACL extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.EndPointNameList) - EndPointNameListOrBuilder { + // @@protoc_insertion_point(message_implements:context.ConfigRule_ACL) + ConfigRule_ACLOrBuilder { private static final long serialVersionUID = 0L; - // Use EndPointNameList.newBuilder() to construct. - private EndPointNameList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ConfigRule_ACL.newBuilder() to construct. + private ConfigRule_ACL(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private EndPointNameList() { - endpointNames_ = java.util.Collections.emptyList(); + private ConfigRule_ACL() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new EndPointNameList(); + return new ConfigRule_ACL(); } @java.lang.Override @@ -54802,7 +59364,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private EndPointNameList( + private ConfigRule_ACL( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -54810,7 +59372,6 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } - int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -54822,12 +59383,29 @@ public final class ContextOuterClass { done = true; break; case 10: { - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - endpointNames_ = new java.util.ArrayList<context.ContextOuterClass.EndPointName>(); - mutable_bitField0_ |= 0x00000001; + context.ContextOuterClass.EndPointId.Builder subBuilder = null; + if (endpointId_ != null) { + subBuilder = endpointId_.toBuilder(); } - endpointNames_.add( - input.readMessage(context.ContextOuterClass.EndPointName.parser(), extensionRegistry)); + endpointId_ = input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(endpointId_); + endpointId_ = subBuilder.buildPartial(); + } + + break; + } + case 18: { + acl.Acl.AclRuleSet.Builder subBuilder = null; + if (ruleSet_ != null) { + subBuilder = ruleSet_.toBuilder(); + } + ruleSet_ = input.readMessage(acl.Acl.AclRuleSet.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(ruleSet_); + ruleSet_ = subBuilder.buildPartial(); + } + break; } default: { @@ -54845,64 +59423,73 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { - if (((mutable_bitField0_ & 0x00000001) != 0)) { - endpointNames_ = java.util.Collections.unmodifiableList(endpointNames_); - } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_EndPointNameList_descriptor; + return context.ContextOuterClass.internal_static_context_ConfigRule_ACL_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_EndPointNameList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConfigRule_ACL_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.EndPointNameList.class, context.ContextOuterClass.EndPointNameList.Builder.class); + context.ContextOuterClass.ConfigRule_ACL.class, context.ContextOuterClass.ConfigRule_ACL.Builder.class); } - public static final int ENDPOINT_NAMES_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.EndPointName> endpointNames_; + public static final int ENDPOINT_ID_FIELD_NUMBER = 1; + private context.ContextOuterClass.EndPointId endpointId_; /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ @java.lang.Override - public java.util.List<context.ContextOuterClass.EndPointName> getEndpointNamesList() { - return endpointNames_; + public boolean hasEndpointId() { + return endpointId_ != null; } /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.EndPointNameOrBuilder> - getEndpointNamesOrBuilderList() { - return endpointNames_; + public context.ContextOuterClass.EndPointId getEndpointId() { + return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; } /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ @java.lang.Override - public int getEndpointNamesCount() { - return endpointNames_.size(); + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { + return getEndpointId(); } + + public static final int RULE_SET_FIELD_NUMBER = 2; + private acl.Acl.AclRuleSet ruleSet_; /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.acl.AclRuleSet rule_set = 2;</code> + * @return Whether the ruleSet field is set. */ @java.lang.Override - public context.ContextOuterClass.EndPointName getEndpointNames(int index) { - return endpointNames_.get(index); + public boolean hasRuleSet() { + return ruleSet_ != null; } /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.acl.AclRuleSet rule_set = 2;</code> + * @return The ruleSet. */ @java.lang.Override - public context.ContextOuterClass.EndPointNameOrBuilder getEndpointNamesOrBuilder( - int index) { - return endpointNames_.get(index); + public acl.Acl.AclRuleSet getRuleSet() { + return ruleSet_ == null ? acl.Acl.AclRuleSet.getDefaultInstance() : ruleSet_; + } + /** + * <code>.acl.AclRuleSet rule_set = 2;</code> + */ + @java.lang.Override + public acl.Acl.AclRuleSetOrBuilder getRuleSetOrBuilder() { + return getRuleSet(); } private byte memoizedIsInitialized = -1; @@ -54919,8 +59506,11 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < endpointNames_.size(); i++) { - output.writeMessage(1, endpointNames_.get(i)); + if (endpointId_ != null) { + output.writeMessage(1, getEndpointId()); + } + if (ruleSet_ != null) { + output.writeMessage(2, getRuleSet()); } unknownFields.writeTo(output); } @@ -54931,9 +59521,13 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < endpointNames_.size(); i++) { + if (endpointId_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, endpointNames_.get(i)); + .computeMessageSize(1, getEndpointId()); + } + if (ruleSet_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, getRuleSet()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -54945,13 +59539,21 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.EndPointNameList)) { + if (!(obj instanceof context.ContextOuterClass.ConfigRule_ACL)) { return super.equals(obj); } - context.ContextOuterClass.EndPointNameList other = (context.ContextOuterClass.EndPointNameList) obj; + context.ContextOuterClass.ConfigRule_ACL other = (context.ContextOuterClass.ConfigRule_ACL) obj; - if (!getEndpointNamesList() - .equals(other.getEndpointNamesList())) return false; + if (hasEndpointId() != other.hasEndpointId()) return false; + if (hasEndpointId()) { + if (!getEndpointId() + .equals(other.getEndpointId())) return false; + } + if (hasRuleSet() != other.hasRuleSet()) return false; + if (hasRuleSet()) { + if (!getRuleSet() + .equals(other.getRuleSet())) return false; + } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -54963,78 +59565,82 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getEndpointNamesCount() > 0) { - hash = (37 * hash) + ENDPOINT_NAMES_FIELD_NUMBER; - hash = (53 * hash) + getEndpointNamesList().hashCode(); + if (hasEndpointId()) { + hash = (37 * hash) + ENDPOINT_ID_FIELD_NUMBER; + hash = (53 * hash) + getEndpointId().hashCode(); + } + if (hasRuleSet()) { + hash = (37 * hash) + RULE_SET_FIELD_NUMBER; + hash = (53 * hash) + getRuleSet().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.EndPointNameList parseFrom( + public static context.ContextOuterClass.ConfigRule_ACL parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.EndPointNameList parseFrom( + public static context.ContextOuterClass.ConfigRule_ACL parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.EndPointNameList parseFrom( + public static context.ContextOuterClass.ConfigRule_ACL parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.EndPointNameList parseFrom( + public static context.ContextOuterClass.ConfigRule_ACL parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.EndPointNameList parseFrom(byte[] data) + public static context.ContextOuterClass.ConfigRule_ACL parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.EndPointNameList parseFrom( + public static context.ContextOuterClass.ConfigRule_ACL parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.EndPointNameList parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConfigRule_ACL parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.EndPointNameList parseFrom( + public static context.ContextOuterClass.ConfigRule_ACL 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 context.ContextOuterClass.EndPointNameList parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConfigRule_ACL parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.EndPointNameList parseDelimitedFrom( + public static context.ContextOuterClass.ConfigRule_ACL 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 context.ContextOuterClass.EndPointNameList parseFrom( + public static context.ContextOuterClass.ConfigRule_ACL parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.EndPointNameList parseFrom( + public static context.ContextOuterClass.ConfigRule_ACL parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -55047,7 +59653,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.EndPointNameList prototype) { + public static Builder newBuilder(context.ContextOuterClass.ConfigRule_ACL prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -55063,26 +59669,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.EndPointNameList} + * Protobuf type {@code context.ConfigRule_ACL} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.EndPointNameList) - context.ContextOuterClass.EndPointNameListOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ConfigRule_ACL) + context.ContextOuterClass.ConfigRule_ACLOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_EndPointNameList_descriptor; + return context.ContextOuterClass.internal_static_context_ConfigRule_ACL_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_EndPointNameList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConfigRule_ACL_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.EndPointNameList.class, context.ContextOuterClass.EndPointNameList.Builder.class); + context.ContextOuterClass.ConfigRule_ACL.class, context.ContextOuterClass.ConfigRule_ACL.Builder.class); } - // Construct using context.ContextOuterClass.EndPointNameList.newBuilder() + // Construct using context.ContextOuterClass.ConfigRule_ACL.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -55095,17 +59701,22 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getEndpointNamesFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (endpointNamesBuilder_ == null) { - endpointNames_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + if (endpointIdBuilder_ == null) { + endpointId_ = null; } else { - endpointNamesBuilder_.clear(); + endpointId_ = null; + endpointIdBuilder_ = null; + } + if (ruleSetBuilder_ == null) { + ruleSet_ = null; + } else { + ruleSet_ = null; + ruleSetBuilder_ = null; } return this; } @@ -55113,17 +59724,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_EndPointNameList_descriptor; + return context.ContextOuterClass.internal_static_context_ConfigRule_ACL_descriptor; } @java.lang.Override - public context.ContextOuterClass.EndPointNameList getDefaultInstanceForType() { - return context.ContextOuterClass.EndPointNameList.getDefaultInstance(); + public context.ContextOuterClass.ConfigRule_ACL getDefaultInstanceForType() { + return context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.EndPointNameList build() { - context.ContextOuterClass.EndPointNameList result = buildPartial(); + public context.ContextOuterClass.ConfigRule_ACL build() { + context.ContextOuterClass.ConfigRule_ACL result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -55131,17 +59742,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.EndPointNameList buildPartial() { - context.ContextOuterClass.EndPointNameList result = new context.ContextOuterClass.EndPointNameList(this); - int from_bitField0_ = bitField0_; - if (endpointNamesBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { - endpointNames_ = java.util.Collections.unmodifiableList(endpointNames_); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.endpointNames_ = endpointNames_; + public context.ContextOuterClass.ConfigRule_ACL buildPartial() { + context.ContextOuterClass.ConfigRule_ACL result = new context.ContextOuterClass.ConfigRule_ACL(this); + if (endpointIdBuilder_ == null) { + result.endpointId_ = endpointId_; } else { - result.endpointNames_ = endpointNamesBuilder_.build(); + result.endpointId_ = endpointIdBuilder_.build(); + } + if (ruleSetBuilder_ == null) { + result.ruleSet_ = ruleSet_; + } else { + result.ruleSet_ = ruleSetBuilder_.build(); } onBuilt(); return result; @@ -55181,41 +59792,21 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.EndPointNameList) { - return mergeFrom((context.ContextOuterClass.EndPointNameList)other); + if (other instanceof context.ContextOuterClass.ConfigRule_ACL) { + return mergeFrom((context.ContextOuterClass.ConfigRule_ACL)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.EndPointNameList other) { - if (other == context.ContextOuterClass.EndPointNameList.getDefaultInstance()) return this; - if (endpointNamesBuilder_ == null) { - if (!other.endpointNames_.isEmpty()) { - if (endpointNames_.isEmpty()) { - endpointNames_ = other.endpointNames_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureEndpointNamesIsMutable(); - endpointNames_.addAll(other.endpointNames_); - } - onChanged(); - } - } else { - if (!other.endpointNames_.isEmpty()) { - if (endpointNamesBuilder_.isEmpty()) { - endpointNamesBuilder_.dispose(); - endpointNamesBuilder_ = null; - endpointNames_ = other.endpointNames_; - bitField0_ = (bitField0_ & ~0x00000001); - endpointNamesBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getEndpointNamesFieldBuilder() : null; - } else { - endpointNamesBuilder_.addAllMessages(other.endpointNames_); - } - } + public Builder mergeFrom(context.ContextOuterClass.ConfigRule_ACL other) { + if (other == context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance()) return this; + if (other.hasEndpointId()) { + mergeEndpointId(other.getEndpointId()); + } + if (other.hasRuleSet()) { + mergeRuleSet(other.getRuleSet()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -55232,11 +59823,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.EndPointNameList parsedMessage = null; + context.ContextOuterClass.ConfigRule_ACL parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.EndPointNameList) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ConfigRule_ACL) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -55245,246 +59836,243 @@ public final class ContextOuterClass { } return this; } - private int bitField0_; - - private java.util.List<context.ContextOuterClass.EndPointName> endpointNames_ = - java.util.Collections.emptyList(); - private void ensureEndpointNamesIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - endpointNames_ = new java.util.ArrayList<context.ContextOuterClass.EndPointName>(endpointNames_); - bitField0_ |= 0x00000001; - } - } - - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointName, context.ContextOuterClass.EndPointName.Builder, context.ContextOuterClass.EndPointNameOrBuilder> endpointNamesBuilder_; + private context.ContextOuterClass.EndPointId endpointId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> endpointIdBuilder_; /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> - */ - public java.util.List<context.ContextOuterClass.EndPointName> getEndpointNamesList() { - if (endpointNamesBuilder_ == null) { - return java.util.Collections.unmodifiableList(endpointNames_); - } else { - return endpointNamesBuilder_.getMessageList(); - } - } - /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ - public int getEndpointNamesCount() { - if (endpointNamesBuilder_ == null) { - return endpointNames_.size(); - } else { - return endpointNamesBuilder_.getCount(); - } + public boolean hasEndpointId() { + return endpointIdBuilder_ != null || endpointId_ != null; } /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. */ - public context.ContextOuterClass.EndPointName getEndpointNames(int index) { - if (endpointNamesBuilder_ == null) { - return endpointNames_.get(index); + public context.ContextOuterClass.EndPointId getEndpointId() { + if (endpointIdBuilder_ == null) { + return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; } else { - return endpointNamesBuilder_.getMessage(index); + return endpointIdBuilder_.getMessage(); } } /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder setEndpointNames( - int index, context.ContextOuterClass.EndPointName value) { - if (endpointNamesBuilder_ == null) { + public Builder setEndpointId(context.ContextOuterClass.EndPointId value) { + if (endpointIdBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureEndpointNamesIsMutable(); - endpointNames_.set(index, value); + endpointId_ = value; onChanged(); } else { - endpointNamesBuilder_.setMessage(index, value); + endpointIdBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder setEndpointNames( - int index, context.ContextOuterClass.EndPointName.Builder builderForValue) { - if (endpointNamesBuilder_ == null) { - ensureEndpointNamesIsMutable(); - endpointNames_.set(index, builderForValue.build()); + public Builder setEndpointId( + context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (endpointIdBuilder_ == null) { + endpointId_ = builderForValue.build(); onChanged(); } else { - endpointNamesBuilder_.setMessage(index, builderForValue.build()); + endpointIdBuilder_.setMessage(builderForValue.build()); } + return this; } /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder addEndpointNames(context.ContextOuterClass.EndPointName value) { - if (endpointNamesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + public Builder mergeEndpointId(context.ContextOuterClass.EndPointId value) { + if (endpointIdBuilder_ == null) { + if (endpointId_ != null) { + endpointId_ = + context.ContextOuterClass.EndPointId.newBuilder(endpointId_).mergeFrom(value).buildPartial(); + } else { + endpointId_ = value; } - ensureEndpointNamesIsMutable(); - endpointNames_.add(value); onChanged(); } else { - endpointNamesBuilder_.addMessage(value); + endpointIdBuilder_.mergeFrom(value); } + return this; } /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder addEndpointNames( - int index, context.ContextOuterClass.EndPointName value) { - if (endpointNamesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureEndpointNamesIsMutable(); - endpointNames_.add(index, value); + public Builder clearEndpointId() { + if (endpointIdBuilder_ == null) { + endpointId_ = null; onChanged(); } else { - endpointNamesBuilder_.addMessage(index, value); + endpointId_ = null; + endpointIdBuilder_ = null; } + return this; } /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder addEndpointNames( - context.ContextOuterClass.EndPointName.Builder builderForValue) { - if (endpointNamesBuilder_ == null) { - ensureEndpointNamesIsMutable(); - endpointNames_.add(builderForValue.build()); - onChanged(); + public context.ContextOuterClass.EndPointId.Builder getEndpointIdBuilder() { + + onChanged(); + return getEndpointIdFieldBuilder().getBuilder(); + } + /** + * <code>.context.EndPointId endpoint_id = 1;</code> + */ + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { + if (endpointIdBuilder_ != null) { + return endpointIdBuilder_.getMessageOrBuilder(); } else { - endpointNamesBuilder_.addMessage(builderForValue.build()); + return endpointId_ == null ? + context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; } - return this; } /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder addEndpointNames( - int index, context.ContextOuterClass.EndPointName.Builder builderForValue) { - if (endpointNamesBuilder_ == null) { - ensureEndpointNamesIsMutable(); - endpointNames_.add(index, builderForValue.build()); - onChanged(); - } else { - endpointNamesBuilder_.addMessage(index, builderForValue.build()); + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> + getEndpointIdFieldBuilder() { + if (endpointIdBuilder_ == null) { + endpointIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( + getEndpointId(), + getParentForChildren(), + isClean()); + endpointId_ = null; } - return this; + return endpointIdBuilder_; } + + private acl.Acl.AclRuleSet ruleSet_; + private com.google.protobuf.SingleFieldBuilderV3< + acl.Acl.AclRuleSet, acl.Acl.AclRuleSet.Builder, acl.Acl.AclRuleSetOrBuilder> ruleSetBuilder_; /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.acl.AclRuleSet rule_set = 2;</code> + * @return Whether the ruleSet field is set. */ - public Builder addAllEndpointNames( - java.lang.Iterable<? extends context.ContextOuterClass.EndPointName> values) { - if (endpointNamesBuilder_ == null) { - ensureEndpointNamesIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, endpointNames_); - onChanged(); + public boolean hasRuleSet() { + return ruleSetBuilder_ != null || ruleSet_ != null; + } + /** + * <code>.acl.AclRuleSet rule_set = 2;</code> + * @return The ruleSet. + */ + public acl.Acl.AclRuleSet getRuleSet() { + if (ruleSetBuilder_ == null) { + return ruleSet_ == null ? acl.Acl.AclRuleSet.getDefaultInstance() : ruleSet_; } else { - endpointNamesBuilder_.addAllMessages(values); + return ruleSetBuilder_.getMessage(); } - return this; } /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.acl.AclRuleSet rule_set = 2;</code> */ - public Builder clearEndpointNames() { - if (endpointNamesBuilder_ == null) { - endpointNames_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + public Builder setRuleSet(acl.Acl.AclRuleSet value) { + if (ruleSetBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ruleSet_ = value; onChanged(); } else { - endpointNamesBuilder_.clear(); + ruleSetBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.acl.AclRuleSet rule_set = 2;</code> */ - public Builder removeEndpointNames(int index) { - if (endpointNamesBuilder_ == null) { - ensureEndpointNamesIsMutable(); - endpointNames_.remove(index); + public Builder setRuleSet( + acl.Acl.AclRuleSet.Builder builderForValue) { + if (ruleSetBuilder_ == null) { + ruleSet_ = builderForValue.build(); onChanged(); } else { - endpointNamesBuilder_.remove(index); + ruleSetBuilder_.setMessage(builderForValue.build()); } + return this; } /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> - */ - public context.ContextOuterClass.EndPointName.Builder getEndpointNamesBuilder( - int index) { - return getEndpointNamesFieldBuilder().getBuilder(index); - } - /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.acl.AclRuleSet rule_set = 2;</code> */ - public context.ContextOuterClass.EndPointNameOrBuilder getEndpointNamesOrBuilder( - int index) { - if (endpointNamesBuilder_ == null) { - return endpointNames_.get(index); } else { - return endpointNamesBuilder_.getMessageOrBuilder(index); + public Builder mergeRuleSet(acl.Acl.AclRuleSet value) { + if (ruleSetBuilder_ == null) { + if (ruleSet_ != null) { + ruleSet_ = + acl.Acl.AclRuleSet.newBuilder(ruleSet_).mergeFrom(value).buildPartial(); + } else { + ruleSet_ = value; + } + onChanged(); + } else { + ruleSetBuilder_.mergeFrom(value); } + + return this; } /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.acl.AclRuleSet rule_set = 2;</code> */ - public java.util.List<? extends context.ContextOuterClass.EndPointNameOrBuilder> - getEndpointNamesOrBuilderList() { - if (endpointNamesBuilder_ != null) { - return endpointNamesBuilder_.getMessageOrBuilderList(); + public Builder clearRuleSet() { + if (ruleSetBuilder_ == null) { + ruleSet_ = null; + onChanged(); } else { - return java.util.Collections.unmodifiableList(endpointNames_); + ruleSet_ = null; + ruleSetBuilder_ = null; } + + return this; } /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.acl.AclRuleSet rule_set = 2;</code> */ - public context.ContextOuterClass.EndPointName.Builder addEndpointNamesBuilder() { - return getEndpointNamesFieldBuilder().addBuilder( - context.ContextOuterClass.EndPointName.getDefaultInstance()); + public acl.Acl.AclRuleSet.Builder getRuleSetBuilder() { + + onChanged(); + return getRuleSetFieldBuilder().getBuilder(); } /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.acl.AclRuleSet rule_set = 2;</code> */ - public context.ContextOuterClass.EndPointName.Builder addEndpointNamesBuilder( - int index) { - return getEndpointNamesFieldBuilder().addBuilder( - index, context.ContextOuterClass.EndPointName.getDefaultInstance()); + public acl.Acl.AclRuleSetOrBuilder getRuleSetOrBuilder() { + if (ruleSetBuilder_ != null) { + return ruleSetBuilder_.getMessageOrBuilder(); + } else { + return ruleSet_ == null ? + acl.Acl.AclRuleSet.getDefaultInstance() : ruleSet_; + } } /** - * <code>repeated .context.EndPointName endpoint_names = 1;</code> + * <code>.acl.AclRuleSet rule_set = 2;</code> */ - public java.util.List<context.ContextOuterClass.EndPointName.Builder> - getEndpointNamesBuilderList() { - return getEndpointNamesFieldBuilder().getBuilderList(); - } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointName, context.ContextOuterClass.EndPointName.Builder, context.ContextOuterClass.EndPointNameOrBuilder> - getEndpointNamesFieldBuilder() { - if (endpointNamesBuilder_ == null) { - endpointNamesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointName, context.ContextOuterClass.EndPointName.Builder, context.ContextOuterClass.EndPointNameOrBuilder>( - endpointNames_, - ((bitField0_ & 0x00000001) != 0), + private com.google.protobuf.SingleFieldBuilderV3< + acl.Acl.AclRuleSet, acl.Acl.AclRuleSet.Builder, acl.Acl.AclRuleSetOrBuilder> + getRuleSetFieldBuilder() { + if (ruleSetBuilder_ == null) { + ruleSetBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + acl.Acl.AclRuleSet, acl.Acl.AclRuleSet.Builder, acl.Acl.AclRuleSetOrBuilder>( + getRuleSet(), getParentForChildren(), isClean()); - endpointNames_ = null; + ruleSet_ = null; } - return endpointNamesBuilder_; + return ruleSetBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -55499,96 +60087,114 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.EndPointNameList) + // @@protoc_insertion_point(builder_scope:context.ConfigRule_ACL) } - // @@protoc_insertion_point(class_scope:context.EndPointNameList) - private static final context.ContextOuterClass.EndPointNameList DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ConfigRule_ACL) + private static final context.ContextOuterClass.ConfigRule_ACL DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.EndPointNameList(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ConfigRule_ACL(); } - public static context.ContextOuterClass.EndPointNameList getDefaultInstance() { + public static context.ContextOuterClass.ConfigRule_ACL getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<EndPointNameList> - PARSER = new com.google.protobuf.AbstractParser<EndPointNameList>() { + private static final com.google.protobuf.Parser<ConfigRule_ACL> + PARSER = new com.google.protobuf.AbstractParser<ConfigRule_ACL>() { @java.lang.Override - public EndPointNameList parsePartialFrom( + public ConfigRule_ACL parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new EndPointNameList(input, extensionRegistry); + return new ConfigRule_ACL(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<EndPointNameList> parser() { + public static com.google.protobuf.Parser<ConfigRule_ACL> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<EndPointNameList> getParserForType() { + public com.google.protobuf.Parser<ConfigRule_ACL> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.EndPointNameList getDefaultInstanceForType() { + public context.ContextOuterClass.ConfigRule_ACL getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ConfigRule_CustomOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ConfigRule_Custom) + public interface ConfigRuleOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ConfigRule) com.google.protobuf.MessageOrBuilder { /** - * <code>string resource_key = 1;</code> - * @return The resourceKey. + * <code>.context.ConfigActionEnum action = 1;</code> + * @return The enum numeric value on the wire for action. */ - java.lang.String getResourceKey(); + int getActionValue(); /** - * <code>string resource_key = 1;</code> - * @return The bytes for resourceKey. + * <code>.context.ConfigActionEnum action = 1;</code> + * @return The action. */ - com.google.protobuf.ByteString - getResourceKeyBytes(); + context.ContextOuterClass.ConfigActionEnum getAction(); /** - * <code>string resource_value = 2;</code> - * @return The resourceValue. + * <code>.context.ConfigRule_Custom custom = 2;</code> + * @return Whether the custom field is set. */ - java.lang.String getResourceValue(); + boolean hasCustom(); /** - * <code>string resource_value = 2;</code> - * @return The bytes for resourceValue. + * <code>.context.ConfigRule_Custom custom = 2;</code> + * @return The custom. */ - com.google.protobuf.ByteString - getResourceValueBytes(); + context.ContextOuterClass.ConfigRule_Custom getCustom(); + /** + * <code>.context.ConfigRule_Custom custom = 2;</code> + */ + context.ContextOuterClass.ConfigRule_CustomOrBuilder getCustomOrBuilder(); + + /** + * <code>.context.ConfigRule_ACL acl = 3;</code> + * @return Whether the acl field is set. + */ + boolean hasAcl(); + /** + * <code>.context.ConfigRule_ACL acl = 3;</code> + * @return The acl. + */ + context.ContextOuterClass.ConfigRule_ACL getAcl(); + /** + * <code>.context.ConfigRule_ACL acl = 3;</code> + */ + context.ContextOuterClass.ConfigRule_ACLOrBuilder getAclOrBuilder(); + + public context.ContextOuterClass.ConfigRule.ConfigRuleCase getConfigRuleCase(); } /** - * Protobuf type {@code context.ConfigRule_Custom} + * Protobuf type {@code context.ConfigRule} */ - public static final class ConfigRule_Custom extends + public static final class ConfigRule extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ConfigRule_Custom) - ConfigRule_CustomOrBuilder { + // @@protoc_insertion_point(message_implements:context.ConfigRule) + ConfigRuleOrBuilder { private static final long serialVersionUID = 0L; - // Use ConfigRule_Custom.newBuilder() to construct. - private ConfigRule_Custom(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ConfigRule.newBuilder() to construct. + private ConfigRule(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ConfigRule_Custom() { - resourceKey_ = ""; - resourceValue_ = ""; + private ConfigRule() { + action_ = 0; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ConfigRule_Custom(); + return new ConfigRule(); } @java.lang.Override @@ -55596,7 +60202,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ConfigRule_Custom( + private ConfigRule( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -55614,16 +60220,38 @@ public final class ContextOuterClass { case 0: done = true; break; - case 10: { - java.lang.String s = input.readStringRequireUtf8(); + case 8: { + int rawValue = input.readEnum(); - resourceKey_ = s; + action_ = rawValue; break; } case 18: { - java.lang.String s = input.readStringRequireUtf8(); - - resourceValue_ = s; + context.ContextOuterClass.ConfigRule_Custom.Builder subBuilder = null; + if (configRuleCase_ == 2) { + subBuilder = ((context.ContextOuterClass.ConfigRule_Custom) configRule_).toBuilder(); + } + configRule_ = + input.readMessage(context.ContextOuterClass.ConfigRule_Custom.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom((context.ContextOuterClass.ConfigRule_Custom) configRule_); + configRule_ = subBuilder.buildPartial(); + } + configRuleCase_ = 2; + break; + } + case 26: { + context.ContextOuterClass.ConfigRule_ACL.Builder subBuilder = null; + if (configRuleCase_ == 3) { + subBuilder = ((context.ContextOuterClass.ConfigRule_ACL) configRule_).toBuilder(); + } + configRule_ = + input.readMessage(context.ContextOuterClass.ConfigRule_ACL.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom((context.ContextOuterClass.ConfigRule_ACL) configRule_); + configRule_ = subBuilder.buildPartial(); + } + configRuleCase_ = 3; break; } default: { @@ -55647,91 +60275,137 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConfigRule_Custom_descriptor; + return context.ContextOuterClass.internal_static_context_ConfigRule_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConfigRule_Custom_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConfigRule_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConfigRule_Custom.class, context.ContextOuterClass.ConfigRule_Custom.Builder.class); + context.ContextOuterClass.ConfigRule.class, context.ContextOuterClass.ConfigRule.Builder.class); } - public static final int RESOURCE_KEY_FIELD_NUMBER = 1; - private volatile java.lang.Object resourceKey_; + private int configRuleCase_ = 0; + private java.lang.Object configRule_; + public enum ConfigRuleCase + implements com.google.protobuf.Internal.EnumLite, + com.google.protobuf.AbstractMessage.InternalOneOfEnum { + CUSTOM(2), + ACL(3), + CONFIGRULE_NOT_SET(0); + private final int value; + private ConfigRuleCase(int value) { + this.value = value; + } + /** + * @param value The number of the enum to look for. + * @return The enum associated with the given number. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static ConfigRuleCase valueOf(int value) { + return forNumber(value); + } + + public static ConfigRuleCase forNumber(int value) { + switch (value) { + case 2: return CUSTOM; + case 3: return ACL; + case 0: return CONFIGRULE_NOT_SET; + default: return null; + } + } + public int getNumber() { + return this.value; + } + }; + + public ConfigRuleCase + getConfigRuleCase() { + return ConfigRuleCase.forNumber( + configRuleCase_); + } + + public static final int ACTION_FIELD_NUMBER = 1; + private int action_; /** - * <code>string resource_key = 1;</code> - * @return The resourceKey. + * <code>.context.ConfigActionEnum action = 1;</code> + * @return The enum numeric value on the wire for action. + */ + @java.lang.Override public int getActionValue() { + return action_; + } + /** + * <code>.context.ConfigActionEnum action = 1;</code> + * @return The action. + */ + @java.lang.Override public context.ContextOuterClass.ConfigActionEnum getAction() { + @SuppressWarnings("deprecation") + context.ContextOuterClass.ConfigActionEnum result = context.ContextOuterClass.ConfigActionEnum.valueOf(action_); + return result == null ? context.ContextOuterClass.ConfigActionEnum.UNRECOGNIZED : result; + } + + public static final int CUSTOM_FIELD_NUMBER = 2; + /** + * <code>.context.ConfigRule_Custom custom = 2;</code> + * @return Whether the custom field is set. */ @java.lang.Override - public java.lang.String getResourceKey() { - java.lang.Object ref = resourceKey_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - resourceKey_ = s; - return s; + public boolean hasCustom() { + return configRuleCase_ == 2; + } + /** + * <code>.context.ConfigRule_Custom custom = 2;</code> + * @return The custom. + */ + @java.lang.Override + public context.ContextOuterClass.ConfigRule_Custom getCustom() { + if (configRuleCase_ == 2) { + return (context.ContextOuterClass.ConfigRule_Custom) configRule_; } + return context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); } /** - * <code>string resource_key = 1;</code> - * @return The bytes for resourceKey. + * <code>.context.ConfigRule_Custom custom = 2;</code> */ @java.lang.Override - public com.google.protobuf.ByteString - getResourceKeyBytes() { - java.lang.Object ref = resourceKey_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - resourceKey_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + public context.ContextOuterClass.ConfigRule_CustomOrBuilder getCustomOrBuilder() { + if (configRuleCase_ == 2) { + return (context.ContextOuterClass.ConfigRule_Custom) configRule_; } + return context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); + } + + public static final int ACL_FIELD_NUMBER = 3; + /** + * <code>.context.ConfigRule_ACL acl = 3;</code> + * @return Whether the acl field is set. + */ + @java.lang.Override + public boolean hasAcl() { + return configRuleCase_ == 3; } - - public static final int RESOURCE_VALUE_FIELD_NUMBER = 2; - private volatile java.lang.Object resourceValue_; /** - * <code>string resource_value = 2;</code> - * @return The resourceValue. + * <code>.context.ConfigRule_ACL acl = 3;</code> + * @return The acl. */ @java.lang.Override - public java.lang.String getResourceValue() { - java.lang.Object ref = resourceValue_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - resourceValue_ = s; - return s; + public context.ContextOuterClass.ConfigRule_ACL getAcl() { + if (configRuleCase_ == 3) { + return (context.ContextOuterClass.ConfigRule_ACL) configRule_; } + return context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); } /** - * <code>string resource_value = 2;</code> - * @return The bytes for resourceValue. + * <code>.context.ConfigRule_ACL acl = 3;</code> */ @java.lang.Override - public com.google.protobuf.ByteString - getResourceValueBytes() { - java.lang.Object ref = resourceValue_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - resourceValue_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + public context.ContextOuterClass.ConfigRule_ACLOrBuilder getAclOrBuilder() { + if (configRuleCase_ == 3) { + return (context.ContextOuterClass.ConfigRule_ACL) configRule_; } + return context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); } private byte memoizedIsInitialized = -1; @@ -55748,11 +60422,14 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getResourceKeyBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 1, resourceKey_); + if (action_ != context.ContextOuterClass.ConfigActionEnum.CONFIGACTION_UNDEFINED.getNumber()) { + output.writeEnum(1, action_); } - if (!getResourceValueBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, resourceValue_); + if (configRuleCase_ == 2) { + output.writeMessage(2, (context.ContextOuterClass.ConfigRule_Custom) configRule_); + } + if (configRuleCase_ == 3) { + output.writeMessage(3, (context.ContextOuterClass.ConfigRule_ACL) configRule_); } unknownFields.writeTo(output); } @@ -55763,11 +60440,17 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (!getResourceKeyBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, resourceKey_); + if (action_ != context.ContextOuterClass.ConfigActionEnum.CONFIGACTION_UNDEFINED.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(1, action_); } - if (!getResourceValueBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, resourceValue_); + if (configRuleCase_ == 2) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, (context.ContextOuterClass.ConfigRule_Custom) configRule_); + } + if (configRuleCase_ == 3) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(3, (context.ContextOuterClass.ConfigRule_ACL) configRule_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -55779,15 +60462,25 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ConfigRule_Custom)) { + if (!(obj instanceof context.ContextOuterClass.ConfigRule)) { return super.equals(obj); } - context.ContextOuterClass.ConfigRule_Custom other = (context.ContextOuterClass.ConfigRule_Custom) obj; + context.ContextOuterClass.ConfigRule other = (context.ContextOuterClass.ConfigRule) obj; - if (!getResourceKey() - .equals(other.getResourceKey())) return false; - if (!getResourceValue() - .equals(other.getResourceValue())) return false; + if (action_ != other.action_) return false; + if (!getConfigRuleCase().equals(other.getConfigRuleCase())) return false; + switch (configRuleCase_) { + case 2: + if (!getCustom() + .equals(other.getCustom())) return false; + break; + case 3: + if (!getAcl() + .equals(other.getAcl())) return false; + break; + case 0: + default: + } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -55799,78 +60492,88 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + RESOURCE_KEY_FIELD_NUMBER; - hash = (53 * hash) + getResourceKey().hashCode(); - hash = (37 * hash) + RESOURCE_VALUE_FIELD_NUMBER; - hash = (53 * hash) + getResourceValue().hashCode(); + hash = (37 * hash) + ACTION_FIELD_NUMBER; + hash = (53 * hash) + action_; + switch (configRuleCase_) { + case 2: + hash = (37 * hash) + CUSTOM_FIELD_NUMBER; + hash = (53 * hash) + getCustom().hashCode(); + break; + case 3: + hash = (37 * hash) + ACL_FIELD_NUMBER; + hash = (53 * hash) + getAcl().hashCode(); + break; + case 0: + default: + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ConfigRule_Custom parseFrom( + public static context.ContextOuterClass.ConfigRule parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConfigRule_Custom parseFrom( + public static context.ContextOuterClass.ConfigRule parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConfigRule_Custom parseFrom( + public static context.ContextOuterClass.ConfigRule parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConfigRule_Custom parseFrom( + public static context.ContextOuterClass.ConfigRule parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConfigRule_Custom parseFrom(byte[] data) + public static context.ContextOuterClass.ConfigRule parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConfigRule_Custom parseFrom( + public static context.ContextOuterClass.ConfigRule parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConfigRule_Custom parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConfigRule parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConfigRule_Custom parseFrom( + public static context.ContextOuterClass.ConfigRule 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 context.ContextOuterClass.ConfigRule_Custom parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConfigRule parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConfigRule_Custom parseDelimitedFrom( + public static context.ContextOuterClass.ConfigRule 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 context.ContextOuterClass.ConfigRule_Custom parseFrom( + public static context.ContextOuterClass.ConfigRule parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConfigRule_Custom parseFrom( + public static context.ContextOuterClass.ConfigRule parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -55883,7 +60586,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ConfigRule_Custom prototype) { + public static Builder newBuilder(context.ContextOuterClass.ConfigRule prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -55899,26 +60602,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ConfigRule_Custom} + * Protobuf type {@code context.ConfigRule} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ConfigRule_Custom) - context.ContextOuterClass.ConfigRule_CustomOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ConfigRule) + context.ContextOuterClass.ConfigRuleOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConfigRule_Custom_descriptor; + return context.ContextOuterClass.internal_static_context_ConfigRule_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConfigRule_Custom_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConfigRule_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConfigRule_Custom.class, context.ContextOuterClass.ConfigRule_Custom.Builder.class); + context.ContextOuterClass.ConfigRule.class, context.ContextOuterClass.ConfigRule.Builder.class); } - // Construct using context.ContextOuterClass.ConfigRule_Custom.newBuilder() + // Construct using context.ContextOuterClass.ConfigRule.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -55936,27 +60639,27 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - resourceKey_ = ""; - - resourceValue_ = ""; + action_ = 0; + configRuleCase_ = 0; + configRule_ = null; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ConfigRule_Custom_descriptor; + return context.ContextOuterClass.internal_static_context_ConfigRule_descriptor; } @java.lang.Override - public context.ContextOuterClass.ConfigRule_Custom getDefaultInstanceForType() { - return context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); + public context.ContextOuterClass.ConfigRule getDefaultInstanceForType() { + return context.ContextOuterClass.ConfigRule.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ConfigRule_Custom build() { - context.ContextOuterClass.ConfigRule_Custom result = buildPartial(); + public context.ContextOuterClass.ConfigRule build() { + context.ContextOuterClass.ConfigRule result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -55964,10 +60667,24 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ConfigRule_Custom buildPartial() { - context.ContextOuterClass.ConfigRule_Custom result = new context.ContextOuterClass.ConfigRule_Custom(this); - result.resourceKey_ = resourceKey_; - result.resourceValue_ = resourceValue_; + public context.ContextOuterClass.ConfigRule buildPartial() { + context.ContextOuterClass.ConfigRule result = new context.ContextOuterClass.ConfigRule(this); + result.action_ = action_; + if (configRuleCase_ == 2) { + if (customBuilder_ == null) { + result.configRule_ = configRule_; + } else { + result.configRule_ = customBuilder_.build(); + } + } + if (configRuleCase_ == 3) { + if (aclBuilder_ == null) { + result.configRule_ = configRule_; + } else { + result.configRule_ = aclBuilder_.build(); + } + } + result.configRuleCase_ = configRuleCase_; onBuilt(); return result; } @@ -56006,23 +60723,31 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ConfigRule_Custom) { - return mergeFrom((context.ContextOuterClass.ConfigRule_Custom)other); + if (other instanceof context.ContextOuterClass.ConfigRule) { + return mergeFrom((context.ContextOuterClass.ConfigRule)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ConfigRule_Custom other) { - if (other == context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance()) return this; - if (!other.getResourceKey().isEmpty()) { - resourceKey_ = other.resourceKey_; - onChanged(); + public Builder mergeFrom(context.ContextOuterClass.ConfigRule other) { + if (other == context.ContextOuterClass.ConfigRule.getDefaultInstance()) return this; + if (other.action_ != 0) { + setActionValue(other.getActionValue()); } - if (!other.getResourceValue().isEmpty()) { - resourceValue_ = other.resourceValue_; - onChanged(); + switch (other.getConfigRuleCase()) { + case CUSTOM: { + mergeCustom(other.getCustom()); + break; + } + case ACL: { + mergeAcl(other.getAcl()); + break; + } + case CONFIGRULE_NOT_SET: { + break; + } } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -56039,11 +60764,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ConfigRule_Custom parsedMessage = null; + context.ContextOuterClass.ConfigRule parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ConfigRule_Custom) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ConfigRule) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -56052,157 +60777,356 @@ public final class ContextOuterClass { } return this; } + private int configRuleCase_ = 0; + private java.lang.Object configRule_; + public ConfigRuleCase + getConfigRuleCase() { + return ConfigRuleCase.forNumber( + configRuleCase_); + } - private java.lang.Object resourceKey_ = ""; - /** - * <code>string resource_key = 1;</code> - * @return The resourceKey. - */ - public java.lang.String getResourceKey() { - java.lang.Object ref = resourceKey_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - resourceKey_ = s; - return s; - } else { - return (java.lang.String) ref; - } + public Builder clearConfigRule() { + configRuleCase_ = 0; + configRule_ = null; + onChanged(); + return this; } + + + private int action_ = 0; /** - * <code>string resource_key = 1;</code> - * @return The bytes for resourceKey. + * <code>.context.ConfigActionEnum action = 1;</code> + * @return The enum numeric value on the wire for action. */ - public com.google.protobuf.ByteString - getResourceKeyBytes() { - java.lang.Object ref = resourceKey_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - resourceKey_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + @java.lang.Override public int getActionValue() { + return action_; } /** - * <code>string resource_key = 1;</code> - * @param value The resourceKey to set. + * <code>.context.ConfigActionEnum action = 1;</code> + * @param value The enum numeric value on the wire for action to set. * @return This builder for chaining. */ - public Builder setResourceKey( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - resourceKey_ = value; + public Builder setActionValue(int value) { + + action_ = value; onChanged(); return this; } /** - * <code>string resource_key = 1;</code> + * <code>.context.ConfigActionEnum action = 1;</code> + * @return The action. + */ + @java.lang.Override + public context.ContextOuterClass.ConfigActionEnum getAction() { + @SuppressWarnings("deprecation") + context.ContextOuterClass.ConfigActionEnum result = context.ContextOuterClass.ConfigActionEnum.valueOf(action_); + return result == null ? context.ContextOuterClass.ConfigActionEnum.UNRECOGNIZED : result; + } + /** + * <code>.context.ConfigActionEnum action = 1;</code> + * @param value The action to set. * @return This builder for chaining. */ - public Builder clearResourceKey() { + public Builder setAction(context.ContextOuterClass.ConfigActionEnum value) { + if (value == null) { + throw new NullPointerException(); + } - resourceKey_ = getDefaultInstance().getResourceKey(); + action_ = value.getNumber(); onChanged(); return this; } /** - * <code>string resource_key = 1;</code> - * @param value The bytes for resourceKey to set. + * <code>.context.ConfigActionEnum action = 1;</code> * @return This builder for chaining. */ - public Builder setResourceKeyBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); + public Builder clearAction() { - resourceKey_ = value; + action_ = 0; onChanged(); return this; } - - private java.lang.Object resourceValue_ = ""; + + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConfigRule_Custom, context.ContextOuterClass.ConfigRule_Custom.Builder, context.ContextOuterClass.ConfigRule_CustomOrBuilder> customBuilder_; + /** + * <code>.context.ConfigRule_Custom custom = 2;</code> + * @return Whether the custom field is set. + */ + @java.lang.Override + public boolean hasCustom() { + return configRuleCase_ == 2; + } + /** + * <code>.context.ConfigRule_Custom custom = 2;</code> + * @return The custom. + */ + @java.lang.Override + public context.ContextOuterClass.ConfigRule_Custom getCustom() { + if (customBuilder_ == null) { + if (configRuleCase_ == 2) { + return (context.ContextOuterClass.ConfigRule_Custom) configRule_; + } + return context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); + } else { + if (configRuleCase_ == 2) { + return customBuilder_.getMessage(); + } + return context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); + } + } + /** + * <code>.context.ConfigRule_Custom custom = 2;</code> + */ + public Builder setCustom(context.ContextOuterClass.ConfigRule_Custom value) { + if (customBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + configRule_ = value; + onChanged(); + } else { + customBuilder_.setMessage(value); + } + configRuleCase_ = 2; + return this; + } + /** + * <code>.context.ConfigRule_Custom custom = 2;</code> + */ + public Builder setCustom( + context.ContextOuterClass.ConfigRule_Custom.Builder builderForValue) { + if (customBuilder_ == null) { + configRule_ = builderForValue.build(); + onChanged(); + } else { + customBuilder_.setMessage(builderForValue.build()); + } + configRuleCase_ = 2; + return this; + } + /** + * <code>.context.ConfigRule_Custom custom = 2;</code> + */ + public Builder mergeCustom(context.ContextOuterClass.ConfigRule_Custom value) { + if (customBuilder_ == null) { + if (configRuleCase_ == 2 && + configRule_ != context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance()) { + configRule_ = context.ContextOuterClass.ConfigRule_Custom.newBuilder((context.ContextOuterClass.ConfigRule_Custom) configRule_) + .mergeFrom(value).buildPartial(); + } else { + configRule_ = value; + } + onChanged(); + } else { + if (configRuleCase_ == 2) { + customBuilder_.mergeFrom(value); + } + customBuilder_.setMessage(value); + } + configRuleCase_ = 2; + return this; + } + /** + * <code>.context.ConfigRule_Custom custom = 2;</code> + */ + public Builder clearCustom() { + if (customBuilder_ == null) { + if (configRuleCase_ == 2) { + configRuleCase_ = 0; + configRule_ = null; + onChanged(); + } + } else { + if (configRuleCase_ == 2) { + configRuleCase_ = 0; + configRule_ = null; + } + customBuilder_.clear(); + } + return this; + } + /** + * <code>.context.ConfigRule_Custom custom = 2;</code> + */ + public context.ContextOuterClass.ConfigRule_Custom.Builder getCustomBuilder() { + return getCustomFieldBuilder().getBuilder(); + } + /** + * <code>.context.ConfigRule_Custom custom = 2;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ConfigRule_CustomOrBuilder getCustomOrBuilder() { + if ((configRuleCase_ == 2) && (customBuilder_ != null)) { + return customBuilder_.getMessageOrBuilder(); + } else { + if (configRuleCase_ == 2) { + return (context.ContextOuterClass.ConfigRule_Custom) configRule_; + } + return context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); + } + } + /** + * <code>.context.ConfigRule_Custom custom = 2;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConfigRule_Custom, context.ContextOuterClass.ConfigRule_Custom.Builder, context.ContextOuterClass.ConfigRule_CustomOrBuilder> + getCustomFieldBuilder() { + if (customBuilder_ == null) { + if (!(configRuleCase_ == 2)) { + configRule_ = context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); + } + customBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConfigRule_Custom, context.ContextOuterClass.ConfigRule_Custom.Builder, context.ContextOuterClass.ConfigRule_CustomOrBuilder>( + (context.ContextOuterClass.ConfigRule_Custom) configRule_, + getParentForChildren(), + isClean()); + configRule_ = null; + } + configRuleCase_ = 2; + onChanged();; + return customBuilder_; + } + + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConfigRule_ACL, context.ContextOuterClass.ConfigRule_ACL.Builder, context.ContextOuterClass.ConfigRule_ACLOrBuilder> aclBuilder_; + /** + * <code>.context.ConfigRule_ACL acl = 3;</code> + * @return Whether the acl field is set. + */ + @java.lang.Override + public boolean hasAcl() { + return configRuleCase_ == 3; + } + /** + * <code>.context.ConfigRule_ACL acl = 3;</code> + * @return The acl. + */ + @java.lang.Override + public context.ContextOuterClass.ConfigRule_ACL getAcl() { + if (aclBuilder_ == null) { + if (configRuleCase_ == 3) { + return (context.ContextOuterClass.ConfigRule_ACL) configRule_; + } + return context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); + } else { + if (configRuleCase_ == 3) { + return aclBuilder_.getMessage(); + } + return context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); + } + } + /** + * <code>.context.ConfigRule_ACL acl = 3;</code> + */ + public Builder setAcl(context.ContextOuterClass.ConfigRule_ACL value) { + if (aclBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + configRule_ = value; + onChanged(); + } else { + aclBuilder_.setMessage(value); + } + configRuleCase_ = 3; + return this; + } + /** + * <code>.context.ConfigRule_ACL acl = 3;</code> + */ + public Builder setAcl( + context.ContextOuterClass.ConfigRule_ACL.Builder builderForValue) { + if (aclBuilder_ == null) { + configRule_ = builderForValue.build(); + onChanged(); + } else { + aclBuilder_.setMessage(builderForValue.build()); + } + configRuleCase_ = 3; + return this; + } /** - * <code>string resource_value = 2;</code> - * @return The resourceValue. + * <code>.context.ConfigRule_ACL acl = 3;</code> */ - public java.lang.String getResourceValue() { - java.lang.Object ref = resourceValue_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - resourceValue_ = s; - return s; + public Builder mergeAcl(context.ContextOuterClass.ConfigRule_ACL value) { + if (aclBuilder_ == null) { + if (configRuleCase_ == 3 && + configRule_ != context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance()) { + configRule_ = context.ContextOuterClass.ConfigRule_ACL.newBuilder((context.ContextOuterClass.ConfigRule_ACL) configRule_) + .mergeFrom(value).buildPartial(); + } else { + configRule_ = value; + } + onChanged(); } else { - return (java.lang.String) ref; + if (configRuleCase_ == 3) { + aclBuilder_.mergeFrom(value); + } + aclBuilder_.setMessage(value); } + configRuleCase_ = 3; + return this; } /** - * <code>string resource_value = 2;</code> - * @return The bytes for resourceValue. + * <code>.context.ConfigRule_ACL acl = 3;</code> */ - public com.google.protobuf.ByteString - getResourceValueBytes() { - java.lang.Object ref = resourceValue_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - resourceValue_ = b; - return b; + public Builder clearAcl() { + if (aclBuilder_ == null) { + if (configRuleCase_ == 3) { + configRuleCase_ = 0; + configRule_ = null; + onChanged(); + } } else { - return (com.google.protobuf.ByteString) ref; + if (configRuleCase_ == 3) { + configRuleCase_ = 0; + configRule_ = null; + } + aclBuilder_.clear(); } + return this; } /** - * <code>string resource_value = 2;</code> - * @param value The resourceValue to set. - * @return This builder for chaining. + * <code>.context.ConfigRule_ACL acl = 3;</code> */ - public Builder setResourceValue( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - resourceValue_ = value; - onChanged(); - return this; + public context.ContextOuterClass.ConfigRule_ACL.Builder getAclBuilder() { + return getAclFieldBuilder().getBuilder(); } /** - * <code>string resource_value = 2;</code> - * @return This builder for chaining. + * <code>.context.ConfigRule_ACL acl = 3;</code> */ - public Builder clearResourceValue() { - - resourceValue_ = getDefaultInstance().getResourceValue(); - onChanged(); - return this; + @java.lang.Override + public context.ContextOuterClass.ConfigRule_ACLOrBuilder getAclOrBuilder() { + if ((configRuleCase_ == 3) && (aclBuilder_ != null)) { + return aclBuilder_.getMessageOrBuilder(); + } else { + if (configRuleCase_ == 3) { + return (context.ContextOuterClass.ConfigRule_ACL) configRule_; + } + return context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); + } } /** - * <code>string resource_value = 2;</code> - * @param value The bytes for resourceValue to set. - * @return This builder for chaining. + * <code>.context.ConfigRule_ACL acl = 3;</code> */ - public Builder setResourceValueBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - resourceValue_ = value; - onChanged(); - return this; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConfigRule_ACL, context.ContextOuterClass.ConfigRule_ACL.Builder, context.ContextOuterClass.ConfigRule_ACLOrBuilder> + getAclFieldBuilder() { + if (aclBuilder_ == null) { + if (!(configRuleCase_ == 3)) { + configRule_ = context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); + } + aclBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConfigRule_ACL, context.ContextOuterClass.ConfigRule_ACL.Builder, context.ContextOuterClass.ConfigRule_ACLOrBuilder>( + (context.ContextOuterClass.ConfigRule_ACL) configRule_, + getParentForChildren(), + isClean()); + configRule_ = null; + } + configRuleCase_ = 3; + onChanged();; + return aclBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -56217,100 +61141,96 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ConfigRule_Custom) + // @@protoc_insertion_point(builder_scope:context.ConfigRule) } - // @@protoc_insertion_point(class_scope:context.ConfigRule_Custom) - private static final context.ContextOuterClass.ConfigRule_Custom DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ConfigRule) + private static final context.ContextOuterClass.ConfigRule DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ConfigRule_Custom(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ConfigRule(); } - public static context.ContextOuterClass.ConfigRule_Custom getDefaultInstance() { + public static context.ContextOuterClass.ConfigRule getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ConfigRule_Custom> - PARSER = new com.google.protobuf.AbstractParser<ConfigRule_Custom>() { + private static final com.google.protobuf.Parser<ConfigRule> + PARSER = new com.google.protobuf.AbstractParser<ConfigRule>() { @java.lang.Override - public ConfigRule_Custom parsePartialFrom( + public ConfigRule parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ConfigRule_Custom(input, extensionRegistry); + return new ConfigRule(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ConfigRule_Custom> parser() { + public static com.google.protobuf.Parser<ConfigRule> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ConfigRule_Custom> getParserForType() { + public com.google.protobuf.Parser<ConfigRule> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ConfigRule_Custom getDefaultInstanceForType() { + public context.ContextOuterClass.ConfigRule getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ConfigRule_ACLOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ConfigRule_ACL) + public interface Constraint_CustomOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Constraint_Custom) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return Whether the endpointId field is set. - */ - boolean hasEndpointId(); - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return The endpointId. + * <code>string constraint_type = 1;</code> + * @return The constraintType. */ - context.ContextOuterClass.EndPointId getEndpointId(); + java.lang.String getConstraintType(); /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>string constraint_type = 1;</code> + * @return The bytes for constraintType. */ - context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder(); + com.google.protobuf.ByteString + getConstraintTypeBytes(); /** - * <code>.acl.AclRuleSet rule_set = 2;</code> - * @return Whether the ruleSet field is set. - */ - boolean hasRuleSet(); - /** - * <code>.acl.AclRuleSet rule_set = 2;</code> - * @return The ruleSet. + * <code>string constraint_value = 2;</code> + * @return The constraintValue. */ - acl.Acl.AclRuleSet getRuleSet(); + java.lang.String getConstraintValue(); /** - * <code>.acl.AclRuleSet rule_set = 2;</code> + * <code>string constraint_value = 2;</code> + * @return The bytes for constraintValue. */ - acl.Acl.AclRuleSetOrBuilder getRuleSetOrBuilder(); + com.google.protobuf.ByteString + getConstraintValueBytes(); } /** - * Protobuf type {@code context.ConfigRule_ACL} + * Protobuf type {@code context.Constraint_Custom} */ - public static final class ConfigRule_ACL extends + public static final class Constraint_Custom extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ConfigRule_ACL) - ConfigRule_ACLOrBuilder { + // @@protoc_insertion_point(message_implements:context.Constraint_Custom) + Constraint_CustomOrBuilder { private static final long serialVersionUID = 0L; - // Use ConfigRule_ACL.newBuilder() to construct. - private ConfigRule_ACL(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Constraint_Custom.newBuilder() to construct. + private Constraint_Custom(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ConfigRule_ACL() { + private Constraint_Custom() { + constraintType_ = ""; + constraintValue_ = ""; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ConfigRule_ACL(); + return new Constraint_Custom(); } @java.lang.Override @@ -56318,7 +61238,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ConfigRule_ACL( + private Constraint_Custom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -56337,29 +61257,15 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.EndPointId.Builder subBuilder = null; - if (endpointId_ != null) { - subBuilder = endpointId_.toBuilder(); - } - endpointId_ = input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(endpointId_); - endpointId_ = subBuilder.buildPartial(); - } + java.lang.String s = input.readStringRequireUtf8(); + constraintType_ = s; break; } case 18: { - acl.Acl.AclRuleSet.Builder subBuilder = null; - if (ruleSet_ != null) { - subBuilder = ruleSet_.toBuilder(); - } - ruleSet_ = input.readMessage(acl.Acl.AclRuleSet.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(ruleSet_); - ruleSet_ = subBuilder.buildPartial(); - } + java.lang.String s = input.readStringRequireUtf8(); + constraintValue_ = s; break; } default: { @@ -56383,67 +61289,91 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConfigRule_ACL_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_Custom_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConfigRule_ACL_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_Custom_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConfigRule_ACL.class, context.ContextOuterClass.ConfigRule_ACL.Builder.class); + context.ContextOuterClass.Constraint_Custom.class, context.ContextOuterClass.Constraint_Custom.Builder.class); } - public static final int ENDPOINT_ID_FIELD_NUMBER = 1; - private context.ContextOuterClass.EndPointId endpointId_; - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return Whether the endpointId field is set. - */ - @java.lang.Override - public boolean hasEndpointId() { - return endpointId_ != null; - } + public static final int CONSTRAINT_TYPE_FIELD_NUMBER = 1; + private volatile java.lang.Object constraintType_; /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return The endpointId. + * <code>string constraint_type = 1;</code> + * @return The constraintType. */ @java.lang.Override - public context.ContextOuterClass.EndPointId getEndpointId() { - return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; + public java.lang.String getConstraintType() { + java.lang.Object ref = constraintType_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + constraintType_ = s; + return s; + } } /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>string constraint_type = 1;</code> + * @return The bytes for constraintType. */ @java.lang.Override - public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { - return getEndpointId(); + public com.google.protobuf.ByteString + getConstraintTypeBytes() { + java.lang.Object ref = constraintType_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + constraintType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } - public static final int RULE_SET_FIELD_NUMBER = 2; - private acl.Acl.AclRuleSet ruleSet_; - /** - * <code>.acl.AclRuleSet rule_set = 2;</code> - * @return Whether the ruleSet field is set. - */ - @java.lang.Override - public boolean hasRuleSet() { - return ruleSet_ != null; - } + public static final int CONSTRAINT_VALUE_FIELD_NUMBER = 2; + private volatile java.lang.Object constraintValue_; /** - * <code>.acl.AclRuleSet rule_set = 2;</code> - * @return The ruleSet. + * <code>string constraint_value = 2;</code> + * @return The constraintValue. */ @java.lang.Override - public acl.Acl.AclRuleSet getRuleSet() { - return ruleSet_ == null ? acl.Acl.AclRuleSet.getDefaultInstance() : ruleSet_; + public java.lang.String getConstraintValue() { + java.lang.Object ref = constraintValue_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + constraintValue_ = s; + return s; + } } /** - * <code>.acl.AclRuleSet rule_set = 2;</code> + * <code>string constraint_value = 2;</code> + * @return The bytes for constraintValue. */ @java.lang.Override - public acl.Acl.AclRuleSetOrBuilder getRuleSetOrBuilder() { - return getRuleSet(); + public com.google.protobuf.ByteString + getConstraintValueBytes() { + java.lang.Object ref = constraintValue_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + constraintValue_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } private byte memoizedIsInitialized = -1; @@ -56460,11 +61390,11 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (endpointId_ != null) { - output.writeMessage(1, getEndpointId()); + if (!getConstraintTypeBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, constraintType_); } - if (ruleSet_ != null) { - output.writeMessage(2, getRuleSet()); + if (!getConstraintValueBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, constraintValue_); } unknownFields.writeTo(output); } @@ -56475,13 +61405,11 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (endpointId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getEndpointId()); + if (!getConstraintTypeBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, constraintType_); } - if (ruleSet_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, getRuleSet()); + if (!getConstraintValueBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, constraintValue_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -56493,21 +61421,15 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ConfigRule_ACL)) { + if (!(obj instanceof context.ContextOuterClass.Constraint_Custom)) { return super.equals(obj); } - context.ContextOuterClass.ConfigRule_ACL other = (context.ContextOuterClass.ConfigRule_ACL) obj; + context.ContextOuterClass.Constraint_Custom other = (context.ContextOuterClass.Constraint_Custom) obj; - if (hasEndpointId() != other.hasEndpointId()) return false; - if (hasEndpointId()) { - if (!getEndpointId() - .equals(other.getEndpointId())) return false; - } - if (hasRuleSet() != other.hasRuleSet()) return false; - if (hasRuleSet()) { - if (!getRuleSet() - .equals(other.getRuleSet())) return false; - } + if (!getConstraintType() + .equals(other.getConstraintType())) return false; + if (!getConstraintValue() + .equals(other.getConstraintValue())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -56519,82 +61441,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasEndpointId()) { - hash = (37 * hash) + ENDPOINT_ID_FIELD_NUMBER; - hash = (53 * hash) + getEndpointId().hashCode(); - } - if (hasRuleSet()) { - hash = (37 * hash) + RULE_SET_FIELD_NUMBER; - hash = (53 * hash) + getRuleSet().hashCode(); - } + hash = (37 * hash) + CONSTRAINT_TYPE_FIELD_NUMBER; + hash = (53 * hash) + getConstraintType().hashCode(); + hash = (37 * hash) + CONSTRAINT_VALUE_FIELD_NUMBER; + hash = (53 * hash) + getConstraintValue().hashCode(); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ConfigRule_ACL parseFrom( + public static context.ContextOuterClass.Constraint_Custom parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConfigRule_ACL parseFrom( + public static context.ContextOuterClass.Constraint_Custom parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConfigRule_ACL parseFrom( + public static context.ContextOuterClass.Constraint_Custom parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConfigRule_ACL parseFrom( + public static context.ContextOuterClass.Constraint_Custom parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConfigRule_ACL parseFrom(byte[] data) + public static context.ContextOuterClass.Constraint_Custom parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConfigRule_ACL parseFrom( + public static context.ContextOuterClass.Constraint_Custom parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConfigRule_ACL parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_Custom parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConfigRule_ACL parseFrom( + public static context.ContextOuterClass.Constraint_Custom 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 context.ContextOuterClass.ConfigRule_ACL parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_Custom parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConfigRule_ACL parseDelimitedFrom( + public static context.ContextOuterClass.Constraint_Custom 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 context.ContextOuterClass.ConfigRule_ACL parseFrom( + public static context.ContextOuterClass.Constraint_Custom parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConfigRule_ACL parseFrom( + public static context.ContextOuterClass.Constraint_Custom parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -56607,7 +61525,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ConfigRule_ACL prototype) { + public static Builder newBuilder(context.ContextOuterClass.Constraint_Custom prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -56623,26 +61541,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ConfigRule_ACL} + * Protobuf type {@code context.Constraint_Custom} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ConfigRule_ACL) - context.ContextOuterClass.ConfigRule_ACLOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Constraint_Custom) + context.ContextOuterClass.Constraint_CustomOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConfigRule_ACL_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_Custom_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConfigRule_ACL_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_Custom_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConfigRule_ACL.class, context.ContextOuterClass.ConfigRule_ACL.Builder.class); + context.ContextOuterClass.Constraint_Custom.class, context.ContextOuterClass.Constraint_Custom.Builder.class); } - // Construct using context.ContextOuterClass.ConfigRule_ACL.newBuilder() + // Construct using context.ContextOuterClass.Constraint_Custom.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -56660,35 +61578,27 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - if (endpointIdBuilder_ == null) { - endpointId_ = null; - } else { - endpointId_ = null; - endpointIdBuilder_ = null; - } - if (ruleSetBuilder_ == null) { - ruleSet_ = null; - } else { - ruleSet_ = null; - ruleSetBuilder_ = null; - } + constraintType_ = ""; + + constraintValue_ = ""; + return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ConfigRule_ACL_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_Custom_descriptor; } @java.lang.Override - public context.ContextOuterClass.ConfigRule_ACL getDefaultInstanceForType() { - return context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); + public context.ContextOuterClass.Constraint_Custom getDefaultInstanceForType() { + return context.ContextOuterClass.Constraint_Custom.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ConfigRule_ACL build() { - context.ContextOuterClass.ConfigRule_ACL result = buildPartial(); + public context.ContextOuterClass.Constraint_Custom build() { + context.ContextOuterClass.Constraint_Custom result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -56696,18 +61606,10 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ConfigRule_ACL buildPartial() { - context.ContextOuterClass.ConfigRule_ACL result = new context.ContextOuterClass.ConfigRule_ACL(this); - if (endpointIdBuilder_ == null) { - result.endpointId_ = endpointId_; - } else { - result.endpointId_ = endpointIdBuilder_.build(); - } - if (ruleSetBuilder_ == null) { - result.ruleSet_ = ruleSet_; - } else { - result.ruleSet_ = ruleSetBuilder_.build(); - } + public context.ContextOuterClass.Constraint_Custom buildPartial() { + context.ContextOuterClass.Constraint_Custom result = new context.ContextOuterClass.Constraint_Custom(this); + result.constraintType_ = constraintType_; + result.constraintValue_ = constraintValue_; onBuilt(); return result; } @@ -56746,21 +61648,23 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ConfigRule_ACL) { - return mergeFrom((context.ContextOuterClass.ConfigRule_ACL)other); + if (other instanceof context.ContextOuterClass.Constraint_Custom) { + return mergeFrom((context.ContextOuterClass.Constraint_Custom)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ConfigRule_ACL other) { - if (other == context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance()) return this; - if (other.hasEndpointId()) { - mergeEndpointId(other.getEndpointId()); + public Builder mergeFrom(context.ContextOuterClass.Constraint_Custom other) { + if (other == context.ContextOuterClass.Constraint_Custom.getDefaultInstance()) return this; + if (!other.getConstraintType().isEmpty()) { + constraintType_ = other.constraintType_; + onChanged(); } - if (other.hasRuleSet()) { - mergeRuleSet(other.getRuleSet()); + if (!other.getConstraintValue().isEmpty()) { + constraintValue_ = other.constraintValue_; + onChanged(); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -56777,256 +61681,170 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ConfigRule_ACL parsedMessage = null; + context.ContextOuterClass.Constraint_Custom parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ConfigRule_ACL) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); - } - } - return this; - } - - private context.ContextOuterClass.EndPointId endpointId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> endpointIdBuilder_; - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return Whether the endpointId field is set. - */ - public boolean hasEndpointId() { - return endpointIdBuilder_ != null || endpointId_ != null; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return The endpointId. - */ - public context.ContextOuterClass.EndPointId getEndpointId() { - if (endpointIdBuilder_ == null) { - return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; - } else { - return endpointIdBuilder_.getMessage(); - } - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public Builder setEndpointId(context.ContextOuterClass.EndPointId value) { - if (endpointIdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + parsedMessage = (context.ContextOuterClass.Constraint_Custom) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); } - endpointId_ = value; - onChanged(); - } else { - endpointIdBuilder_.setMessage(value); } - return this; } + + private java.lang.Object constraintType_ = ""; /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>string constraint_type = 1;</code> + * @return The constraintType. */ - public Builder setEndpointId( - context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (endpointIdBuilder_ == null) { - endpointId_ = builderForValue.build(); - onChanged(); + public java.lang.String getConstraintType() { + java.lang.Object ref = constraintType_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + constraintType_ = s; + return s; } else { - endpointIdBuilder_.setMessage(builderForValue.build()); + return (java.lang.String) ref; } - - return this; } /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>string constraint_type = 1;</code> + * @return The bytes for constraintType. */ - public Builder mergeEndpointId(context.ContextOuterClass.EndPointId value) { - if (endpointIdBuilder_ == null) { - if (endpointId_ != null) { - endpointId_ = - context.ContextOuterClass.EndPointId.newBuilder(endpointId_).mergeFrom(value).buildPartial(); - } else { - endpointId_ = value; - } - onChanged(); + public com.google.protobuf.ByteString + getConstraintTypeBytes() { + java.lang.Object ref = constraintType_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + constraintType_ = b; + return b; } else { - endpointIdBuilder_.mergeFrom(value); + return (com.google.protobuf.ByteString) ref; } - - return this; } /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>string constraint_type = 1;</code> + * @param value The constraintType to set. + * @return This builder for chaining. */ - public Builder clearEndpointId() { - if (endpointIdBuilder_ == null) { - endpointId_ = null; - onChanged(); - } else { - endpointId_ = null; - endpointIdBuilder_ = null; - } - + public Builder setConstraintType( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + constraintType_ = value; + onChanged(); return this; } /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>string constraint_type = 1;</code> + * @return This builder for chaining. */ - public context.ContextOuterClass.EndPointId.Builder getEndpointIdBuilder() { + public Builder clearConstraintType() { + constraintType_ = getDefaultInstance().getConstraintType(); onChanged(); - return getEndpointIdFieldBuilder().getBuilder(); - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { - if (endpointIdBuilder_ != null) { - return endpointIdBuilder_.getMessageOrBuilder(); - } else { - return endpointId_ == null ? - context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; - } + return this; } /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>string constraint_type = 1;</code> + * @param value The bytes for constraintType to set. + * @return This builder for chaining. */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> - getEndpointIdFieldBuilder() { - if (endpointIdBuilder_ == null) { - endpointIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( - getEndpointId(), - getParentForChildren(), - isClean()); - endpointId_ = null; - } - return endpointIdBuilder_; + public Builder setConstraintTypeBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + constraintType_ = value; + onChanged(); + return this; } - private acl.Acl.AclRuleSet ruleSet_; - private com.google.protobuf.SingleFieldBuilderV3< - acl.Acl.AclRuleSet, acl.Acl.AclRuleSet.Builder, acl.Acl.AclRuleSetOrBuilder> ruleSetBuilder_; - /** - * <code>.acl.AclRuleSet rule_set = 2;</code> - * @return Whether the ruleSet field is set. - */ - public boolean hasRuleSet() { - return ruleSetBuilder_ != null || ruleSet_ != null; - } - /** - * <code>.acl.AclRuleSet rule_set = 2;</code> - * @return The ruleSet. - */ - public acl.Acl.AclRuleSet getRuleSet() { - if (ruleSetBuilder_ == null) { - return ruleSet_ == null ? acl.Acl.AclRuleSet.getDefaultInstance() : ruleSet_; - } else { - return ruleSetBuilder_.getMessage(); - } - } + private java.lang.Object constraintValue_ = ""; /** - * <code>.acl.AclRuleSet rule_set = 2;</code> + * <code>string constraint_value = 2;</code> + * @return The constraintValue. */ - public Builder setRuleSet(acl.Acl.AclRuleSet value) { - if (ruleSetBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ruleSet_ = value; - onChanged(); + public java.lang.String getConstraintValue() { + java.lang.Object ref = constraintValue_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + constraintValue_ = s; + return s; } else { - ruleSetBuilder_.setMessage(value); + return (java.lang.String) ref; } - - return this; } /** - * <code>.acl.AclRuleSet rule_set = 2;</code> + * <code>string constraint_value = 2;</code> + * @return The bytes for constraintValue. */ - public Builder setRuleSet( - acl.Acl.AclRuleSet.Builder builderForValue) { - if (ruleSetBuilder_ == null) { - ruleSet_ = builderForValue.build(); - onChanged(); + public com.google.protobuf.ByteString + getConstraintValueBytes() { + java.lang.Object ref = constraintValue_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + constraintValue_ = b; + return b; } else { - ruleSetBuilder_.setMessage(builderForValue.build()); + return (com.google.protobuf.ByteString) ref; } - - return this; } /** - * <code>.acl.AclRuleSet rule_set = 2;</code> + * <code>string constraint_value = 2;</code> + * @param value The constraintValue to set. + * @return This builder for chaining. */ - public Builder mergeRuleSet(acl.Acl.AclRuleSet value) { - if (ruleSetBuilder_ == null) { - if (ruleSet_ != null) { - ruleSet_ = - acl.Acl.AclRuleSet.newBuilder(ruleSet_).mergeFrom(value).buildPartial(); - } else { - ruleSet_ = value; - } - onChanged(); - } else { - ruleSetBuilder_.mergeFrom(value); - } - + public Builder setConstraintValue( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + constraintValue_ = value; + onChanged(); return this; } /** - * <code>.acl.AclRuleSet rule_set = 2;</code> + * <code>string constraint_value = 2;</code> + * @return This builder for chaining. */ - public Builder clearRuleSet() { - if (ruleSetBuilder_ == null) { - ruleSet_ = null; - onChanged(); - } else { - ruleSet_ = null; - ruleSetBuilder_ = null; - } - + public Builder clearConstraintValue() { + + constraintValue_ = getDefaultInstance().getConstraintValue(); + onChanged(); return this; } /** - * <code>.acl.AclRuleSet rule_set = 2;</code> + * <code>string constraint_value = 2;</code> + * @param value The bytes for constraintValue to set. + * @return This builder for chaining. */ - public acl.Acl.AclRuleSet.Builder getRuleSetBuilder() { + public Builder setConstraintValueBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + constraintValue_ = value; onChanged(); - return getRuleSetFieldBuilder().getBuilder(); - } - /** - * <code>.acl.AclRuleSet rule_set = 2;</code> - */ - public acl.Acl.AclRuleSetOrBuilder getRuleSetOrBuilder() { - if (ruleSetBuilder_ != null) { - return ruleSetBuilder_.getMessageOrBuilder(); - } else { - return ruleSet_ == null ? - acl.Acl.AclRuleSet.getDefaultInstance() : ruleSet_; - } - } - /** - * <code>.acl.AclRuleSet rule_set = 2;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - acl.Acl.AclRuleSet, acl.Acl.AclRuleSet.Builder, acl.Acl.AclRuleSetOrBuilder> - getRuleSetFieldBuilder() { - if (ruleSetBuilder_ == null) { - ruleSetBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - acl.Acl.AclRuleSet, acl.Acl.AclRuleSet.Builder, acl.Acl.AclRuleSetOrBuilder>( - getRuleSet(), - getParentForChildren(), - isClean()); - ruleSet_ = null; - } - return ruleSetBuilder_; + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -57041,114 +61859,82 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ConfigRule_ACL) + // @@protoc_insertion_point(builder_scope:context.Constraint_Custom) } - // @@protoc_insertion_point(class_scope:context.ConfigRule_ACL) - private static final context.ContextOuterClass.ConfigRule_ACL DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Constraint_Custom) + private static final context.ContextOuterClass.Constraint_Custom DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ConfigRule_ACL(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_Custom(); } - public static context.ContextOuterClass.ConfigRule_ACL getDefaultInstance() { + public static context.ContextOuterClass.Constraint_Custom getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ConfigRule_ACL> - PARSER = new com.google.protobuf.AbstractParser<ConfigRule_ACL>() { + private static final com.google.protobuf.Parser<Constraint_Custom> + PARSER = new com.google.protobuf.AbstractParser<Constraint_Custom>() { @java.lang.Override - public ConfigRule_ACL parsePartialFrom( + public Constraint_Custom parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ConfigRule_ACL(input, extensionRegistry); + return new Constraint_Custom(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ConfigRule_ACL> parser() { + public static com.google.protobuf.Parser<Constraint_Custom> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ConfigRule_ACL> getParserForType() { + public com.google.protobuf.Parser<Constraint_Custom> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ConfigRule_ACL getDefaultInstanceForType() { + public context.ContextOuterClass.Constraint_Custom getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ConfigRuleOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ConfigRule) + public interface Constraint_ScheduleOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Constraint_Schedule) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.ConfigActionEnum action = 1;</code> - * @return The enum numeric value on the wire for action. - */ - int getActionValue(); - /** - * <code>.context.ConfigActionEnum action = 1;</code> - * @return The action. - */ - context.ContextOuterClass.ConfigActionEnum getAction(); - - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - * @return Whether the custom field is set. - */ - boolean hasCustom(); - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - * @return The custom. - */ - context.ContextOuterClass.ConfigRule_Custom getCustom(); - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> + * <code>float start_timestamp = 1;</code> + * @return The startTimestamp. */ - context.ContextOuterClass.ConfigRule_CustomOrBuilder getCustomOrBuilder(); + float getStartTimestamp(); /** - * <code>.context.ConfigRule_ACL acl = 3;</code> - * @return Whether the acl field is set. - */ - boolean hasAcl(); - /** - * <code>.context.ConfigRule_ACL acl = 3;</code> - * @return The acl. - */ - context.ContextOuterClass.ConfigRule_ACL getAcl(); - /** - * <code>.context.ConfigRule_ACL acl = 3;</code> + * <code>float duration_days = 2;</code> + * @return The durationDays. */ - context.ContextOuterClass.ConfigRule_ACLOrBuilder getAclOrBuilder(); - - public context.ContextOuterClass.ConfigRule.ConfigRuleCase getConfigRuleCase(); + float getDurationDays(); } /** - * Protobuf type {@code context.ConfigRule} + * Protobuf type {@code context.Constraint_Schedule} */ - public static final class ConfigRule extends + public static final class Constraint_Schedule extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ConfigRule) - ConfigRuleOrBuilder { + // @@protoc_insertion_point(message_implements:context.Constraint_Schedule) + Constraint_ScheduleOrBuilder { private static final long serialVersionUID = 0L; - // Use ConfigRule.newBuilder() to construct. - private ConfigRule(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Constraint_Schedule.newBuilder() to construct. + private Constraint_Schedule(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ConfigRule() { - action_ = 0; + private Constraint_Schedule() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ConfigRule(); + return new Constraint_Schedule(); } @java.lang.Override @@ -57156,7 +61942,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ConfigRule( + private Constraint_Schedule( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -57174,38 +61960,14 @@ public final class ContextOuterClass { case 0: done = true; break; - case 8: { - int rawValue = input.readEnum(); + case 13: { - action_ = rawValue; - break; - } - case 18: { - context.ContextOuterClass.ConfigRule_Custom.Builder subBuilder = null; - if (configRuleCase_ == 2) { - subBuilder = ((context.ContextOuterClass.ConfigRule_Custom) configRule_).toBuilder(); - } - configRule_ = - input.readMessage(context.ContextOuterClass.ConfigRule_Custom.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom((context.ContextOuterClass.ConfigRule_Custom) configRule_); - configRule_ = subBuilder.buildPartial(); - } - configRuleCase_ = 2; + startTimestamp_ = input.readFloat(); break; } - case 26: { - context.ContextOuterClass.ConfigRule_ACL.Builder subBuilder = null; - if (configRuleCase_ == 3) { - subBuilder = ((context.ContextOuterClass.ConfigRule_ACL) configRule_).toBuilder(); - } - configRule_ = - input.readMessage(context.ContextOuterClass.ConfigRule_ACL.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom((context.ContextOuterClass.ConfigRule_ACL) configRule_); - configRule_ = subBuilder.buildPartial(); - } - configRuleCase_ = 3; + case 21: { + + durationDays_ = input.readFloat(); break; } default: { @@ -57229,137 +61991,37 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConfigRule_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_Schedule_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConfigRule_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_Schedule_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConfigRule.class, context.ContextOuterClass.ConfigRule.Builder.class); - } - - private int configRuleCase_ = 0; - private java.lang.Object configRule_; - public enum ConfigRuleCase - implements com.google.protobuf.Internal.EnumLite, - com.google.protobuf.AbstractMessage.InternalOneOfEnum { - CUSTOM(2), - ACL(3), - CONFIGRULE_NOT_SET(0); - private final int value; - private ConfigRuleCase(int value) { - this.value = value; - } - /** - * @param value The number of the enum to look for. - * @return The enum associated with the given number. - * @deprecated Use {@link #forNumber(int)} instead. - */ - @java.lang.Deprecated - public static ConfigRuleCase valueOf(int value) { - return forNumber(value); - } - - public static ConfigRuleCase forNumber(int value) { - switch (value) { - case 2: return CUSTOM; - case 3: return ACL; - case 0: return CONFIGRULE_NOT_SET; - default: return null; - } - } - public int getNumber() { - return this.value; - } - }; - - public ConfigRuleCase - getConfigRuleCase() { - return ConfigRuleCase.forNumber( - configRuleCase_); - } - - public static final int ACTION_FIELD_NUMBER = 1; - private int action_; - /** - * <code>.context.ConfigActionEnum action = 1;</code> - * @return The enum numeric value on the wire for action. - */ - @java.lang.Override public int getActionValue() { - return action_; - } - /** - * <code>.context.ConfigActionEnum action = 1;</code> - * @return The action. - */ - @java.lang.Override public context.ContextOuterClass.ConfigActionEnum getAction() { - @SuppressWarnings("deprecation") - context.ContextOuterClass.ConfigActionEnum result = context.ContextOuterClass.ConfigActionEnum.valueOf(action_); - return result == null ? context.ContextOuterClass.ConfigActionEnum.UNRECOGNIZED : result; + context.ContextOuterClass.Constraint_Schedule.class, context.ContextOuterClass.Constraint_Schedule.Builder.class); } - public static final int CUSTOM_FIELD_NUMBER = 2; - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - * @return Whether the custom field is set. - */ - @java.lang.Override - public boolean hasCustom() { - return configRuleCase_ == 2; - } - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - * @return The custom. - */ - @java.lang.Override - public context.ContextOuterClass.ConfigRule_Custom getCustom() { - if (configRuleCase_ == 2) { - return (context.ContextOuterClass.ConfigRule_Custom) configRule_; - } - return context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); - } + public static final int START_TIMESTAMP_FIELD_NUMBER = 1; + private float startTimestamp_; /** - * <code>.context.ConfigRule_Custom custom = 2;</code> + * <code>float start_timestamp = 1;</code> + * @return The startTimestamp. */ @java.lang.Override - public context.ContextOuterClass.ConfigRule_CustomOrBuilder getCustomOrBuilder() { - if (configRuleCase_ == 2) { - return (context.ContextOuterClass.ConfigRule_Custom) configRule_; - } - return context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); + public float getStartTimestamp() { + return startTimestamp_; } - public static final int ACL_FIELD_NUMBER = 3; - /** - * <code>.context.ConfigRule_ACL acl = 3;</code> - * @return Whether the acl field is set. - */ - @java.lang.Override - public boolean hasAcl() { - return configRuleCase_ == 3; - } - /** - * <code>.context.ConfigRule_ACL acl = 3;</code> - * @return The acl. - */ - @java.lang.Override - public context.ContextOuterClass.ConfigRule_ACL getAcl() { - if (configRuleCase_ == 3) { - return (context.ContextOuterClass.ConfigRule_ACL) configRule_; - } - return context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); - } + public static final int DURATION_DAYS_FIELD_NUMBER = 2; + private float durationDays_; /** - * <code>.context.ConfigRule_ACL acl = 3;</code> + * <code>float duration_days = 2;</code> + * @return The durationDays. */ @java.lang.Override - public context.ContextOuterClass.ConfigRule_ACLOrBuilder getAclOrBuilder() { - if (configRuleCase_ == 3) { - return (context.ContextOuterClass.ConfigRule_ACL) configRule_; - } - return context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); + public float getDurationDays() { + return durationDays_; } private byte memoizedIsInitialized = -1; @@ -57376,14 +62038,11 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (action_ != context.ContextOuterClass.ConfigActionEnum.CONFIGACTION_UNDEFINED.getNumber()) { - output.writeEnum(1, action_); - } - if (configRuleCase_ == 2) { - output.writeMessage(2, (context.ContextOuterClass.ConfigRule_Custom) configRule_); + if (startTimestamp_ != 0F) { + output.writeFloat(1, startTimestamp_); } - if (configRuleCase_ == 3) { - output.writeMessage(3, (context.ContextOuterClass.ConfigRule_ACL) configRule_); + if (durationDays_ != 0F) { + output.writeFloat(2, durationDays_); } unknownFields.writeTo(output); } @@ -57394,17 +62053,13 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (action_ != context.ContextOuterClass.ConfigActionEnum.CONFIGACTION_UNDEFINED.getNumber()) { - size += com.google.protobuf.CodedOutputStream - .computeEnumSize(1, action_); - } - if (configRuleCase_ == 2) { + if (startTimestamp_ != 0F) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, (context.ContextOuterClass.ConfigRule_Custom) configRule_); + .computeFloatSize(1, startTimestamp_); } - if (configRuleCase_ == 3) { + if (durationDays_ != 0F) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(3, (context.ContextOuterClass.ConfigRule_ACL) configRule_); + .computeFloatSize(2, durationDays_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -57416,25 +62071,17 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ConfigRule)) { + if (!(obj instanceof context.ContextOuterClass.Constraint_Schedule)) { return super.equals(obj); } - context.ContextOuterClass.ConfigRule other = (context.ContextOuterClass.ConfigRule) obj; + context.ContextOuterClass.Constraint_Schedule other = (context.ContextOuterClass.Constraint_Schedule) obj; - if (action_ != other.action_) return false; - if (!getConfigRuleCase().equals(other.getConfigRuleCase())) return false; - switch (configRuleCase_) { - case 2: - if (!getCustom() - .equals(other.getCustom())) return false; - break; - case 3: - if (!getAcl() - .equals(other.getAcl())) return false; - break; - case 0: - default: - } + if (java.lang.Float.floatToIntBits(getStartTimestamp()) + != java.lang.Float.floatToIntBits( + other.getStartTimestamp())) return false; + if (java.lang.Float.floatToIntBits(getDurationDays()) + != java.lang.Float.floatToIntBits( + other.getDurationDays())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -57446,88 +62093,80 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + ACTION_FIELD_NUMBER; - hash = (53 * hash) + action_; - switch (configRuleCase_) { - case 2: - hash = (37 * hash) + CUSTOM_FIELD_NUMBER; - hash = (53 * hash) + getCustom().hashCode(); - break; - case 3: - hash = (37 * hash) + ACL_FIELD_NUMBER; - hash = (53 * hash) + getAcl().hashCode(); - break; - case 0: - default: - } + hash = (37 * hash) + START_TIMESTAMP_FIELD_NUMBER; + hash = (53 * hash) + java.lang.Float.floatToIntBits( + getStartTimestamp()); + hash = (37 * hash) + DURATION_DAYS_FIELD_NUMBER; + hash = (53 * hash) + java.lang.Float.floatToIntBits( + getDurationDays()); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ConfigRule parseFrom( + public static context.ContextOuterClass.Constraint_Schedule parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConfigRule parseFrom( + public static context.ContextOuterClass.Constraint_Schedule parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConfigRule parseFrom( + public static context.ContextOuterClass.Constraint_Schedule parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConfigRule parseFrom( + public static context.ContextOuterClass.Constraint_Schedule parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConfigRule parseFrom(byte[] data) + public static context.ContextOuterClass.Constraint_Schedule parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConfigRule parseFrom( + public static context.ContextOuterClass.Constraint_Schedule parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConfigRule parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_Schedule parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConfigRule parseFrom( + public static context.ContextOuterClass.Constraint_Schedule 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 context.ContextOuterClass.ConfigRule parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_Schedule parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConfigRule parseDelimitedFrom( + public static context.ContextOuterClass.Constraint_Schedule 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 context.ContextOuterClass.ConfigRule parseFrom( + public static context.ContextOuterClass.Constraint_Schedule parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConfigRule parseFrom( + public static context.ContextOuterClass.Constraint_Schedule parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -57540,7 +62179,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ConfigRule prototype) { + public static Builder newBuilder(context.ContextOuterClass.Constraint_Schedule prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -57556,26 +62195,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ConfigRule} + * Protobuf type {@code context.Constraint_Schedule} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ConfigRule) - context.ContextOuterClass.ConfigRuleOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Constraint_Schedule) + context.ContextOuterClass.Constraint_ScheduleOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConfigRule_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_Schedule_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConfigRule_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_Schedule_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConfigRule.class, context.ContextOuterClass.ConfigRule.Builder.class); + context.ContextOuterClass.Constraint_Schedule.class, context.ContextOuterClass.Constraint_Schedule.Builder.class); } - // Construct using context.ContextOuterClass.ConfigRule.newBuilder() + // Construct using context.ContextOuterClass.Constraint_Schedule.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -57593,27 +62232,27 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - action_ = 0; + startTimestamp_ = 0F; + + durationDays_ = 0F; - configRuleCase_ = 0; - configRule_ = null; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ConfigRule_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_Schedule_descriptor; } @java.lang.Override - public context.ContextOuterClass.ConfigRule getDefaultInstanceForType() { - return context.ContextOuterClass.ConfigRule.getDefaultInstance(); + public context.ContextOuterClass.Constraint_Schedule getDefaultInstanceForType() { + return context.ContextOuterClass.Constraint_Schedule.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ConfigRule build() { - context.ContextOuterClass.ConfigRule result = buildPartial(); + public context.ContextOuterClass.Constraint_Schedule build() { + context.ContextOuterClass.Constraint_Schedule result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -57621,24 +62260,10 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ConfigRule buildPartial() { - context.ContextOuterClass.ConfigRule result = new context.ContextOuterClass.ConfigRule(this); - result.action_ = action_; - if (configRuleCase_ == 2) { - if (customBuilder_ == null) { - result.configRule_ = configRule_; - } else { - result.configRule_ = customBuilder_.build(); - } - } - if (configRuleCase_ == 3) { - if (aclBuilder_ == null) { - result.configRule_ = configRule_; - } else { - result.configRule_ = aclBuilder_.build(); - } - } - result.configRuleCase_ = configRuleCase_; + public context.ContextOuterClass.Constraint_Schedule buildPartial() { + context.ContextOuterClass.Constraint_Schedule result = new context.ContextOuterClass.Constraint_Schedule(this); + result.startTimestamp_ = startTimestamp_; + result.durationDays_ = durationDays_; onBuilt(); return result; } @@ -57677,31 +62302,21 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ConfigRule) { - return mergeFrom((context.ContextOuterClass.ConfigRule)other); + if (other instanceof context.ContextOuterClass.Constraint_Schedule) { + return mergeFrom((context.ContextOuterClass.Constraint_Schedule)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ConfigRule other) { - if (other == context.ContextOuterClass.ConfigRule.getDefaultInstance()) return this; - if (other.action_ != 0) { - setActionValue(other.getActionValue()); + public Builder mergeFrom(context.ContextOuterClass.Constraint_Schedule other) { + if (other == context.ContextOuterClass.Constraint_Schedule.getDefaultInstance()) return this; + if (other.getStartTimestamp() != 0F) { + setStartTimestamp(other.getStartTimestamp()); } - switch (other.getConfigRuleCase()) { - case CUSTOM: { - mergeCustom(other.getCustom()); - break; - } - case ACL: { - mergeAcl(other.getAcl()); - break; - } - case CONFIGRULE_NOT_SET: { - break; - } + if (other.getDurationDays() != 0F) { + setDurationDays(other.getDurationDays()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -57718,11 +62333,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ConfigRule parsedMessage = null; + context.ContextOuterClass.Constraint_Schedule parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ConfigRule) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.Constraint_Schedule) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -57731,356 +62346,67 @@ public final class ContextOuterClass { } return this; } - private int configRuleCase_ = 0; - private java.lang.Object configRule_; - public ConfigRuleCase - getConfigRuleCase() { - return ConfigRuleCase.forNumber( - configRuleCase_); - } - - public Builder clearConfigRule() { - configRuleCase_ = 0; - configRule_ = null; - onChanged(); - return this; - } - - private int action_ = 0; - /** - * <code>.context.ConfigActionEnum action = 1;</code> - * @return The enum numeric value on the wire for action. - */ - @java.lang.Override public int getActionValue() { - return action_; - } - /** - * <code>.context.ConfigActionEnum action = 1;</code> - * @param value The enum numeric value on the wire for action to set. - * @return This builder for chaining. - */ - public Builder setActionValue(int value) { - - action_ = value; - onChanged(); - return this; - } + private float startTimestamp_ ; /** - * <code>.context.ConfigActionEnum action = 1;</code> - * @return The action. + * <code>float start_timestamp = 1;</code> + * @return The startTimestamp. */ @java.lang.Override - public context.ContextOuterClass.ConfigActionEnum getAction() { - @SuppressWarnings("deprecation") - context.ContextOuterClass.ConfigActionEnum result = context.ContextOuterClass.ConfigActionEnum.valueOf(action_); - return result == null ? context.ContextOuterClass.ConfigActionEnum.UNRECOGNIZED : result; + public float getStartTimestamp() { + return startTimestamp_; } /** - * <code>.context.ConfigActionEnum action = 1;</code> - * @param value The action to set. + * <code>float start_timestamp = 1;</code> + * @param value The startTimestamp to set. * @return This builder for chaining. */ - public Builder setAction(context.ContextOuterClass.ConfigActionEnum value) { - if (value == null) { - throw new NullPointerException(); - } + public Builder setStartTimestamp(float value) { - action_ = value.getNumber(); + startTimestamp_ = value; onChanged(); return this; } /** - * <code>.context.ConfigActionEnum action = 1;</code> + * <code>float start_timestamp = 1;</code> * @return This builder for chaining. */ - public Builder clearAction() { + public Builder clearStartTimestamp() { - action_ = 0; + startTimestamp_ = 0F; onChanged(); return this; } - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConfigRule_Custom, context.ContextOuterClass.ConfigRule_Custom.Builder, context.ContextOuterClass.ConfigRule_CustomOrBuilder> customBuilder_; - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - * @return Whether the custom field is set. - */ - @java.lang.Override - public boolean hasCustom() { - return configRuleCase_ == 2; - } - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - * @return The custom. - */ - @java.lang.Override - public context.ContextOuterClass.ConfigRule_Custom getCustom() { - if (customBuilder_ == null) { - if (configRuleCase_ == 2) { - return (context.ContextOuterClass.ConfigRule_Custom) configRule_; - } - return context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); - } else { - if (configRuleCase_ == 2) { - return customBuilder_.getMessage(); - } - return context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); - } - } - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - */ - public Builder setCustom(context.ContextOuterClass.ConfigRule_Custom value) { - if (customBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - configRule_ = value; - onChanged(); - } else { - customBuilder_.setMessage(value); - } - configRuleCase_ = 2; - return this; - } - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - */ - public Builder setCustom( - context.ContextOuterClass.ConfigRule_Custom.Builder builderForValue) { - if (customBuilder_ == null) { - configRule_ = builderForValue.build(); - onChanged(); - } else { - customBuilder_.setMessage(builderForValue.build()); - } - configRuleCase_ = 2; - return this; - } - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - */ - public Builder mergeCustom(context.ContextOuterClass.ConfigRule_Custom value) { - if (customBuilder_ == null) { - if (configRuleCase_ == 2 && - configRule_ != context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance()) { - configRule_ = context.ContextOuterClass.ConfigRule_Custom.newBuilder((context.ContextOuterClass.ConfigRule_Custom) configRule_) - .mergeFrom(value).buildPartial(); - } else { - configRule_ = value; - } - onChanged(); - } else { - if (configRuleCase_ == 2) { - customBuilder_.mergeFrom(value); - } - customBuilder_.setMessage(value); - } - configRuleCase_ = 2; - return this; - } - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - */ - public Builder clearCustom() { - if (customBuilder_ == null) { - if (configRuleCase_ == 2) { - configRuleCase_ = 0; - configRule_ = null; - onChanged(); - } - } else { - if (configRuleCase_ == 2) { - configRuleCase_ = 0; - configRule_ = null; - } - customBuilder_.clear(); - } - return this; - } - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - */ - public context.ContextOuterClass.ConfigRule_Custom.Builder getCustomBuilder() { - return getCustomFieldBuilder().getBuilder(); - } - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - */ - @java.lang.Override - public context.ContextOuterClass.ConfigRule_CustomOrBuilder getCustomOrBuilder() { - if ((configRuleCase_ == 2) && (customBuilder_ != null)) { - return customBuilder_.getMessageOrBuilder(); - } else { - if (configRuleCase_ == 2) { - return (context.ContextOuterClass.ConfigRule_Custom) configRule_; - } - return context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); - } - } - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConfigRule_Custom, context.ContextOuterClass.ConfigRule_Custom.Builder, context.ContextOuterClass.ConfigRule_CustomOrBuilder> - getCustomFieldBuilder() { - if (customBuilder_ == null) { - if (!(configRuleCase_ == 2)) { - configRule_ = context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); - } - customBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConfigRule_Custom, context.ContextOuterClass.ConfigRule_Custom.Builder, context.ContextOuterClass.ConfigRule_CustomOrBuilder>( - (context.ContextOuterClass.ConfigRule_Custom) configRule_, - getParentForChildren(), - isClean()); - configRule_ = null; - } - configRuleCase_ = 2; - onChanged();; - return customBuilder_; - } - - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConfigRule_ACL, context.ContextOuterClass.ConfigRule_ACL.Builder, context.ContextOuterClass.ConfigRule_ACLOrBuilder> aclBuilder_; - /** - * <code>.context.ConfigRule_ACL acl = 3;</code> - * @return Whether the acl field is set. - */ - @java.lang.Override - public boolean hasAcl() { - return configRuleCase_ == 3; - } + private float durationDays_ ; /** - * <code>.context.ConfigRule_ACL acl = 3;</code> - * @return The acl. + * <code>float duration_days = 2;</code> + * @return The durationDays. */ @java.lang.Override - public context.ContextOuterClass.ConfigRule_ACL getAcl() { - if (aclBuilder_ == null) { - if (configRuleCase_ == 3) { - return (context.ContextOuterClass.ConfigRule_ACL) configRule_; - } - return context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); - } else { - if (configRuleCase_ == 3) { - return aclBuilder_.getMessage(); - } - return context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); - } - } - /** - * <code>.context.ConfigRule_ACL acl = 3;</code> - */ - public Builder setAcl(context.ContextOuterClass.ConfigRule_ACL value) { - if (aclBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - configRule_ = value; - onChanged(); - } else { - aclBuilder_.setMessage(value); - } - configRuleCase_ = 3; - return this; - } - /** - * <code>.context.ConfigRule_ACL acl = 3;</code> - */ - public Builder setAcl( - context.ContextOuterClass.ConfigRule_ACL.Builder builderForValue) { - if (aclBuilder_ == null) { - configRule_ = builderForValue.build(); - onChanged(); - } else { - aclBuilder_.setMessage(builderForValue.build()); - } - configRuleCase_ = 3; - return this; - } - /** - * <code>.context.ConfigRule_ACL acl = 3;</code> - */ - public Builder mergeAcl(context.ContextOuterClass.ConfigRule_ACL value) { - if (aclBuilder_ == null) { - if (configRuleCase_ == 3 && - configRule_ != context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance()) { - configRule_ = context.ContextOuterClass.ConfigRule_ACL.newBuilder((context.ContextOuterClass.ConfigRule_ACL) configRule_) - .mergeFrom(value).buildPartial(); - } else { - configRule_ = value; - } - onChanged(); - } else { - if (configRuleCase_ == 3) { - aclBuilder_.mergeFrom(value); - } - aclBuilder_.setMessage(value); - } - configRuleCase_ = 3; - return this; - } - /** - * <code>.context.ConfigRule_ACL acl = 3;</code> - */ - public Builder clearAcl() { - if (aclBuilder_ == null) { - if (configRuleCase_ == 3) { - configRuleCase_ = 0; - configRule_ = null; - onChanged(); - } - } else { - if (configRuleCase_ == 3) { - configRuleCase_ = 0; - configRule_ = null; - } - aclBuilder_.clear(); - } - return this; - } - /** - * <code>.context.ConfigRule_ACL acl = 3;</code> - */ - public context.ContextOuterClass.ConfigRule_ACL.Builder getAclBuilder() { - return getAclFieldBuilder().getBuilder(); + public float getDurationDays() { + return durationDays_; } /** - * <code>.context.ConfigRule_ACL acl = 3;</code> + * <code>float duration_days = 2;</code> + * @param value The durationDays to set. + * @return This builder for chaining. */ - @java.lang.Override - public context.ContextOuterClass.ConfigRule_ACLOrBuilder getAclOrBuilder() { - if ((configRuleCase_ == 3) && (aclBuilder_ != null)) { - return aclBuilder_.getMessageOrBuilder(); - } else { - if (configRuleCase_ == 3) { - return (context.ContextOuterClass.ConfigRule_ACL) configRule_; - } - return context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); - } + public Builder setDurationDays(float value) { + + durationDays_ = value; + onChanged(); + return this; } /** - * <code>.context.ConfigRule_ACL acl = 3;</code> + * <code>float duration_days = 2;</code> + * @return This builder for chaining. */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConfigRule_ACL, context.ContextOuterClass.ConfigRule_ACL.Builder, context.ContextOuterClass.ConfigRule_ACLOrBuilder> - getAclFieldBuilder() { - if (aclBuilder_ == null) { - if (!(configRuleCase_ == 3)) { - configRule_ = context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); - } - aclBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConfigRule_ACL, context.ContextOuterClass.ConfigRule_ACL.Builder, context.ContextOuterClass.ConfigRule_ACLOrBuilder>( - (context.ContextOuterClass.ConfigRule_ACL) configRule_, - getParentForChildren(), - isClean()); - configRule_ = null; - } - configRuleCase_ = 3; - onChanged();; - return aclBuilder_; + public Builder clearDurationDays() { + + durationDays_ = 0F; + onChanged(); + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -58095,100 +62421,82 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ConfigRule) + // @@protoc_insertion_point(builder_scope:context.Constraint_Schedule) } - // @@protoc_insertion_point(class_scope:context.ConfigRule) - private static final context.ContextOuterClass.ConfigRule DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Constraint_Schedule) + private static final context.ContextOuterClass.Constraint_Schedule DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ConfigRule(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_Schedule(); } - public static context.ContextOuterClass.ConfigRule getDefaultInstance() { + public static context.ContextOuterClass.Constraint_Schedule getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ConfigRule> - PARSER = new com.google.protobuf.AbstractParser<ConfigRule>() { + private static final com.google.protobuf.Parser<Constraint_Schedule> + PARSER = new com.google.protobuf.AbstractParser<Constraint_Schedule>() { @java.lang.Override - public ConfigRule parsePartialFrom( + public Constraint_Schedule parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ConfigRule(input, extensionRegistry); + return new Constraint_Schedule(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ConfigRule> parser() { + public static com.google.protobuf.Parser<Constraint_Schedule> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ConfigRule> getParserForType() { + public com.google.protobuf.Parser<Constraint_Schedule> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ConfigRule getDefaultInstanceForType() { + public context.ContextOuterClass.Constraint_Schedule getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface Constraint_CustomOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Constraint_Custom) + public interface GPS_PositionOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.GPS_Position) com.google.protobuf.MessageOrBuilder { /** - * <code>string constraint_type = 1;</code> - * @return The constraintType. - */ - java.lang.String getConstraintType(); - /** - * <code>string constraint_type = 1;</code> - * @return The bytes for constraintType. + * <code>float latitude = 1;</code> + * @return The latitude. */ - com.google.protobuf.ByteString - getConstraintTypeBytes(); + float getLatitude(); /** - * <code>string constraint_value = 2;</code> - * @return The constraintValue. - */ - java.lang.String getConstraintValue(); - /** - * <code>string constraint_value = 2;</code> - * @return The bytes for constraintValue. + * <code>float longitude = 2;</code> + * @return The longitude. */ - com.google.protobuf.ByteString - getConstraintValueBytes(); + float getLongitude(); } /** - * <pre> - * ----- Constraint ---------------------------------------------------------------------------------------------------- - * </pre> - * - * Protobuf type {@code context.Constraint_Custom} + * Protobuf type {@code context.GPS_Position} */ - public static final class Constraint_Custom extends + public static final class GPS_Position extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Constraint_Custom) - Constraint_CustomOrBuilder { + // @@protoc_insertion_point(message_implements:context.GPS_Position) + GPS_PositionOrBuilder { private static final long serialVersionUID = 0L; - // Use Constraint_Custom.newBuilder() to construct. - private Constraint_Custom(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use GPS_Position.newBuilder() to construct. + private GPS_Position(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private Constraint_Custom() { - constraintType_ = ""; - constraintValue_ = ""; + private GPS_Position() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new Constraint_Custom(); + return new GPS_Position(); } @java.lang.Override @@ -58196,7 +62504,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private Constraint_Custom( + private GPS_Position( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -58214,16 +62522,14 @@ public final class ContextOuterClass { case 0: done = true; break; - case 10: { - java.lang.String s = input.readStringRequireUtf8(); + case 13: { - constraintType_ = s; + latitude_ = input.readFloat(); break; } - case 18: { - java.lang.String s = input.readStringRequireUtf8(); + case 21: { - constraintValue_ = s; + longitude_ = input.readFloat(); break; } default: { @@ -58247,91 +62553,37 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_Custom_descriptor; + return context.ContextOuterClass.internal_static_context_GPS_Position_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_Custom_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_GPS_Position_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_Custom.class, context.ContextOuterClass.Constraint_Custom.Builder.class); + context.ContextOuterClass.GPS_Position.class, context.ContextOuterClass.GPS_Position.Builder.class); } - public static final int CONSTRAINT_TYPE_FIELD_NUMBER = 1; - private volatile java.lang.Object constraintType_; - /** - * <code>string constraint_type = 1;</code> - * @return The constraintType. - */ - @java.lang.Override - public java.lang.String getConstraintType() { - java.lang.Object ref = constraintType_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - constraintType_ = s; - return s; - } - } + public static final int LATITUDE_FIELD_NUMBER = 1; + private float latitude_; /** - * <code>string constraint_type = 1;</code> - * @return The bytes for constraintType. + * <code>float latitude = 1;</code> + * @return The latitude. */ @java.lang.Override - public com.google.protobuf.ByteString - getConstraintTypeBytes() { - java.lang.Object ref = constraintType_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - constraintType_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public float getLatitude() { + return latitude_; } - public static final int CONSTRAINT_VALUE_FIELD_NUMBER = 2; - private volatile java.lang.Object constraintValue_; - /** - * <code>string constraint_value = 2;</code> - * @return The constraintValue. - */ - @java.lang.Override - public java.lang.String getConstraintValue() { - java.lang.Object ref = constraintValue_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - constraintValue_ = s; - return s; - } - } + public static final int LONGITUDE_FIELD_NUMBER = 2; + private float longitude_; /** - * <code>string constraint_value = 2;</code> - * @return The bytes for constraintValue. + * <code>float longitude = 2;</code> + * @return The longitude. */ @java.lang.Override - public com.google.protobuf.ByteString - getConstraintValueBytes() { - java.lang.Object ref = constraintValue_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - constraintValue_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public float getLongitude() { + return longitude_; } private byte memoizedIsInitialized = -1; @@ -58348,11 +62600,11 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getConstraintTypeBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 1, constraintType_); + if (latitude_ != 0F) { + output.writeFloat(1, latitude_); } - if (!getConstraintValueBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, constraintValue_); + if (longitude_ != 0F) { + output.writeFloat(2, longitude_); } unknownFields.writeTo(output); } @@ -58363,11 +62615,13 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (!getConstraintTypeBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, constraintType_); + if (latitude_ != 0F) { + size += com.google.protobuf.CodedOutputStream + .computeFloatSize(1, latitude_); } - if (!getConstraintValueBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, constraintValue_); + if (longitude_ != 0F) { + size += com.google.protobuf.CodedOutputStream + .computeFloatSize(2, longitude_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -58379,15 +62633,17 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.Constraint_Custom)) { + if (!(obj instanceof context.ContextOuterClass.GPS_Position)) { return super.equals(obj); } - context.ContextOuterClass.Constraint_Custom other = (context.ContextOuterClass.Constraint_Custom) obj; + context.ContextOuterClass.GPS_Position other = (context.ContextOuterClass.GPS_Position) obj; - if (!getConstraintType() - .equals(other.getConstraintType())) return false; - if (!getConstraintValue() - .equals(other.getConstraintValue())) return false; + if (java.lang.Float.floatToIntBits(getLatitude()) + != java.lang.Float.floatToIntBits( + other.getLatitude())) return false; + if (java.lang.Float.floatToIntBits(getLongitude()) + != java.lang.Float.floatToIntBits( + other.getLongitude())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -58399,78 +62655,80 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + CONSTRAINT_TYPE_FIELD_NUMBER; - hash = (53 * hash) + getConstraintType().hashCode(); - hash = (37 * hash) + CONSTRAINT_VALUE_FIELD_NUMBER; - hash = (53 * hash) + getConstraintValue().hashCode(); + hash = (37 * hash) + LATITUDE_FIELD_NUMBER; + hash = (53 * hash) + java.lang.Float.floatToIntBits( + getLatitude()); + hash = (37 * hash) + LONGITUDE_FIELD_NUMBER; + hash = (53 * hash) + java.lang.Float.floatToIntBits( + getLongitude()); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.Constraint_Custom parseFrom( + public static context.ContextOuterClass.GPS_Position parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_Custom parseFrom( + public static context.ContextOuterClass.GPS_Position parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_Custom parseFrom( + public static context.ContextOuterClass.GPS_Position parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_Custom parseFrom( + public static context.ContextOuterClass.GPS_Position parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_Custom parseFrom(byte[] data) + public static context.ContextOuterClass.GPS_Position parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_Custom parseFrom( + public static context.ContextOuterClass.GPS_Position parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_Custom parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.GPS_Position parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_Custom parseFrom( + public static context.ContextOuterClass.GPS_Position 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 context.ContextOuterClass.Constraint_Custom parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.GPS_Position parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_Custom parseDelimitedFrom( + public static context.ContextOuterClass.GPS_Position 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 context.ContextOuterClass.Constraint_Custom parseFrom( + public static context.ContextOuterClass.GPS_Position parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_Custom parseFrom( + public static context.ContextOuterClass.GPS_Position parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -58483,7 +62741,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.Constraint_Custom prototype) { + public static Builder newBuilder(context.ContextOuterClass.GPS_Position prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -58499,30 +62757,26 @@ public final class ContextOuterClass { return builder; } /** - * <pre> - * ----- Constraint ---------------------------------------------------------------------------------------------------- - * </pre> - * - * Protobuf type {@code context.Constraint_Custom} + * Protobuf type {@code context.GPS_Position} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Constraint_Custom) - context.ContextOuterClass.Constraint_CustomOrBuilder { + // @@protoc_insertion_point(builder_implements:context.GPS_Position) + context.ContextOuterClass.GPS_PositionOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_Custom_descriptor; + return context.ContextOuterClass.internal_static_context_GPS_Position_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_Custom_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_GPS_Position_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_Custom.class, context.ContextOuterClass.Constraint_Custom.Builder.class); + context.ContextOuterClass.GPS_Position.class, context.ContextOuterClass.GPS_Position.Builder.class); } - // Construct using context.ContextOuterClass.Constraint_Custom.newBuilder() + // Construct using context.ContextOuterClass.GPS_Position.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -58540,9 +62794,9 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - constraintType_ = ""; + latitude_ = 0F; - constraintValue_ = ""; + longitude_ = 0F; return this; } @@ -58550,17 +62804,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Constraint_Custom_descriptor; + return context.ContextOuterClass.internal_static_context_GPS_Position_descriptor; } @java.lang.Override - public context.ContextOuterClass.Constraint_Custom getDefaultInstanceForType() { - return context.ContextOuterClass.Constraint_Custom.getDefaultInstance(); + public context.ContextOuterClass.GPS_Position getDefaultInstanceForType() { + return context.ContextOuterClass.GPS_Position.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.Constraint_Custom build() { - context.ContextOuterClass.Constraint_Custom result = buildPartial(); + public context.ContextOuterClass.GPS_Position build() { + context.ContextOuterClass.GPS_Position result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -58568,10 +62822,10 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.Constraint_Custom buildPartial() { - context.ContextOuterClass.Constraint_Custom result = new context.ContextOuterClass.Constraint_Custom(this); - result.constraintType_ = constraintType_; - result.constraintValue_ = constraintValue_; + public context.ContextOuterClass.GPS_Position buildPartial() { + context.ContextOuterClass.GPS_Position result = new context.ContextOuterClass.GPS_Position(this); + result.latitude_ = latitude_; + result.longitude_ = longitude_; onBuilt(); return result; } @@ -58610,23 +62864,21 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.Constraint_Custom) { - return mergeFrom((context.ContextOuterClass.Constraint_Custom)other); + if (other instanceof context.ContextOuterClass.GPS_Position) { + return mergeFrom((context.ContextOuterClass.GPS_Position)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.Constraint_Custom other) { - if (other == context.ContextOuterClass.Constraint_Custom.getDefaultInstance()) return this; - if (!other.getConstraintType().isEmpty()) { - constraintType_ = other.constraintType_; - onChanged(); + public Builder mergeFrom(context.ContextOuterClass.GPS_Position other) { + if (other == context.ContextOuterClass.GPS_Position.getDefaultInstance()) return this; + if (other.getLatitude() != 0F) { + setLatitude(other.getLatitude()); } - if (!other.getConstraintValue().isEmpty()) { - constraintValue_ = other.constraintValue_; - onChanged(); + if (other.getLongitude() != 0F) { + setLongitude(other.getLongitude()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -58643,11 +62895,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.Constraint_Custom parsedMessage = null; + context.ContextOuterClass.GPS_Position parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Constraint_Custom) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.GPS_Position) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -58657,154 +62909,64 @@ public final class ContextOuterClass { return this; } - private java.lang.Object constraintType_ = ""; - /** - * <code>string constraint_type = 1;</code> - * @return The constraintType. - */ - public java.lang.String getConstraintType() { - java.lang.Object ref = constraintType_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - constraintType_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - /** - * <code>string constraint_type = 1;</code> - * @return The bytes for constraintType. - */ - public com.google.protobuf.ByteString - getConstraintTypeBytes() { - java.lang.Object ref = constraintType_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - constraintType_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + private float latitude_ ; /** - * <code>string constraint_type = 1;</code> - * @param value The constraintType to set. - * @return This builder for chaining. + * <code>float latitude = 1;</code> + * @return The latitude. */ - public Builder setConstraintType( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - constraintType_ = value; - onChanged(); - return this; + @java.lang.Override + public float getLatitude() { + return latitude_; } /** - * <code>string constraint_type = 1;</code> + * <code>float latitude = 1;</code> + * @param value The latitude to set. * @return This builder for chaining. */ - public Builder clearConstraintType() { + public Builder setLatitude(float value) { - constraintType_ = getDefaultInstance().getConstraintType(); + latitude_ = value; onChanged(); return this; } /** - * <code>string constraint_type = 1;</code> - * @param value The bytes for constraintType to set. + * <code>float latitude = 1;</code> * @return This builder for chaining. */ - public Builder setConstraintTypeBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); + public Builder clearLatitude() { - constraintType_ = value; + latitude_ = 0F; onChanged(); return this; } - private java.lang.Object constraintValue_ = ""; - /** - * <code>string constraint_value = 2;</code> - * @return The constraintValue. - */ - public java.lang.String getConstraintValue() { - java.lang.Object ref = constraintValue_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - constraintValue_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - /** - * <code>string constraint_value = 2;</code> - * @return The bytes for constraintValue. - */ - public com.google.protobuf.ByteString - getConstraintValueBytes() { - java.lang.Object ref = constraintValue_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - constraintValue_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + private float longitude_ ; /** - * <code>string constraint_value = 2;</code> - * @param value The constraintValue to set. - * @return This builder for chaining. + * <code>float longitude = 2;</code> + * @return The longitude. */ - public Builder setConstraintValue( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - constraintValue_ = value; - onChanged(); - return this; + @java.lang.Override + public float getLongitude() { + return longitude_; } /** - * <code>string constraint_value = 2;</code> + * <code>float longitude = 2;</code> + * @param value The longitude to set. * @return This builder for chaining. */ - public Builder clearConstraintValue() { + public Builder setLongitude(float value) { - constraintValue_ = getDefaultInstance().getConstraintValue(); + longitude_ = value; onChanged(); return this; } /** - * <code>string constraint_value = 2;</code> - * @param value The bytes for constraintValue to set. + * <code>float longitude = 2;</code> * @return This builder for chaining. */ - public Builder setConstraintValueBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); + public Builder clearLongitude() { - constraintValue_ = value; + longitude_ = 0F; onChanged(); return this; } @@ -58821,82 +62983,104 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.Constraint_Custom) + // @@protoc_insertion_point(builder_scope:context.GPS_Position) } - // @@protoc_insertion_point(class_scope:context.Constraint_Custom) - private static final context.ContextOuterClass.Constraint_Custom DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.GPS_Position) + private static final context.ContextOuterClass.GPS_Position DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_Custom(); + DEFAULT_INSTANCE = new context.ContextOuterClass.GPS_Position(); } - public static context.ContextOuterClass.Constraint_Custom getDefaultInstance() { + public static context.ContextOuterClass.GPS_Position getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<Constraint_Custom> - PARSER = new com.google.protobuf.AbstractParser<Constraint_Custom>() { + private static final com.google.protobuf.Parser<GPS_Position> + PARSER = new com.google.protobuf.AbstractParser<GPS_Position>() { @java.lang.Override - public Constraint_Custom parsePartialFrom( + public GPS_Position parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new Constraint_Custom(input, extensionRegistry); + return new GPS_Position(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<Constraint_Custom> parser() { + public static com.google.protobuf.Parser<GPS_Position> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<Constraint_Custom> getParserForType() { + public com.google.protobuf.Parser<GPS_Position> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.Constraint_Custom getDefaultInstanceForType() { + public context.ContextOuterClass.GPS_Position getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface Constraint_ScheduleOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Constraint_Schedule) + public interface LocationOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Location) com.google.protobuf.MessageOrBuilder { /** - * <code>float start_timestamp = 1;</code> - * @return The startTimestamp. + * <code>string region = 1;</code> + * @return Whether the region field is set. + */ + boolean hasRegion(); + /** + * <code>string region = 1;</code> + * @return The region. + */ + java.lang.String getRegion(); + /** + * <code>string region = 1;</code> + * @return The bytes for region. + */ + com.google.protobuf.ByteString + getRegionBytes(); + + /** + * <code>.context.GPS_Position gps_position = 2;</code> + * @return Whether the gpsPosition field is set. */ - float getStartTimestamp(); - + boolean hasGpsPosition(); /** - * <code>float duration_days = 2;</code> - * @return The durationDays. + * <code>.context.GPS_Position gps_position = 2;</code> + * @return The gpsPosition. */ - float getDurationDays(); + context.ContextOuterClass.GPS_Position getGpsPosition(); + /** + * <code>.context.GPS_Position gps_position = 2;</code> + */ + context.ContextOuterClass.GPS_PositionOrBuilder getGpsPositionOrBuilder(); + + public context.ContextOuterClass.Location.LocationCase getLocationCase(); } /** - * Protobuf type {@code context.Constraint_Schedule} + * Protobuf type {@code context.Location} */ - public static final class Constraint_Schedule extends + public static final class Location extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Constraint_Schedule) - Constraint_ScheduleOrBuilder { + // @@protoc_insertion_point(message_implements:context.Location) + LocationOrBuilder { private static final long serialVersionUID = 0L; - // Use Constraint_Schedule.newBuilder() to construct. - private Constraint_Schedule(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Location.newBuilder() to construct. + private Location(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private Constraint_Schedule() { + private Location() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new Constraint_Schedule(); + return new Location(); } @java.lang.Override @@ -58904,7 +63088,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private Constraint_Schedule( + private Location( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -58922,14 +63106,24 @@ public final class ContextOuterClass { case 0: done = true; break; - case 13: { - - startTimestamp_ = input.readFloat(); + case 10: { + java.lang.String s = input.readStringRequireUtf8(); + locationCase_ = 1; + location_ = s; break; } - case 21: { - - durationDays_ = input.readFloat(); + case 18: { + context.ContextOuterClass.GPS_Position.Builder subBuilder = null; + if (locationCase_ == 2) { + subBuilder = ((context.ContextOuterClass.GPS_Position) location_).toBuilder(); + } + location_ = + input.readMessage(context.ContextOuterClass.GPS_Position.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom((context.ContextOuterClass.GPS_Position) location_); + location_ = subBuilder.buildPartial(); + } + locationCase_ = 2; break; } default: { @@ -58953,37 +63147,139 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_Schedule_descriptor; + return context.ContextOuterClass.internal_static_context_Location_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_Schedule_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Location_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_Schedule.class, context.ContextOuterClass.Constraint_Schedule.Builder.class); + context.ContextOuterClass.Location.class, context.ContextOuterClass.Location.Builder.class); } - public static final int START_TIMESTAMP_FIELD_NUMBER = 1; - private float startTimestamp_; + private int locationCase_ = 0; + private java.lang.Object location_; + public enum LocationCase + implements com.google.protobuf.Internal.EnumLite, + com.google.protobuf.AbstractMessage.InternalOneOfEnum { + REGION(1), + GPS_POSITION(2), + LOCATION_NOT_SET(0); + private final int value; + private LocationCase(int value) { + this.value = value; + } + /** + * @param value The number of the enum to look for. + * @return The enum associated with the given number. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static LocationCase valueOf(int value) { + return forNumber(value); + } + + public static LocationCase forNumber(int value) { + switch (value) { + case 1: return REGION; + case 2: return GPS_POSITION; + case 0: return LOCATION_NOT_SET; + default: return null; + } + } + public int getNumber() { + return this.value; + } + }; + + public LocationCase + getLocationCase() { + return LocationCase.forNumber( + locationCase_); + } + + public static final int REGION_FIELD_NUMBER = 1; /** - * <code>float start_timestamp = 1;</code> - * @return The startTimestamp. + * <code>string region = 1;</code> + * @return Whether the region field is set. */ - @java.lang.Override - public float getStartTimestamp() { - return startTimestamp_; + public boolean hasRegion() { + return locationCase_ == 1; + } + /** + * <code>string region = 1;</code> + * @return The region. + */ + public java.lang.String getRegion() { + java.lang.Object ref = ""; + if (locationCase_ == 1) { + ref = location_; + } + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + if (locationCase_ == 1) { + location_ = s; + } + return s; + } + } + /** + * <code>string region = 1;</code> + * @return The bytes for region. + */ + public com.google.protobuf.ByteString + getRegionBytes() { + java.lang.Object ref = ""; + if (locationCase_ == 1) { + ref = location_; + } + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + if (locationCase_ == 1) { + location_ = b; + } + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } - public static final int DURATION_DAYS_FIELD_NUMBER = 2; - private float durationDays_; + public static final int GPS_POSITION_FIELD_NUMBER = 2; /** - * <code>float duration_days = 2;</code> - * @return The durationDays. + * <code>.context.GPS_Position gps_position = 2;</code> + * @return Whether the gpsPosition field is set. */ @java.lang.Override - public float getDurationDays() { - return durationDays_; + public boolean hasGpsPosition() { + return locationCase_ == 2; + } + /** + * <code>.context.GPS_Position gps_position = 2;</code> + * @return The gpsPosition. + */ + @java.lang.Override + public context.ContextOuterClass.GPS_Position getGpsPosition() { + if (locationCase_ == 2) { + return (context.ContextOuterClass.GPS_Position) location_; + } + return context.ContextOuterClass.GPS_Position.getDefaultInstance(); + } + /** + * <code>.context.GPS_Position gps_position = 2;</code> + */ + @java.lang.Override + public context.ContextOuterClass.GPS_PositionOrBuilder getGpsPositionOrBuilder() { + if (locationCase_ == 2) { + return (context.ContextOuterClass.GPS_Position) location_; + } + return context.ContextOuterClass.GPS_Position.getDefaultInstance(); } private byte memoizedIsInitialized = -1; @@ -59000,11 +63296,11 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (startTimestamp_ != 0F) { - output.writeFloat(1, startTimestamp_); + if (locationCase_ == 1) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, location_); } - if (durationDays_ != 0F) { - output.writeFloat(2, durationDays_); + if (locationCase_ == 2) { + output.writeMessage(2, (context.ContextOuterClass.GPS_Position) location_); } unknownFields.writeTo(output); } @@ -59015,13 +63311,12 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (startTimestamp_ != 0F) { - size += com.google.protobuf.CodedOutputStream - .computeFloatSize(1, startTimestamp_); + if (locationCase_ == 1) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, location_); } - if (durationDays_ != 0F) { + if (locationCase_ == 2) { size += com.google.protobuf.CodedOutputStream - .computeFloatSize(2, durationDays_); + .computeMessageSize(2, (context.ContextOuterClass.GPS_Position) location_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -59033,17 +63328,24 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.Constraint_Schedule)) { + if (!(obj instanceof context.ContextOuterClass.Location)) { return super.equals(obj); } - context.ContextOuterClass.Constraint_Schedule other = (context.ContextOuterClass.Constraint_Schedule) obj; + context.ContextOuterClass.Location other = (context.ContextOuterClass.Location) obj; - if (java.lang.Float.floatToIntBits(getStartTimestamp()) - != java.lang.Float.floatToIntBits( - other.getStartTimestamp())) return false; - if (java.lang.Float.floatToIntBits(getDurationDays()) - != java.lang.Float.floatToIntBits( - other.getDurationDays())) return false; + if (!getLocationCase().equals(other.getLocationCase())) return false; + switch (locationCase_) { + case 1: + if (!getRegion() + .equals(other.getRegion())) return false; + break; + case 2: + if (!getGpsPosition() + .equals(other.getGpsPosition())) return false; + break; + case 0: + default: + } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -59055,80 +63357,86 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + START_TIMESTAMP_FIELD_NUMBER; - hash = (53 * hash) + java.lang.Float.floatToIntBits( - getStartTimestamp()); - hash = (37 * hash) + DURATION_DAYS_FIELD_NUMBER; - hash = (53 * hash) + java.lang.Float.floatToIntBits( - getDurationDays()); + switch (locationCase_) { + case 1: + hash = (37 * hash) + REGION_FIELD_NUMBER; + hash = (53 * hash) + getRegion().hashCode(); + break; + case 2: + hash = (37 * hash) + GPS_POSITION_FIELD_NUMBER; + hash = (53 * hash) + getGpsPosition().hashCode(); + break; + case 0: + default: + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.Constraint_Schedule parseFrom( + public static context.ContextOuterClass.Location parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_Schedule parseFrom( + public static context.ContextOuterClass.Location parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_Schedule parseFrom( + public static context.ContextOuterClass.Location parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_Schedule parseFrom( + public static context.ContextOuterClass.Location parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_Schedule parseFrom(byte[] data) + public static context.ContextOuterClass.Location parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_Schedule parseFrom( + public static context.ContextOuterClass.Location parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_Schedule parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Location parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_Schedule parseFrom( + public static context.ContextOuterClass.Location 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 context.ContextOuterClass.Constraint_Schedule parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Location parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_Schedule parseDelimitedFrom( + public static context.ContextOuterClass.Location 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 context.ContextOuterClass.Constraint_Schedule parseFrom( + public static context.ContextOuterClass.Location parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_Schedule parseFrom( + public static context.ContextOuterClass.Location parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -59141,7 +63449,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.Constraint_Schedule prototype) { + public static Builder newBuilder(context.ContextOuterClass.Location prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -59157,26 +63465,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.Constraint_Schedule} + * Protobuf type {@code context.Location} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Constraint_Schedule) - context.ContextOuterClass.Constraint_ScheduleOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Location) + context.ContextOuterClass.LocationOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_Schedule_descriptor; + return context.ContextOuterClass.internal_static_context_Location_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_Schedule_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Location_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_Schedule.class, context.ContextOuterClass.Constraint_Schedule.Builder.class); + context.ContextOuterClass.Location.class, context.ContextOuterClass.Location.Builder.class); } - // Construct using context.ContextOuterClass.Constraint_Schedule.newBuilder() + // Construct using context.ContextOuterClass.Location.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -59194,27 +63502,25 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - startTimestamp_ = 0F; - - durationDays_ = 0F; - + locationCase_ = 0; + location_ = null; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Constraint_Schedule_descriptor; + return context.ContextOuterClass.internal_static_context_Location_descriptor; } @java.lang.Override - public context.ContextOuterClass.Constraint_Schedule getDefaultInstanceForType() { - return context.ContextOuterClass.Constraint_Schedule.getDefaultInstance(); + public context.ContextOuterClass.Location getDefaultInstanceForType() { + return context.ContextOuterClass.Location.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.Constraint_Schedule build() { - context.ContextOuterClass.Constraint_Schedule result = buildPartial(); + public context.ContextOuterClass.Location build() { + context.ContextOuterClass.Location result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -59222,10 +63528,19 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.Constraint_Schedule buildPartial() { - context.ContextOuterClass.Constraint_Schedule result = new context.ContextOuterClass.Constraint_Schedule(this); - result.startTimestamp_ = startTimestamp_; - result.durationDays_ = durationDays_; + public context.ContextOuterClass.Location buildPartial() { + context.ContextOuterClass.Location result = new context.ContextOuterClass.Location(this); + if (locationCase_ == 1) { + result.location_ = location_; + } + if (locationCase_ == 2) { + if (gpsPositionBuilder_ == null) { + result.location_ = location_; + } else { + result.location_ = gpsPositionBuilder_.build(); + } + } + result.locationCase_ = locationCase_; onBuilt(); return result; } @@ -59264,21 +63579,30 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.Constraint_Schedule) { - return mergeFrom((context.ContextOuterClass.Constraint_Schedule)other); + if (other instanceof context.ContextOuterClass.Location) { + return mergeFrom((context.ContextOuterClass.Location)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.Constraint_Schedule other) { - if (other == context.ContextOuterClass.Constraint_Schedule.getDefaultInstance()) return this; - if (other.getStartTimestamp() != 0F) { - setStartTimestamp(other.getStartTimestamp()); - } - if (other.getDurationDays() != 0F) { - setDurationDays(other.getDurationDays()); + public Builder mergeFrom(context.ContextOuterClass.Location other) { + if (other == context.ContextOuterClass.Location.getDefaultInstance()) return this; + switch (other.getLocationCase()) { + case REGION: { + locationCase_ = 1; + location_ = other.location_; + onChanged(); + break; + } + case GPS_POSITION: { + mergeGpsPosition(other.getGpsPosition()); + break; + } + case LOCATION_NOT_SET: { + break; + } } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -59289,86 +63613,277 @@ public final class ContextOuterClass { 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 { - context.ContextOuterClass.Constraint_Schedule parsedMessage = null; - try { - parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Constraint_Schedule) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + context.ContextOuterClass.Location parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.Location) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int locationCase_ = 0; + private java.lang.Object location_; + public LocationCase + getLocationCase() { + return LocationCase.forNumber( + locationCase_); + } + + public Builder clearLocation() { + locationCase_ = 0; + location_ = null; + onChanged(); + return this; + } + + + /** + * <code>string region = 1;</code> + * @return Whether the region field is set. + */ + @java.lang.Override + public boolean hasRegion() { + return locationCase_ == 1; + } + /** + * <code>string region = 1;</code> + * @return The region. + */ + @java.lang.Override + public java.lang.String getRegion() { + java.lang.Object ref = ""; + if (locationCase_ == 1) { + ref = location_; + } + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + if (locationCase_ == 1) { + location_ = s; + } + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * <code>string region = 1;</code> + * @return The bytes for region. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getRegionBytes() { + java.lang.Object ref = ""; + if (locationCase_ == 1) { + ref = location_; + } + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + if (locationCase_ == 1) { + location_ = b; + } + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * <code>string region = 1;</code> + * @param value The region to set. + * @return This builder for chaining. + */ + public Builder setRegion( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + locationCase_ = 1; + location_ = value; + onChanged(); + return this; + } + /** + * <code>string region = 1;</code> + * @return This builder for chaining. + */ + public Builder clearRegion() { + if (locationCase_ == 1) { + locationCase_ = 0; + location_ = null; + onChanged(); + } + return this; + } + /** + * <code>string region = 1;</code> + * @param value The bytes for region to set. + * @return This builder for chaining. + */ + public Builder setRegionBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + locationCase_ = 1; + location_ = value; + onChanged(); + return this; + } + + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.GPS_Position, context.ContextOuterClass.GPS_Position.Builder, context.ContextOuterClass.GPS_PositionOrBuilder> gpsPositionBuilder_; + /** + * <code>.context.GPS_Position gps_position = 2;</code> + * @return Whether the gpsPosition field is set. + */ + @java.lang.Override + public boolean hasGpsPosition() { + return locationCase_ == 2; + } + /** + * <code>.context.GPS_Position gps_position = 2;</code> + * @return The gpsPosition. + */ + @java.lang.Override + public context.ContextOuterClass.GPS_Position getGpsPosition() { + if (gpsPositionBuilder_ == null) { + if (locationCase_ == 2) { + return (context.ContextOuterClass.GPS_Position) location_; + } + return context.ContextOuterClass.GPS_Position.getDefaultInstance(); + } else { + if (locationCase_ == 2) { + return gpsPositionBuilder_.getMessage(); + } + return context.ContextOuterClass.GPS_Position.getDefaultInstance(); + } + } + /** + * <code>.context.GPS_Position gps_position = 2;</code> + */ + public Builder setGpsPosition(context.ContextOuterClass.GPS_Position value) { + if (gpsPositionBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + location_ = value; + onChanged(); + } else { + gpsPositionBuilder_.setMessage(value); } + locationCase_ = 2; return this; } - - private float startTimestamp_ ; /** - * <code>float start_timestamp = 1;</code> - * @return The startTimestamp. + * <code>.context.GPS_Position gps_position = 2;</code> */ - @java.lang.Override - public float getStartTimestamp() { - return startTimestamp_; + public Builder setGpsPosition( + context.ContextOuterClass.GPS_Position.Builder builderForValue) { + if (gpsPositionBuilder_ == null) { + location_ = builderForValue.build(); + onChanged(); + } else { + gpsPositionBuilder_.setMessage(builderForValue.build()); + } + locationCase_ = 2; + return this; } /** - * <code>float start_timestamp = 1;</code> - * @param value The startTimestamp to set. - * @return This builder for chaining. + * <code>.context.GPS_Position gps_position = 2;</code> */ - public Builder setStartTimestamp(float value) { - - startTimestamp_ = value; - onChanged(); + public Builder mergeGpsPosition(context.ContextOuterClass.GPS_Position value) { + if (gpsPositionBuilder_ == null) { + if (locationCase_ == 2 && + location_ != context.ContextOuterClass.GPS_Position.getDefaultInstance()) { + location_ = context.ContextOuterClass.GPS_Position.newBuilder((context.ContextOuterClass.GPS_Position) location_) + .mergeFrom(value).buildPartial(); + } else { + location_ = value; + } + onChanged(); + } else { + if (locationCase_ == 2) { + gpsPositionBuilder_.mergeFrom(value); + } + gpsPositionBuilder_.setMessage(value); + } + locationCase_ = 2; return this; } /** - * <code>float start_timestamp = 1;</code> - * @return This builder for chaining. + * <code>.context.GPS_Position gps_position = 2;</code> */ - public Builder clearStartTimestamp() { - - startTimestamp_ = 0F; - onChanged(); + public Builder clearGpsPosition() { + if (gpsPositionBuilder_ == null) { + if (locationCase_ == 2) { + locationCase_ = 0; + location_ = null; + onChanged(); + } + } else { + if (locationCase_ == 2) { + locationCase_ = 0; + location_ = null; + } + gpsPositionBuilder_.clear(); + } return this; } - - private float durationDays_ ; /** - * <code>float duration_days = 2;</code> - * @return The durationDays. + * <code>.context.GPS_Position gps_position = 2;</code> */ - @java.lang.Override - public float getDurationDays() { - return durationDays_; + public context.ContextOuterClass.GPS_Position.Builder getGpsPositionBuilder() { + return getGpsPositionFieldBuilder().getBuilder(); } /** - * <code>float duration_days = 2;</code> - * @param value The durationDays to set. - * @return This builder for chaining. + * <code>.context.GPS_Position gps_position = 2;</code> */ - public Builder setDurationDays(float value) { - - durationDays_ = value; - onChanged(); - return this; + @java.lang.Override + public context.ContextOuterClass.GPS_PositionOrBuilder getGpsPositionOrBuilder() { + if ((locationCase_ == 2) && (gpsPositionBuilder_ != null)) { + return gpsPositionBuilder_.getMessageOrBuilder(); + } else { + if (locationCase_ == 2) { + return (context.ContextOuterClass.GPS_Position) location_; + } + return context.ContextOuterClass.GPS_Position.getDefaultInstance(); + } } /** - * <code>float duration_days = 2;</code> - * @return This builder for chaining. + * <code>.context.GPS_Position gps_position = 2;</code> */ - public Builder clearDurationDays() { - - durationDays_ = 0F; - onChanged(); - return this; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.GPS_Position, context.ContextOuterClass.GPS_Position.Builder, context.ContextOuterClass.GPS_PositionOrBuilder> + getGpsPositionFieldBuilder() { + if (gpsPositionBuilder_ == null) { + if (!(locationCase_ == 2)) { + location_ = context.ContextOuterClass.GPS_Position.getDefaultInstance(); + } + gpsPositionBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.GPS_Position, context.ContextOuterClass.GPS_Position.Builder, context.ContextOuterClass.GPS_PositionOrBuilder>( + (context.ContextOuterClass.GPS_Position) location_, + getParentForChildren(), + isClean()); + location_ = null; + } + locationCase_ = 2; + onChanged();; + return gpsPositionBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -59383,82 +63898,100 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.Constraint_Schedule) + // @@protoc_insertion_point(builder_scope:context.Location) } - // @@protoc_insertion_point(class_scope:context.Constraint_Schedule) - private static final context.ContextOuterClass.Constraint_Schedule DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Location) + private static final context.ContextOuterClass.Location DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_Schedule(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Location(); } - public static context.ContextOuterClass.Constraint_Schedule getDefaultInstance() { + public static context.ContextOuterClass.Location getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<Constraint_Schedule> - PARSER = new com.google.protobuf.AbstractParser<Constraint_Schedule>() { + private static final com.google.protobuf.Parser<Location> + PARSER = new com.google.protobuf.AbstractParser<Location>() { @java.lang.Override - public Constraint_Schedule parsePartialFrom( + public Location parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new Constraint_Schedule(input, extensionRegistry); + return new Location(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<Constraint_Schedule> parser() { + public static com.google.protobuf.Parser<Location> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<Constraint_Schedule> getParserForType() { + public com.google.protobuf.Parser<Location> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.Constraint_Schedule getDefaultInstanceForType() { + public context.ContextOuterClass.Location getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface GPS_PositionOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.GPS_Position) + public interface Constraint_EndPointLocationOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Constraint_EndPointLocation) com.google.protobuf.MessageOrBuilder { /** - * <code>float latitude = 1;</code> - * @return The latitude. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ - float getLatitude(); + boolean hasEndpointId(); + /** + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. + */ + context.ContextOuterClass.EndPointId getEndpointId(); + /** + * <code>.context.EndPointId endpoint_id = 1;</code> + */ + context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder(); /** - * <code>float longitude = 2;</code> - * @return The longitude. + * <code>.context.Location location = 2;</code> + * @return Whether the location field is set. */ - float getLongitude(); + boolean hasLocation(); + /** + * <code>.context.Location location = 2;</code> + * @return The location. + */ + context.ContextOuterClass.Location getLocation(); + /** + * <code>.context.Location location = 2;</code> + */ + context.ContextOuterClass.LocationOrBuilder getLocationOrBuilder(); } /** - * Protobuf type {@code context.GPS_Position} + * Protobuf type {@code context.Constraint_EndPointLocation} */ - public static final class GPS_Position extends + public static final class Constraint_EndPointLocation extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.GPS_Position) - GPS_PositionOrBuilder { + // @@protoc_insertion_point(message_implements:context.Constraint_EndPointLocation) + Constraint_EndPointLocationOrBuilder { private static final long serialVersionUID = 0L; - // Use GPS_Position.newBuilder() to construct. - private GPS_Position(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Constraint_EndPointLocation.newBuilder() to construct. + private Constraint_EndPointLocation(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private GPS_Position() { + private Constraint_EndPointLocation() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new GPS_Position(); + return new Constraint_EndPointLocation(); } @java.lang.Override @@ -59466,7 +63999,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private GPS_Position( + private Constraint_EndPointLocation( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -59484,14 +64017,30 @@ public final class ContextOuterClass { case 0: done = true; break; - case 13: { + case 10: { + context.ContextOuterClass.EndPointId.Builder subBuilder = null; + if (endpointId_ != null) { + subBuilder = endpointId_.toBuilder(); + } + endpointId_ = input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(endpointId_); + endpointId_ = subBuilder.buildPartial(); + } - latitude_ = input.readFloat(); break; } - case 21: { + case 18: { + context.ContextOuterClass.Location.Builder subBuilder = null; + if (location_ != null) { + subBuilder = location_.toBuilder(); + } + location_ = input.readMessage(context.ContextOuterClass.Location.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(location_); + location_ = subBuilder.buildPartial(); + } - longitude_ = input.readFloat(); break; } default: { @@ -59515,37 +64064,67 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_GPS_Position_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_EndPointLocation_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_GPS_Position_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_EndPointLocation_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.GPS_Position.class, context.ContextOuterClass.GPS_Position.Builder.class); + context.ContextOuterClass.Constraint_EndPointLocation.class, context.ContextOuterClass.Constraint_EndPointLocation.Builder.class); } - public static final int LATITUDE_FIELD_NUMBER = 1; - private float latitude_; + public static final int ENDPOINT_ID_FIELD_NUMBER = 1; + private context.ContextOuterClass.EndPointId endpointId_; /** - * <code>float latitude = 1;</code> - * @return The latitude. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ @java.lang.Override - public float getLatitude() { - return latitude_; + public boolean hasEndpointId() { + return endpointId_ != null; + } + /** + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. + */ + @java.lang.Override + public context.ContextOuterClass.EndPointId getEndpointId() { + return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; + } + /** + * <code>.context.EndPointId endpoint_id = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { + return getEndpointId(); } - public static final int LONGITUDE_FIELD_NUMBER = 2; - private float longitude_; + public static final int LOCATION_FIELD_NUMBER = 2; + private context.ContextOuterClass.Location location_; /** - * <code>float longitude = 2;</code> - * @return The longitude. + * <code>.context.Location location = 2;</code> + * @return Whether the location field is set. */ @java.lang.Override - public float getLongitude() { - return longitude_; + public boolean hasLocation() { + return location_ != null; + } + /** + * <code>.context.Location location = 2;</code> + * @return The location. + */ + @java.lang.Override + public context.ContextOuterClass.Location getLocation() { + return location_ == null ? context.ContextOuterClass.Location.getDefaultInstance() : location_; + } + /** + * <code>.context.Location location = 2;</code> + */ + @java.lang.Override + public context.ContextOuterClass.LocationOrBuilder getLocationOrBuilder() { + return getLocation(); } private byte memoizedIsInitialized = -1; @@ -59562,11 +64141,11 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (latitude_ != 0F) { - output.writeFloat(1, latitude_); + if (endpointId_ != null) { + output.writeMessage(1, getEndpointId()); } - if (longitude_ != 0F) { - output.writeFloat(2, longitude_); + if (location_ != null) { + output.writeMessage(2, getLocation()); } unknownFields.writeTo(output); } @@ -59577,13 +64156,13 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (latitude_ != 0F) { + if (endpointId_ != null) { size += com.google.protobuf.CodedOutputStream - .computeFloatSize(1, latitude_); + .computeMessageSize(1, getEndpointId()); } - if (longitude_ != 0F) { + if (location_ != null) { size += com.google.protobuf.CodedOutputStream - .computeFloatSize(2, longitude_); + .computeMessageSize(2, getLocation()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -59595,17 +64174,21 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.GPS_Position)) { + if (!(obj instanceof context.ContextOuterClass.Constraint_EndPointLocation)) { return super.equals(obj); } - context.ContextOuterClass.GPS_Position other = (context.ContextOuterClass.GPS_Position) obj; + context.ContextOuterClass.Constraint_EndPointLocation other = (context.ContextOuterClass.Constraint_EndPointLocation) obj; - if (java.lang.Float.floatToIntBits(getLatitude()) - != java.lang.Float.floatToIntBits( - other.getLatitude())) return false; - if (java.lang.Float.floatToIntBits(getLongitude()) - != java.lang.Float.floatToIntBits( - other.getLongitude())) return false; + if (hasEndpointId() != other.hasEndpointId()) return false; + if (hasEndpointId()) { + if (!getEndpointId() + .equals(other.getEndpointId())) return false; + } + if (hasLocation() != other.hasLocation()) return false; + if (hasLocation()) { + if (!getLocation() + .equals(other.getLocation())) return false; + } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -59617,80 +64200,82 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + LATITUDE_FIELD_NUMBER; - hash = (53 * hash) + java.lang.Float.floatToIntBits( - getLatitude()); - hash = (37 * hash) + LONGITUDE_FIELD_NUMBER; - hash = (53 * hash) + java.lang.Float.floatToIntBits( - getLongitude()); + if (hasEndpointId()) { + hash = (37 * hash) + ENDPOINT_ID_FIELD_NUMBER; + hash = (53 * hash) + getEndpointId().hashCode(); + } + if (hasLocation()) { + hash = (37 * hash) + LOCATION_FIELD_NUMBER; + hash = (53 * hash) + getLocation().hashCode(); + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.GPS_Position parseFrom( + public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.GPS_Position parseFrom( + public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.GPS_Position parseFrom( + public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.GPS_Position parseFrom( + public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.GPS_Position parseFrom(byte[] data) + public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.GPS_Position parseFrom( + public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.GPS_Position parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.GPS_Position parseFrom( + public static context.ContextOuterClass.Constraint_EndPointLocation 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 context.ContextOuterClass.GPS_Position parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_EndPointLocation parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.GPS_Position parseDelimitedFrom( + public static context.ContextOuterClass.Constraint_EndPointLocation 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 context.ContextOuterClass.GPS_Position parseFrom( + public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.GPS_Position parseFrom( + public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -59703,7 +64288,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.GPS_Position prototype) { + public static Builder newBuilder(context.ContextOuterClass.Constraint_EndPointLocation prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -59719,26 +64304,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.GPS_Position} + * Protobuf type {@code context.Constraint_EndPointLocation} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.GPS_Position) - context.ContextOuterClass.GPS_PositionOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Constraint_EndPointLocation) + context.ContextOuterClass.Constraint_EndPointLocationOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_GPS_Position_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_EndPointLocation_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_GPS_Position_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_EndPointLocation_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.GPS_Position.class, context.ContextOuterClass.GPS_Position.Builder.class); + context.ContextOuterClass.Constraint_EndPointLocation.class, context.ContextOuterClass.Constraint_EndPointLocation.Builder.class); } - // Construct using context.ContextOuterClass.GPS_Position.newBuilder() + // Construct using context.ContextOuterClass.Constraint_EndPointLocation.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -59756,27 +64341,35 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - latitude_ = 0F; - - longitude_ = 0F; - + if (endpointIdBuilder_ == null) { + endpointId_ = null; + } else { + endpointId_ = null; + endpointIdBuilder_ = null; + } + if (locationBuilder_ == null) { + location_ = null; + } else { + location_ = null; + locationBuilder_ = null; + } return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_GPS_Position_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_EndPointLocation_descriptor; } @java.lang.Override - public context.ContextOuterClass.GPS_Position getDefaultInstanceForType() { - return context.ContextOuterClass.GPS_Position.getDefaultInstance(); + public context.ContextOuterClass.Constraint_EndPointLocation getDefaultInstanceForType() { + return context.ContextOuterClass.Constraint_EndPointLocation.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.GPS_Position build() { - context.ContextOuterClass.GPS_Position result = buildPartial(); + public context.ContextOuterClass.Constraint_EndPointLocation build() { + context.ContextOuterClass.Constraint_EndPointLocation result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -59784,10 +64377,18 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.GPS_Position buildPartial() { - context.ContextOuterClass.GPS_Position result = new context.ContextOuterClass.GPS_Position(this); - result.latitude_ = latitude_; - result.longitude_ = longitude_; + public context.ContextOuterClass.Constraint_EndPointLocation buildPartial() { + context.ContextOuterClass.Constraint_EndPointLocation result = new context.ContextOuterClass.Constraint_EndPointLocation(this); + if (endpointIdBuilder_ == null) { + result.endpointId_ = endpointId_; + } else { + result.endpointId_ = endpointIdBuilder_.build(); + } + if (locationBuilder_ == null) { + result.location_ = location_; + } else { + result.location_ = locationBuilder_.build(); + } onBuilt(); return result; } @@ -59826,111 +64427,287 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.GPS_Position) { - return mergeFrom((context.ContextOuterClass.GPS_Position)other); + if (other instanceof context.ContextOuterClass.Constraint_EndPointLocation) { + return mergeFrom((context.ContextOuterClass.Constraint_EndPointLocation)other); } else { super.mergeFrom(other); return this; } - } + } + + public Builder mergeFrom(context.ContextOuterClass.Constraint_EndPointLocation other) { + if (other == context.ContextOuterClass.Constraint_EndPointLocation.getDefaultInstance()) return this; + if (other.hasEndpointId()) { + mergeEndpointId(other.getEndpointId()); + } + if (other.hasLocation()) { + mergeLocation(other.getLocation()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @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 { + context.ContextOuterClass.Constraint_EndPointLocation parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.Constraint_EndPointLocation) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + private context.ContextOuterClass.EndPointId endpointId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> endpointIdBuilder_; + /** + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. + */ + public boolean hasEndpointId() { + return endpointIdBuilder_ != null || endpointId_ != null; + } + /** + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. + */ + public context.ContextOuterClass.EndPointId getEndpointId() { + if (endpointIdBuilder_ == null) { + return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; + } else { + return endpointIdBuilder_.getMessage(); + } + } + /** + * <code>.context.EndPointId endpoint_id = 1;</code> + */ + public Builder setEndpointId(context.ContextOuterClass.EndPointId value) { + if (endpointIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + endpointId_ = value; + onChanged(); + } else { + endpointIdBuilder_.setMessage(value); + } - public Builder mergeFrom(context.ContextOuterClass.GPS_Position other) { - if (other == context.ContextOuterClass.GPS_Position.getDefaultInstance()) return this; - if (other.getLatitude() != 0F) { - setLatitude(other.getLatitude()); - } - if (other.getLongitude() != 0F) { - setLongitude(other.getLongitude()); - } - this.mergeUnknownFields(other.unknownFields); - onChanged(); return this; } + /** + * <code>.context.EndPointId endpoint_id = 1;</code> + */ + public Builder setEndpointId( + context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (endpointIdBuilder_ == null) { + endpointId_ = builderForValue.build(); + onChanged(); + } else { + endpointIdBuilder_.setMessage(builderForValue.build()); + } - @java.lang.Override - public final boolean isInitialized() { - return true; + return this; } - - @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - context.ContextOuterClass.GPS_Position parsedMessage = null; - try { - parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.GPS_Position) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); + /** + * <code>.context.EndPointId endpoint_id = 1;</code> + */ + public Builder mergeEndpointId(context.ContextOuterClass.EndPointId value) { + if (endpointIdBuilder_ == null) { + if (endpointId_ != null) { + endpointId_ = + context.ContextOuterClass.EndPointId.newBuilder(endpointId_).mergeFrom(value).buildPartial(); + } else { + endpointId_ = value; } + onChanged(); + } else { + endpointIdBuilder_.mergeFrom(value); } + return this; } - - private float latitude_ ; /** - * <code>float latitude = 1;</code> - * @return The latitude. + * <code>.context.EndPointId endpoint_id = 1;</code> */ - @java.lang.Override - public float getLatitude() { - return latitude_; + public Builder clearEndpointId() { + if (endpointIdBuilder_ == null) { + endpointId_ = null; + onChanged(); + } else { + endpointId_ = null; + endpointIdBuilder_ = null; + } + + return this; } /** - * <code>float latitude = 1;</code> - * @param value The latitude to set. - * @return This builder for chaining. + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder setLatitude(float value) { + public context.ContextOuterClass.EndPointId.Builder getEndpointIdBuilder() { - latitude_ = value; onChanged(); - return this; + return getEndpointIdFieldBuilder().getBuilder(); } /** - * <code>float latitude = 1;</code> - * @return This builder for chaining. + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder clearLatitude() { - - latitude_ = 0F; - onChanged(); + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { + if (endpointIdBuilder_ != null) { + return endpointIdBuilder_.getMessageOrBuilder(); + } else { + return endpointId_ == null ? + context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; + } + } + /** + * <code>.context.EndPointId endpoint_id = 1;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> + getEndpointIdFieldBuilder() { + if (endpointIdBuilder_ == null) { + endpointIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( + getEndpointId(), + getParentForChildren(), + isClean()); + endpointId_ = null; + } + return endpointIdBuilder_; + } + + private context.ContextOuterClass.Location location_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Location, context.ContextOuterClass.Location.Builder, context.ContextOuterClass.LocationOrBuilder> locationBuilder_; + /** + * <code>.context.Location location = 2;</code> + * @return Whether the location field is set. + */ + public boolean hasLocation() { + return locationBuilder_ != null || location_ != null; + } + /** + * <code>.context.Location location = 2;</code> + * @return The location. + */ + public context.ContextOuterClass.Location getLocation() { + if (locationBuilder_ == null) { + return location_ == null ? context.ContextOuterClass.Location.getDefaultInstance() : location_; + } else { + return locationBuilder_.getMessage(); + } + } + /** + * <code>.context.Location location = 2;</code> + */ + public Builder setLocation(context.ContextOuterClass.Location value) { + if (locationBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + location_ = value; + onChanged(); + } else { + locationBuilder_.setMessage(value); + } + return this; } + /** + * <code>.context.Location location = 2;</code> + */ + public Builder setLocation( + context.ContextOuterClass.Location.Builder builderForValue) { + if (locationBuilder_ == null) { + location_ = builderForValue.build(); + onChanged(); + } else { + locationBuilder_.setMessage(builderForValue.build()); + } - private float longitude_ ; + return this; + } /** - * <code>float longitude = 2;</code> - * @return The longitude. + * <code>.context.Location location = 2;</code> */ - @java.lang.Override - public float getLongitude() { - return longitude_; + public Builder mergeLocation(context.ContextOuterClass.Location value) { + if (locationBuilder_ == null) { + if (location_ != null) { + location_ = + context.ContextOuterClass.Location.newBuilder(location_).mergeFrom(value).buildPartial(); + } else { + location_ = value; + } + onChanged(); + } else { + locationBuilder_.mergeFrom(value); + } + + return this; } /** - * <code>float longitude = 2;</code> - * @param value The longitude to set. - * @return This builder for chaining. + * <code>.context.Location location = 2;</code> */ - public Builder setLongitude(float value) { - - longitude_ = value; - onChanged(); + public Builder clearLocation() { + if (locationBuilder_ == null) { + location_ = null; + onChanged(); + } else { + location_ = null; + locationBuilder_ = null; + } + return this; } /** - * <code>float longitude = 2;</code> - * @return This builder for chaining. + * <code>.context.Location location = 2;</code> */ - public Builder clearLongitude() { + public context.ContextOuterClass.Location.Builder getLocationBuilder() { - longitude_ = 0F; onChanged(); - return this; + return getLocationFieldBuilder().getBuilder(); + } + /** + * <code>.context.Location location = 2;</code> + */ + public context.ContextOuterClass.LocationOrBuilder getLocationOrBuilder() { + if (locationBuilder_ != null) { + return locationBuilder_.getMessageOrBuilder(); + } else { + return location_ == null ? + context.ContextOuterClass.Location.getDefaultInstance() : location_; + } + } + /** + * <code>.context.Location location = 2;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Location, context.ContextOuterClass.Location.Builder, context.ContextOuterClass.LocationOrBuilder> + getLocationFieldBuilder() { + if (locationBuilder_ == null) { + locationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Location, context.ContextOuterClass.Location.Builder, context.ContextOuterClass.LocationOrBuilder>( + getLocation(), + getParentForChildren(), + isClean()); + location_ = null; + } + return locationBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -59945,104 +64722,91 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.GPS_Position) + // @@protoc_insertion_point(builder_scope:context.Constraint_EndPointLocation) } - // @@protoc_insertion_point(class_scope:context.GPS_Position) - private static final context.ContextOuterClass.GPS_Position DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Constraint_EndPointLocation) + private static final context.ContextOuterClass.Constraint_EndPointLocation DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.GPS_Position(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_EndPointLocation(); } - public static context.ContextOuterClass.GPS_Position getDefaultInstance() { + public static context.ContextOuterClass.Constraint_EndPointLocation getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<GPS_Position> - PARSER = new com.google.protobuf.AbstractParser<GPS_Position>() { + private static final com.google.protobuf.Parser<Constraint_EndPointLocation> + PARSER = new com.google.protobuf.AbstractParser<Constraint_EndPointLocation>() { @java.lang.Override - public GPS_Position parsePartialFrom( + public Constraint_EndPointLocation parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new GPS_Position(input, extensionRegistry); + return new Constraint_EndPointLocation(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<GPS_Position> parser() { + public static com.google.protobuf.Parser<Constraint_EndPointLocation> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<GPS_Position> getParserForType() { + public com.google.protobuf.Parser<Constraint_EndPointLocation> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.GPS_Position getDefaultInstanceForType() { + public context.ContextOuterClass.Constraint_EndPointLocation getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface LocationOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Location) + public interface Constraint_EndPointPriorityOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Constraint_EndPointPriority) com.google.protobuf.MessageOrBuilder { /** - * <code>string region = 1;</code> - * @return Whether the region field is set. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ - boolean hasRegion(); + boolean hasEndpointId(); /** - * <code>string region = 1;</code> - * @return The region. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. */ - java.lang.String getRegion(); + context.ContextOuterClass.EndPointId getEndpointId(); /** - * <code>string region = 1;</code> - * @return The bytes for region. + * <code>.context.EndPointId endpoint_id = 1;</code> */ - com.google.protobuf.ByteString - getRegionBytes(); + context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder(); /** - * <code>.context.GPS_Position gps_position = 2;</code> - * @return Whether the gpsPosition field is set. - */ - boolean hasGpsPosition(); - /** - * <code>.context.GPS_Position gps_position = 2;</code> - * @return The gpsPosition. - */ - context.ContextOuterClass.GPS_Position getGpsPosition(); - /** - * <code>.context.GPS_Position gps_position = 2;</code> + * <code>uint32 priority = 2;</code> + * @return The priority. */ - context.ContextOuterClass.GPS_PositionOrBuilder getGpsPositionOrBuilder(); - - public context.ContextOuterClass.Location.LocationCase getLocationCase(); + int getPriority(); } /** - * Protobuf type {@code context.Location} + * Protobuf type {@code context.Constraint_EndPointPriority} */ - public static final class Location extends + public static final class Constraint_EndPointPriority extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Location) - LocationOrBuilder { + // @@protoc_insertion_point(message_implements:context.Constraint_EndPointPriority) + Constraint_EndPointPriorityOrBuilder { private static final long serialVersionUID = 0L; - // Use Location.newBuilder() to construct. - private Location(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Constraint_EndPointPriority.newBuilder() to construct. + private Constraint_EndPointPriority(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private Location() { + private Constraint_EndPointPriority() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new Location(); + return new Constraint_EndPointPriority(); } @java.lang.Override @@ -60050,7 +64814,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private Location( + private Constraint_EndPointPriority( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -60069,23 +64833,21 @@ public final class ContextOuterClass { done = true; break; case 10: { - java.lang.String s = input.readStringRequireUtf8(); - locationCase_ = 1; - location_ = s; - break; - } - case 18: { - context.ContextOuterClass.GPS_Position.Builder subBuilder = null; - if (locationCase_ == 2) { - subBuilder = ((context.ContextOuterClass.GPS_Position) location_).toBuilder(); + context.ContextOuterClass.EndPointId.Builder subBuilder = null; + if (endpointId_ != null) { + subBuilder = endpointId_.toBuilder(); } - location_ = - input.readMessage(context.ContextOuterClass.GPS_Position.parser(), extensionRegistry); + endpointId_ = input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom((context.ContextOuterClass.GPS_Position) location_); - location_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(endpointId_); + endpointId_ = subBuilder.buildPartial(); } - locationCase_ = 2; + + break; + } + case 16: { + + priority_ = input.readUInt32(); break; } default: { @@ -60109,139 +64871,52 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Location_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_EndPointPriority_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Location_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_EndPointPriority_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Location.class, context.ContextOuterClass.Location.Builder.class); - } - - private int locationCase_ = 0; - private java.lang.Object location_; - public enum LocationCase - implements com.google.protobuf.Internal.EnumLite, - com.google.protobuf.AbstractMessage.InternalOneOfEnum { - REGION(1), - GPS_POSITION(2), - LOCATION_NOT_SET(0); - private final int value; - private LocationCase(int value) { - this.value = value; - } - /** - * @param value The number of the enum to look for. - * @return The enum associated with the given number. - * @deprecated Use {@link #forNumber(int)} instead. - */ - @java.lang.Deprecated - public static LocationCase valueOf(int value) { - return forNumber(value); - } - - public static LocationCase forNumber(int value) { - switch (value) { - case 1: return REGION; - case 2: return GPS_POSITION; - case 0: return LOCATION_NOT_SET; - default: return null; - } - } - public int getNumber() { - return this.value; - } - }; - - public LocationCase - getLocationCase() { - return LocationCase.forNumber( - locationCase_); + context.ContextOuterClass.Constraint_EndPointPriority.class, context.ContextOuterClass.Constraint_EndPointPriority.Builder.class); } - public static final int REGION_FIELD_NUMBER = 1; - /** - * <code>string region = 1;</code> - * @return Whether the region field is set. - */ - public boolean hasRegion() { - return locationCase_ == 1; - } - /** - * <code>string region = 1;</code> - * @return The region. - */ - public java.lang.String getRegion() { - java.lang.Object ref = ""; - if (locationCase_ == 1) { - ref = location_; - } - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - if (locationCase_ == 1) { - location_ = s; - } - return s; - } - } + public static final int ENDPOINT_ID_FIELD_NUMBER = 1; + private context.ContextOuterClass.EndPointId endpointId_; /** - * <code>string region = 1;</code> - * @return The bytes for region. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ - public com.google.protobuf.ByteString - getRegionBytes() { - java.lang.Object ref = ""; - if (locationCase_ == 1) { - ref = location_; - } - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - if (locationCase_ == 1) { - location_ = b; - } - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + @java.lang.Override + public boolean hasEndpointId() { + return endpointId_ != null; } - - public static final int GPS_POSITION_FIELD_NUMBER = 2; /** - * <code>.context.GPS_Position gps_position = 2;</code> - * @return Whether the gpsPosition field is set. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. */ @java.lang.Override - public boolean hasGpsPosition() { - return locationCase_ == 2; + public context.ContextOuterClass.EndPointId getEndpointId() { + return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; } /** - * <code>.context.GPS_Position gps_position = 2;</code> - * @return The gpsPosition. + * <code>.context.EndPointId endpoint_id = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.GPS_Position getGpsPosition() { - if (locationCase_ == 2) { - return (context.ContextOuterClass.GPS_Position) location_; - } - return context.ContextOuterClass.GPS_Position.getDefaultInstance(); + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { + return getEndpointId(); } + + public static final int PRIORITY_FIELD_NUMBER = 2; + private int priority_; /** - * <code>.context.GPS_Position gps_position = 2;</code> + * <code>uint32 priority = 2;</code> + * @return The priority. */ @java.lang.Override - public context.ContextOuterClass.GPS_PositionOrBuilder getGpsPositionOrBuilder() { - if (locationCase_ == 2) { - return (context.ContextOuterClass.GPS_Position) location_; - } - return context.ContextOuterClass.GPS_Position.getDefaultInstance(); + public int getPriority() { + return priority_; } private byte memoizedIsInitialized = -1; @@ -60258,11 +64933,11 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (locationCase_ == 1) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 1, location_); + if (endpointId_ != null) { + output.writeMessage(1, getEndpointId()); } - if (locationCase_ == 2) { - output.writeMessage(2, (context.ContextOuterClass.GPS_Position) location_); + if (priority_ != 0) { + output.writeUInt32(2, priority_); } unknownFields.writeTo(output); } @@ -60273,12 +64948,13 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (locationCase_ == 1) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, location_); + if (endpointId_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getEndpointId()); } - if (locationCase_ == 2) { + if (priority_ != 0) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, (context.ContextOuterClass.GPS_Position) location_); + .computeUInt32Size(2, priority_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -60290,24 +64966,18 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.Location)) { + if (!(obj instanceof context.ContextOuterClass.Constraint_EndPointPriority)) { return super.equals(obj); } - context.ContextOuterClass.Location other = (context.ContextOuterClass.Location) obj; - - if (!getLocationCase().equals(other.getLocationCase())) return false; - switch (locationCase_) { - case 1: - if (!getRegion() - .equals(other.getRegion())) return false; - break; - case 2: - if (!getGpsPosition() - .equals(other.getGpsPosition())) return false; - break; - case 0: - default: + context.ContextOuterClass.Constraint_EndPointPriority other = (context.ContextOuterClass.Constraint_EndPointPriority) obj; + + if (hasEndpointId() != other.hasEndpointId()) return false; + if (hasEndpointId()) { + if (!getEndpointId() + .equals(other.getEndpointId())) return false; } + if (getPriority() + != other.getPriority()) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -60319,86 +64989,80 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - switch (locationCase_) { - case 1: - hash = (37 * hash) + REGION_FIELD_NUMBER; - hash = (53 * hash) + getRegion().hashCode(); - break; - case 2: - hash = (37 * hash) + GPS_POSITION_FIELD_NUMBER; - hash = (53 * hash) + getGpsPosition().hashCode(); - break; - case 0: - default: + if (hasEndpointId()) { + hash = (37 * hash) + ENDPOINT_ID_FIELD_NUMBER; + hash = (53 * hash) + getEndpointId().hashCode(); } + hash = (37 * hash) + PRIORITY_FIELD_NUMBER; + hash = (53 * hash) + getPriority(); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.Location parseFrom( + public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Location parseFrom( + public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Location parseFrom( + public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Location parseFrom( + public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Location parseFrom(byte[] data) + public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Location parseFrom( + public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Location parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Location parseFrom( + public static context.ContextOuterClass.Constraint_EndPointPriority 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 context.ContextOuterClass.Location parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_EndPointPriority parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.Location parseDelimitedFrom( + public static context.ContextOuterClass.Constraint_EndPointPriority 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 context.ContextOuterClass.Location parseFrom( + public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Location parseFrom( + public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -60411,7 +65075,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.Location prototype) { + public static Builder newBuilder(context.ContextOuterClass.Constraint_EndPointPriority prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -60427,26 +65091,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.Location} + * Protobuf type {@code context.Constraint_EndPointPriority} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Location) - context.ContextOuterClass.LocationOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Constraint_EndPointPriority) + context.ContextOuterClass.Constraint_EndPointPriorityOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Location_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_EndPointPriority_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Location_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_EndPointPriority_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Location.class, context.ContextOuterClass.Location.Builder.class); + context.ContextOuterClass.Constraint_EndPointPriority.class, context.ContextOuterClass.Constraint_EndPointPriority.Builder.class); } - // Construct using context.ContextOuterClass.Location.newBuilder() + // Construct using context.ContextOuterClass.Constraint_EndPointPriority.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -60464,25 +65128,31 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - locationCase_ = 0; - location_ = null; + if (endpointIdBuilder_ == null) { + endpointId_ = null; + } else { + endpointId_ = null; + endpointIdBuilder_ = null; + } + priority_ = 0; + return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Location_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_EndPointPriority_descriptor; } @java.lang.Override - public context.ContextOuterClass.Location getDefaultInstanceForType() { - return context.ContextOuterClass.Location.getDefaultInstance(); + public context.ContextOuterClass.Constraint_EndPointPriority getDefaultInstanceForType() { + return context.ContextOuterClass.Constraint_EndPointPriority.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.Location build() { - context.ContextOuterClass.Location result = buildPartial(); + public context.ContextOuterClass.Constraint_EndPointPriority build() { + context.ContextOuterClass.Constraint_EndPointPriority result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -60490,19 +65160,14 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.Location buildPartial() { - context.ContextOuterClass.Location result = new context.ContextOuterClass.Location(this); - if (locationCase_ == 1) { - result.location_ = location_; - } - if (locationCase_ == 2) { - if (gpsPositionBuilder_ == null) { - result.location_ = location_; - } else { - result.location_ = gpsPositionBuilder_.build(); - } + public context.ContextOuterClass.Constraint_EndPointPriority buildPartial() { + context.ContextOuterClass.Constraint_EndPointPriority result = new context.ContextOuterClass.Constraint_EndPointPriority(this); + if (endpointIdBuilder_ == null) { + result.endpointId_ = endpointId_; + } else { + result.endpointId_ = endpointIdBuilder_.build(); } - result.locationCase_ = locationCase_; + result.priority_ = priority_; onBuilt(); return result; } @@ -60541,30 +65206,21 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.Location) { - return mergeFrom((context.ContextOuterClass.Location)other); + if (other instanceof context.ContextOuterClass.Constraint_EndPointPriority) { + return mergeFrom((context.ContextOuterClass.Constraint_EndPointPriority)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.Location other) { - if (other == context.ContextOuterClass.Location.getDefaultInstance()) return this; - switch (other.getLocationCase()) { - case REGION: { - locationCase_ = 1; - location_ = other.location_; - onChanged(); - break; - } - case GPS_POSITION: { - mergeGpsPosition(other.getGpsPosition()); - break; - } - case LOCATION_NOT_SET: { - break; - } + public Builder mergeFrom(context.ContextOuterClass.Constraint_EndPointPriority other) { + if (other == context.ContextOuterClass.Constraint_EndPointPriority.getDefaultInstance()) return this; + if (other.hasEndpointId()) { + mergeEndpointId(other.getEndpointId()); + } + if (other.getPriority() != 0) { + setPriority(other.getPriority()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -60581,11 +65237,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.Location parsedMessage = null; + context.ContextOuterClass.Constraint_EndPointPriority parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Location) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.Constraint_EndPointPriority) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -60594,258 +65250,155 @@ public final class ContextOuterClass { } return this; } - private int locationCase_ = 0; - private java.lang.Object location_; - public LocationCase - getLocationCase() { - return LocationCase.forNumber( - locationCase_); - } - - public Builder clearLocation() { - locationCase_ = 0; - location_ = null; - onChanged(); - return this; - } - - - /** - * <code>string region = 1;</code> - * @return Whether the region field is set. - */ - @java.lang.Override - public boolean hasRegion() { - return locationCase_ == 1; - } - /** - * <code>string region = 1;</code> - * @return The region. - */ - @java.lang.Override - public java.lang.String getRegion() { - java.lang.Object ref = ""; - if (locationCase_ == 1) { - ref = location_; - } - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - if (locationCase_ == 1) { - location_ = s; - } - return s; - } else { - return (java.lang.String) ref; - } - } - /** - * <code>string region = 1;</code> - * @return The bytes for region. - */ - @java.lang.Override - public com.google.protobuf.ByteString - getRegionBytes() { - java.lang.Object ref = ""; - if (locationCase_ == 1) { - ref = location_; - } - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - if (locationCase_ == 1) { - location_ = b; - } - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - /** - * <code>string region = 1;</code> - * @param value The region to set. - * @return This builder for chaining. - */ - public Builder setRegion( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - locationCase_ = 1; - location_ = value; - onChanged(); - return this; - } - /** - * <code>string region = 1;</code> - * @return This builder for chaining. - */ - public Builder clearRegion() { - if (locationCase_ == 1) { - locationCase_ = 0; - location_ = null; - onChanged(); - } - return this; - } - /** - * <code>string region = 1;</code> - * @param value The bytes for region to set. - * @return This builder for chaining. - */ - public Builder setRegionBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - locationCase_ = 1; - location_ = value; - onChanged(); - return this; - } + private context.ContextOuterClass.EndPointId endpointId_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.GPS_Position, context.ContextOuterClass.GPS_Position.Builder, context.ContextOuterClass.GPS_PositionOrBuilder> gpsPositionBuilder_; + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> endpointIdBuilder_; /** - * <code>.context.GPS_Position gps_position = 2;</code> - * @return Whether the gpsPosition field is set. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ - @java.lang.Override - public boolean hasGpsPosition() { - return locationCase_ == 2; + public boolean hasEndpointId() { + return endpointIdBuilder_ != null || endpointId_ != null; } /** - * <code>.context.GPS_Position gps_position = 2;</code> - * @return The gpsPosition. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. */ - @java.lang.Override - public context.ContextOuterClass.GPS_Position getGpsPosition() { - if (gpsPositionBuilder_ == null) { - if (locationCase_ == 2) { - return (context.ContextOuterClass.GPS_Position) location_; - } - return context.ContextOuterClass.GPS_Position.getDefaultInstance(); + public context.ContextOuterClass.EndPointId getEndpointId() { + if (endpointIdBuilder_ == null) { + return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; } else { - if (locationCase_ == 2) { - return gpsPositionBuilder_.getMessage(); - } - return context.ContextOuterClass.GPS_Position.getDefaultInstance(); + return endpointIdBuilder_.getMessage(); } } /** - * <code>.context.GPS_Position gps_position = 2;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder setGpsPosition(context.ContextOuterClass.GPS_Position value) { - if (gpsPositionBuilder_ == null) { + public Builder setEndpointId(context.ContextOuterClass.EndPointId value) { + if (endpointIdBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - location_ = value; + endpointId_ = value; onChanged(); } else { - gpsPositionBuilder_.setMessage(value); + endpointIdBuilder_.setMessage(value); } - locationCase_ = 2; + return this; } /** - * <code>.context.GPS_Position gps_position = 2;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder setGpsPosition( - context.ContextOuterClass.GPS_Position.Builder builderForValue) { - if (gpsPositionBuilder_ == null) { - location_ = builderForValue.build(); + public Builder setEndpointId( + context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (endpointIdBuilder_ == null) { + endpointId_ = builderForValue.build(); onChanged(); } else { - gpsPositionBuilder_.setMessage(builderForValue.build()); + endpointIdBuilder_.setMessage(builderForValue.build()); } - locationCase_ = 2; + return this; } /** - * <code>.context.GPS_Position gps_position = 2;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder mergeGpsPosition(context.ContextOuterClass.GPS_Position value) { - if (gpsPositionBuilder_ == null) { - if (locationCase_ == 2 && - location_ != context.ContextOuterClass.GPS_Position.getDefaultInstance()) { - location_ = context.ContextOuterClass.GPS_Position.newBuilder((context.ContextOuterClass.GPS_Position) location_) - .mergeFrom(value).buildPartial(); + public Builder mergeEndpointId(context.ContextOuterClass.EndPointId value) { + if (endpointIdBuilder_ == null) { + if (endpointId_ != null) { + endpointId_ = + context.ContextOuterClass.EndPointId.newBuilder(endpointId_).mergeFrom(value).buildPartial(); } else { - location_ = value; + endpointId_ = value; } onChanged(); } else { - if (locationCase_ == 2) { - gpsPositionBuilder_.mergeFrom(value); - } - gpsPositionBuilder_.setMessage(value); + endpointIdBuilder_.mergeFrom(value); } - locationCase_ = 2; + return this; } /** - * <code>.context.GPS_Position gps_position = 2;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder clearGpsPosition() { - if (gpsPositionBuilder_ == null) { - if (locationCase_ == 2) { - locationCase_ = 0; - location_ = null; - onChanged(); - } + public Builder clearEndpointId() { + if (endpointIdBuilder_ == null) { + endpointId_ = null; + onChanged(); } else { - if (locationCase_ == 2) { - locationCase_ = 0; - location_ = null; - } - gpsPositionBuilder_.clear(); + endpointId_ = null; + endpointIdBuilder_ = null; } + return this; } /** - * <code>.context.GPS_Position gps_position = 2;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public context.ContextOuterClass.GPS_Position.Builder getGpsPositionBuilder() { - return getGpsPositionFieldBuilder().getBuilder(); + public context.ContextOuterClass.EndPointId.Builder getEndpointIdBuilder() { + + onChanged(); + return getEndpointIdFieldBuilder().getBuilder(); } /** - * <code>.context.GPS_Position gps_position = 2;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - @java.lang.Override - public context.ContextOuterClass.GPS_PositionOrBuilder getGpsPositionOrBuilder() { - if ((locationCase_ == 2) && (gpsPositionBuilder_ != null)) { - return gpsPositionBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { + if (endpointIdBuilder_ != null) { + return endpointIdBuilder_.getMessageOrBuilder(); } else { - if (locationCase_ == 2) { - return (context.ContextOuterClass.GPS_Position) location_; - } - return context.ContextOuterClass.GPS_Position.getDefaultInstance(); + return endpointId_ == null ? + context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; } } /** - * <code>.context.GPS_Position gps_position = 2;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.GPS_Position, context.ContextOuterClass.GPS_Position.Builder, context.ContextOuterClass.GPS_PositionOrBuilder> - getGpsPositionFieldBuilder() { - if (gpsPositionBuilder_ == null) { - if (!(locationCase_ == 2)) { - location_ = context.ContextOuterClass.GPS_Position.getDefaultInstance(); - } - gpsPositionBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.GPS_Position, context.ContextOuterClass.GPS_Position.Builder, context.ContextOuterClass.GPS_PositionOrBuilder>( - (context.ContextOuterClass.GPS_Position) location_, + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> + getEndpointIdFieldBuilder() { + if (endpointIdBuilder_ == null) { + endpointIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( + getEndpointId(), getParentForChildren(), isClean()); - location_ = null; + endpointId_ = null; } - locationCase_ = 2; - onChanged();; - return gpsPositionBuilder_; + return endpointIdBuilder_; + } + + private int priority_ ; + /** + * <code>uint32 priority = 2;</code> + * @return The priority. + */ + @java.lang.Override + public int getPriority() { + return priority_; + } + /** + * <code>uint32 priority = 2;</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 = 2;</code> + * @return This builder for chaining. + */ + public Builder clearPriority() { + + priority_ = 0; + onChanged(); + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -60860,100 +65413,76 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.Location) + // @@protoc_insertion_point(builder_scope:context.Constraint_EndPointPriority) } - // @@protoc_insertion_point(class_scope:context.Location) - private static final context.ContextOuterClass.Location DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Constraint_EndPointPriority) + private static final context.ContextOuterClass.Constraint_EndPointPriority DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Location(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_EndPointPriority(); } - public static context.ContextOuterClass.Location getDefaultInstance() { + public static context.ContextOuterClass.Constraint_EndPointPriority getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<Location> - PARSER = new com.google.protobuf.AbstractParser<Location>() { + private static final com.google.protobuf.Parser<Constraint_EndPointPriority> + PARSER = new com.google.protobuf.AbstractParser<Constraint_EndPointPriority>() { @java.lang.Override - public Location parsePartialFrom( + public Constraint_EndPointPriority parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new Location(input, extensionRegistry); + return new Constraint_EndPointPriority(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<Location> parser() { + public static com.google.protobuf.Parser<Constraint_EndPointPriority> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<Location> getParserForType() { + public com.google.protobuf.Parser<Constraint_EndPointPriority> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.Location getDefaultInstanceForType() { + public context.ContextOuterClass.Constraint_EndPointPriority getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface Constraint_EndPointLocationOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Constraint_EndPointLocation) + public interface Constraint_SLA_LatencyOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Constraint_SLA_Latency) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return Whether the endpointId field is set. - */ - boolean hasEndpointId(); - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return The endpointId. - */ - context.ContextOuterClass.EndPointId getEndpointId(); - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder(); - - /** - * <code>.context.Location location = 2;</code> - * @return Whether the location field is set. - */ - boolean hasLocation(); - /** - * <code>.context.Location location = 2;</code> - * @return The location. - */ - context.ContextOuterClass.Location getLocation(); - /** - * <code>.context.Location location = 2;</code> + * <code>float e2e_latency_ms = 1;</code> + * @return The e2eLatencyMs. */ - context.ContextOuterClass.LocationOrBuilder getLocationOrBuilder(); + float getE2ELatencyMs(); } /** - * Protobuf type {@code context.Constraint_EndPointLocation} + * Protobuf type {@code context.Constraint_SLA_Latency} */ - public static final class Constraint_EndPointLocation extends + public static final class Constraint_SLA_Latency extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Constraint_EndPointLocation) - Constraint_EndPointLocationOrBuilder { + // @@protoc_insertion_point(message_implements:context.Constraint_SLA_Latency) + Constraint_SLA_LatencyOrBuilder { private static final long serialVersionUID = 0L; - // Use Constraint_EndPointLocation.newBuilder() to construct. - private Constraint_EndPointLocation(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Constraint_SLA_Latency.newBuilder() to construct. + private Constraint_SLA_Latency(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private Constraint_EndPointLocation() { + private Constraint_SLA_Latency() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new Constraint_EndPointLocation(); + return new Constraint_SLA_Latency(); } @java.lang.Override @@ -60961,7 +65490,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private Constraint_EndPointLocation( + private Constraint_SLA_Latency( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -60977,32 +65506,11 @@ public final class ContextOuterClass { int tag = input.readTag(); switch (tag) { case 0: - done = true; - break; - case 10: { - context.ContextOuterClass.EndPointId.Builder subBuilder = null; - if (endpointId_ != null) { - subBuilder = endpointId_.toBuilder(); - } - endpointId_ = input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(endpointId_); - endpointId_ = subBuilder.buildPartial(); - } - + done = true; break; - } - case 18: { - context.ContextOuterClass.Location.Builder subBuilder = null; - if (location_ != null) { - subBuilder = location_.toBuilder(); - } - location_ = input.readMessage(context.ContextOuterClass.Location.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(location_); - location_ = subBuilder.buildPartial(); - } + case 13: { + e2ELatencyMs_ = input.readFloat(); break; } default: { @@ -61026,67 +65534,26 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_EndPointLocation_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Latency_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_EndPointLocation_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Latency_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_EndPointLocation.class, context.ContextOuterClass.Constraint_EndPointLocation.Builder.class); - } - - public static final int ENDPOINT_ID_FIELD_NUMBER = 1; - private context.ContextOuterClass.EndPointId endpointId_; - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return Whether the endpointId field is set. - */ - @java.lang.Override - public boolean hasEndpointId() { - return endpointId_ != null; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return The endpointId. - */ - @java.lang.Override - public context.ContextOuterClass.EndPointId getEndpointId() { - return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - @java.lang.Override - public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { - return getEndpointId(); + context.ContextOuterClass.Constraint_SLA_Latency.class, context.ContextOuterClass.Constraint_SLA_Latency.Builder.class); } - public static final int LOCATION_FIELD_NUMBER = 2; - private context.ContextOuterClass.Location location_; - /** - * <code>.context.Location location = 2;</code> - * @return Whether the location field is set. - */ - @java.lang.Override - public boolean hasLocation() { - return location_ != null; - } - /** - * <code>.context.Location location = 2;</code> - * @return The location. - */ - @java.lang.Override - public context.ContextOuterClass.Location getLocation() { - return location_ == null ? context.ContextOuterClass.Location.getDefaultInstance() : location_; - } + public static final int E2E_LATENCY_MS_FIELD_NUMBER = 1; + private float e2ELatencyMs_; /** - * <code>.context.Location location = 2;</code> + * <code>float e2e_latency_ms = 1;</code> + * @return The e2eLatencyMs. */ @java.lang.Override - public context.ContextOuterClass.LocationOrBuilder getLocationOrBuilder() { - return getLocation(); + public float getE2ELatencyMs() { + return e2ELatencyMs_; } private byte memoizedIsInitialized = -1; @@ -61103,11 +65570,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (endpointId_ != null) { - output.writeMessage(1, getEndpointId()); - } - if (location_ != null) { - output.writeMessage(2, getLocation()); + if (e2ELatencyMs_ != 0F) { + output.writeFloat(1, e2ELatencyMs_); } unknownFields.writeTo(output); } @@ -61118,13 +65582,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (endpointId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getEndpointId()); - } - if (location_ != null) { + if (e2ELatencyMs_ != 0F) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, getLocation()); + .computeFloatSize(1, e2ELatencyMs_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -61136,21 +65596,14 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.Constraint_EndPointLocation)) { + if (!(obj instanceof context.ContextOuterClass.Constraint_SLA_Latency)) { return super.equals(obj); } - context.ContextOuterClass.Constraint_EndPointLocation other = (context.ContextOuterClass.Constraint_EndPointLocation) obj; + context.ContextOuterClass.Constraint_SLA_Latency other = (context.ContextOuterClass.Constraint_SLA_Latency) obj; - if (hasEndpointId() != other.hasEndpointId()) return false; - if (hasEndpointId()) { - if (!getEndpointId() - .equals(other.getEndpointId())) return false; - } - if (hasLocation() != other.hasLocation()) return false; - if (hasLocation()) { - if (!getLocation() - .equals(other.getLocation())) return false; - } + if (java.lang.Float.floatToIntBits(getE2ELatencyMs()) + != java.lang.Float.floatToIntBits( + other.getE2ELatencyMs())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -61162,82 +65615,77 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasEndpointId()) { - hash = (37 * hash) + ENDPOINT_ID_FIELD_NUMBER; - hash = (53 * hash) + getEndpointId().hashCode(); - } - if (hasLocation()) { - hash = (37 * hash) + LOCATION_FIELD_NUMBER; - hash = (53 * hash) + getLocation().hashCode(); - } + hash = (37 * hash) + E2E_LATENCY_MS_FIELD_NUMBER; + hash = (53 * hash) + java.lang.Float.floatToIntBits( + getE2ELatencyMs()); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom(byte[] data) + public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Latency 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 context.ContextOuterClass.Constraint_EndPointLocation parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_SLA_Latency parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_EndPointLocation parseDelimitedFrom( + public static context.ContextOuterClass.Constraint_SLA_Latency 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 context.ContextOuterClass.Constraint_EndPointLocation parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -61250,7 +65698,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.Constraint_EndPointLocation prototype) { + public static Builder newBuilder(context.ContextOuterClass.Constraint_SLA_Latency prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -61266,26 +65714,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.Constraint_EndPointLocation} + * Protobuf type {@code context.Constraint_SLA_Latency} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Constraint_EndPointLocation) - context.ContextOuterClass.Constraint_EndPointLocationOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Constraint_SLA_Latency) + context.ContextOuterClass.Constraint_SLA_LatencyOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_EndPointLocation_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Latency_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_EndPointLocation_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Latency_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_EndPointLocation.class, context.ContextOuterClass.Constraint_EndPointLocation.Builder.class); + context.ContextOuterClass.Constraint_SLA_Latency.class, context.ContextOuterClass.Constraint_SLA_Latency.Builder.class); } - // Construct using context.ContextOuterClass.Constraint_EndPointLocation.newBuilder() + // Construct using context.ContextOuterClass.Constraint_SLA_Latency.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -61303,35 +65751,25 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - if (endpointIdBuilder_ == null) { - endpointId_ = null; - } else { - endpointId_ = null; - endpointIdBuilder_ = null; - } - if (locationBuilder_ == null) { - location_ = null; - } else { - location_ = null; - locationBuilder_ = null; - } + e2ELatencyMs_ = 0F; + return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Constraint_EndPointLocation_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Latency_descriptor; } @java.lang.Override - public context.ContextOuterClass.Constraint_EndPointLocation getDefaultInstanceForType() { - return context.ContextOuterClass.Constraint_EndPointLocation.getDefaultInstance(); + public context.ContextOuterClass.Constraint_SLA_Latency getDefaultInstanceForType() { + return context.ContextOuterClass.Constraint_SLA_Latency.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.Constraint_EndPointLocation build() { - context.ContextOuterClass.Constraint_EndPointLocation result = buildPartial(); + public context.ContextOuterClass.Constraint_SLA_Latency build() { + context.ContextOuterClass.Constraint_SLA_Latency result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -61339,18 +65777,9 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.Constraint_EndPointLocation buildPartial() { - context.ContextOuterClass.Constraint_EndPointLocation result = new context.ContextOuterClass.Constraint_EndPointLocation(this); - if (endpointIdBuilder_ == null) { - result.endpointId_ = endpointId_; - } else { - result.endpointId_ = endpointIdBuilder_.build(); - } - if (locationBuilder_ == null) { - result.location_ = location_; - } else { - result.location_ = locationBuilder_.build(); - } + public context.ContextOuterClass.Constraint_SLA_Latency buildPartial() { + context.ContextOuterClass.Constraint_SLA_Latency result = new context.ContextOuterClass.Constraint_SLA_Latency(this); + result.e2ELatencyMs_ = e2ELatencyMs_; onBuilt(); return result; } @@ -61389,21 +65818,18 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.Constraint_EndPointLocation) { - return mergeFrom((context.ContextOuterClass.Constraint_EndPointLocation)other); + if (other instanceof context.ContextOuterClass.Constraint_SLA_Latency) { + return mergeFrom((context.ContextOuterClass.Constraint_SLA_Latency)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.Constraint_EndPointLocation other) { - if (other == context.ContextOuterClass.Constraint_EndPointLocation.getDefaultInstance()) return this; - if (other.hasEndpointId()) { - mergeEndpointId(other.getEndpointId()); - } - if (other.hasLocation()) { - mergeLocation(other.getLocation()); + public Builder mergeFrom(context.ContextOuterClass.Constraint_SLA_Latency other) { + if (other == context.ContextOuterClass.Constraint_SLA_Latency.getDefaultInstance()) return this; + if (other.getE2ELatencyMs() != 0F) { + setE2ELatencyMs(other.getE2ELatencyMs()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -61420,11 +65846,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.Constraint_EndPointLocation parsedMessage = null; + context.ContextOuterClass.Constraint_SLA_Latency parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Constraint_EndPointLocation) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.Constraint_SLA_Latency) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -61434,242 +65860,35 @@ public final class ContextOuterClass { return this; } - private context.ContextOuterClass.EndPointId endpointId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> endpointIdBuilder_; - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return Whether the endpointId field is set. - */ - public boolean hasEndpointId() { - return endpointIdBuilder_ != null || endpointId_ != null; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return The endpointId. - */ - public context.ContextOuterClass.EndPointId getEndpointId() { - if (endpointIdBuilder_ == null) { - return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; - } else { - return endpointIdBuilder_.getMessage(); - } - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public Builder setEndpointId(context.ContextOuterClass.EndPointId value) { - if (endpointIdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - endpointId_ = value; - onChanged(); - } else { - endpointIdBuilder_.setMessage(value); - } - - return this; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public Builder setEndpointId( - context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (endpointIdBuilder_ == null) { - endpointId_ = builderForValue.build(); - onChanged(); - } else { - endpointIdBuilder_.setMessage(builderForValue.build()); - } - - return this; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public Builder mergeEndpointId(context.ContextOuterClass.EndPointId value) { - if (endpointIdBuilder_ == null) { - if (endpointId_ != null) { - endpointId_ = - context.ContextOuterClass.EndPointId.newBuilder(endpointId_).mergeFrom(value).buildPartial(); - } else { - endpointId_ = value; - } - onChanged(); - } else { - endpointIdBuilder_.mergeFrom(value); - } - - return this; - } + private float e2ELatencyMs_ ; /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>float e2e_latency_ms = 1;</code> + * @return The e2eLatencyMs. */ - public Builder clearEndpointId() { - if (endpointIdBuilder_ == null) { - endpointId_ = null; - onChanged(); - } else { - endpointId_ = null; - endpointIdBuilder_ = null; - } - - return this; + @java.lang.Override + public float getE2ELatencyMs() { + return e2ELatencyMs_; } /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>float e2e_latency_ms = 1;</code> + * @param value The e2eLatencyMs to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.EndPointId.Builder getEndpointIdBuilder() { + public Builder setE2ELatencyMs(float value) { + e2ELatencyMs_ = value; onChanged(); - return getEndpointIdFieldBuilder().getBuilder(); - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { - if (endpointIdBuilder_ != null) { - return endpointIdBuilder_.getMessageOrBuilder(); - } else { - return endpointId_ == null ? - context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; - } - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> - getEndpointIdFieldBuilder() { - if (endpointIdBuilder_ == null) { - endpointIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( - getEndpointId(), - getParentForChildren(), - isClean()); - endpointId_ = null; - } - return endpointIdBuilder_; - } - - private context.ContextOuterClass.Location location_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Location, context.ContextOuterClass.Location.Builder, context.ContextOuterClass.LocationOrBuilder> locationBuilder_; - /** - * <code>.context.Location location = 2;</code> - * @return Whether the location field is set. - */ - public boolean hasLocation() { - return locationBuilder_ != null || location_ != null; - } - /** - * <code>.context.Location location = 2;</code> - * @return The location. - */ - public context.ContextOuterClass.Location getLocation() { - if (locationBuilder_ == null) { - return location_ == null ? context.ContextOuterClass.Location.getDefaultInstance() : location_; - } else { - return locationBuilder_.getMessage(); - } - } - /** - * <code>.context.Location location = 2;</code> - */ - public Builder setLocation(context.ContextOuterClass.Location value) { - if (locationBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - location_ = value; - onChanged(); - } else { - locationBuilder_.setMessage(value); - } - - return this; - } - /** - * <code>.context.Location location = 2;</code> - */ - public Builder setLocation( - context.ContextOuterClass.Location.Builder builderForValue) { - if (locationBuilder_ == null) { - location_ = builderForValue.build(); - onChanged(); - } else { - locationBuilder_.setMessage(builderForValue.build()); - } - - return this; - } - /** - * <code>.context.Location location = 2;</code> - */ - public Builder mergeLocation(context.ContextOuterClass.Location value) { - if (locationBuilder_ == null) { - if (location_ != null) { - location_ = - context.ContextOuterClass.Location.newBuilder(location_).mergeFrom(value).buildPartial(); - } else { - location_ = value; - } - onChanged(); - } else { - locationBuilder_.mergeFrom(value); - } - - return this; - } - /** - * <code>.context.Location location = 2;</code> - */ - public Builder clearLocation() { - if (locationBuilder_ == null) { - location_ = null; - onChanged(); - } else { - location_ = null; - locationBuilder_ = null; - } - return this; } /** - * <code>.context.Location location = 2;</code> + * <code>float e2e_latency_ms = 1;</code> + * @return This builder for chaining. */ - public context.ContextOuterClass.Location.Builder getLocationBuilder() { + public Builder clearE2ELatencyMs() { + e2ELatencyMs_ = 0F; onChanged(); - return getLocationFieldBuilder().getBuilder(); - } - /** - * <code>.context.Location location = 2;</code> - */ - public context.ContextOuterClass.LocationOrBuilder getLocationOrBuilder() { - if (locationBuilder_ != null) { - return locationBuilder_.getMessageOrBuilder(); - } else { - return location_ == null ? - context.ContextOuterClass.Location.getDefaultInstance() : location_; - } - } - /** - * <code>.context.Location location = 2;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Location, context.ContextOuterClass.Location.Builder, context.ContextOuterClass.LocationOrBuilder> - getLocationFieldBuilder() { - if (locationBuilder_ == null) { - locationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Location, context.ContextOuterClass.Location.Builder, context.ContextOuterClass.LocationOrBuilder>( - getLocation(), - getParentForChildren(), - isClean()); - location_ = null; - } - return locationBuilder_; + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -61684,91 +65903,76 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.Constraint_EndPointLocation) + // @@protoc_insertion_point(builder_scope:context.Constraint_SLA_Latency) } - // @@protoc_insertion_point(class_scope:context.Constraint_EndPointLocation) - private static final context.ContextOuterClass.Constraint_EndPointLocation DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Constraint_SLA_Latency) + private static final context.ContextOuterClass.Constraint_SLA_Latency DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_EndPointLocation(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_SLA_Latency(); } - public static context.ContextOuterClass.Constraint_EndPointLocation getDefaultInstance() { + public static context.ContextOuterClass.Constraint_SLA_Latency getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<Constraint_EndPointLocation> - PARSER = new com.google.protobuf.AbstractParser<Constraint_EndPointLocation>() { + private static final com.google.protobuf.Parser<Constraint_SLA_Latency> + PARSER = new com.google.protobuf.AbstractParser<Constraint_SLA_Latency>() { @java.lang.Override - public Constraint_EndPointLocation parsePartialFrom( + public Constraint_SLA_Latency parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new Constraint_EndPointLocation(input, extensionRegistry); + return new Constraint_SLA_Latency(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<Constraint_EndPointLocation> parser() { + public static com.google.protobuf.Parser<Constraint_SLA_Latency> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<Constraint_EndPointLocation> getParserForType() { + public com.google.protobuf.Parser<Constraint_SLA_Latency> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.Constraint_EndPointLocation getDefaultInstanceForType() { + public context.ContextOuterClass.Constraint_SLA_Latency getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface Constraint_EndPointPriorityOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Constraint_EndPointPriority) + public interface Constraint_SLA_CapacityOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Constraint_SLA_Capacity) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return Whether the endpointId field is set. - */ - boolean hasEndpointId(); - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return The endpointId. - */ - context.ContextOuterClass.EndPointId getEndpointId(); - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder(); - - /** - * <code>uint32 priority = 2;</code> - * @return The priority. + * <code>float capacity_gbps = 1;</code> + * @return The capacityGbps. */ - int getPriority(); + float getCapacityGbps(); } /** - * Protobuf type {@code context.Constraint_EndPointPriority} + * Protobuf type {@code context.Constraint_SLA_Capacity} */ - public static final class Constraint_EndPointPriority extends + public static final class Constraint_SLA_Capacity extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Constraint_EndPointPriority) - Constraint_EndPointPriorityOrBuilder { + // @@protoc_insertion_point(message_implements:context.Constraint_SLA_Capacity) + Constraint_SLA_CapacityOrBuilder { private static final long serialVersionUID = 0L; - // Use Constraint_EndPointPriority.newBuilder() to construct. - private Constraint_EndPointPriority(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Constraint_SLA_Capacity.newBuilder() to construct. + private Constraint_SLA_Capacity(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private Constraint_EndPointPriority() { + private Constraint_SLA_Capacity() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new Constraint_EndPointPriority(); + return new Constraint_SLA_Capacity(); } @java.lang.Override @@ -61776,7 +65980,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private Constraint_EndPointPriority( + private Constraint_SLA_Capacity( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -61794,22 +65998,9 @@ public final class ContextOuterClass { case 0: done = true; break; - case 10: { - context.ContextOuterClass.EndPointId.Builder subBuilder = null; - if (endpointId_ != null) { - subBuilder = endpointId_.toBuilder(); - } - endpointId_ = input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(endpointId_); - endpointId_ = subBuilder.buildPartial(); - } - - break; - } - case 16: { + case 13: { - priority_ = input.readUInt32(); + capacityGbps_ = input.readFloat(); break; } default: { @@ -61833,52 +66024,26 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_EndPointPriority_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Capacity_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_EndPointPriority_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Capacity_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_EndPointPriority.class, context.ContextOuterClass.Constraint_EndPointPriority.Builder.class); - } - - public static final int ENDPOINT_ID_FIELD_NUMBER = 1; - private context.ContextOuterClass.EndPointId endpointId_; - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return Whether the endpointId field is set. - */ - @java.lang.Override - public boolean hasEndpointId() { - return endpointId_ != null; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return The endpointId. - */ - @java.lang.Override - public context.ContextOuterClass.EndPointId getEndpointId() { - return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - @java.lang.Override - public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { - return getEndpointId(); + context.ContextOuterClass.Constraint_SLA_Capacity.class, context.ContextOuterClass.Constraint_SLA_Capacity.Builder.class); } - public static final int PRIORITY_FIELD_NUMBER = 2; - private int priority_; + public static final int CAPACITY_GBPS_FIELD_NUMBER = 1; + private float capacityGbps_; /** - * <code>uint32 priority = 2;</code> - * @return The priority. + * <code>float capacity_gbps = 1;</code> + * @return The capacityGbps. */ @java.lang.Override - public int getPriority() { - return priority_; + public float getCapacityGbps() { + return capacityGbps_; } private byte memoizedIsInitialized = -1; @@ -61895,11 +66060,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (endpointId_ != null) { - output.writeMessage(1, getEndpointId()); - } - if (priority_ != 0) { - output.writeUInt32(2, priority_); + if (capacityGbps_ != 0F) { + output.writeFloat(1, capacityGbps_); } unknownFields.writeTo(output); } @@ -61910,13 +66072,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (endpointId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getEndpointId()); - } - if (priority_ != 0) { + if (capacityGbps_ != 0F) { size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(2, priority_); + .computeFloatSize(1, capacityGbps_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -61928,18 +66086,14 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.Constraint_EndPointPriority)) { + if (!(obj instanceof context.ContextOuterClass.Constraint_SLA_Capacity)) { return super.equals(obj); } - context.ContextOuterClass.Constraint_EndPointPriority other = (context.ContextOuterClass.Constraint_EndPointPriority) obj; + context.ContextOuterClass.Constraint_SLA_Capacity other = (context.ContextOuterClass.Constraint_SLA_Capacity) obj; - if (hasEndpointId() != other.hasEndpointId()) return false; - if (hasEndpointId()) { - if (!getEndpointId() - .equals(other.getEndpointId())) return false; - } - if (getPriority() - != other.getPriority()) return false; + if (java.lang.Float.floatToIntBits(getCapacityGbps()) + != java.lang.Float.floatToIntBits( + other.getCapacityGbps())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -61951,80 +66105,77 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasEndpointId()) { - hash = (37 * hash) + ENDPOINT_ID_FIELD_NUMBER; - hash = (53 * hash) + getEndpointId().hashCode(); - } - hash = (37 * hash) + PRIORITY_FIELD_NUMBER; - hash = (53 * hash) + getPriority(); + hash = (37 * hash) + CAPACITY_GBPS_FIELD_NUMBER; + hash = (53 * hash) + java.lang.Float.floatToIntBits( + getCapacityGbps()); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom(byte[] data) + public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Capacity 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 context.ContextOuterClass.Constraint_EndPointPriority parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_SLA_Capacity parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_EndPointPriority parseDelimitedFrom( + public static context.ContextOuterClass.Constraint_SLA_Capacity 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 context.ContextOuterClass.Constraint_EndPointPriority parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -62037,7 +66188,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.Constraint_EndPointPriority prototype) { + public static Builder newBuilder(context.ContextOuterClass.Constraint_SLA_Capacity prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -62053,26 +66204,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.Constraint_EndPointPriority} + * Protobuf type {@code context.Constraint_SLA_Capacity} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Constraint_EndPointPriority) - context.ContextOuterClass.Constraint_EndPointPriorityOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Constraint_SLA_Capacity) + context.ContextOuterClass.Constraint_SLA_CapacityOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_EndPointPriority_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Capacity_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_EndPointPriority_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Capacity_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_EndPointPriority.class, context.ContextOuterClass.Constraint_EndPointPriority.Builder.class); + context.ContextOuterClass.Constraint_SLA_Capacity.class, context.ContextOuterClass.Constraint_SLA_Capacity.Builder.class); } - // Construct using context.ContextOuterClass.Constraint_EndPointPriority.newBuilder() + // Construct using context.ContextOuterClass.Constraint_SLA_Capacity.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -62090,13 +66241,7 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - if (endpointIdBuilder_ == null) { - endpointId_ = null; - } else { - endpointId_ = null; - endpointIdBuilder_ = null; - } - priority_ = 0; + capacityGbps_ = 0F; return this; } @@ -62104,17 +66249,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Constraint_EndPointPriority_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Capacity_descriptor; } @java.lang.Override - public context.ContextOuterClass.Constraint_EndPointPriority getDefaultInstanceForType() { - return context.ContextOuterClass.Constraint_EndPointPriority.getDefaultInstance(); + public context.ContextOuterClass.Constraint_SLA_Capacity getDefaultInstanceForType() { + return context.ContextOuterClass.Constraint_SLA_Capacity.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.Constraint_EndPointPriority build() { - context.ContextOuterClass.Constraint_EndPointPriority result = buildPartial(); + public context.ContextOuterClass.Constraint_SLA_Capacity build() { + context.ContextOuterClass.Constraint_SLA_Capacity result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -62122,14 +66267,9 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.Constraint_EndPointPriority buildPartial() { - context.ContextOuterClass.Constraint_EndPointPriority result = new context.ContextOuterClass.Constraint_EndPointPriority(this); - if (endpointIdBuilder_ == null) { - result.endpointId_ = endpointId_; - } else { - result.endpointId_ = endpointIdBuilder_.build(); - } - result.priority_ = priority_; + public context.ContextOuterClass.Constraint_SLA_Capacity buildPartial() { + context.ContextOuterClass.Constraint_SLA_Capacity result = new context.ContextOuterClass.Constraint_SLA_Capacity(this); + result.capacityGbps_ = capacityGbps_; onBuilt(); return result; } @@ -62168,21 +66308,18 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.Constraint_EndPointPriority) { - return mergeFrom((context.ContextOuterClass.Constraint_EndPointPriority)other); + if (other instanceof context.ContextOuterClass.Constraint_SLA_Capacity) { + return mergeFrom((context.ContextOuterClass.Constraint_SLA_Capacity)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.Constraint_EndPointPriority other) { - if (other == context.ContextOuterClass.Constraint_EndPointPriority.getDefaultInstance()) return this; - if (other.hasEndpointId()) { - mergeEndpointId(other.getEndpointId()); - } - if (other.getPriority() != 0) { - setPriority(other.getPriority()); + public Builder mergeFrom(context.ContextOuterClass.Constraint_SLA_Capacity other) { + if (other == context.ContextOuterClass.Constraint_SLA_Capacity.getDefaultInstance()) return this; + if (other.getCapacityGbps() != 0F) { + setCapacityGbps(other.getCapacityGbps()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -62199,11 +66336,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.Constraint_EndPointPriority parsedMessage = null; + context.ContextOuterClass.Constraint_SLA_Capacity parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Constraint_EndPointPriority) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.Constraint_SLA_Capacity) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -62213,152 +66350,33 @@ public final class ContextOuterClass { return this; } - private context.ContextOuterClass.EndPointId endpointId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> endpointIdBuilder_; - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return Whether the endpointId field is set. - */ - public boolean hasEndpointId() { - return endpointIdBuilder_ != null || endpointId_ != null; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return The endpointId. - */ - public context.ContextOuterClass.EndPointId getEndpointId() { - if (endpointIdBuilder_ == null) { - return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; - } else { - return endpointIdBuilder_.getMessage(); - } - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public Builder setEndpointId(context.ContextOuterClass.EndPointId value) { - if (endpointIdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - endpointId_ = value; - onChanged(); - } else { - endpointIdBuilder_.setMessage(value); - } - - return this; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public Builder setEndpointId( - context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (endpointIdBuilder_ == null) { - endpointId_ = builderForValue.build(); - onChanged(); - } else { - endpointIdBuilder_.setMessage(builderForValue.build()); - } - - return this; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public Builder mergeEndpointId(context.ContextOuterClass.EndPointId value) { - if (endpointIdBuilder_ == null) { - if (endpointId_ != null) { - endpointId_ = - context.ContextOuterClass.EndPointId.newBuilder(endpointId_).mergeFrom(value).buildPartial(); - } else { - endpointId_ = value; - } - onChanged(); - } else { - endpointIdBuilder_.mergeFrom(value); - } - - return this; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public Builder clearEndpointId() { - if (endpointIdBuilder_ == null) { - endpointId_ = null; - onChanged(); - } else { - endpointId_ = null; - endpointIdBuilder_ = null; - } - - return this; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public context.ContextOuterClass.EndPointId.Builder getEndpointIdBuilder() { - - onChanged(); - return getEndpointIdFieldBuilder().getBuilder(); - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { - if (endpointIdBuilder_ != null) { - return endpointIdBuilder_.getMessageOrBuilder(); - } else { - return endpointId_ == null ? - context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; - } - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> - getEndpointIdFieldBuilder() { - if (endpointIdBuilder_ == null) { - endpointIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( - getEndpointId(), - getParentForChildren(), - isClean()); - endpointId_ = null; - } - return endpointIdBuilder_; - } - - private int priority_ ; + private float capacityGbps_ ; /** - * <code>uint32 priority = 2;</code> - * @return The priority. + * <code>float capacity_gbps = 1;</code> + * @return The capacityGbps. */ @java.lang.Override - public int getPriority() { - return priority_; + public float getCapacityGbps() { + return capacityGbps_; } /** - * <code>uint32 priority = 2;</code> - * @param value The priority to set. + * <code>float capacity_gbps = 1;</code> + * @param value The capacityGbps to set. * @return This builder for chaining. */ - public Builder setPriority(int value) { + public Builder setCapacityGbps(float value) { - priority_ = value; + capacityGbps_ = value; onChanged(); return this; } /** - * <code>uint32 priority = 2;</code> + * <code>float capacity_gbps = 1;</code> * @return This builder for chaining. */ - public Builder clearPriority() { + public Builder clearCapacityGbps() { - priority_ = 0; + capacityGbps_ = 0F; onChanged(); return this; } @@ -62375,76 +66393,92 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.Constraint_EndPointPriority) + // @@protoc_insertion_point(builder_scope:context.Constraint_SLA_Capacity) } - // @@protoc_insertion_point(class_scope:context.Constraint_EndPointPriority) - private static final context.ContextOuterClass.Constraint_EndPointPriority DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Constraint_SLA_Capacity) + private static final context.ContextOuterClass.Constraint_SLA_Capacity DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_EndPointPriority(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_SLA_Capacity(); } - public static context.ContextOuterClass.Constraint_EndPointPriority getDefaultInstance() { + public static context.ContextOuterClass.Constraint_SLA_Capacity getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<Constraint_EndPointPriority> - PARSER = new com.google.protobuf.AbstractParser<Constraint_EndPointPriority>() { + private static final com.google.protobuf.Parser<Constraint_SLA_Capacity> + PARSER = new com.google.protobuf.AbstractParser<Constraint_SLA_Capacity>() { @java.lang.Override - public Constraint_EndPointPriority parsePartialFrom( + public Constraint_SLA_Capacity parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new Constraint_EndPointPriority(input, extensionRegistry); + return new Constraint_SLA_Capacity(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<Constraint_EndPointPriority> parser() { + public static com.google.protobuf.Parser<Constraint_SLA_Capacity> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<Constraint_EndPointPriority> getParserForType() { + public com.google.protobuf.Parser<Constraint_SLA_Capacity> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.Constraint_EndPointPriority getDefaultInstanceForType() { + public context.ContextOuterClass.Constraint_SLA_Capacity getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface Constraint_SLA_LatencyOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Constraint_SLA_Latency) + public interface Constraint_SLA_AvailabilityOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Constraint_SLA_Availability) com.google.protobuf.MessageOrBuilder { /** - * <code>float e2e_latency_ms = 1;</code> - * @return The e2eLatencyMs. + * <code>uint32 num_disjoint_paths = 1;</code> + * @return The numDisjointPaths. */ - float getE2ELatencyMs(); + int getNumDisjointPaths(); + + /** + * <code>bool all_active = 2;</code> + * @return The allActive. + */ + boolean getAllActive(); + + /** + * <pre> + * 0.0 .. 100.0 percentage of availability + * </pre> + * + * <code>float availability = 3;</code> + * @return The availability. + */ + float getAvailability(); } /** - * Protobuf type {@code context.Constraint_SLA_Latency} + * Protobuf type {@code context.Constraint_SLA_Availability} */ - public static final class Constraint_SLA_Latency extends + public static final class Constraint_SLA_Availability extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Constraint_SLA_Latency) - Constraint_SLA_LatencyOrBuilder { + // @@protoc_insertion_point(message_implements:context.Constraint_SLA_Availability) + Constraint_SLA_AvailabilityOrBuilder { private static final long serialVersionUID = 0L; - // Use Constraint_SLA_Latency.newBuilder() to construct. - private Constraint_SLA_Latency(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Constraint_SLA_Availability.newBuilder() to construct. + private Constraint_SLA_Availability(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private Constraint_SLA_Latency() { + private Constraint_SLA_Availability() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new Constraint_SLA_Latency(); + return new Constraint_SLA_Availability(); } @java.lang.Override @@ -62452,7 +66486,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private Constraint_SLA_Latency( + private Constraint_SLA_Availability( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -62470,9 +66504,19 @@ public final class ContextOuterClass { case 0: done = true; break; - case 13: { + case 8: { - e2ELatencyMs_ = input.readFloat(); + numDisjointPaths_ = input.readUInt32(); + break; + } + case 16: { + + allActive_ = input.readBool(); + break; + } + case 29: { + + availability_ = input.readFloat(); break; } default: { @@ -62496,26 +66540,52 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Latency_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Availability_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Latency_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Availability_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_SLA_Latency.class, context.ContextOuterClass.Constraint_SLA_Latency.Builder.class); + context.ContextOuterClass.Constraint_SLA_Availability.class, context.ContextOuterClass.Constraint_SLA_Availability.Builder.class); } - public static final int E2E_LATENCY_MS_FIELD_NUMBER = 1; - private float e2ELatencyMs_; + public static final int NUM_DISJOINT_PATHS_FIELD_NUMBER = 1; + private int numDisjointPaths_; /** - * <code>float e2e_latency_ms = 1;</code> - * @return The e2eLatencyMs. + * <code>uint32 num_disjoint_paths = 1;</code> + * @return The numDisjointPaths. */ @java.lang.Override - public float getE2ELatencyMs() { - return e2ELatencyMs_; + public int getNumDisjointPaths() { + return numDisjointPaths_; + } + + public static final int ALL_ACTIVE_FIELD_NUMBER = 2; + private boolean allActive_; + /** + * <code>bool all_active = 2;</code> + * @return The allActive. + */ + @java.lang.Override + public boolean getAllActive() { + return allActive_; + } + + public static final int AVAILABILITY_FIELD_NUMBER = 3; + private float availability_; + /** + * <pre> + * 0.0 .. 100.0 percentage of availability + * </pre> + * + * <code>float availability = 3;</code> + * @return The availability. + */ + @java.lang.Override + public float getAvailability() { + return availability_; } private byte memoizedIsInitialized = -1; @@ -62532,8 +66602,14 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (e2ELatencyMs_ != 0F) { - output.writeFloat(1, e2ELatencyMs_); + if (numDisjointPaths_ != 0) { + output.writeUInt32(1, numDisjointPaths_); + } + if (allActive_ != false) { + output.writeBool(2, allActive_); + } + if (availability_ != 0F) { + output.writeFloat(3, availability_); } unknownFields.writeTo(output); } @@ -62544,9 +66620,17 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (e2ELatencyMs_ != 0F) { + if (numDisjointPaths_ != 0) { size += com.google.protobuf.CodedOutputStream - .computeFloatSize(1, e2ELatencyMs_); + .computeUInt32Size(1, numDisjointPaths_); + } + if (allActive_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(2, allActive_); + } + if (availability_ != 0F) { + size += com.google.protobuf.CodedOutputStream + .computeFloatSize(3, availability_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -62558,14 +66642,18 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.Constraint_SLA_Latency)) { + if (!(obj instanceof context.ContextOuterClass.Constraint_SLA_Availability)) { return super.equals(obj); } - context.ContextOuterClass.Constraint_SLA_Latency other = (context.ContextOuterClass.Constraint_SLA_Latency) obj; + context.ContextOuterClass.Constraint_SLA_Availability other = (context.ContextOuterClass.Constraint_SLA_Availability) obj; - if (java.lang.Float.floatToIntBits(getE2ELatencyMs()) + if (getNumDisjointPaths() + != other.getNumDisjointPaths()) return false; + if (getAllActive() + != other.getAllActive()) return false; + if (java.lang.Float.floatToIntBits(getAvailability()) != java.lang.Float.floatToIntBits( - other.getE2ELatencyMs())) return false; + other.getAvailability())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -62577,77 +66665,82 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + E2E_LATENCY_MS_FIELD_NUMBER; + hash = (37 * hash) + NUM_DISJOINT_PATHS_FIELD_NUMBER; + hash = (53 * hash) + getNumDisjointPaths(); + hash = (37 * hash) + ALL_ACTIVE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getAllActive()); + hash = (37 * hash) + AVAILABILITY_FIELD_NUMBER; hash = (53 * hash) + java.lang.Float.floatToIntBits( - getE2ELatencyMs()); + getAvailability()); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom(byte[] data) + public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Availability 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 context.ContextOuterClass.Constraint_SLA_Latency parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_SLA_Availability parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_SLA_Latency parseDelimitedFrom( + public static context.ContextOuterClass.Constraint_SLA_Availability 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 context.ContextOuterClass.Constraint_SLA_Latency parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -62660,7 +66753,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.Constraint_SLA_Latency prototype) { + public static Builder newBuilder(context.ContextOuterClass.Constraint_SLA_Availability prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -62676,26 +66769,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.Constraint_SLA_Latency} + * Protobuf type {@code context.Constraint_SLA_Availability} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Constraint_SLA_Latency) - context.ContextOuterClass.Constraint_SLA_LatencyOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Constraint_SLA_Availability) + context.ContextOuterClass.Constraint_SLA_AvailabilityOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Latency_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Availability_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Latency_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Availability_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_SLA_Latency.class, context.ContextOuterClass.Constraint_SLA_Latency.Builder.class); + context.ContextOuterClass.Constraint_SLA_Availability.class, context.ContextOuterClass.Constraint_SLA_Availability.Builder.class); } - // Construct using context.ContextOuterClass.Constraint_SLA_Latency.newBuilder() + // Construct using context.ContextOuterClass.Constraint_SLA_Availability.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -62713,7 +66806,11 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - e2ELatencyMs_ = 0F; + numDisjointPaths_ = 0; + + allActive_ = false; + + availability_ = 0F; return this; } @@ -62721,17 +66818,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Latency_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Availability_descriptor; } @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Latency getDefaultInstanceForType() { - return context.ContextOuterClass.Constraint_SLA_Latency.getDefaultInstance(); + public context.ContextOuterClass.Constraint_SLA_Availability getDefaultInstanceForType() { + return context.ContextOuterClass.Constraint_SLA_Availability.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Latency build() { - context.ContextOuterClass.Constraint_SLA_Latency result = buildPartial(); + public context.ContextOuterClass.Constraint_SLA_Availability build() { + context.ContextOuterClass.Constraint_SLA_Availability result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -62739,9 +66836,11 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Latency buildPartial() { - context.ContextOuterClass.Constraint_SLA_Latency result = new context.ContextOuterClass.Constraint_SLA_Latency(this); - result.e2ELatencyMs_ = e2ELatencyMs_; + public context.ContextOuterClass.Constraint_SLA_Availability buildPartial() { + context.ContextOuterClass.Constraint_SLA_Availability result = new context.ContextOuterClass.Constraint_SLA_Availability(this); + result.numDisjointPaths_ = numDisjointPaths_; + result.allActive_ = allActive_; + result.availability_ = availability_; onBuilt(); return result; } @@ -62780,18 +66879,24 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.Constraint_SLA_Latency) { - return mergeFrom((context.ContextOuterClass.Constraint_SLA_Latency)other); + if (other instanceof context.ContextOuterClass.Constraint_SLA_Availability) { + return mergeFrom((context.ContextOuterClass.Constraint_SLA_Availability)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.Constraint_SLA_Latency other) { - if (other == context.ContextOuterClass.Constraint_SLA_Latency.getDefaultInstance()) return this; - if (other.getE2ELatencyMs() != 0F) { - setE2ELatencyMs(other.getE2ELatencyMs()); + public Builder mergeFrom(context.ContextOuterClass.Constraint_SLA_Availability other) { + if (other == context.ContextOuterClass.Constraint_SLA_Availability.getDefaultInstance()) return this; + if (other.getNumDisjointPaths() != 0) { + setNumDisjointPaths(other.getNumDisjointPaths()); + } + if (other.getAllActive() != false) { + setAllActive(other.getAllActive()); + } + if (other.getAvailability() != 0F) { + setAvailability(other.getAvailability()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -62808,11 +66913,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.Constraint_SLA_Latency parsedMessage = null; + context.ContextOuterClass.Constraint_SLA_Availability parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Constraint_SLA_Latency) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.Constraint_SLA_Availability) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -62822,33 +66927,107 @@ public final class ContextOuterClass { return this; } - private float e2ELatencyMs_ ; + private int numDisjointPaths_ ; /** - * <code>float e2e_latency_ms = 1;</code> - * @return The e2eLatencyMs. + * <code>uint32 num_disjoint_paths = 1;</code> + * @return The numDisjointPaths. */ @java.lang.Override - public float getE2ELatencyMs() { - return e2ELatencyMs_; + public int getNumDisjointPaths() { + return numDisjointPaths_; } /** - * <code>float e2e_latency_ms = 1;</code> - * @param value The e2eLatencyMs to set. + * <code>uint32 num_disjoint_paths = 1;</code> + * @param value The numDisjointPaths to set. * @return This builder for chaining. */ - public Builder setE2ELatencyMs(float value) { + public Builder setNumDisjointPaths(int value) { - e2ELatencyMs_ = value; + numDisjointPaths_ = value; onChanged(); return this; } /** - * <code>float e2e_latency_ms = 1;</code> + * <code>uint32 num_disjoint_paths = 1;</code> * @return This builder for chaining. */ - public Builder clearE2ELatencyMs() { + public Builder clearNumDisjointPaths() { - e2ELatencyMs_ = 0F; + numDisjointPaths_ = 0; + onChanged(); + return this; + } + + private boolean allActive_ ; + /** + * <code>bool all_active = 2;</code> + * @return The allActive. + */ + @java.lang.Override + public boolean getAllActive() { + return allActive_; + } + /** + * <code>bool all_active = 2;</code> + * @param value The allActive to set. + * @return This builder for chaining. + */ + public Builder setAllActive(boolean value) { + + allActive_ = value; + onChanged(); + return this; + } + /** + * <code>bool all_active = 2;</code> + * @return This builder for chaining. + */ + public Builder clearAllActive() { + + allActive_ = false; + onChanged(); + return this; + } + + private float availability_ ; + /** + * <pre> + * 0.0 .. 100.0 percentage of availability + * </pre> + * + * <code>float availability = 3;</code> + * @return The availability. + */ + @java.lang.Override + public float getAvailability() { + return availability_; + } + /** + * <pre> + * 0.0 .. 100.0 percentage of availability + * </pre> + * + * <code>float availability = 3;</code> + * @param value The availability to set. + * @return This builder for chaining. + */ + public Builder setAvailability(float value) { + + availability_ = value; + onChanged(); + return this; + } + /** + * <pre> + * 0.0 .. 100.0 percentage of availability + * </pre> + * + * <code>float availability = 3;</code> + * @return This builder for chaining. + */ + public Builder clearAvailability() { + + availability_ = 0F; onChanged(); return this; } @@ -62865,76 +67044,100 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.Constraint_SLA_Latency) + // @@protoc_insertion_point(builder_scope:context.Constraint_SLA_Availability) } - // @@protoc_insertion_point(class_scope:context.Constraint_SLA_Latency) - private static final context.ContextOuterClass.Constraint_SLA_Latency DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Constraint_SLA_Availability) + private static final context.ContextOuterClass.Constraint_SLA_Availability DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_SLA_Latency(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_SLA_Availability(); } - public static context.ContextOuterClass.Constraint_SLA_Latency getDefaultInstance() { + public static context.ContextOuterClass.Constraint_SLA_Availability getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<Constraint_SLA_Latency> - PARSER = new com.google.protobuf.AbstractParser<Constraint_SLA_Latency>() { + private static final com.google.protobuf.Parser<Constraint_SLA_Availability> + PARSER = new com.google.protobuf.AbstractParser<Constraint_SLA_Availability>() { @java.lang.Override - public Constraint_SLA_Latency parsePartialFrom( + public Constraint_SLA_Availability parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new Constraint_SLA_Latency(input, extensionRegistry); + return new Constraint_SLA_Availability(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<Constraint_SLA_Latency> parser() { + public static com.google.protobuf.Parser<Constraint_SLA_Availability> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<Constraint_SLA_Latency> getParserForType() { + public com.google.protobuf.Parser<Constraint_SLA_Availability> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Latency getDefaultInstanceForType() { + public context.ContextOuterClass.Constraint_SLA_Availability getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface Constraint_SLA_CapacityOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Constraint_SLA_Capacity) + public interface Constraint_SLA_Isolation_levelOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Constraint_SLA_Isolation_level) com.google.protobuf.MessageOrBuilder { /** - * <code>float capacity_gbps = 1;</code> - * @return The capacityGbps. + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @return A list containing the isolationLevel. */ - float getCapacityGbps(); + java.util.List<context.ContextOuterClass.IsolationLevelEnum> getIsolationLevelList(); + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @return The count of isolationLevel. + */ + int getIsolationLevelCount(); + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @param index The index of the element to return. + * @return The isolationLevel at the given index. + */ + context.ContextOuterClass.IsolationLevelEnum getIsolationLevel(int index); + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @return A list containing the enum numeric values on the wire for isolationLevel. + */ + java.util.List<java.lang.Integer> + getIsolationLevelValueList(); + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @param index The index of the value to return. + * @return The enum numeric value on the wire of isolationLevel at the given index. + */ + int getIsolationLevelValue(int index); } /** - * Protobuf type {@code context.Constraint_SLA_Capacity} + * Protobuf type {@code context.Constraint_SLA_Isolation_level} */ - public static final class Constraint_SLA_Capacity extends + public static final class Constraint_SLA_Isolation_level extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Constraint_SLA_Capacity) - Constraint_SLA_CapacityOrBuilder { + // @@protoc_insertion_point(message_implements:context.Constraint_SLA_Isolation_level) + Constraint_SLA_Isolation_levelOrBuilder { private static final long serialVersionUID = 0L; - // Use Constraint_SLA_Capacity.newBuilder() to construct. - private Constraint_SLA_Capacity(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Constraint_SLA_Isolation_level.newBuilder() to construct. + private Constraint_SLA_Isolation_level(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private Constraint_SLA_Capacity() { + private Constraint_SLA_Isolation_level() { + isolationLevel_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new Constraint_SLA_Capacity(); + return new Constraint_SLA_Isolation_level(); } @java.lang.Override @@ -62942,7 +67145,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private Constraint_SLA_Capacity( + private Constraint_SLA_Isolation_level( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -62950,6 +67153,7 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } + int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -62960,9 +67164,27 @@ public final class ContextOuterClass { case 0: done = true; break; - case 13: { - - capacityGbps_ = input.readFloat(); + case 8: { + int rawValue = input.readEnum(); + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + isolationLevel_ = new java.util.ArrayList<java.lang.Integer>(); + mutable_bitField0_ |= 0x00000001; + } + isolationLevel_.add(rawValue); + break; + } + case 10: { + int length = input.readRawVarint32(); + int oldLimit = input.pushLimit(length); + while(input.getBytesUntilLimit() > 0) { + int rawValue = input.readEnum(); + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + isolationLevel_ = new java.util.ArrayList<java.lang.Integer>(); + mutable_bitField0_ |= 0x00000001; + } + isolationLevel_.add(rawValue); + } + input.popLimit(oldLimit); break; } default: { @@ -62980,33 +67202,83 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { + if (((mutable_bitField0_ & 0x00000001) != 0)) { + isolationLevel_ = java.util.Collections.unmodifiableList(isolationLevel_); + } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Capacity_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Isolation_level_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Capacity_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Isolation_level_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_SLA_Capacity.class, context.ContextOuterClass.Constraint_SLA_Capacity.Builder.class); + context.ContextOuterClass.Constraint_SLA_Isolation_level.class, context.ContextOuterClass.Constraint_SLA_Isolation_level.Builder.class); } - public static final int CAPACITY_GBPS_FIELD_NUMBER = 1; - private float capacityGbps_; + public static final int ISOLATION_LEVEL_FIELD_NUMBER = 1; + private java.util.List<java.lang.Integer> isolationLevel_; + private static final com.google.protobuf.Internal.ListAdapter.Converter< + java.lang.Integer, context.ContextOuterClass.IsolationLevelEnum> isolationLevel_converter_ = + new com.google.protobuf.Internal.ListAdapter.Converter< + java.lang.Integer, context.ContextOuterClass.IsolationLevelEnum>() { + public context.ContextOuterClass.IsolationLevelEnum convert(java.lang.Integer from) { + @SuppressWarnings("deprecation") + context.ContextOuterClass.IsolationLevelEnum result = context.ContextOuterClass.IsolationLevelEnum.valueOf(from); + return result == null ? context.ContextOuterClass.IsolationLevelEnum.UNRECOGNIZED : result; + } + }; /** - * <code>float capacity_gbps = 1;</code> - * @return The capacityGbps. + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @return A list containing the isolationLevel. */ @java.lang.Override - public float getCapacityGbps() { - return capacityGbps_; + public java.util.List<context.ContextOuterClass.IsolationLevelEnum> getIsolationLevelList() { + return new com.google.protobuf.Internal.ListAdapter< + java.lang.Integer, context.ContextOuterClass.IsolationLevelEnum>(isolationLevel_, isolationLevel_converter_); + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @return The count of isolationLevel. + */ + @java.lang.Override + public int getIsolationLevelCount() { + return isolationLevel_.size(); + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @param index The index of the element to return. + * @return The isolationLevel at the given index. + */ + @java.lang.Override + public context.ContextOuterClass.IsolationLevelEnum getIsolationLevel(int index) { + return isolationLevel_converter_.convert(isolationLevel_.get(index)); + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @return A list containing the enum numeric values on the wire for isolationLevel. + */ + @java.lang.Override + public java.util.List<java.lang.Integer> + getIsolationLevelValueList() { + return isolationLevel_; + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @param index The index of the value to return. + * @return The enum numeric value on the wire of isolationLevel at the given index. + */ + @java.lang.Override + public int getIsolationLevelValue(int index) { + return isolationLevel_.get(index); } + private int isolationLevelMemoizedSerializedSize; private byte memoizedIsInitialized = -1; @java.lang.Override @@ -63022,8 +67294,13 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (capacityGbps_ != 0F) { - output.writeFloat(1, capacityGbps_); + getSerializedSize(); + if (getIsolationLevelList().size() > 0) { + output.writeUInt32NoTag(10); + output.writeUInt32NoTag(isolationLevelMemoizedSerializedSize); + } + for (int i = 0; i < isolationLevel_.size(); i++) { + output.writeEnumNoTag(isolationLevel_.get(i)); } unknownFields.writeTo(output); } @@ -63034,9 +67311,17 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (capacityGbps_ != 0F) { - size += com.google.protobuf.CodedOutputStream - .computeFloatSize(1, capacityGbps_); + { + int dataSize = 0; + for (int i = 0; i < isolationLevel_.size(); i++) { + dataSize += com.google.protobuf.CodedOutputStream + .computeEnumSizeNoTag(isolationLevel_.get(i)); + } + size += dataSize; + if (!getIsolationLevelList().isEmpty()) { size += 1; + size += com.google.protobuf.CodedOutputStream + .computeUInt32SizeNoTag(dataSize); + }isolationLevelMemoizedSerializedSize = dataSize; } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -63048,14 +67333,12 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.Constraint_SLA_Capacity)) { + if (!(obj instanceof context.ContextOuterClass.Constraint_SLA_Isolation_level)) { return super.equals(obj); } - context.ContextOuterClass.Constraint_SLA_Capacity other = (context.ContextOuterClass.Constraint_SLA_Capacity) obj; + context.ContextOuterClass.Constraint_SLA_Isolation_level other = (context.ContextOuterClass.Constraint_SLA_Isolation_level) obj; - if (java.lang.Float.floatToIntBits(getCapacityGbps()) - != java.lang.Float.floatToIntBits( - other.getCapacityGbps())) return false; + if (!isolationLevel_.equals(other.isolationLevel_)) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -63067,77 +67350,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + CAPACITY_GBPS_FIELD_NUMBER; - hash = (53 * hash) + java.lang.Float.floatToIntBits( - getCapacityGbps()); + if (getIsolationLevelCount() > 0) { + hash = (37 * hash) + ISOLATION_LEVEL_FIELD_NUMBER; + hash = (53 * hash) + isolationLevel_.hashCode(); + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom(byte[] data) + public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Isolation_level 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 context.ContextOuterClass.Constraint_SLA_Capacity parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_SLA_Capacity parseDelimitedFrom( + public static context.ContextOuterClass.Constraint_SLA_Isolation_level 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 context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -63150,7 +67434,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.Constraint_SLA_Capacity prototype) { + public static Builder newBuilder(context.ContextOuterClass.Constraint_SLA_Isolation_level prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -63166,26 +67450,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.Constraint_SLA_Capacity} + * Protobuf type {@code context.Constraint_SLA_Isolation_level} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Constraint_SLA_Capacity) - context.ContextOuterClass.Constraint_SLA_CapacityOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Constraint_SLA_Isolation_level) + context.ContextOuterClass.Constraint_SLA_Isolation_levelOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Capacity_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Isolation_level_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Capacity_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Isolation_level_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_SLA_Capacity.class, context.ContextOuterClass.Constraint_SLA_Capacity.Builder.class); + context.ContextOuterClass.Constraint_SLA_Isolation_level.class, context.ContextOuterClass.Constraint_SLA_Isolation_level.Builder.class); } - // Construct using context.ContextOuterClass.Constraint_SLA_Capacity.newBuilder() + // Construct using context.ContextOuterClass.Constraint_SLA_Isolation_level.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -63203,25 +67487,25 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - capacityGbps_ = 0F; - + isolationLevel_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Capacity_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Isolation_level_descriptor; } @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Capacity getDefaultInstanceForType() { - return context.ContextOuterClass.Constraint_SLA_Capacity.getDefaultInstance(); + public context.ContextOuterClass.Constraint_SLA_Isolation_level getDefaultInstanceForType() { + return context.ContextOuterClass.Constraint_SLA_Isolation_level.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Capacity build() { - context.ContextOuterClass.Constraint_SLA_Capacity result = buildPartial(); + public context.ContextOuterClass.Constraint_SLA_Isolation_level build() { + context.ContextOuterClass.Constraint_SLA_Isolation_level result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -63229,9 +67513,14 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Capacity buildPartial() { - context.ContextOuterClass.Constraint_SLA_Capacity result = new context.ContextOuterClass.Constraint_SLA_Capacity(this); - result.capacityGbps_ = capacityGbps_; + public context.ContextOuterClass.Constraint_SLA_Isolation_level buildPartial() { + context.ContextOuterClass.Constraint_SLA_Isolation_level result = new context.ContextOuterClass.Constraint_SLA_Isolation_level(this); + int from_bitField0_ = bitField0_; + if (((bitField0_ & 0x00000001) != 0)) { + isolationLevel_ = java.util.Collections.unmodifiableList(isolationLevel_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.isolationLevel_ = isolationLevel_; onBuilt(); return result; } @@ -63270,75 +67559,192 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.Constraint_SLA_Capacity) { - return mergeFrom((context.ContextOuterClass.Constraint_SLA_Capacity)other); + if (other instanceof context.ContextOuterClass.Constraint_SLA_Isolation_level) { + return mergeFrom((context.ContextOuterClass.Constraint_SLA_Isolation_level)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.Constraint_SLA_Capacity other) { - if (other == context.ContextOuterClass.Constraint_SLA_Capacity.getDefaultInstance()) return this; - if (other.getCapacityGbps() != 0F) { - setCapacityGbps(other.getCapacityGbps()); + public Builder mergeFrom(context.ContextOuterClass.Constraint_SLA_Isolation_level other) { + if (other == context.ContextOuterClass.Constraint_SLA_Isolation_level.getDefaultInstance()) return this; + if (!other.isolationLevel_.isEmpty()) { + if (isolationLevel_.isEmpty()) { + isolationLevel_ = other.isolationLevel_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureIsolationLevelIsMutable(); + isolationLevel_.addAll(other.isolationLevel_); + } + onChanged(); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @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 { + context.ContextOuterClass.Constraint_SLA_Isolation_level parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.Constraint_SLA_Isolation_level) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + private java.util.List<java.lang.Integer> isolationLevel_ = + java.util.Collections.emptyList(); + private void ensureIsolationLevelIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + isolationLevel_ = new java.util.ArrayList<java.lang.Integer>(isolationLevel_); + bitField0_ |= 0x00000001; + } + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @return A list containing the isolationLevel. + */ + public java.util.List<context.ContextOuterClass.IsolationLevelEnum> getIsolationLevelList() { + return new com.google.protobuf.Internal.ListAdapter< + java.lang.Integer, context.ContextOuterClass.IsolationLevelEnum>(isolationLevel_, isolationLevel_converter_); + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @return The count of isolationLevel. + */ + public int getIsolationLevelCount() { + return isolationLevel_.size(); + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @param index The index of the element to return. + * @return The isolationLevel at the given index. + */ + public context.ContextOuterClass.IsolationLevelEnum getIsolationLevel(int index) { + return isolationLevel_converter_.convert(isolationLevel_.get(index)); + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @param index The index to set the value at. + * @param value The isolationLevel to set. + * @return This builder for chaining. + */ + public Builder setIsolationLevel( + int index, context.ContextOuterClass.IsolationLevelEnum value) { + if (value == null) { + throw new NullPointerException(); + } + ensureIsolationLevelIsMutable(); + isolationLevel_.set(index, value.getNumber()); + onChanged(); + return this; + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @param value The isolationLevel to add. + * @return This builder for chaining. + */ + public Builder addIsolationLevel(context.ContextOuterClass.IsolationLevelEnum value) { + if (value == null) { + throw new NullPointerException(); } - this.mergeUnknownFields(other.unknownFields); + ensureIsolationLevelIsMutable(); + isolationLevel_.add(value.getNumber()); onChanged(); return this; } - - @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 { - context.ContextOuterClass.Constraint_SLA_Capacity parsedMessage = null; - try { - parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Constraint_SLA_Capacity) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); - } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @param values The isolationLevel to add. + * @return This builder for chaining. + */ + public Builder addAllIsolationLevel( + java.lang.Iterable<? extends context.ContextOuterClass.IsolationLevelEnum> values) { + ensureIsolationLevelIsMutable(); + for (context.ContextOuterClass.IsolationLevelEnum value : values) { + isolationLevel_.add(value.getNumber()); } + onChanged(); return this; } - - private float capacityGbps_ ; /** - * <code>float capacity_gbps = 1;</code> - * @return The capacityGbps. + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @return This builder for chaining. */ - @java.lang.Override - public float getCapacityGbps() { - return capacityGbps_; + public Builder clearIsolationLevel() { + isolationLevel_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; } /** - * <code>float capacity_gbps = 1;</code> - * @param value The capacityGbps to set. + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @return A list containing the enum numeric values on the wire for isolationLevel. + */ + public java.util.List<java.lang.Integer> + getIsolationLevelValueList() { + return java.util.Collections.unmodifiableList(isolationLevel_); + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @param index The index of the value to return. + * @return The enum numeric value on the wire of isolationLevel at the given index. + */ + public int getIsolationLevelValue(int index) { + return isolationLevel_.get(index); + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @param index The index of the value to return. + * @return The enum numeric value on the wire of isolationLevel at the given index. * @return This builder for chaining. */ - public Builder setCapacityGbps(float value) { - - capacityGbps_ = value; + public Builder setIsolationLevelValue( + int index, int value) { + ensureIsolationLevelIsMutable(); + isolationLevel_.set(index, value); onChanged(); return this; } /** - * <code>float capacity_gbps = 1;</code> + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @param value The enum numeric value on the wire for isolationLevel to add. * @return This builder for chaining. */ - public Builder clearCapacityGbps() { - - capacityGbps_ = 0F; + public Builder addIsolationLevelValue(int value) { + ensureIsolationLevelIsMutable(); + isolationLevel_.add(value); + onChanged(); + return this; + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @param values The enum numeric values on the wire for isolationLevel to add. + * @return This builder for chaining. + */ + public Builder addAllIsolationLevelValue( + java.lang.Iterable<java.lang.Integer> values) { + ensureIsolationLevelIsMutable(); + for (int value : values) { + isolationLevel_.add(value); + } onChanged(); return this; } @@ -63355,82 +67761,151 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.Constraint_SLA_Capacity) + // @@protoc_insertion_point(builder_scope:context.Constraint_SLA_Isolation_level) } - // @@protoc_insertion_point(class_scope:context.Constraint_SLA_Capacity) - private static final context.ContextOuterClass.Constraint_SLA_Capacity DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Constraint_SLA_Isolation_level) + private static final context.ContextOuterClass.Constraint_SLA_Isolation_level DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_SLA_Capacity(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_SLA_Isolation_level(); } - public static context.ContextOuterClass.Constraint_SLA_Capacity getDefaultInstance() { + public static context.ContextOuterClass.Constraint_SLA_Isolation_level getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<Constraint_SLA_Capacity> - PARSER = new com.google.protobuf.AbstractParser<Constraint_SLA_Capacity>() { + private static final com.google.protobuf.Parser<Constraint_SLA_Isolation_level> + PARSER = new com.google.protobuf.AbstractParser<Constraint_SLA_Isolation_level>() { @java.lang.Override - public Constraint_SLA_Capacity parsePartialFrom( + public Constraint_SLA_Isolation_level parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new Constraint_SLA_Capacity(input, extensionRegistry); + return new Constraint_SLA_Isolation_level(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<Constraint_SLA_Capacity> parser() { + public static com.google.protobuf.Parser<Constraint_SLA_Isolation_level> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<Constraint_SLA_Capacity> getParserForType() { + public com.google.protobuf.Parser<Constraint_SLA_Isolation_level> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Capacity getDefaultInstanceForType() { + public context.ContextOuterClass.Constraint_SLA_Isolation_level getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface Constraint_SLA_AvailabilityOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Constraint_SLA_Availability) + public interface Constraint_ExclusionsOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Constraint_Exclusions) com.google.protobuf.MessageOrBuilder { /** - * <code>uint32 num_disjoint_paths = 1;</code> - * @return The numDisjointPaths. + * <code>bool is_permanent = 1;</code> + * @return The isPermanent. */ - int getNumDisjointPaths(); + boolean getIsPermanent(); /** - * <code>bool all_active = 2;</code> - * @return The allActive. + * <code>repeated .context.DeviceId device_ids = 2;</code> */ - boolean getAllActive(); + java.util.List<context.ContextOuterClass.DeviceId> + getDeviceIdsList(); + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + context.ContextOuterClass.DeviceId getDeviceIds(int index); + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + int getDeviceIdsCount(); + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> + getDeviceIdsOrBuilderList(); + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdsOrBuilder( + int index); + + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + java.util.List<context.ContextOuterClass.EndPointId> + getEndpointIdsList(); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + context.ContextOuterClass.EndPointId getEndpointIds(int index); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + int getEndpointIdsCount(); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getEndpointIdsOrBuilderList(); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdsOrBuilder( + int index); + + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + java.util.List<context.ContextOuterClass.LinkId> + getLinkIdsList(); + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + context.ContextOuterClass.LinkId getLinkIds(int index); + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + int getLinkIdsCount(); + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> + getLinkIdsOrBuilderList(); + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder( + int index); } /** - * Protobuf type {@code context.Constraint_SLA_Availability} + * Protobuf type {@code context.Constraint_Exclusions} */ - public static final class Constraint_SLA_Availability extends + public static final class Constraint_Exclusions extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Constraint_SLA_Availability) - Constraint_SLA_AvailabilityOrBuilder { + // @@protoc_insertion_point(message_implements:context.Constraint_Exclusions) + Constraint_ExclusionsOrBuilder { private static final long serialVersionUID = 0L; - // Use Constraint_SLA_Availability.newBuilder() to construct. - private Constraint_SLA_Availability(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Constraint_Exclusions.newBuilder() to construct. + private Constraint_Exclusions(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private Constraint_SLA_Availability() { + private Constraint_Exclusions() { + deviceIds_ = java.util.Collections.emptyList(); + endpointIds_ = java.util.Collections.emptyList(); + linkIds_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new Constraint_SLA_Availability(); + return new Constraint_Exclusions(); } @java.lang.Override @@ -63438,7 +67913,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private Constraint_SLA_Availability( + private Constraint_Exclusions( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -63446,6 +67921,7 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } + int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -63458,12 +67934,34 @@ public final class ContextOuterClass { break; case 8: { - numDisjointPaths_ = input.readUInt32(); + isPermanent_ = input.readBool(); break; } - case 16: { - - allActive_ = input.readBool(); + case 18: { + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + deviceIds_ = new java.util.ArrayList<context.ContextOuterClass.DeviceId>(); + mutable_bitField0_ |= 0x00000001; + } + deviceIds_.add( + input.readMessage(context.ContextOuterClass.DeviceId.parser(), extensionRegistry)); + break; + } + case 26: { + if (!((mutable_bitField0_ & 0x00000002) != 0)) { + endpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(); + mutable_bitField0_ |= 0x00000002; + } + endpointIds_.add( + input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry)); + break; + } + case 34: { + if (!((mutable_bitField0_ & 0x00000004) != 0)) { + linkIds_ = new java.util.ArrayList<context.ContextOuterClass.LinkId>(); + mutable_bitField0_ |= 0x00000004; + } + linkIds_.add( + input.readMessage(context.ContextOuterClass.LinkId.parser(), extensionRegistry)); break; } default: { @@ -63481,43 +67979,161 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { + if (((mutable_bitField0_ & 0x00000001) != 0)) { + deviceIds_ = java.util.Collections.unmodifiableList(deviceIds_); + } + if (((mutable_bitField0_ & 0x00000002) != 0)) { + endpointIds_ = java.util.Collections.unmodifiableList(endpointIds_); + } + if (((mutable_bitField0_ & 0x00000004) != 0)) { + linkIds_ = java.util.Collections.unmodifiableList(linkIds_); + } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Availability_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_Exclusions_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Availability_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_Exclusions_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_SLA_Availability.class, context.ContextOuterClass.Constraint_SLA_Availability.Builder.class); + context.ContextOuterClass.Constraint_Exclusions.class, context.ContextOuterClass.Constraint_Exclusions.Builder.class); } - public static final int NUM_DISJOINT_PATHS_FIELD_NUMBER = 1; - private int numDisjointPaths_; + public static final int IS_PERMANENT_FIELD_NUMBER = 1; + private boolean isPermanent_; /** - * <code>uint32 num_disjoint_paths = 1;</code> - * @return The numDisjointPaths. + * <code>bool is_permanent = 1;</code> + * @return The isPermanent. */ @java.lang.Override - public int getNumDisjointPaths() { - return numDisjointPaths_; + public boolean getIsPermanent() { + return isPermanent_; } - public static final int ALL_ACTIVE_FIELD_NUMBER = 2; - private boolean allActive_; + public static final int DEVICE_IDS_FIELD_NUMBER = 2; + private java.util.List<context.ContextOuterClass.DeviceId> deviceIds_; /** - * <code>bool all_active = 2;</code> - * @return The allActive. + * <code>repeated .context.DeviceId device_ids = 2;</code> */ @java.lang.Override - public boolean getAllActive() { - return allActive_; + public java.util.List<context.ContextOuterClass.DeviceId> getDeviceIdsList() { + return deviceIds_; + } + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> + getDeviceIdsOrBuilderList() { + return deviceIds_; + } + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + @java.lang.Override + public int getDeviceIdsCount() { + return deviceIds_.size(); + } + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + @java.lang.Override + public context.ContextOuterClass.DeviceId getDeviceIds(int index) { + return deviceIds_.get(index); + } + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + @java.lang.Override + public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdsOrBuilder( + int index) { + return deviceIds_.get(index); + } + + public static final int ENDPOINT_IDS_FIELD_NUMBER = 3; + private java.util.List<context.ContextOuterClass.EndPointId> endpointIds_; + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + @java.lang.Override + public java.util.List<context.ContextOuterClass.EndPointId> getEndpointIdsList() { + return endpointIds_; + } + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getEndpointIdsOrBuilderList() { + return endpointIds_; + } + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + @java.lang.Override + public int getEndpointIdsCount() { + return endpointIds_.size(); + } + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + @java.lang.Override + public context.ContextOuterClass.EndPointId getEndpointIds(int index) { + return endpointIds_.get(index); + } + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + @java.lang.Override + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdsOrBuilder( + int index) { + return endpointIds_.get(index); + } + + public static final int LINK_IDS_FIELD_NUMBER = 4; + private java.util.List<context.ContextOuterClass.LinkId> linkIds_; + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + @java.lang.Override + public java.util.List<context.ContextOuterClass.LinkId> getLinkIdsList() { + return linkIds_; + } + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> + getLinkIdsOrBuilderList() { + return linkIds_; + } + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + @java.lang.Override + public int getLinkIdsCount() { + return linkIds_.size(); + } + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + @java.lang.Override + public context.ContextOuterClass.LinkId getLinkIds(int index) { + return linkIds_.get(index); + } + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + @java.lang.Override + public context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder( + int index) { + return linkIds_.get(index); } private byte memoizedIsInitialized = -1; @@ -63534,11 +68150,17 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (numDisjointPaths_ != 0) { - output.writeUInt32(1, numDisjointPaths_); + if (isPermanent_ != false) { + output.writeBool(1, isPermanent_); } - if (allActive_ != false) { - output.writeBool(2, allActive_); + for (int i = 0; i < deviceIds_.size(); i++) { + output.writeMessage(2, deviceIds_.get(i)); + } + for (int i = 0; i < endpointIds_.size(); i++) { + output.writeMessage(3, endpointIds_.get(i)); + } + for (int i = 0; i < linkIds_.size(); i++) { + output.writeMessage(4, linkIds_.get(i)); } unknownFields.writeTo(output); } @@ -63549,13 +68171,21 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (numDisjointPaths_ != 0) { + if (isPermanent_ != false) { size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(1, numDisjointPaths_); + .computeBoolSize(1, isPermanent_); } - if (allActive_ != false) { + for (int i = 0; i < deviceIds_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeBoolSize(2, allActive_); + .computeMessageSize(2, deviceIds_.get(i)); + } + for (int i = 0; i < endpointIds_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(3, endpointIds_.get(i)); + } + for (int i = 0; i < linkIds_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(4, linkIds_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -63567,15 +68197,19 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.Constraint_SLA_Availability)) { + if (!(obj instanceof context.ContextOuterClass.Constraint_Exclusions)) { return super.equals(obj); } - context.ContextOuterClass.Constraint_SLA_Availability other = (context.ContextOuterClass.Constraint_SLA_Availability) obj; + context.ContextOuterClass.Constraint_Exclusions other = (context.ContextOuterClass.Constraint_Exclusions) obj; - if (getNumDisjointPaths() - != other.getNumDisjointPaths()) return false; - if (getAllActive() - != other.getAllActive()) return false; + if (getIsPermanent() + != other.getIsPermanent()) return false; + if (!getDeviceIdsList() + .equals(other.getDeviceIdsList())) return false; + if (!getEndpointIdsList() + .equals(other.getEndpointIdsList())) return false; + if (!getLinkIdsList() + .equals(other.getLinkIdsList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -63587,79 +68221,89 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + NUM_DISJOINT_PATHS_FIELD_NUMBER; - hash = (53 * hash) + getNumDisjointPaths(); - hash = (37 * hash) + ALL_ACTIVE_FIELD_NUMBER; + hash = (37 * hash) + IS_PERMANENT_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( - getAllActive()); + getIsPermanent()); + if (getDeviceIdsCount() > 0) { + hash = (37 * hash) + DEVICE_IDS_FIELD_NUMBER; + hash = (53 * hash) + getDeviceIdsList().hashCode(); + } + if (getEndpointIdsCount() > 0) { + hash = (37 * hash) + ENDPOINT_IDS_FIELD_NUMBER; + hash = (53 * hash) + getEndpointIdsList().hashCode(); + } + if (getLinkIdsCount() > 0) { + hash = (37 * hash) + LINK_IDS_FIELD_NUMBER; + hash = (53 * hash) + getLinkIdsList().hashCode(); + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( + public static context.ContextOuterClass.Constraint_Exclusions parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( + public static context.ContextOuterClass.Constraint_Exclusions parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( + public static context.ContextOuterClass.Constraint_Exclusions parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( + public static context.ContextOuterClass.Constraint_Exclusions parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom(byte[] data) + public static context.ContextOuterClass.Constraint_Exclusions parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( + public static context.ContextOuterClass.Constraint_Exclusions parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_Exclusions parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( + public static context.ContextOuterClass.Constraint_Exclusions 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 context.ContextOuterClass.Constraint_SLA_Availability parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_Exclusions parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_SLA_Availability parseDelimitedFrom( + public static context.ContextOuterClass.Constraint_Exclusions 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 context.ContextOuterClass.Constraint_SLA_Availability parseFrom( + public static context.ContextOuterClass.Constraint_Exclusions parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( + public static context.ContextOuterClass.Constraint_Exclusions parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -63672,7 +68316,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.Constraint_SLA_Availability prototype) { + public static Builder newBuilder(context.ContextOuterClass.Constraint_Exclusions prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -63688,26 +68332,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.Constraint_SLA_Availability} + * Protobuf type {@code context.Constraint_Exclusions} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Constraint_SLA_Availability) - context.ContextOuterClass.Constraint_SLA_AvailabilityOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Constraint_Exclusions) + context.ContextOuterClass.Constraint_ExclusionsOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Availability_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_Exclusions_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Availability_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_Exclusions_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_SLA_Availability.class, context.ContextOuterClass.Constraint_SLA_Availability.Builder.class); + context.ContextOuterClass.Constraint_Exclusions.class, context.ContextOuterClass.Constraint_Exclusions.Builder.class); } - // Construct using context.ContextOuterClass.Constraint_SLA_Availability.newBuilder() + // Construct using context.ContextOuterClass.Constraint_Exclusions.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -63720,32 +68364,51 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { + getDeviceIdsFieldBuilder(); + getEndpointIdsFieldBuilder(); + getLinkIdsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - numDisjointPaths_ = 0; - - allActive_ = false; + isPermanent_ = false; + if (deviceIdsBuilder_ == null) { + deviceIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + } else { + deviceIdsBuilder_.clear(); + } + if (endpointIdsBuilder_ == null) { + endpointIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + } else { + endpointIdsBuilder_.clear(); + } + if (linkIdsBuilder_ == null) { + linkIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + } else { + linkIdsBuilder_.clear(); + } return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Availability_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_Exclusions_descriptor; } @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Availability getDefaultInstanceForType() { - return context.ContextOuterClass.Constraint_SLA_Availability.getDefaultInstance(); + public context.ContextOuterClass.Constraint_Exclusions getDefaultInstanceForType() { + return context.ContextOuterClass.Constraint_Exclusions.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Availability build() { - context.ContextOuterClass.Constraint_SLA_Availability result = buildPartial(); + public context.ContextOuterClass.Constraint_Exclusions build() { + context.ContextOuterClass.Constraint_Exclusions result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -63753,10 +68416,37 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Availability buildPartial() { - context.ContextOuterClass.Constraint_SLA_Availability result = new context.ContextOuterClass.Constraint_SLA_Availability(this); - result.numDisjointPaths_ = numDisjointPaths_; - result.allActive_ = allActive_; + public context.ContextOuterClass.Constraint_Exclusions buildPartial() { + context.ContextOuterClass.Constraint_Exclusions result = new context.ContextOuterClass.Constraint_Exclusions(this); + int from_bitField0_ = bitField0_; + result.isPermanent_ = isPermanent_; + if (deviceIdsBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + deviceIds_ = java.util.Collections.unmodifiableList(deviceIds_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.deviceIds_ = deviceIds_; + } else { + result.deviceIds_ = deviceIdsBuilder_.build(); + } + if (endpointIdsBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0)) { + endpointIds_ = java.util.Collections.unmodifiableList(endpointIds_); + bitField0_ = (bitField0_ & ~0x00000002); + } + result.endpointIds_ = endpointIds_; + } else { + result.endpointIds_ = endpointIdsBuilder_.build(); + } + if (linkIdsBuilder_ == null) { + if (((bitField0_ & 0x00000004) != 0)) { + linkIds_ = java.util.Collections.unmodifiableList(linkIds_); + bitField0_ = (bitField0_ & ~0x00000004); + } + result.linkIds_ = linkIds_; + } else { + result.linkIds_ = linkIdsBuilder_.build(); + } onBuilt(); return result; } @@ -63795,21 +68485,96 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.Constraint_SLA_Availability) { - return mergeFrom((context.ContextOuterClass.Constraint_SLA_Availability)other); + if (other instanceof context.ContextOuterClass.Constraint_Exclusions) { + return mergeFrom((context.ContextOuterClass.Constraint_Exclusions)other); } else { super.mergeFrom(other); return this; } - } - - public Builder mergeFrom(context.ContextOuterClass.Constraint_SLA_Availability other) { - if (other == context.ContextOuterClass.Constraint_SLA_Availability.getDefaultInstance()) return this; - if (other.getNumDisjointPaths() != 0) { - setNumDisjointPaths(other.getNumDisjointPaths()); + } + + public Builder mergeFrom(context.ContextOuterClass.Constraint_Exclusions other) { + if (other == context.ContextOuterClass.Constraint_Exclusions.getDefaultInstance()) return this; + if (other.getIsPermanent() != false) { + setIsPermanent(other.getIsPermanent()); + } + if (deviceIdsBuilder_ == null) { + if (!other.deviceIds_.isEmpty()) { + if (deviceIds_.isEmpty()) { + deviceIds_ = other.deviceIds_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureDeviceIdsIsMutable(); + deviceIds_.addAll(other.deviceIds_); + } + onChanged(); + } + } else { + if (!other.deviceIds_.isEmpty()) { + if (deviceIdsBuilder_.isEmpty()) { + deviceIdsBuilder_.dispose(); + deviceIdsBuilder_ = null; + deviceIds_ = other.deviceIds_; + bitField0_ = (bitField0_ & ~0x00000001); + deviceIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getDeviceIdsFieldBuilder() : null; + } else { + deviceIdsBuilder_.addAllMessages(other.deviceIds_); + } + } + } + if (endpointIdsBuilder_ == null) { + if (!other.endpointIds_.isEmpty()) { + if (endpointIds_.isEmpty()) { + endpointIds_ = other.endpointIds_; + bitField0_ = (bitField0_ & ~0x00000002); + } else { + ensureEndpointIdsIsMutable(); + endpointIds_.addAll(other.endpointIds_); + } + onChanged(); + } + } else { + if (!other.endpointIds_.isEmpty()) { + if (endpointIdsBuilder_.isEmpty()) { + endpointIdsBuilder_.dispose(); + endpointIdsBuilder_ = null; + endpointIds_ = other.endpointIds_; + bitField0_ = (bitField0_ & ~0x00000002); + endpointIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getEndpointIdsFieldBuilder() : null; + } else { + endpointIdsBuilder_.addAllMessages(other.endpointIds_); + } + } } - if (other.getAllActive() != false) { - setAllActive(other.getAllActive()); + if (linkIdsBuilder_ == null) { + if (!other.linkIds_.isEmpty()) { + if (linkIds_.isEmpty()) { + linkIds_ = other.linkIds_; + bitField0_ = (bitField0_ & ~0x00000004); + } else { + ensureLinkIdsIsMutable(); + linkIds_.addAll(other.linkIds_); + } + onChanged(); + } + } else { + if (!other.linkIds_.isEmpty()) { + if (linkIdsBuilder_.isEmpty()) { + linkIdsBuilder_.dispose(); + linkIdsBuilder_ = null; + linkIds_ = other.linkIds_; + bitField0_ = (bitField0_ & ~0x00000004); + linkIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getLinkIdsFieldBuilder() : null; + } else { + linkIdsBuilder_.addAllMessages(other.linkIds_); + } + } } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -63826,11 +68591,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.Constraint_SLA_Availability parsedMessage = null; + context.ContextOuterClass.Constraint_Exclusions parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Constraint_SLA_Availability) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.Constraint_Exclusions) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -63839,784 +68604,757 @@ public final class ContextOuterClass { } return this; } + private int bitField0_; - private int numDisjointPaths_ ; + private boolean isPermanent_ ; /** - * <code>uint32 num_disjoint_paths = 1;</code> - * @return The numDisjointPaths. + * <code>bool is_permanent = 1;</code> + * @return The isPermanent. */ @java.lang.Override - public int getNumDisjointPaths() { - return numDisjointPaths_; + public boolean getIsPermanent() { + return isPermanent_; } /** - * <code>uint32 num_disjoint_paths = 1;</code> - * @param value The numDisjointPaths to set. + * <code>bool is_permanent = 1;</code> + * @param value The isPermanent to set. * @return This builder for chaining. */ - public Builder setNumDisjointPaths(int value) { + public Builder setIsPermanent(boolean value) { - numDisjointPaths_ = value; + isPermanent_ = value; onChanged(); return this; } /** - * <code>uint32 num_disjoint_paths = 1;</code> + * <code>bool is_permanent = 1;</code> * @return This builder for chaining. */ - public Builder clearNumDisjointPaths() { + public Builder clearIsPermanent() { - numDisjointPaths_ = 0; + isPermanent_ = false; onChanged(); return this; } - private boolean allActive_ ; + private java.util.List<context.ContextOuterClass.DeviceId> deviceIds_ = + java.util.Collections.emptyList(); + private void ensureDeviceIdsIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + deviceIds_ = new java.util.ArrayList<context.ContextOuterClass.DeviceId>(deviceIds_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> deviceIdsBuilder_; + /** - * <code>bool all_active = 2;</code> - * @return The allActive. + * <code>repeated .context.DeviceId device_ids = 2;</code> */ - @java.lang.Override - public boolean getAllActive() { - return allActive_; + public java.util.List<context.ContextOuterClass.DeviceId> getDeviceIdsList() { + if (deviceIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(deviceIds_); + } else { + return deviceIdsBuilder_.getMessageList(); + } } /** - * <code>bool all_active = 2;</code> - * @param value The allActive to set. - * @return This builder for chaining. + * <code>repeated .context.DeviceId device_ids = 2;</code> */ - public Builder setAllActive(boolean value) { - - allActive_ = value; - onChanged(); + public int getDeviceIdsCount() { + if (deviceIdsBuilder_ == null) { + return deviceIds_.size(); + } else { + return deviceIdsBuilder_.getCount(); + } + } + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public context.ContextOuterClass.DeviceId getDeviceIds(int index) { + if (deviceIdsBuilder_ == null) { + return deviceIds_.get(index); + } else { + return deviceIdsBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public Builder setDeviceIds( + int index, context.ContextOuterClass.DeviceId value) { + if (deviceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDeviceIdsIsMutable(); + deviceIds_.set(index, value); + onChanged(); + } else { + deviceIdsBuilder_.setMessage(index, value); + } return this; } /** - * <code>bool all_active = 2;</code> - * @return This builder for chaining. + * <code>repeated .context.DeviceId device_ids = 2;</code> */ - public Builder clearAllActive() { - - allActive_ = false; - onChanged(); + public Builder setDeviceIds( + int index, context.ContextOuterClass.DeviceId.Builder builderForValue) { + if (deviceIdsBuilder_ == null) { + ensureDeviceIdsIsMutable(); + deviceIds_.set(index, builderForValue.build()); + onChanged(); + } else { + deviceIdsBuilder_.setMessage(index, builderForValue.build()); + } return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public Builder addDeviceIds(context.ContextOuterClass.DeviceId value) { + if (deviceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDeviceIdsIsMutable(); + deviceIds_.add(value); + onChanged(); + } else { + deviceIdsBuilder_.addMessage(value); + } + return this; } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public Builder addDeviceIds( + int index, context.ContextOuterClass.DeviceId value) { + if (deviceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDeviceIdsIsMutable(); + deviceIds_.add(index, value); + onChanged(); + } else { + deviceIdsBuilder_.addMessage(index, value); + } + return this; } - - - // @@protoc_insertion_point(builder_scope:context.Constraint_SLA_Availability) - } - - // @@protoc_insertion_point(class_scope:context.Constraint_SLA_Availability) - private static final context.ContextOuterClass.Constraint_SLA_Availability DEFAULT_INSTANCE; - static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_SLA_Availability(); - } - - public static context.ContextOuterClass.Constraint_SLA_Availability getDefaultInstance() { - return DEFAULT_INSTANCE; - } - - private static final com.google.protobuf.Parser<Constraint_SLA_Availability> - PARSER = new com.google.protobuf.AbstractParser<Constraint_SLA_Availability>() { - @java.lang.Override - public Constraint_SLA_Availability parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return new Constraint_SLA_Availability(input, extensionRegistry); + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public Builder addDeviceIds( + context.ContextOuterClass.DeviceId.Builder builderForValue) { + if (deviceIdsBuilder_ == null) { + ensureDeviceIdsIsMutable(); + deviceIds_.add(builderForValue.build()); + onChanged(); + } else { + deviceIdsBuilder_.addMessage(builderForValue.build()); + } + return this; } - }; - - public static com.google.protobuf.Parser<Constraint_SLA_Availability> parser() { - return PARSER; - } - - @java.lang.Override - public com.google.protobuf.Parser<Constraint_SLA_Availability> getParserForType() { - return PARSER; - } - - @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Availability getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - - } - - public interface Constraint_SLA_Isolation_levelOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Constraint_SLA_Isolation_level) - com.google.protobuf.MessageOrBuilder { - - /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @return A list containing the isolationLevel. - */ - java.util.List<context.ContextOuterClass.IsolationLevelEnum> getIsolationLevelList(); - /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @return The count of isolationLevel. - */ - int getIsolationLevelCount(); - /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @param index The index of the element to return. - * @return The isolationLevel at the given index. - */ - context.ContextOuterClass.IsolationLevelEnum getIsolationLevel(int index); - /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @return A list containing the enum numeric values on the wire for isolationLevel. - */ - java.util.List<java.lang.Integer> - getIsolationLevelValueList(); - /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @param index The index of the value to return. - * @return The enum numeric value on the wire of isolationLevel at the given index. - */ - int getIsolationLevelValue(int index); - } - /** - * Protobuf type {@code context.Constraint_SLA_Isolation_level} - */ - public static final class Constraint_SLA_Isolation_level extends - com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Constraint_SLA_Isolation_level) - Constraint_SLA_Isolation_levelOrBuilder { - private static final long serialVersionUID = 0L; - // Use Constraint_SLA_Isolation_level.newBuilder() to construct. - private Constraint_SLA_Isolation_level(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { - super(builder); - } - private Constraint_SLA_Isolation_level() { - isolationLevel_ = java.util.Collections.emptyList(); - } - - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new Constraint_SLA_Isolation_level(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } - private Constraint_SLA_Isolation_level( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - this(); - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public Builder addDeviceIds( + int index, context.ContextOuterClass.DeviceId.Builder builderForValue) { + if (deviceIdsBuilder_ == null) { + ensureDeviceIdsIsMutable(); + deviceIds_.add(index, builderForValue.build()); + onChanged(); + } else { + deviceIdsBuilder_.addMessage(index, builderForValue.build()); + } + return this; } - 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 8: { - int rawValue = input.readEnum(); - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - isolationLevel_ = new java.util.ArrayList<java.lang.Integer>(); - mutable_bitField0_ |= 0x00000001; - } - isolationLevel_.add(rawValue); - break; - } - case 10: { - int length = input.readRawVarint32(); - int oldLimit = input.pushLimit(length); - while(input.getBytesUntilLimit() > 0) { - int rawValue = input.readEnum(); - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - isolationLevel_ = new java.util.ArrayList<java.lang.Integer>(); - mutable_bitField0_ |= 0x00000001; - } - isolationLevel_.add(rawValue); - } - input.popLimit(oldLimit); - break; - } - default: { - if (!parseUnknownField( - input, unknownFields, extensionRegistry, tag)) { - done = true; - } - break; - } - } + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public Builder addAllDeviceIds( + java.lang.Iterable<? extends context.ContextOuterClass.DeviceId> values) { + if (deviceIdsBuilder_ == null) { + ensureDeviceIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, deviceIds_); + onChanged(); + } else { + deviceIdsBuilder_.addAllMessages(values); } - } 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)) { - isolationLevel_ = java.util.Collections.unmodifiableList(isolationLevel_); + return this; + } + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public Builder clearDeviceIds() { + if (deviceIdsBuilder_ == null) { + deviceIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + deviceIdsBuilder_.clear(); } - this.unknownFields = unknownFields.build(); - makeExtensionsImmutable(); + return this; } - } - public static final com.google.protobuf.Descriptors.Descriptor - getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Isolation_level_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Isolation_level_fieldAccessorTable - .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_SLA_Isolation_level.class, context.ContextOuterClass.Constraint_SLA_Isolation_level.Builder.class); - } - - public static final int ISOLATION_LEVEL_FIELD_NUMBER = 1; - private java.util.List<java.lang.Integer> isolationLevel_; - private static final com.google.protobuf.Internal.ListAdapter.Converter< - java.lang.Integer, context.ContextOuterClass.IsolationLevelEnum> isolationLevel_converter_ = - new com.google.protobuf.Internal.ListAdapter.Converter< - java.lang.Integer, context.ContextOuterClass.IsolationLevelEnum>() { - public context.ContextOuterClass.IsolationLevelEnum convert(java.lang.Integer from) { - @SuppressWarnings("deprecation") - context.ContextOuterClass.IsolationLevelEnum result = context.ContextOuterClass.IsolationLevelEnum.valueOf(from); - return result == null ? context.ContextOuterClass.IsolationLevelEnum.UNRECOGNIZED : result; - } - }; - /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @return A list containing the isolationLevel. - */ - @java.lang.Override - public java.util.List<context.ContextOuterClass.IsolationLevelEnum> getIsolationLevelList() { - return new com.google.protobuf.Internal.ListAdapter< - java.lang.Integer, context.ContextOuterClass.IsolationLevelEnum>(isolationLevel_, isolationLevel_converter_); - } - /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @return The count of isolationLevel. - */ - @java.lang.Override - public int getIsolationLevelCount() { - return isolationLevel_.size(); - } - /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @param index The index of the element to return. - * @return The isolationLevel at the given index. - */ - @java.lang.Override - public context.ContextOuterClass.IsolationLevelEnum getIsolationLevel(int index) { - return isolationLevel_converter_.convert(isolationLevel_.get(index)); - } - /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @return A list containing the enum numeric values on the wire for isolationLevel. - */ - @java.lang.Override - public java.util.List<java.lang.Integer> - getIsolationLevelValueList() { - return isolationLevel_; - } - /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @param index The index of the value to return. - * @return The enum numeric value on the wire of isolationLevel at the given index. - */ - @java.lang.Override - public int getIsolationLevelValue(int index) { - return isolationLevel_.get(index); - } - private int isolationLevelMemoizedSerializedSize; - - 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 { - getSerializedSize(); - if (getIsolationLevelList().size() > 0) { - output.writeUInt32NoTag(10); - output.writeUInt32NoTag(isolationLevelMemoizedSerializedSize); + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public Builder removeDeviceIds(int index) { + if (deviceIdsBuilder_ == null) { + ensureDeviceIdsIsMutable(); + deviceIds_.remove(index); + onChanged(); + } else { + deviceIdsBuilder_.remove(index); + } + return this; + } + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public context.ContextOuterClass.DeviceId.Builder getDeviceIdsBuilder( + int index) { + return getDeviceIdsFieldBuilder().getBuilder(index); } - for (int i = 0; i < isolationLevel_.size(); i++) { - output.writeEnumNoTag(isolationLevel_.get(i)); + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdsOrBuilder( + int index) { + if (deviceIdsBuilder_ == null) { + return deviceIds_.get(index); } else { + return deviceIdsBuilder_.getMessageOrBuilder(index); + } } - unknownFields.writeTo(output); - } - - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; - - size = 0; - { - int dataSize = 0; - for (int i = 0; i < isolationLevel_.size(); i++) { - dataSize += com.google.protobuf.CodedOutputStream - .computeEnumSizeNoTag(isolationLevel_.get(i)); + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> + getDeviceIdsOrBuilderList() { + if (deviceIdsBuilder_ != null) { + return deviceIdsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(deviceIds_); } - size += dataSize; - if (!getIsolationLevelList().isEmpty()) { size += 1; - size += com.google.protobuf.CodedOutputStream - .computeUInt32SizeNoTag(dataSize); - }isolationLevelMemoizedSerializedSize = dataSize; } - size += unknownFields.getSerializedSize(); - memoizedSize = size; - return size; - } - - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public context.ContextOuterClass.DeviceId.Builder addDeviceIdsBuilder() { + return getDeviceIdsFieldBuilder().addBuilder( + context.ContextOuterClass.DeviceId.getDefaultInstance()); } - if (!(obj instanceof context.ContextOuterClass.Constraint_SLA_Isolation_level)) { - return super.equals(obj); + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public context.ContextOuterClass.DeviceId.Builder addDeviceIdsBuilder( + int index) { + return getDeviceIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.DeviceId.getDefaultInstance()); } - context.ContextOuterClass.Constraint_SLA_Isolation_level other = (context.ContextOuterClass.Constraint_SLA_Isolation_level) obj; - - if (!isolationLevel_.equals(other.isolationLevel_)) return false; - if (!unknownFields.equals(other.unknownFields)) return false; - return true; - } - - @java.lang.Override - public int hashCode() { - if (memoizedHashCode != 0) { - return memoizedHashCode; + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public java.util.List<context.ContextOuterClass.DeviceId.Builder> + getDeviceIdsBuilderList() { + return getDeviceIdsFieldBuilder().getBuilderList(); } - int hash = 41; - hash = (19 * hash) + getDescriptor().hashCode(); - if (getIsolationLevelCount() > 0) { - hash = (37 * hash) + ISOLATION_LEVEL_FIELD_NUMBER; - hash = (53 * hash) + isolationLevel_.hashCode(); + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> + getDeviceIdsFieldBuilder() { + if (deviceIdsBuilder_ == null) { + deviceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder>( + deviceIds_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + deviceIds_ = null; + } + return deviceIdsBuilder_; } - hash = (29 * hash) + unknownFields.hashCode(); - memoizedHashCode = hash; - return hash; - } - public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( - java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( - java.nio.ByteBuffer data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( - byte[] data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseWithIOException(PARSER, input); - } - public static context.ContextOuterClass.Constraint_SLA_Isolation_level 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 context.ContextOuterClass.Constraint_SLA_Isolation_level parseDelimitedFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseDelimitedWithIOException(PARSER, input); - } - public static context.ContextOuterClass.Constraint_SLA_Isolation_level 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 context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( - com.google.protobuf.CodedInputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseWithIOException(PARSER, input); - } - public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseWithIOException(PARSER, input, extensionRegistry); - } + private java.util.List<context.ContextOuterClass.EndPointId> endpointIds_ = + java.util.Collections.emptyList(); + private void ensureEndpointIdsIsMutable() { + if (!((bitField0_ & 0x00000002) != 0)) { + endpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(endpointIds_); + bitField0_ |= 0x00000002; + } + } - @java.lang.Override - public Builder newBuilderForType() { return newBuilder(); } - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); - } - public static Builder newBuilder(context.ContextOuterClass.Constraint_SLA_Isolation_level prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); - } - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE - ? new Builder() : new Builder().mergeFrom(this); - } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> endpointIdsBuilder_; - @java.lang.Override - protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; - } - /** - * Protobuf type {@code context.Constraint_SLA_Isolation_level} - */ - public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Constraint_SLA_Isolation_level) - context.ContextOuterClass.Constraint_SLA_Isolation_levelOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor - getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Isolation_level_descriptor; + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public java.util.List<context.ContextOuterClass.EndPointId> getEndpointIdsList() { + if (endpointIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(endpointIds_); + } else { + return endpointIdsBuilder_.getMessageList(); + } } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Isolation_level_fieldAccessorTable - .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_SLA_Isolation_level.class, context.ContextOuterClass.Constraint_SLA_Isolation_level.Builder.class); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public int getEndpointIdsCount() { + if (endpointIdsBuilder_ == null) { + return endpointIds_.size(); + } else { + return endpointIdsBuilder_.getCount(); + } } - - // Construct using context.ContextOuterClass.Constraint_SLA_Isolation_level.newBuilder() - private Builder() { - maybeForceBuilderInitialization(); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointId getEndpointIds(int index) { + if (endpointIdsBuilder_ == null) { + return endpointIds_.get(index); + } else { + return endpointIdsBuilder_.getMessage(index); + } } - - private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - super(parent); - maybeForceBuilderInitialization(); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public Builder setEndpointIds( + int index, context.ContextOuterClass.EndPointId value) { + if (endpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureEndpointIdsIsMutable(); + endpointIds_.set(index, value); + onChanged(); + } else { + endpointIdsBuilder_.setMessage(index, value); + } + return this; } - private void maybeForceBuilderInitialization() { - if (com.google.protobuf.GeneratedMessageV3 - .alwaysUseFieldBuilders) { + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public Builder setEndpointIds( + int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (endpointIdsBuilder_ == null) { + ensureEndpointIdsIsMutable(); + endpointIds_.set(index, builderForValue.build()); + onChanged(); + } else { + endpointIdsBuilder_.setMessage(index, builderForValue.build()); } + return this; } - @java.lang.Override - public Builder clear() { - super.clear(); - isolationLevel_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public Builder addEndpointIds(context.ContextOuterClass.EndPointId value) { + if (endpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureEndpointIdsIsMutable(); + endpointIds_.add(value); + onChanged(); + } else { + endpointIdsBuilder_.addMessage(value); + } return this; } - - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor - getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Isolation_level_descriptor; + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public Builder addEndpointIds( + int index, context.ContextOuterClass.EndPointId value) { + if (endpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureEndpointIdsIsMutable(); + endpointIds_.add(index, value); + onChanged(); + } else { + endpointIdsBuilder_.addMessage(index, value); + } + return this; } - - @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Isolation_level getDefaultInstanceForType() { - return context.ContextOuterClass.Constraint_SLA_Isolation_level.getDefaultInstance(); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public Builder addEndpointIds( + context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (endpointIdsBuilder_ == null) { + ensureEndpointIdsIsMutable(); + endpointIds_.add(builderForValue.build()); + onChanged(); + } else { + endpointIdsBuilder_.addMessage(builderForValue.build()); + } + return this; } - - @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Isolation_level build() { - context.ContextOuterClass.Constraint_SLA_Isolation_level result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public Builder addEndpointIds( + int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (endpointIdsBuilder_ == null) { + ensureEndpointIdsIsMutable(); + endpointIds_.add(index, builderForValue.build()); + onChanged(); + } else { + endpointIdsBuilder_.addMessage(index, builderForValue.build()); } - return result; + return this; } - - @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Isolation_level buildPartial() { - context.ContextOuterClass.Constraint_SLA_Isolation_level result = new context.ContextOuterClass.Constraint_SLA_Isolation_level(this); - int from_bitField0_ = bitField0_; - if (((bitField0_ & 0x00000001) != 0)) { - isolationLevel_ = java.util.Collections.unmodifiableList(isolationLevel_); - bitField0_ = (bitField0_ & ~0x00000001); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public Builder addAllEndpointIds( + java.lang.Iterable<? extends context.ContextOuterClass.EndPointId> values) { + if (endpointIdsBuilder_ == null) { + ensureEndpointIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, endpointIds_); + onChanged(); + } else { + endpointIdsBuilder_.addAllMessages(values); } - result.isolationLevel_ = isolationLevel_; - onBuilt(); - return result; + return this; } - - @java.lang.Override - public Builder clone() { - return super.clone(); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public Builder clearEndpointIds() { + if (endpointIdsBuilder_ == null) { + endpointIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + } else { + endpointIdsBuilder_.clear(); + } + return this; } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public Builder removeEndpointIds(int index) { + if (endpointIdsBuilder_ == null) { + ensureEndpointIdsIsMutable(); + endpointIds_.remove(index); + onChanged(); + } else { + endpointIdsBuilder_.remove(index); + } + return this; } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointId.Builder getEndpointIdsBuilder( + int index) { + return getEndpointIdsFieldBuilder().getBuilder(index); } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdsOrBuilder( + int index) { + if (endpointIdsBuilder_ == null) { + return endpointIds_.get(index); } else { + return endpointIdsBuilder_.getMessageOrBuilder(index); + } } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getEndpointIdsOrBuilderList() { + if (endpointIdsBuilder_ != null) { + return endpointIdsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(endpointIds_); + } } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointId.Builder addEndpointIdsBuilder() { + return getEndpointIdsFieldBuilder().addBuilder( + context.ContextOuterClass.EndPointId.getDefaultInstance()); } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.Constraint_SLA_Isolation_level) { - return mergeFrom((context.ContextOuterClass.Constraint_SLA_Isolation_level)other); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointId.Builder addEndpointIdsBuilder( + int index) { + return getEndpointIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.EndPointId.getDefaultInstance()); + } + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public java.util.List<context.ContextOuterClass.EndPointId.Builder> + getEndpointIdsBuilderList() { + return getEndpointIdsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> + getEndpointIdsFieldBuilder() { + if (endpointIdsBuilder_ == null) { + endpointIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( + endpointIds_, + ((bitField0_ & 0x00000002) != 0), + getParentForChildren(), + isClean()); + endpointIds_ = null; + } + return endpointIdsBuilder_; + } + + private java.util.List<context.ContextOuterClass.LinkId> linkIds_ = + java.util.Collections.emptyList(); + private void ensureLinkIdsIsMutable() { + if (!((bitField0_ & 0x00000004) != 0)) { + linkIds_ = new java.util.ArrayList<context.ContextOuterClass.LinkId>(linkIds_); + bitField0_ |= 0x00000004; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> linkIdsBuilder_; + + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + public java.util.List<context.ContextOuterClass.LinkId> getLinkIdsList() { + if (linkIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(linkIds_); + } else { + return linkIdsBuilder_.getMessageList(); + } + } + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + public int getLinkIdsCount() { + if (linkIdsBuilder_ == null) { + return linkIds_.size(); + } else { + return linkIdsBuilder_.getCount(); + } + } + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + public context.ContextOuterClass.LinkId getLinkIds(int index) { + if (linkIdsBuilder_ == null) { + return linkIds_.get(index); } else { - super.mergeFrom(other); - return this; + return linkIdsBuilder_.getMessage(index); } } - - public Builder mergeFrom(context.ContextOuterClass.Constraint_SLA_Isolation_level other) { - if (other == context.ContextOuterClass.Constraint_SLA_Isolation_level.getDefaultInstance()) return this; - if (!other.isolationLevel_.isEmpty()) { - if (isolationLevel_.isEmpty()) { - isolationLevel_ = other.isolationLevel_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureIsolationLevelIsMutable(); - isolationLevel_.addAll(other.isolationLevel_); + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + public Builder setLinkIds( + int index, context.ContextOuterClass.LinkId value) { + if (linkIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + ensureLinkIdsIsMutable(); + linkIds_.set(index, value); onChanged(); + } else { + linkIdsBuilder_.setMessage(index, value); } - this.mergeUnknownFields(other.unknownFields); - onChanged(); return this; } - - @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 { - context.ContextOuterClass.Constraint_SLA_Isolation_level parsedMessage = null; - try { - parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Constraint_SLA_Isolation_level) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); - } + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + public Builder setLinkIds( + int index, context.ContextOuterClass.LinkId.Builder builderForValue) { + if (linkIdsBuilder_ == null) { + ensureLinkIdsIsMutable(); + linkIds_.set(index, builderForValue.build()); + onChanged(); + } else { + linkIdsBuilder_.setMessage(index, builderForValue.build()); } return this; } - private int bitField0_; - - private java.util.List<java.lang.Integer> isolationLevel_ = - java.util.Collections.emptyList(); - private void ensureIsolationLevelIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - isolationLevel_ = new java.util.ArrayList<java.lang.Integer>(isolationLevel_); - bitField0_ |= 0x00000001; + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + public Builder addLinkIds(context.ContextOuterClass.LinkId value) { + if (linkIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLinkIdsIsMutable(); + linkIds_.add(value); + onChanged(); + } else { + linkIdsBuilder_.addMessage(value); } + return this; } /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @return A list containing the isolationLevel. + * <code>repeated .context.LinkId link_ids = 4;</code> */ - public java.util.List<context.ContextOuterClass.IsolationLevelEnum> getIsolationLevelList() { - return new com.google.protobuf.Internal.ListAdapter< - java.lang.Integer, context.ContextOuterClass.IsolationLevelEnum>(isolationLevel_, isolationLevel_converter_); + public Builder addLinkIds( + int index, context.ContextOuterClass.LinkId value) { + if (linkIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLinkIdsIsMutable(); + linkIds_.add(index, value); + onChanged(); + } else { + linkIdsBuilder_.addMessage(index, value); + } + return this; } /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @return The count of isolationLevel. + * <code>repeated .context.LinkId link_ids = 4;</code> */ - public int getIsolationLevelCount() { - return isolationLevel_.size(); + public Builder addLinkIds( + context.ContextOuterClass.LinkId.Builder builderForValue) { + if (linkIdsBuilder_ == null) { + ensureLinkIdsIsMutable(); + linkIds_.add(builderForValue.build()); + onChanged(); + } else { + linkIdsBuilder_.addMessage(builderForValue.build()); + } + return this; } /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @param index The index of the element to return. - * @return The isolationLevel at the given index. + * <code>repeated .context.LinkId link_ids = 4;</code> */ - public context.ContextOuterClass.IsolationLevelEnum getIsolationLevel(int index) { - return isolationLevel_converter_.convert(isolationLevel_.get(index)); + public Builder addLinkIds( + int index, context.ContextOuterClass.LinkId.Builder builderForValue) { + if (linkIdsBuilder_ == null) { + ensureLinkIdsIsMutable(); + linkIds_.add(index, builderForValue.build()); + onChanged(); + } else { + linkIdsBuilder_.addMessage(index, builderForValue.build()); + } + return this; } /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @param index The index to set the value at. - * @param value The isolationLevel to set. - * @return This builder for chaining. + * <code>repeated .context.LinkId link_ids = 4;</code> */ - public Builder setIsolationLevel( - int index, context.ContextOuterClass.IsolationLevelEnum value) { - if (value == null) { - throw new NullPointerException(); + public Builder addAllLinkIds( + java.lang.Iterable<? extends context.ContextOuterClass.LinkId> values) { + if (linkIdsBuilder_ == null) { + ensureLinkIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, linkIds_); + onChanged(); + } else { + linkIdsBuilder_.addAllMessages(values); } - ensureIsolationLevelIsMutable(); - isolationLevel_.set(index, value.getNumber()); - onChanged(); return this; } /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @param value The isolationLevel to add. - * @return This builder for chaining. + * <code>repeated .context.LinkId link_ids = 4;</code> */ - public Builder addIsolationLevel(context.ContextOuterClass.IsolationLevelEnum value) { - if (value == null) { - throw new NullPointerException(); + public Builder clearLinkIds() { + if (linkIdsBuilder_ == null) { + linkIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + } else { + linkIdsBuilder_.clear(); } - ensureIsolationLevelIsMutable(); - isolationLevel_.add(value.getNumber()); - onChanged(); return this; } /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @param values The isolationLevel to add. - * @return This builder for chaining. + * <code>repeated .context.LinkId link_ids = 4;</code> */ - public Builder addAllIsolationLevel( - java.lang.Iterable<? extends context.ContextOuterClass.IsolationLevelEnum> values) { - ensureIsolationLevelIsMutable(); - for (context.ContextOuterClass.IsolationLevelEnum value : values) { - isolationLevel_.add(value.getNumber()); + public Builder removeLinkIds(int index) { + if (linkIdsBuilder_ == null) { + ensureLinkIdsIsMutable(); + linkIds_.remove(index); + onChanged(); + } else { + linkIdsBuilder_.remove(index); } - onChanged(); return this; } /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @return This builder for chaining. + * <code>repeated .context.LinkId link_ids = 4;</code> */ - public Builder clearIsolationLevel() { - isolationLevel_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - return this; + public context.ContextOuterClass.LinkId.Builder getLinkIdsBuilder( + int index) { + return getLinkIdsFieldBuilder().getBuilder(index); } /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @return A list containing the enum numeric values on the wire for isolationLevel. + * <code>repeated .context.LinkId link_ids = 4;</code> */ - public java.util.List<java.lang.Integer> - getIsolationLevelValueList() { - return java.util.Collections.unmodifiableList(isolationLevel_); + public context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder( + int index) { + if (linkIdsBuilder_ == null) { + return linkIds_.get(index); } else { + return linkIdsBuilder_.getMessageOrBuilder(index); + } } /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @param index The index of the value to return. - * @return The enum numeric value on the wire of isolationLevel at the given index. + * <code>repeated .context.LinkId link_ids = 4;</code> */ - public int getIsolationLevelValue(int index) { - return isolationLevel_.get(index); + public java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> + getLinkIdsOrBuilderList() { + if (linkIdsBuilder_ != null) { + return linkIdsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(linkIds_); + } } /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @param index The index of the value to return. - * @return The enum numeric value on the wire of isolationLevel at the given index. - * @return This builder for chaining. + * <code>repeated .context.LinkId link_ids = 4;</code> */ - public Builder setIsolationLevelValue( - int index, int value) { - ensureIsolationLevelIsMutable(); - isolationLevel_.set(index, value); - onChanged(); - return this; + public context.ContextOuterClass.LinkId.Builder addLinkIdsBuilder() { + return getLinkIdsFieldBuilder().addBuilder( + context.ContextOuterClass.LinkId.getDefaultInstance()); } /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @param value The enum numeric value on the wire for isolationLevel to add. - * @return This builder for chaining. + * <code>repeated .context.LinkId link_ids = 4;</code> */ - public Builder addIsolationLevelValue(int value) { - ensureIsolationLevelIsMutable(); - isolationLevel_.add(value); - onChanged(); - return this; + public context.ContextOuterClass.LinkId.Builder addLinkIdsBuilder( + int index) { + return getLinkIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.LinkId.getDefaultInstance()); } /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @param values The enum numeric values on the wire for isolationLevel to add. - * @return This builder for chaining. + * <code>repeated .context.LinkId link_ids = 4;</code> */ - public Builder addAllIsolationLevelValue( - java.lang.Iterable<java.lang.Integer> values) { - ensureIsolationLevelIsMutable(); - for (int value : values) { - isolationLevel_.add(value); + public java.util.List<context.ContextOuterClass.LinkId.Builder> + getLinkIdsBuilderList() { + return getLinkIdsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> + getLinkIdsFieldBuilder() { + if (linkIdsBuilder_ == null) { + linkIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder>( + linkIds_, + ((bitField0_ & 0x00000004) != 0), + getParentForChildren(), + isClean()); + linkIds_ = null; } - onChanged(); - return this; + return linkIdsBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -64631,41 +69369,41 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.Constraint_SLA_Isolation_level) + // @@protoc_insertion_point(builder_scope:context.Constraint_Exclusions) } - // @@protoc_insertion_point(class_scope:context.Constraint_SLA_Isolation_level) - private static final context.ContextOuterClass.Constraint_SLA_Isolation_level DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Constraint_Exclusions) + private static final context.ContextOuterClass.Constraint_Exclusions DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_SLA_Isolation_level(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_Exclusions(); } - public static context.ContextOuterClass.Constraint_SLA_Isolation_level getDefaultInstance() { + public static context.ContextOuterClass.Constraint_Exclusions getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<Constraint_SLA_Isolation_level> - PARSER = new com.google.protobuf.AbstractParser<Constraint_SLA_Isolation_level>() { + private static final com.google.protobuf.Parser<Constraint_Exclusions> + PARSER = new com.google.protobuf.AbstractParser<Constraint_Exclusions>() { @java.lang.Override - public Constraint_SLA_Isolation_level parsePartialFrom( + public Constraint_Exclusions parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new Constraint_SLA_Isolation_level(input, extensionRegistry); + return new Constraint_Exclusions(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<Constraint_SLA_Isolation_level> parser() { + public static com.google.protobuf.Parser<Constraint_Exclusions> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<Constraint_SLA_Isolation_level> getParserForType() { + public com.google.protobuf.Parser<Constraint_Exclusions> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Isolation_level getDefaultInstanceForType() { + public context.ContextOuterClass.Constraint_Exclusions getDefaultInstanceForType() { return DEFAULT_INSTANCE; } @@ -64676,125 +69414,151 @@ public final class ContextOuterClass { com.google.protobuf.MessageOrBuilder { /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.ConstraintActionEnum action = 1;</code> + * @return The enum numeric value on the wire for action. + */ + int getActionValue(); + /** + * <code>.context.ConstraintActionEnum action = 1;</code> + * @return The action. + */ + context.ContextOuterClass.ConstraintActionEnum getAction(); + + /** + * <code>.context.Constraint_Custom custom = 2;</code> * @return Whether the custom field is set. */ boolean hasCustom(); /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> * @return The custom. */ context.ContextOuterClass.Constraint_Custom getCustom(); /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> */ context.ContextOuterClass.Constraint_CustomOrBuilder getCustomOrBuilder(); /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> * @return Whether the schedule field is set. */ boolean hasSchedule(); /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> * @return The schedule. */ context.ContextOuterClass.Constraint_Schedule getSchedule(); /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> */ context.ContextOuterClass.Constraint_ScheduleOrBuilder getScheduleOrBuilder(); /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> * @return Whether the endpointLocation field is set. */ boolean hasEndpointLocation(); /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> * @return The endpointLocation. */ context.ContextOuterClass.Constraint_EndPointLocation getEndpointLocation(); /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> */ context.ContextOuterClass.Constraint_EndPointLocationOrBuilder getEndpointLocationOrBuilder(); /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> * @return Whether the endpointPriority field is set. */ boolean hasEndpointPriority(); /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> * @return The endpointPriority. */ context.ContextOuterClass.Constraint_EndPointPriority getEndpointPriority(); /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> */ context.ContextOuterClass.Constraint_EndPointPriorityOrBuilder getEndpointPriorityOrBuilder(); /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> * @return Whether the slaCapacity field is set. */ boolean hasSlaCapacity(); /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> * @return The slaCapacity. */ context.ContextOuterClass.Constraint_SLA_Capacity getSlaCapacity(); /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> */ context.ContextOuterClass.Constraint_SLA_CapacityOrBuilder getSlaCapacityOrBuilder(); /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> * @return Whether the slaLatency field is set. */ boolean hasSlaLatency(); /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> * @return The slaLatency. */ context.ContextOuterClass.Constraint_SLA_Latency getSlaLatency(); /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> */ context.ContextOuterClass.Constraint_SLA_LatencyOrBuilder getSlaLatencyOrBuilder(); /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> * @return Whether the slaAvailability field is set. */ boolean hasSlaAvailability(); /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> * @return The slaAvailability. */ context.ContextOuterClass.Constraint_SLA_Availability getSlaAvailability(); /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> */ context.ContextOuterClass.Constraint_SLA_AvailabilityOrBuilder getSlaAvailabilityOrBuilder(); /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> * @return Whether the slaIsolation field is set. */ boolean hasSlaIsolation(); /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> * @return The slaIsolation. */ context.ContextOuterClass.Constraint_SLA_Isolation_level getSlaIsolation(); /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> */ context.ContextOuterClass.Constraint_SLA_Isolation_levelOrBuilder getSlaIsolationOrBuilder(); + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + * @return Whether the exclusions field is set. + */ + boolean hasExclusions(); + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + * @return The exclusions. + */ + context.ContextOuterClass.Constraint_Exclusions getExclusions(); + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + */ + context.ContextOuterClass.Constraint_ExclusionsOrBuilder getExclusionsOrBuilder(); + public context.ContextOuterClass.Constraint.ConstraintCase getConstraintCase(); } /** @@ -64810,6 +69574,7 @@ public final class ContextOuterClass { super(builder); } private Constraint() { + action_ = 0; } @java.lang.Override @@ -64842,9 +69607,15 @@ public final class ContextOuterClass { case 0: done = true; break; - case 10: { + case 8: { + int rawValue = input.readEnum(); + + action_ = rawValue; + break; + } + case 18: { context.ContextOuterClass.Constraint_Custom.Builder subBuilder = null; - if (constraintCase_ == 1) { + if (constraintCase_ == 2) { subBuilder = ((context.ContextOuterClass.Constraint_Custom) constraint_).toBuilder(); } constraint_ = @@ -64853,12 +69624,12 @@ public final class ContextOuterClass { subBuilder.mergeFrom((context.ContextOuterClass.Constraint_Custom) constraint_); constraint_ = subBuilder.buildPartial(); } - constraintCase_ = 1; + constraintCase_ = 2; break; } - case 18: { + case 26: { context.ContextOuterClass.Constraint_Schedule.Builder subBuilder = null; - if (constraintCase_ == 2) { + if (constraintCase_ == 3) { subBuilder = ((context.ContextOuterClass.Constraint_Schedule) constraint_).toBuilder(); } constraint_ = @@ -64867,12 +69638,12 @@ public final class ContextOuterClass { subBuilder.mergeFrom((context.ContextOuterClass.Constraint_Schedule) constraint_); constraint_ = subBuilder.buildPartial(); } - constraintCase_ = 2; + constraintCase_ = 3; break; } - case 26: { + case 34: { context.ContextOuterClass.Constraint_EndPointLocation.Builder subBuilder = null; - if (constraintCase_ == 3) { + if (constraintCase_ == 4) { subBuilder = ((context.ContextOuterClass.Constraint_EndPointLocation) constraint_).toBuilder(); } constraint_ = @@ -64881,12 +69652,12 @@ public final class ContextOuterClass { subBuilder.mergeFrom((context.ContextOuterClass.Constraint_EndPointLocation) constraint_); constraint_ = subBuilder.buildPartial(); } - constraintCase_ = 3; + constraintCase_ = 4; break; } - case 34: { + case 42: { context.ContextOuterClass.Constraint_EndPointPriority.Builder subBuilder = null; - if (constraintCase_ == 4) { + if (constraintCase_ == 5) { subBuilder = ((context.ContextOuterClass.Constraint_EndPointPriority) constraint_).toBuilder(); } constraint_ = @@ -64895,12 +69666,12 @@ public final class ContextOuterClass { subBuilder.mergeFrom((context.ContextOuterClass.Constraint_EndPointPriority) constraint_); constraint_ = subBuilder.buildPartial(); } - constraintCase_ = 4; + constraintCase_ = 5; break; } - case 42: { + case 50: { context.ContextOuterClass.Constraint_SLA_Capacity.Builder subBuilder = null; - if (constraintCase_ == 5) { + if (constraintCase_ == 6) { subBuilder = ((context.ContextOuterClass.Constraint_SLA_Capacity) constraint_).toBuilder(); } constraint_ = @@ -64909,12 +69680,12 @@ public final class ContextOuterClass { subBuilder.mergeFrom((context.ContextOuterClass.Constraint_SLA_Capacity) constraint_); constraint_ = subBuilder.buildPartial(); } - constraintCase_ = 5; + constraintCase_ = 6; break; } - case 50: { + case 58: { context.ContextOuterClass.Constraint_SLA_Latency.Builder subBuilder = null; - if (constraintCase_ == 6) { + if (constraintCase_ == 7) { subBuilder = ((context.ContextOuterClass.Constraint_SLA_Latency) constraint_).toBuilder(); } constraint_ = @@ -64923,12 +69694,12 @@ public final class ContextOuterClass { subBuilder.mergeFrom((context.ContextOuterClass.Constraint_SLA_Latency) constraint_); constraint_ = subBuilder.buildPartial(); } - constraintCase_ = 6; + constraintCase_ = 7; break; } - case 58: { + case 66: { context.ContextOuterClass.Constraint_SLA_Availability.Builder subBuilder = null; - if (constraintCase_ == 7) { + if (constraintCase_ == 8) { subBuilder = ((context.ContextOuterClass.Constraint_SLA_Availability) constraint_).toBuilder(); } constraint_ = @@ -64937,12 +69708,12 @@ public final class ContextOuterClass { subBuilder.mergeFrom((context.ContextOuterClass.Constraint_SLA_Availability) constraint_); constraint_ = subBuilder.buildPartial(); } - constraintCase_ = 7; + constraintCase_ = 8; break; } - case 66: { + case 74: { context.ContextOuterClass.Constraint_SLA_Isolation_level.Builder subBuilder = null; - if (constraintCase_ == 8) { + if (constraintCase_ == 9) { subBuilder = ((context.ContextOuterClass.Constraint_SLA_Isolation_level) constraint_).toBuilder(); } constraint_ = @@ -64951,7 +69722,21 @@ public final class ContextOuterClass { subBuilder.mergeFrom((context.ContextOuterClass.Constraint_SLA_Isolation_level) constraint_); constraint_ = subBuilder.buildPartial(); } - constraintCase_ = 8; + constraintCase_ = 9; + break; + } + case 82: { + context.ContextOuterClass.Constraint_Exclusions.Builder subBuilder = null; + if (constraintCase_ == 10) { + subBuilder = ((context.ContextOuterClass.Constraint_Exclusions) constraint_).toBuilder(); + } + constraint_ = + input.readMessage(context.ContextOuterClass.Constraint_Exclusions.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom((context.ContextOuterClass.Constraint_Exclusions) constraint_); + constraint_ = subBuilder.buildPartial(); + } + constraintCase_ = 10; break; } default: { @@ -64991,14 +69776,15 @@ public final class ContextOuterClass { public enum ConstraintCase implements com.google.protobuf.Internal.EnumLite, com.google.protobuf.AbstractMessage.InternalOneOfEnum { - CUSTOM(1), - SCHEDULE(2), - ENDPOINT_LOCATION(3), - ENDPOINT_PRIORITY(4), - SLA_CAPACITY(5), - SLA_LATENCY(6), - SLA_AVAILABILITY(7), - SLA_ISOLATION(8), + CUSTOM(2), + SCHEDULE(3), + ENDPOINT_LOCATION(4), + ENDPOINT_PRIORITY(5), + SLA_CAPACITY(6), + SLA_LATENCY(7), + SLA_AVAILABILITY(8), + SLA_ISOLATION(9), + EXCLUSIONS(10), CONSTRAINT_NOT_SET(0); private final int value; private ConstraintCase(int value) { @@ -65016,14 +69802,15 @@ public final class ContextOuterClass { public static ConstraintCase forNumber(int value) { switch (value) { - case 1: return CUSTOM; - case 2: return SCHEDULE; - case 3: return ENDPOINT_LOCATION; - case 4: return ENDPOINT_PRIORITY; - case 5: return SLA_CAPACITY; - case 6: return SLA_LATENCY; - case 7: return SLA_AVAILABILITY; - case 8: return SLA_ISOLATION; + case 2: return CUSTOM; + case 3: return SCHEDULE; + case 4: return ENDPOINT_LOCATION; + case 5: return ENDPOINT_PRIORITY; + case 6: return SLA_CAPACITY; + case 7: return SLA_LATENCY; + case 8: return SLA_AVAILABILITY; + case 9: return SLA_ISOLATION; + case 10: return EXCLUSIONS; case 0: return CONSTRAINT_NOT_SET; default: return null; } @@ -65039,254 +69826,304 @@ public final class ContextOuterClass { constraintCase_); } - public static final int CUSTOM_FIELD_NUMBER = 1; + public static final int ACTION_FIELD_NUMBER = 1; + private int action_; + /** + * <code>.context.ConstraintActionEnum action = 1;</code> + * @return The enum numeric value on the wire for action. + */ + @java.lang.Override public int getActionValue() { + return action_; + } + /** + * <code>.context.ConstraintActionEnum action = 1;</code> + * @return The action. + */ + @java.lang.Override public context.ContextOuterClass.ConstraintActionEnum getAction() { + @SuppressWarnings("deprecation") + context.ContextOuterClass.ConstraintActionEnum result = context.ContextOuterClass.ConstraintActionEnum.valueOf(action_); + return result == null ? context.ContextOuterClass.ConstraintActionEnum.UNRECOGNIZED : result; + } + + public static final int CUSTOM_FIELD_NUMBER = 2; /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> * @return Whether the custom field is set. */ @java.lang.Override public boolean hasCustom() { - return constraintCase_ == 1; + return constraintCase_ == 2; } /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> * @return The custom. */ @java.lang.Override public context.ContextOuterClass.Constraint_Custom getCustom() { - if (constraintCase_ == 1) { + if (constraintCase_ == 2) { return (context.ContextOuterClass.Constraint_Custom) constraint_; } return context.ContextOuterClass.Constraint_Custom.getDefaultInstance(); } /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_CustomOrBuilder getCustomOrBuilder() { - if (constraintCase_ == 1) { + if (constraintCase_ == 2) { return (context.ContextOuterClass.Constraint_Custom) constraint_; } return context.ContextOuterClass.Constraint_Custom.getDefaultInstance(); } - public static final int SCHEDULE_FIELD_NUMBER = 2; + public static final int SCHEDULE_FIELD_NUMBER = 3; /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> * @return Whether the schedule field is set. */ @java.lang.Override public boolean hasSchedule() { - return constraintCase_ == 2; + return constraintCase_ == 3; } /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> * @return The schedule. */ @java.lang.Override public context.ContextOuterClass.Constraint_Schedule getSchedule() { - if (constraintCase_ == 2) { + if (constraintCase_ == 3) { return (context.ContextOuterClass.Constraint_Schedule) constraint_; } return context.ContextOuterClass.Constraint_Schedule.getDefaultInstance(); } /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_ScheduleOrBuilder getScheduleOrBuilder() { - if (constraintCase_ == 2) { + if (constraintCase_ == 3) { return (context.ContextOuterClass.Constraint_Schedule) constraint_; } return context.ContextOuterClass.Constraint_Schedule.getDefaultInstance(); } - public static final int ENDPOINT_LOCATION_FIELD_NUMBER = 3; + public static final int ENDPOINT_LOCATION_FIELD_NUMBER = 4; /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> * @return Whether the endpointLocation field is set. */ @java.lang.Override public boolean hasEndpointLocation() { - return constraintCase_ == 3; + return constraintCase_ == 4; } /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> * @return The endpointLocation. */ @java.lang.Override public context.ContextOuterClass.Constraint_EndPointLocation getEndpointLocation() { - if (constraintCase_ == 3) { + if (constraintCase_ == 4) { return (context.ContextOuterClass.Constraint_EndPointLocation) constraint_; } return context.ContextOuterClass.Constraint_EndPointLocation.getDefaultInstance(); } /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_EndPointLocationOrBuilder getEndpointLocationOrBuilder() { - if (constraintCase_ == 3) { + if (constraintCase_ == 4) { return (context.ContextOuterClass.Constraint_EndPointLocation) constraint_; } return context.ContextOuterClass.Constraint_EndPointLocation.getDefaultInstance(); } - public static final int ENDPOINT_PRIORITY_FIELD_NUMBER = 4; + public static final int ENDPOINT_PRIORITY_FIELD_NUMBER = 5; /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> * @return Whether the endpointPriority field is set. */ @java.lang.Override public boolean hasEndpointPriority() { - return constraintCase_ == 4; + return constraintCase_ == 5; } /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> * @return The endpointPriority. */ @java.lang.Override public context.ContextOuterClass.Constraint_EndPointPriority getEndpointPriority() { - if (constraintCase_ == 4) { + if (constraintCase_ == 5) { return (context.ContextOuterClass.Constraint_EndPointPriority) constraint_; } return context.ContextOuterClass.Constraint_EndPointPriority.getDefaultInstance(); } /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_EndPointPriorityOrBuilder getEndpointPriorityOrBuilder() { - if (constraintCase_ == 4) { + if (constraintCase_ == 5) { return (context.ContextOuterClass.Constraint_EndPointPriority) constraint_; } return context.ContextOuterClass.Constraint_EndPointPriority.getDefaultInstance(); } - public static final int SLA_CAPACITY_FIELD_NUMBER = 5; + public static final int SLA_CAPACITY_FIELD_NUMBER = 6; /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> * @return Whether the slaCapacity field is set. */ @java.lang.Override public boolean hasSlaCapacity() { - return constraintCase_ == 5; + return constraintCase_ == 6; } /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> * @return The slaCapacity. */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_Capacity getSlaCapacity() { - if (constraintCase_ == 5) { + if (constraintCase_ == 6) { return (context.ContextOuterClass.Constraint_SLA_Capacity) constraint_; } return context.ContextOuterClass.Constraint_SLA_Capacity.getDefaultInstance(); } /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_CapacityOrBuilder getSlaCapacityOrBuilder() { - if (constraintCase_ == 5) { + if (constraintCase_ == 6) { return (context.ContextOuterClass.Constraint_SLA_Capacity) constraint_; } return context.ContextOuterClass.Constraint_SLA_Capacity.getDefaultInstance(); } - public static final int SLA_LATENCY_FIELD_NUMBER = 6; + public static final int SLA_LATENCY_FIELD_NUMBER = 7; /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> * @return Whether the slaLatency field is set. */ @java.lang.Override public boolean hasSlaLatency() { - return constraintCase_ == 6; + return constraintCase_ == 7; } /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> * @return The slaLatency. */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_Latency getSlaLatency() { - if (constraintCase_ == 6) { + if (constraintCase_ == 7) { return (context.ContextOuterClass.Constraint_SLA_Latency) constraint_; } return context.ContextOuterClass.Constraint_SLA_Latency.getDefaultInstance(); } /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_LatencyOrBuilder getSlaLatencyOrBuilder() { - if (constraintCase_ == 6) { + if (constraintCase_ == 7) { return (context.ContextOuterClass.Constraint_SLA_Latency) constraint_; } return context.ContextOuterClass.Constraint_SLA_Latency.getDefaultInstance(); } - public static final int SLA_AVAILABILITY_FIELD_NUMBER = 7; + public static final int SLA_AVAILABILITY_FIELD_NUMBER = 8; /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> * @return Whether the slaAvailability field is set. */ @java.lang.Override public boolean hasSlaAvailability() { - return constraintCase_ == 7; + return constraintCase_ == 8; } /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> * @return The slaAvailability. */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_Availability getSlaAvailability() { - if (constraintCase_ == 7) { + if (constraintCase_ == 8) { return (context.ContextOuterClass.Constraint_SLA_Availability) constraint_; } return context.ContextOuterClass.Constraint_SLA_Availability.getDefaultInstance(); } /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_AvailabilityOrBuilder getSlaAvailabilityOrBuilder() { - if (constraintCase_ == 7) { + if (constraintCase_ == 8) { return (context.ContextOuterClass.Constraint_SLA_Availability) constraint_; } return context.ContextOuterClass.Constraint_SLA_Availability.getDefaultInstance(); } - public static final int SLA_ISOLATION_FIELD_NUMBER = 8; + public static final int SLA_ISOLATION_FIELD_NUMBER = 9; /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> * @return Whether the slaIsolation field is set. */ @java.lang.Override public boolean hasSlaIsolation() { - return constraintCase_ == 8; + return constraintCase_ == 9; } /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> * @return The slaIsolation. */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_Isolation_level getSlaIsolation() { - if (constraintCase_ == 8) { + if (constraintCase_ == 9) { return (context.ContextOuterClass.Constraint_SLA_Isolation_level) constraint_; } return context.ContextOuterClass.Constraint_SLA_Isolation_level.getDefaultInstance(); } /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_Isolation_levelOrBuilder getSlaIsolationOrBuilder() { - if (constraintCase_ == 8) { + if (constraintCase_ == 9) { return (context.ContextOuterClass.Constraint_SLA_Isolation_level) constraint_; } return context.ContextOuterClass.Constraint_SLA_Isolation_level.getDefaultInstance(); } + public static final int EXCLUSIONS_FIELD_NUMBER = 10; + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + * @return Whether the exclusions field is set. + */ + @java.lang.Override + public boolean hasExclusions() { + return constraintCase_ == 10; + } + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + * @return The exclusions. + */ + @java.lang.Override + public context.ContextOuterClass.Constraint_Exclusions getExclusions() { + if (constraintCase_ == 10) { + return (context.ContextOuterClass.Constraint_Exclusions) constraint_; + } + return context.ContextOuterClass.Constraint_Exclusions.getDefaultInstance(); + } + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + */ + @java.lang.Override + public context.ContextOuterClass.Constraint_ExclusionsOrBuilder getExclusionsOrBuilder() { + if (constraintCase_ == 10) { + return (context.ContextOuterClass.Constraint_Exclusions) constraint_; + } + return context.ContextOuterClass.Constraint_Exclusions.getDefaultInstance(); + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -65301,29 +70138,35 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (constraintCase_ == 1) { - output.writeMessage(1, (context.ContextOuterClass.Constraint_Custom) constraint_); + if (action_ != context.ContextOuterClass.ConstraintActionEnum.CONSTRAINTACTION_UNDEFINED.getNumber()) { + output.writeEnum(1, action_); } if (constraintCase_ == 2) { - output.writeMessage(2, (context.ContextOuterClass.Constraint_Schedule) constraint_); + output.writeMessage(2, (context.ContextOuterClass.Constraint_Custom) constraint_); } if (constraintCase_ == 3) { - output.writeMessage(3, (context.ContextOuterClass.Constraint_EndPointLocation) constraint_); + output.writeMessage(3, (context.ContextOuterClass.Constraint_Schedule) constraint_); } if (constraintCase_ == 4) { - output.writeMessage(4, (context.ContextOuterClass.Constraint_EndPointPriority) constraint_); + output.writeMessage(4, (context.ContextOuterClass.Constraint_EndPointLocation) constraint_); } if (constraintCase_ == 5) { - output.writeMessage(5, (context.ContextOuterClass.Constraint_SLA_Capacity) constraint_); + output.writeMessage(5, (context.ContextOuterClass.Constraint_EndPointPriority) constraint_); } if (constraintCase_ == 6) { - output.writeMessage(6, (context.ContextOuterClass.Constraint_SLA_Latency) constraint_); + output.writeMessage(6, (context.ContextOuterClass.Constraint_SLA_Capacity) constraint_); } if (constraintCase_ == 7) { - output.writeMessage(7, (context.ContextOuterClass.Constraint_SLA_Availability) constraint_); + output.writeMessage(7, (context.ContextOuterClass.Constraint_SLA_Latency) constraint_); } if (constraintCase_ == 8) { - output.writeMessage(8, (context.ContextOuterClass.Constraint_SLA_Isolation_level) constraint_); + output.writeMessage(8, (context.ContextOuterClass.Constraint_SLA_Availability) constraint_); + } + if (constraintCase_ == 9) { + output.writeMessage(9, (context.ContextOuterClass.Constraint_SLA_Isolation_level) constraint_); + } + if (constraintCase_ == 10) { + output.writeMessage(10, (context.ContextOuterClass.Constraint_Exclusions) constraint_); } unknownFields.writeTo(output); } @@ -65334,37 +70177,45 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (constraintCase_ == 1) { + if (action_ != context.ContextOuterClass.ConstraintActionEnum.CONSTRAINTACTION_UNDEFINED.getNumber()) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, (context.ContextOuterClass.Constraint_Custom) constraint_); + .computeEnumSize(1, action_); } if (constraintCase_ == 2) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, (context.ContextOuterClass.Constraint_Schedule) constraint_); + .computeMessageSize(2, (context.ContextOuterClass.Constraint_Custom) constraint_); } if (constraintCase_ == 3) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(3, (context.ContextOuterClass.Constraint_EndPointLocation) constraint_); + .computeMessageSize(3, (context.ContextOuterClass.Constraint_Schedule) constraint_); } if (constraintCase_ == 4) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(4, (context.ContextOuterClass.Constraint_EndPointPriority) constraint_); + .computeMessageSize(4, (context.ContextOuterClass.Constraint_EndPointLocation) constraint_); } if (constraintCase_ == 5) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(5, (context.ContextOuterClass.Constraint_SLA_Capacity) constraint_); + .computeMessageSize(5, (context.ContextOuterClass.Constraint_EndPointPriority) constraint_); } if (constraintCase_ == 6) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(6, (context.ContextOuterClass.Constraint_SLA_Latency) constraint_); + .computeMessageSize(6, (context.ContextOuterClass.Constraint_SLA_Capacity) constraint_); } if (constraintCase_ == 7) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(7, (context.ContextOuterClass.Constraint_SLA_Availability) constraint_); + .computeMessageSize(7, (context.ContextOuterClass.Constraint_SLA_Latency) constraint_); } if (constraintCase_ == 8) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(8, (context.ContextOuterClass.Constraint_SLA_Isolation_level) constraint_); + .computeMessageSize(8, (context.ContextOuterClass.Constraint_SLA_Availability) constraint_); + } + if (constraintCase_ == 9) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(9, (context.ContextOuterClass.Constraint_SLA_Isolation_level) constraint_); + } + if (constraintCase_ == 10) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(10, (context.ContextOuterClass.Constraint_Exclusions) constraint_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -65381,40 +70232,45 @@ public final class ContextOuterClass { } context.ContextOuterClass.Constraint other = (context.ContextOuterClass.Constraint) obj; + if (action_ != other.action_) return false; if (!getConstraintCase().equals(other.getConstraintCase())) return false; switch (constraintCase_) { - case 1: + case 2: if (!getCustom() .equals(other.getCustom())) return false; break; - case 2: + case 3: if (!getSchedule() .equals(other.getSchedule())) return false; break; - case 3: + case 4: if (!getEndpointLocation() .equals(other.getEndpointLocation())) return false; break; - case 4: + case 5: if (!getEndpointPriority() .equals(other.getEndpointPriority())) return false; break; - case 5: + case 6: if (!getSlaCapacity() .equals(other.getSlaCapacity())) return false; break; - case 6: + case 7: if (!getSlaLatency() .equals(other.getSlaLatency())) return false; break; - case 7: + case 8: if (!getSlaAvailability() .equals(other.getSlaAvailability())) return false; break; - case 8: + case 9: if (!getSlaIsolation() .equals(other.getSlaIsolation())) return false; break; + case 10: + if (!getExclusions() + .equals(other.getExclusions())) return false; + break; case 0: default: } @@ -65429,39 +70285,45 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + ACTION_FIELD_NUMBER; + hash = (53 * hash) + action_; switch (constraintCase_) { - case 1: + case 2: hash = (37 * hash) + CUSTOM_FIELD_NUMBER; hash = (53 * hash) + getCustom().hashCode(); break; - case 2: + case 3: hash = (37 * hash) + SCHEDULE_FIELD_NUMBER; hash = (53 * hash) + getSchedule().hashCode(); break; - case 3: + case 4: hash = (37 * hash) + ENDPOINT_LOCATION_FIELD_NUMBER; hash = (53 * hash) + getEndpointLocation().hashCode(); break; - case 4: + case 5: hash = (37 * hash) + ENDPOINT_PRIORITY_FIELD_NUMBER; hash = (53 * hash) + getEndpointPriority().hashCode(); break; - case 5: + case 6: hash = (37 * hash) + SLA_CAPACITY_FIELD_NUMBER; hash = (53 * hash) + getSlaCapacity().hashCode(); break; - case 6: + case 7: hash = (37 * hash) + SLA_LATENCY_FIELD_NUMBER; hash = (53 * hash) + getSlaLatency().hashCode(); break; - case 7: + case 8: hash = (37 * hash) + SLA_AVAILABILITY_FIELD_NUMBER; hash = (53 * hash) + getSlaAvailability().hashCode(); break; - case 8: + case 9: hash = (37 * hash) + SLA_ISOLATION_FIELD_NUMBER; hash = (53 * hash) + getSlaIsolation().hashCode(); break; + case 10: + hash = (37 * hash) + EXCLUSIONS_FIELD_NUMBER; + hash = (53 * hash) + getExclusions().hashCode(); + break; case 0: default: } @@ -65598,6 +70460,8 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); + action_ = 0; + constraintCase_ = 0; constraint_ = null; return this; @@ -65626,62 +70490,70 @@ public final class ContextOuterClass { @java.lang.Override public context.ContextOuterClass.Constraint buildPartial() { context.ContextOuterClass.Constraint result = new context.ContextOuterClass.Constraint(this); - if (constraintCase_ == 1) { + result.action_ = action_; + if (constraintCase_ == 2) { if (customBuilder_ == null) { result.constraint_ = constraint_; } else { result.constraint_ = customBuilder_.build(); } } - if (constraintCase_ == 2) { + if (constraintCase_ == 3) { if (scheduleBuilder_ == null) { result.constraint_ = constraint_; } else { result.constraint_ = scheduleBuilder_.build(); } } - if (constraintCase_ == 3) { + if (constraintCase_ == 4) { if (endpointLocationBuilder_ == null) { result.constraint_ = constraint_; } else { result.constraint_ = endpointLocationBuilder_.build(); } } - if (constraintCase_ == 4) { + if (constraintCase_ == 5) { if (endpointPriorityBuilder_ == null) { result.constraint_ = constraint_; } else { result.constraint_ = endpointPriorityBuilder_.build(); } } - if (constraintCase_ == 5) { + if (constraintCase_ == 6) { if (slaCapacityBuilder_ == null) { result.constraint_ = constraint_; } else { result.constraint_ = slaCapacityBuilder_.build(); } } - if (constraintCase_ == 6) { + if (constraintCase_ == 7) { if (slaLatencyBuilder_ == null) { result.constraint_ = constraint_; } else { result.constraint_ = slaLatencyBuilder_.build(); } } - if (constraintCase_ == 7) { + if (constraintCase_ == 8) { if (slaAvailabilityBuilder_ == null) { result.constraint_ = constraint_; } else { result.constraint_ = slaAvailabilityBuilder_.build(); } } - if (constraintCase_ == 8) { + if (constraintCase_ == 9) { if (slaIsolationBuilder_ == null) { result.constraint_ = constraint_; } else { result.constraint_ = slaIsolationBuilder_.build(); } } + if (constraintCase_ == 10) { + if (exclusionsBuilder_ == null) { + result.constraint_ = constraint_; + } else { + result.constraint_ = exclusionsBuilder_.build(); + } + } result.constraintCase_ = constraintCase_; onBuilt(); return result; @@ -65731,6 +70603,9 @@ public final class ContextOuterClass { public Builder mergeFrom(context.ContextOuterClass.Constraint other) { if (other == context.ContextOuterClass.Constraint.getDefaultInstance()) return this; + if (other.action_ != 0) { + setActionValue(other.getActionValue()); + } switch (other.getConstraintCase()) { case CUSTOM: { mergeCustom(other.getCustom()); @@ -65764,6 +70639,10 @@ public final class ContextOuterClass { mergeSlaIsolation(other.getSlaIsolation()); break; } + case EXCLUSIONS: { + mergeExclusions(other.getExclusions()); + break; + } case CONSTRAINT_NOT_SET: { break; } @@ -65812,36 +70691,90 @@ public final class ContextOuterClass { } + private int action_ = 0; + /** + * <code>.context.ConstraintActionEnum action = 1;</code> + * @return The enum numeric value on the wire for action. + */ + @java.lang.Override public int getActionValue() { + return action_; + } + /** + * <code>.context.ConstraintActionEnum action = 1;</code> + * @param value The enum numeric value on the wire for action to set. + * @return This builder for chaining. + */ + public Builder setActionValue(int value) { + + action_ = value; + onChanged(); + return this; + } + /** + * <code>.context.ConstraintActionEnum action = 1;</code> + * @return The action. + */ + @java.lang.Override + public context.ContextOuterClass.ConstraintActionEnum getAction() { + @SuppressWarnings("deprecation") + context.ContextOuterClass.ConstraintActionEnum result = context.ContextOuterClass.ConstraintActionEnum.valueOf(action_); + return result == null ? context.ContextOuterClass.ConstraintActionEnum.UNRECOGNIZED : result; + } + /** + * <code>.context.ConstraintActionEnum action = 1;</code> + * @param value The action to set. + * @return This builder for chaining. + */ + public Builder setAction(context.ContextOuterClass.ConstraintActionEnum value) { + if (value == null) { + throw new NullPointerException(); + } + + action_ = value.getNumber(); + onChanged(); + return this; + } + /** + * <code>.context.ConstraintActionEnum action = 1;</code> + * @return This builder for chaining. + */ + public Builder clearAction() { + + action_ = 0; + onChanged(); + return this; + } + private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_Custom, context.ContextOuterClass.Constraint_Custom.Builder, context.ContextOuterClass.Constraint_CustomOrBuilder> customBuilder_; /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> * @return Whether the custom field is set. */ @java.lang.Override public boolean hasCustom() { - return constraintCase_ == 1; + return constraintCase_ == 2; } /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> * @return The custom. */ @java.lang.Override public context.ContextOuterClass.Constraint_Custom getCustom() { if (customBuilder_ == null) { - if (constraintCase_ == 1) { + if (constraintCase_ == 2) { return (context.ContextOuterClass.Constraint_Custom) constraint_; } return context.ContextOuterClass.Constraint_Custom.getDefaultInstance(); } else { - if (constraintCase_ == 1) { + if (constraintCase_ == 2) { return customBuilder_.getMessage(); } return context.ContextOuterClass.Constraint_Custom.getDefaultInstance(); } } /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> */ public Builder setCustom(context.ContextOuterClass.Constraint_Custom value) { if (customBuilder_ == null) { @@ -65853,11 +70786,11 @@ public final class ContextOuterClass { } else { customBuilder_.setMessage(value); } - constraintCase_ = 1; + constraintCase_ = 2; return this; } /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> */ public Builder setCustom( context.ContextOuterClass.Constraint_Custom.Builder builderForValue) { @@ -65867,15 +70800,15 @@ public final class ContextOuterClass { } else { customBuilder_.setMessage(builderForValue.build()); } - constraintCase_ = 1; + constraintCase_ = 2; return this; } /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> */ public Builder mergeCustom(context.ContextOuterClass.Constraint_Custom value) { if (customBuilder_ == null) { - if (constraintCase_ == 1 && + if (constraintCase_ == 2 && constraint_ != context.ContextOuterClass.Constraint_Custom.getDefaultInstance()) { constraint_ = context.ContextOuterClass.Constraint_Custom.newBuilder((context.ContextOuterClass.Constraint_Custom) constraint_) .mergeFrom(value).buildPartial(); @@ -65884,26 +70817,26 @@ public final class ContextOuterClass { } onChanged(); } else { - if (constraintCase_ == 1) { + if (constraintCase_ == 2) { customBuilder_.mergeFrom(value); } customBuilder_.setMessage(value); } - constraintCase_ = 1; + constraintCase_ = 2; return this; } /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> */ public Builder clearCustom() { if (customBuilder_ == null) { - if (constraintCase_ == 1) { + if (constraintCase_ == 2) { constraintCase_ = 0; constraint_ = null; onChanged(); } } else { - if (constraintCase_ == 1) { + if (constraintCase_ == 2) { constraintCase_ = 0; constraint_ = null; } @@ -65912,33 +70845,33 @@ public final class ContextOuterClass { return this; } /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> */ public context.ContextOuterClass.Constraint_Custom.Builder getCustomBuilder() { return getCustomFieldBuilder().getBuilder(); } /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_CustomOrBuilder getCustomOrBuilder() { - if ((constraintCase_ == 1) && (customBuilder_ != null)) { + if ((constraintCase_ == 2) && (customBuilder_ != null)) { return customBuilder_.getMessageOrBuilder(); } else { - if (constraintCase_ == 1) { + if (constraintCase_ == 2) { return (context.ContextOuterClass.Constraint_Custom) constraint_; } return context.ContextOuterClass.Constraint_Custom.getDefaultInstance(); } } /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> */ private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_Custom, context.ContextOuterClass.Constraint_Custom.Builder, context.ContextOuterClass.Constraint_CustomOrBuilder> getCustomFieldBuilder() { if (customBuilder_ == null) { - if (!(constraintCase_ == 1)) { + if (!(constraintCase_ == 2)) { constraint_ = context.ContextOuterClass.Constraint_Custom.getDefaultInstance(); } customBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< @@ -65948,7 +70881,7 @@ public final class ContextOuterClass { isClean()); constraint_ = null; } - constraintCase_ = 1; + constraintCase_ = 2; onChanged();; return customBuilder_; } @@ -65956,33 +70889,33 @@ public final class ContextOuterClass { private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_Schedule, context.ContextOuterClass.Constraint_Schedule.Builder, context.ContextOuterClass.Constraint_ScheduleOrBuilder> scheduleBuilder_; /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> * @return Whether the schedule field is set. */ @java.lang.Override public boolean hasSchedule() { - return constraintCase_ == 2; + return constraintCase_ == 3; } /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> * @return The schedule. */ @java.lang.Override public context.ContextOuterClass.Constraint_Schedule getSchedule() { if (scheduleBuilder_ == null) { - if (constraintCase_ == 2) { + if (constraintCase_ == 3) { return (context.ContextOuterClass.Constraint_Schedule) constraint_; } return context.ContextOuterClass.Constraint_Schedule.getDefaultInstance(); } else { - if (constraintCase_ == 2) { + if (constraintCase_ == 3) { return scheduleBuilder_.getMessage(); } return context.ContextOuterClass.Constraint_Schedule.getDefaultInstance(); } } /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> */ public Builder setSchedule(context.ContextOuterClass.Constraint_Schedule value) { if (scheduleBuilder_ == null) { @@ -65994,11 +70927,11 @@ public final class ContextOuterClass { } else { scheduleBuilder_.setMessage(value); } - constraintCase_ = 2; + constraintCase_ = 3; return this; } /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> */ public Builder setSchedule( context.ContextOuterClass.Constraint_Schedule.Builder builderForValue) { @@ -66008,15 +70941,15 @@ public final class ContextOuterClass { } else { scheduleBuilder_.setMessage(builderForValue.build()); } - constraintCase_ = 2; + constraintCase_ = 3; return this; } /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> */ public Builder mergeSchedule(context.ContextOuterClass.Constraint_Schedule value) { if (scheduleBuilder_ == null) { - if (constraintCase_ == 2 && + if (constraintCase_ == 3 && constraint_ != context.ContextOuterClass.Constraint_Schedule.getDefaultInstance()) { constraint_ = context.ContextOuterClass.Constraint_Schedule.newBuilder((context.ContextOuterClass.Constraint_Schedule) constraint_) .mergeFrom(value).buildPartial(); @@ -66025,26 +70958,26 @@ public final class ContextOuterClass { } onChanged(); } else { - if (constraintCase_ == 2) { + if (constraintCase_ == 3) { scheduleBuilder_.mergeFrom(value); } scheduleBuilder_.setMessage(value); } - constraintCase_ = 2; + constraintCase_ = 3; return this; } /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> */ public Builder clearSchedule() { if (scheduleBuilder_ == null) { - if (constraintCase_ == 2) { + if (constraintCase_ == 3) { constraintCase_ = 0; constraint_ = null; onChanged(); } } else { - if (constraintCase_ == 2) { + if (constraintCase_ == 3) { constraintCase_ = 0; constraint_ = null; } @@ -66053,33 +70986,33 @@ public final class ContextOuterClass { return this; } /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> */ public context.ContextOuterClass.Constraint_Schedule.Builder getScheduleBuilder() { return getScheduleFieldBuilder().getBuilder(); } /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_ScheduleOrBuilder getScheduleOrBuilder() { - if ((constraintCase_ == 2) && (scheduleBuilder_ != null)) { + if ((constraintCase_ == 3) && (scheduleBuilder_ != null)) { return scheduleBuilder_.getMessageOrBuilder(); } else { - if (constraintCase_ == 2) { + if (constraintCase_ == 3) { return (context.ContextOuterClass.Constraint_Schedule) constraint_; } return context.ContextOuterClass.Constraint_Schedule.getDefaultInstance(); } } /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> */ private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_Schedule, context.ContextOuterClass.Constraint_Schedule.Builder, context.ContextOuterClass.Constraint_ScheduleOrBuilder> getScheduleFieldBuilder() { if (scheduleBuilder_ == null) { - if (!(constraintCase_ == 2)) { + if (!(constraintCase_ == 3)) { constraint_ = context.ContextOuterClass.Constraint_Schedule.getDefaultInstance(); } scheduleBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< @@ -66089,7 +71022,7 @@ public final class ContextOuterClass { isClean()); constraint_ = null; } - constraintCase_ = 2; + constraintCase_ = 3; onChanged();; return scheduleBuilder_; } @@ -66097,33 +71030,33 @@ public final class ContextOuterClass { private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_EndPointLocation, context.ContextOuterClass.Constraint_EndPointLocation.Builder, context.ContextOuterClass.Constraint_EndPointLocationOrBuilder> endpointLocationBuilder_; /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> * @return Whether the endpointLocation field is set. */ @java.lang.Override public boolean hasEndpointLocation() { - return constraintCase_ == 3; + return constraintCase_ == 4; } /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> * @return The endpointLocation. */ @java.lang.Override public context.ContextOuterClass.Constraint_EndPointLocation getEndpointLocation() { if (endpointLocationBuilder_ == null) { - if (constraintCase_ == 3) { + if (constraintCase_ == 4) { return (context.ContextOuterClass.Constraint_EndPointLocation) constraint_; } return context.ContextOuterClass.Constraint_EndPointLocation.getDefaultInstance(); } else { - if (constraintCase_ == 3) { + if (constraintCase_ == 4) { return endpointLocationBuilder_.getMessage(); } return context.ContextOuterClass.Constraint_EndPointLocation.getDefaultInstance(); } } /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> */ public Builder setEndpointLocation(context.ContextOuterClass.Constraint_EndPointLocation value) { if (endpointLocationBuilder_ == null) { @@ -66135,11 +71068,11 @@ public final class ContextOuterClass { } else { endpointLocationBuilder_.setMessage(value); } - constraintCase_ = 3; + constraintCase_ = 4; return this; } /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> */ public Builder setEndpointLocation( context.ContextOuterClass.Constraint_EndPointLocation.Builder builderForValue) { @@ -66149,15 +71082,15 @@ public final class ContextOuterClass { } else { endpointLocationBuilder_.setMessage(builderForValue.build()); } - constraintCase_ = 3; + constraintCase_ = 4; return this; } /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> */ public Builder mergeEndpointLocation(context.ContextOuterClass.Constraint_EndPointLocation value) { if (endpointLocationBuilder_ == null) { - if (constraintCase_ == 3 && + if (constraintCase_ == 4 && constraint_ != context.ContextOuterClass.Constraint_EndPointLocation.getDefaultInstance()) { constraint_ = context.ContextOuterClass.Constraint_EndPointLocation.newBuilder((context.ContextOuterClass.Constraint_EndPointLocation) constraint_) .mergeFrom(value).buildPartial(); @@ -66166,26 +71099,26 @@ public final class ContextOuterClass { } onChanged(); } else { - if (constraintCase_ == 3) { + if (constraintCase_ == 4) { endpointLocationBuilder_.mergeFrom(value); } endpointLocationBuilder_.setMessage(value); } - constraintCase_ = 3; + constraintCase_ = 4; return this; } /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> */ public Builder clearEndpointLocation() { if (endpointLocationBuilder_ == null) { - if (constraintCase_ == 3) { + if (constraintCase_ == 4) { constraintCase_ = 0; constraint_ = null; onChanged(); } } else { - if (constraintCase_ == 3) { + if (constraintCase_ == 4) { constraintCase_ = 0; constraint_ = null; } @@ -66194,33 +71127,33 @@ public final class ContextOuterClass { return this; } /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> */ public context.ContextOuterClass.Constraint_EndPointLocation.Builder getEndpointLocationBuilder() { return getEndpointLocationFieldBuilder().getBuilder(); } /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_EndPointLocationOrBuilder getEndpointLocationOrBuilder() { - if ((constraintCase_ == 3) && (endpointLocationBuilder_ != null)) { + if ((constraintCase_ == 4) && (endpointLocationBuilder_ != null)) { return endpointLocationBuilder_.getMessageOrBuilder(); } else { - if (constraintCase_ == 3) { + if (constraintCase_ == 4) { return (context.ContextOuterClass.Constraint_EndPointLocation) constraint_; } return context.ContextOuterClass.Constraint_EndPointLocation.getDefaultInstance(); } } /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> */ private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_EndPointLocation, context.ContextOuterClass.Constraint_EndPointLocation.Builder, context.ContextOuterClass.Constraint_EndPointLocationOrBuilder> getEndpointLocationFieldBuilder() { if (endpointLocationBuilder_ == null) { - if (!(constraintCase_ == 3)) { + if (!(constraintCase_ == 4)) { constraint_ = context.ContextOuterClass.Constraint_EndPointLocation.getDefaultInstance(); } endpointLocationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< @@ -66230,7 +71163,7 @@ public final class ContextOuterClass { isClean()); constraint_ = null; } - constraintCase_ = 3; + constraintCase_ = 4; onChanged();; return endpointLocationBuilder_; } @@ -66238,33 +71171,33 @@ public final class ContextOuterClass { private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_EndPointPriority, context.ContextOuterClass.Constraint_EndPointPriority.Builder, context.ContextOuterClass.Constraint_EndPointPriorityOrBuilder> endpointPriorityBuilder_; /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> * @return Whether the endpointPriority field is set. */ @java.lang.Override public boolean hasEndpointPriority() { - return constraintCase_ == 4; + return constraintCase_ == 5; } /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> * @return The endpointPriority. */ @java.lang.Override public context.ContextOuterClass.Constraint_EndPointPriority getEndpointPriority() { if (endpointPriorityBuilder_ == null) { - if (constraintCase_ == 4) { + if (constraintCase_ == 5) { return (context.ContextOuterClass.Constraint_EndPointPriority) constraint_; } return context.ContextOuterClass.Constraint_EndPointPriority.getDefaultInstance(); } else { - if (constraintCase_ == 4) { + if (constraintCase_ == 5) { return endpointPriorityBuilder_.getMessage(); } return context.ContextOuterClass.Constraint_EndPointPriority.getDefaultInstance(); } } /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> */ public Builder setEndpointPriority(context.ContextOuterClass.Constraint_EndPointPriority value) { if (endpointPriorityBuilder_ == null) { @@ -66276,11 +71209,11 @@ public final class ContextOuterClass { } else { endpointPriorityBuilder_.setMessage(value); } - constraintCase_ = 4; + constraintCase_ = 5; return this; } /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> */ public Builder setEndpointPriority( context.ContextOuterClass.Constraint_EndPointPriority.Builder builderForValue) { @@ -66290,15 +71223,15 @@ public final class ContextOuterClass { } else { endpointPriorityBuilder_.setMessage(builderForValue.build()); } - constraintCase_ = 4; + constraintCase_ = 5; return this; } /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> */ public Builder mergeEndpointPriority(context.ContextOuterClass.Constraint_EndPointPriority value) { if (endpointPriorityBuilder_ == null) { - if (constraintCase_ == 4 && + if (constraintCase_ == 5 && constraint_ != context.ContextOuterClass.Constraint_EndPointPriority.getDefaultInstance()) { constraint_ = context.ContextOuterClass.Constraint_EndPointPriority.newBuilder((context.ContextOuterClass.Constraint_EndPointPriority) constraint_) .mergeFrom(value).buildPartial(); @@ -66307,26 +71240,26 @@ public final class ContextOuterClass { } onChanged(); } else { - if (constraintCase_ == 4) { + if (constraintCase_ == 5) { endpointPriorityBuilder_.mergeFrom(value); } endpointPriorityBuilder_.setMessage(value); } - constraintCase_ = 4; + constraintCase_ = 5; return this; } /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> */ public Builder clearEndpointPriority() { if (endpointPriorityBuilder_ == null) { - if (constraintCase_ == 4) { + if (constraintCase_ == 5) { constraintCase_ = 0; constraint_ = null; onChanged(); } } else { - if (constraintCase_ == 4) { + if (constraintCase_ == 5) { constraintCase_ = 0; constraint_ = null; } @@ -66335,33 +71268,33 @@ public final class ContextOuterClass { return this; } /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> */ public context.ContextOuterClass.Constraint_EndPointPriority.Builder getEndpointPriorityBuilder() { return getEndpointPriorityFieldBuilder().getBuilder(); } /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_EndPointPriorityOrBuilder getEndpointPriorityOrBuilder() { - if ((constraintCase_ == 4) && (endpointPriorityBuilder_ != null)) { + if ((constraintCase_ == 5) && (endpointPriorityBuilder_ != null)) { return endpointPriorityBuilder_.getMessageOrBuilder(); } else { - if (constraintCase_ == 4) { + if (constraintCase_ == 5) { return (context.ContextOuterClass.Constraint_EndPointPriority) constraint_; } return context.ContextOuterClass.Constraint_EndPointPriority.getDefaultInstance(); } } /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> */ private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_EndPointPriority, context.ContextOuterClass.Constraint_EndPointPriority.Builder, context.ContextOuterClass.Constraint_EndPointPriorityOrBuilder> getEndpointPriorityFieldBuilder() { if (endpointPriorityBuilder_ == null) { - if (!(constraintCase_ == 4)) { + if (!(constraintCase_ == 5)) { constraint_ = context.ContextOuterClass.Constraint_EndPointPriority.getDefaultInstance(); } endpointPriorityBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< @@ -66371,7 +71304,7 @@ public final class ContextOuterClass { isClean()); constraint_ = null; } - constraintCase_ = 4; + constraintCase_ = 5; onChanged();; return endpointPriorityBuilder_; } @@ -66379,33 +71312,33 @@ public final class ContextOuterClass { private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_SLA_Capacity, context.ContextOuterClass.Constraint_SLA_Capacity.Builder, context.ContextOuterClass.Constraint_SLA_CapacityOrBuilder> slaCapacityBuilder_; /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> * @return Whether the slaCapacity field is set. */ @java.lang.Override public boolean hasSlaCapacity() { - return constraintCase_ == 5; + return constraintCase_ == 6; } /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> * @return The slaCapacity. */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_Capacity getSlaCapacity() { if (slaCapacityBuilder_ == null) { - if (constraintCase_ == 5) { + if (constraintCase_ == 6) { return (context.ContextOuterClass.Constraint_SLA_Capacity) constraint_; } return context.ContextOuterClass.Constraint_SLA_Capacity.getDefaultInstance(); } else { - if (constraintCase_ == 5) { + if (constraintCase_ == 6) { return slaCapacityBuilder_.getMessage(); } return context.ContextOuterClass.Constraint_SLA_Capacity.getDefaultInstance(); } } /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> */ public Builder setSlaCapacity(context.ContextOuterClass.Constraint_SLA_Capacity value) { if (slaCapacityBuilder_ == null) { @@ -66417,11 +71350,11 @@ public final class ContextOuterClass { } else { slaCapacityBuilder_.setMessage(value); } - constraintCase_ = 5; + constraintCase_ = 6; return this; } /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> */ public Builder setSlaCapacity( context.ContextOuterClass.Constraint_SLA_Capacity.Builder builderForValue) { @@ -66431,15 +71364,15 @@ public final class ContextOuterClass { } else { slaCapacityBuilder_.setMessage(builderForValue.build()); } - constraintCase_ = 5; + constraintCase_ = 6; return this; } /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> */ public Builder mergeSlaCapacity(context.ContextOuterClass.Constraint_SLA_Capacity value) { if (slaCapacityBuilder_ == null) { - if (constraintCase_ == 5 && + if (constraintCase_ == 6 && constraint_ != context.ContextOuterClass.Constraint_SLA_Capacity.getDefaultInstance()) { constraint_ = context.ContextOuterClass.Constraint_SLA_Capacity.newBuilder((context.ContextOuterClass.Constraint_SLA_Capacity) constraint_) .mergeFrom(value).buildPartial(); @@ -66448,26 +71381,26 @@ public final class ContextOuterClass { } onChanged(); } else { - if (constraintCase_ == 5) { + if (constraintCase_ == 6) { slaCapacityBuilder_.mergeFrom(value); } slaCapacityBuilder_.setMessage(value); } - constraintCase_ = 5; + constraintCase_ = 6; return this; } /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> */ public Builder clearSlaCapacity() { if (slaCapacityBuilder_ == null) { - if (constraintCase_ == 5) { + if (constraintCase_ == 6) { constraintCase_ = 0; constraint_ = null; onChanged(); } } else { - if (constraintCase_ == 5) { + if (constraintCase_ == 6) { constraintCase_ = 0; constraint_ = null; } @@ -66476,33 +71409,33 @@ public final class ContextOuterClass { return this; } /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> */ public context.ContextOuterClass.Constraint_SLA_Capacity.Builder getSlaCapacityBuilder() { return getSlaCapacityFieldBuilder().getBuilder(); } /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_CapacityOrBuilder getSlaCapacityOrBuilder() { - if ((constraintCase_ == 5) && (slaCapacityBuilder_ != null)) { + if ((constraintCase_ == 6) && (slaCapacityBuilder_ != null)) { return slaCapacityBuilder_.getMessageOrBuilder(); } else { - if (constraintCase_ == 5) { + if (constraintCase_ == 6) { return (context.ContextOuterClass.Constraint_SLA_Capacity) constraint_; } return context.ContextOuterClass.Constraint_SLA_Capacity.getDefaultInstance(); } } /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> */ private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_SLA_Capacity, context.ContextOuterClass.Constraint_SLA_Capacity.Builder, context.ContextOuterClass.Constraint_SLA_CapacityOrBuilder> getSlaCapacityFieldBuilder() { if (slaCapacityBuilder_ == null) { - if (!(constraintCase_ == 5)) { + if (!(constraintCase_ == 6)) { constraint_ = context.ContextOuterClass.Constraint_SLA_Capacity.getDefaultInstance(); } slaCapacityBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< @@ -66512,7 +71445,7 @@ public final class ContextOuterClass { isClean()); constraint_ = null; } - constraintCase_ = 5; + constraintCase_ = 6; onChanged();; return slaCapacityBuilder_; } @@ -66520,33 +71453,33 @@ public final class ContextOuterClass { private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_SLA_Latency, context.ContextOuterClass.Constraint_SLA_Latency.Builder, context.ContextOuterClass.Constraint_SLA_LatencyOrBuilder> slaLatencyBuilder_; /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> * @return Whether the slaLatency field is set. */ @java.lang.Override public boolean hasSlaLatency() { - return constraintCase_ == 6; + return constraintCase_ == 7; } /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> * @return The slaLatency. */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_Latency getSlaLatency() { if (slaLatencyBuilder_ == null) { - if (constraintCase_ == 6) { + if (constraintCase_ == 7) { return (context.ContextOuterClass.Constraint_SLA_Latency) constraint_; } return context.ContextOuterClass.Constraint_SLA_Latency.getDefaultInstance(); } else { - if (constraintCase_ == 6) { + if (constraintCase_ == 7) { return slaLatencyBuilder_.getMessage(); } return context.ContextOuterClass.Constraint_SLA_Latency.getDefaultInstance(); } } /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> */ public Builder setSlaLatency(context.ContextOuterClass.Constraint_SLA_Latency value) { if (slaLatencyBuilder_ == null) { @@ -66558,11 +71491,11 @@ public final class ContextOuterClass { } else { slaLatencyBuilder_.setMessage(value); } - constraintCase_ = 6; + constraintCase_ = 7; return this; } /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> */ public Builder setSlaLatency( context.ContextOuterClass.Constraint_SLA_Latency.Builder builderForValue) { @@ -66572,15 +71505,15 @@ public final class ContextOuterClass { } else { slaLatencyBuilder_.setMessage(builderForValue.build()); } - constraintCase_ = 6; + constraintCase_ = 7; return this; } /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> */ public Builder mergeSlaLatency(context.ContextOuterClass.Constraint_SLA_Latency value) { if (slaLatencyBuilder_ == null) { - if (constraintCase_ == 6 && + if (constraintCase_ == 7 && constraint_ != context.ContextOuterClass.Constraint_SLA_Latency.getDefaultInstance()) { constraint_ = context.ContextOuterClass.Constraint_SLA_Latency.newBuilder((context.ContextOuterClass.Constraint_SLA_Latency) constraint_) .mergeFrom(value).buildPartial(); @@ -66589,26 +71522,26 @@ public final class ContextOuterClass { } onChanged(); } else { - if (constraintCase_ == 6) { + if (constraintCase_ == 7) { slaLatencyBuilder_.mergeFrom(value); } slaLatencyBuilder_.setMessage(value); } - constraintCase_ = 6; + constraintCase_ = 7; return this; } /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> */ public Builder clearSlaLatency() { if (slaLatencyBuilder_ == null) { - if (constraintCase_ == 6) { + if (constraintCase_ == 7) { constraintCase_ = 0; constraint_ = null; onChanged(); } } else { - if (constraintCase_ == 6) { + if (constraintCase_ == 7) { constraintCase_ = 0; constraint_ = null; } @@ -66617,33 +71550,33 @@ public final class ContextOuterClass { return this; } /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> */ public context.ContextOuterClass.Constraint_SLA_Latency.Builder getSlaLatencyBuilder() { return getSlaLatencyFieldBuilder().getBuilder(); } /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_LatencyOrBuilder getSlaLatencyOrBuilder() { - if ((constraintCase_ == 6) && (slaLatencyBuilder_ != null)) { + if ((constraintCase_ == 7) && (slaLatencyBuilder_ != null)) { return slaLatencyBuilder_.getMessageOrBuilder(); } else { - if (constraintCase_ == 6) { + if (constraintCase_ == 7) { return (context.ContextOuterClass.Constraint_SLA_Latency) constraint_; } return context.ContextOuterClass.Constraint_SLA_Latency.getDefaultInstance(); } } /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> */ private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_SLA_Latency, context.ContextOuterClass.Constraint_SLA_Latency.Builder, context.ContextOuterClass.Constraint_SLA_LatencyOrBuilder> getSlaLatencyFieldBuilder() { if (slaLatencyBuilder_ == null) { - if (!(constraintCase_ == 6)) { + if (!(constraintCase_ == 7)) { constraint_ = context.ContextOuterClass.Constraint_SLA_Latency.getDefaultInstance(); } slaLatencyBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< @@ -66653,7 +71586,7 @@ public final class ContextOuterClass { isClean()); constraint_ = null; } - constraintCase_ = 6; + constraintCase_ = 7; onChanged();; return slaLatencyBuilder_; } @@ -66661,33 +71594,33 @@ public final class ContextOuterClass { private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_SLA_Availability, context.ContextOuterClass.Constraint_SLA_Availability.Builder, context.ContextOuterClass.Constraint_SLA_AvailabilityOrBuilder> slaAvailabilityBuilder_; /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> * @return Whether the slaAvailability field is set. */ @java.lang.Override public boolean hasSlaAvailability() { - return constraintCase_ == 7; + return constraintCase_ == 8; } /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> * @return The slaAvailability. */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_Availability getSlaAvailability() { if (slaAvailabilityBuilder_ == null) { - if (constraintCase_ == 7) { + if (constraintCase_ == 8) { return (context.ContextOuterClass.Constraint_SLA_Availability) constraint_; } return context.ContextOuterClass.Constraint_SLA_Availability.getDefaultInstance(); } else { - if (constraintCase_ == 7) { + if (constraintCase_ == 8) { return slaAvailabilityBuilder_.getMessage(); } return context.ContextOuterClass.Constraint_SLA_Availability.getDefaultInstance(); } } /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> */ public Builder setSlaAvailability(context.ContextOuterClass.Constraint_SLA_Availability value) { if (slaAvailabilityBuilder_ == null) { @@ -66699,11 +71632,11 @@ public final class ContextOuterClass { } else { slaAvailabilityBuilder_.setMessage(value); } - constraintCase_ = 7; + constraintCase_ = 8; return this; } /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> */ public Builder setSlaAvailability( context.ContextOuterClass.Constraint_SLA_Availability.Builder builderForValue) { @@ -66713,15 +71646,15 @@ public final class ContextOuterClass { } else { slaAvailabilityBuilder_.setMessage(builderForValue.build()); } - constraintCase_ = 7; + constraintCase_ = 8; return this; } /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> */ public Builder mergeSlaAvailability(context.ContextOuterClass.Constraint_SLA_Availability value) { if (slaAvailabilityBuilder_ == null) { - if (constraintCase_ == 7 && + if (constraintCase_ == 8 && constraint_ != context.ContextOuterClass.Constraint_SLA_Availability.getDefaultInstance()) { constraint_ = context.ContextOuterClass.Constraint_SLA_Availability.newBuilder((context.ContextOuterClass.Constraint_SLA_Availability) constraint_) .mergeFrom(value).buildPartial(); @@ -66730,26 +71663,26 @@ public final class ContextOuterClass { } onChanged(); } else { - if (constraintCase_ == 7) { + if (constraintCase_ == 8) { slaAvailabilityBuilder_.mergeFrom(value); } slaAvailabilityBuilder_.setMessage(value); } - constraintCase_ = 7; + constraintCase_ = 8; return this; } /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> */ public Builder clearSlaAvailability() { if (slaAvailabilityBuilder_ == null) { - if (constraintCase_ == 7) { + if (constraintCase_ == 8) { constraintCase_ = 0; constraint_ = null; onChanged(); } } else { - if (constraintCase_ == 7) { + if (constraintCase_ == 8) { constraintCase_ = 0; constraint_ = null; } @@ -66758,33 +71691,33 @@ public final class ContextOuterClass { return this; } /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> */ public context.ContextOuterClass.Constraint_SLA_Availability.Builder getSlaAvailabilityBuilder() { return getSlaAvailabilityFieldBuilder().getBuilder(); } /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_AvailabilityOrBuilder getSlaAvailabilityOrBuilder() { - if ((constraintCase_ == 7) && (slaAvailabilityBuilder_ != null)) { + if ((constraintCase_ == 8) && (slaAvailabilityBuilder_ != null)) { return slaAvailabilityBuilder_.getMessageOrBuilder(); } else { - if (constraintCase_ == 7) { + if (constraintCase_ == 8) { return (context.ContextOuterClass.Constraint_SLA_Availability) constraint_; } return context.ContextOuterClass.Constraint_SLA_Availability.getDefaultInstance(); } } /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> */ private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_SLA_Availability, context.ContextOuterClass.Constraint_SLA_Availability.Builder, context.ContextOuterClass.Constraint_SLA_AvailabilityOrBuilder> getSlaAvailabilityFieldBuilder() { if (slaAvailabilityBuilder_ == null) { - if (!(constraintCase_ == 7)) { + if (!(constraintCase_ == 8)) { constraint_ = context.ContextOuterClass.Constraint_SLA_Availability.getDefaultInstance(); } slaAvailabilityBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< @@ -66794,7 +71727,7 @@ public final class ContextOuterClass { isClean()); constraint_ = null; } - constraintCase_ = 7; + constraintCase_ = 8; onChanged();; return slaAvailabilityBuilder_; } @@ -66802,33 +71735,33 @@ public final class ContextOuterClass { private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_SLA_Isolation_level, context.ContextOuterClass.Constraint_SLA_Isolation_level.Builder, context.ContextOuterClass.Constraint_SLA_Isolation_levelOrBuilder> slaIsolationBuilder_; /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> * @return Whether the slaIsolation field is set. */ @java.lang.Override public boolean hasSlaIsolation() { - return constraintCase_ == 8; + return constraintCase_ == 9; } /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> * @return The slaIsolation. */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_Isolation_level getSlaIsolation() { if (slaIsolationBuilder_ == null) { - if (constraintCase_ == 8) { + if (constraintCase_ == 9) { return (context.ContextOuterClass.Constraint_SLA_Isolation_level) constraint_; } return context.ContextOuterClass.Constraint_SLA_Isolation_level.getDefaultInstance(); } else { - if (constraintCase_ == 8) { + if (constraintCase_ == 9) { return slaIsolationBuilder_.getMessage(); } return context.ContextOuterClass.Constraint_SLA_Isolation_level.getDefaultInstance(); } } /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> */ public Builder setSlaIsolation(context.ContextOuterClass.Constraint_SLA_Isolation_level value) { if (slaIsolationBuilder_ == null) { @@ -66840,11 +71773,11 @@ public final class ContextOuterClass { } else { slaIsolationBuilder_.setMessage(value); } - constraintCase_ = 8; + constraintCase_ = 9; return this; } /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> */ public Builder setSlaIsolation( context.ContextOuterClass.Constraint_SLA_Isolation_level.Builder builderForValue) { @@ -66854,15 +71787,15 @@ public final class ContextOuterClass { } else { slaIsolationBuilder_.setMessage(builderForValue.build()); } - constraintCase_ = 8; + constraintCase_ = 9; return this; } /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> */ public Builder mergeSlaIsolation(context.ContextOuterClass.Constraint_SLA_Isolation_level value) { if (slaIsolationBuilder_ == null) { - if (constraintCase_ == 8 && + if (constraintCase_ == 9 && constraint_ != context.ContextOuterClass.Constraint_SLA_Isolation_level.getDefaultInstance()) { constraint_ = context.ContextOuterClass.Constraint_SLA_Isolation_level.newBuilder((context.ContextOuterClass.Constraint_SLA_Isolation_level) constraint_) .mergeFrom(value).buildPartial(); @@ -66871,26 +71804,26 @@ public final class ContextOuterClass { } onChanged(); } else { - if (constraintCase_ == 8) { + if (constraintCase_ == 9) { slaIsolationBuilder_.mergeFrom(value); } slaIsolationBuilder_.setMessage(value); } - constraintCase_ = 8; + constraintCase_ = 9; return this; } /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> */ public Builder clearSlaIsolation() { if (slaIsolationBuilder_ == null) { - if (constraintCase_ == 8) { + if (constraintCase_ == 9) { constraintCase_ = 0; constraint_ = null; onChanged(); } } else { - if (constraintCase_ == 8) { + if (constraintCase_ == 9) { constraintCase_ = 0; constraint_ = null; } @@ -66899,33 +71832,33 @@ public final class ContextOuterClass { return this; } /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> */ public context.ContextOuterClass.Constraint_SLA_Isolation_level.Builder getSlaIsolationBuilder() { return getSlaIsolationFieldBuilder().getBuilder(); } /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_Isolation_levelOrBuilder getSlaIsolationOrBuilder() { - if ((constraintCase_ == 8) && (slaIsolationBuilder_ != null)) { + if ((constraintCase_ == 9) && (slaIsolationBuilder_ != null)) { return slaIsolationBuilder_.getMessageOrBuilder(); } else { - if (constraintCase_ == 8) { + if (constraintCase_ == 9) { return (context.ContextOuterClass.Constraint_SLA_Isolation_level) constraint_; } return context.ContextOuterClass.Constraint_SLA_Isolation_level.getDefaultInstance(); } } /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> */ private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_SLA_Isolation_level, context.ContextOuterClass.Constraint_SLA_Isolation_level.Builder, context.ContextOuterClass.Constraint_SLA_Isolation_levelOrBuilder> getSlaIsolationFieldBuilder() { if (slaIsolationBuilder_ == null) { - if (!(constraintCase_ == 8)) { + if (!(constraintCase_ == 9)) { constraint_ = context.ContextOuterClass.Constraint_SLA_Isolation_level.getDefaultInstance(); } slaIsolationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< @@ -66935,10 +71868,151 @@ public final class ContextOuterClass { isClean()); constraint_ = null; } - constraintCase_ = 8; + constraintCase_ = 9; onChanged();; return slaIsolationBuilder_; } + + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Constraint_Exclusions, context.ContextOuterClass.Constraint_Exclusions.Builder, context.ContextOuterClass.Constraint_ExclusionsOrBuilder> exclusionsBuilder_; + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + * @return Whether the exclusions field is set. + */ + @java.lang.Override + public boolean hasExclusions() { + return constraintCase_ == 10; + } + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + * @return The exclusions. + */ + @java.lang.Override + public context.ContextOuterClass.Constraint_Exclusions getExclusions() { + if (exclusionsBuilder_ == null) { + if (constraintCase_ == 10) { + return (context.ContextOuterClass.Constraint_Exclusions) constraint_; + } + return context.ContextOuterClass.Constraint_Exclusions.getDefaultInstance(); + } else { + if (constraintCase_ == 10) { + return exclusionsBuilder_.getMessage(); + } + return context.ContextOuterClass.Constraint_Exclusions.getDefaultInstance(); + } + } + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + */ + public Builder setExclusions(context.ContextOuterClass.Constraint_Exclusions value) { + if (exclusionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + constraint_ = value; + onChanged(); + } else { + exclusionsBuilder_.setMessage(value); + } + constraintCase_ = 10; + return this; + } + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + */ + public Builder setExclusions( + context.ContextOuterClass.Constraint_Exclusions.Builder builderForValue) { + if (exclusionsBuilder_ == null) { + constraint_ = builderForValue.build(); + onChanged(); + } else { + exclusionsBuilder_.setMessage(builderForValue.build()); + } + constraintCase_ = 10; + return this; + } + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + */ + public Builder mergeExclusions(context.ContextOuterClass.Constraint_Exclusions value) { + if (exclusionsBuilder_ == null) { + if (constraintCase_ == 10 && + constraint_ != context.ContextOuterClass.Constraint_Exclusions.getDefaultInstance()) { + constraint_ = context.ContextOuterClass.Constraint_Exclusions.newBuilder((context.ContextOuterClass.Constraint_Exclusions) constraint_) + .mergeFrom(value).buildPartial(); + } else { + constraint_ = value; + } + onChanged(); + } else { + if (constraintCase_ == 10) { + exclusionsBuilder_.mergeFrom(value); + } + exclusionsBuilder_.setMessage(value); + } + constraintCase_ = 10; + return this; + } + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + */ + public Builder clearExclusions() { + if (exclusionsBuilder_ == null) { + if (constraintCase_ == 10) { + constraintCase_ = 0; + constraint_ = null; + onChanged(); + } + } else { + if (constraintCase_ == 10) { + constraintCase_ = 0; + constraint_ = null; + } + exclusionsBuilder_.clear(); + } + return this; + } + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + */ + public context.ContextOuterClass.Constraint_Exclusions.Builder getExclusionsBuilder() { + return getExclusionsFieldBuilder().getBuilder(); + } + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + */ + @java.lang.Override + public context.ContextOuterClass.Constraint_ExclusionsOrBuilder getExclusionsOrBuilder() { + if ((constraintCase_ == 10) && (exclusionsBuilder_ != null)) { + return exclusionsBuilder_.getMessageOrBuilder(); + } else { + if (constraintCase_ == 10) { + return (context.ContextOuterClass.Constraint_Exclusions) constraint_; + } + return context.ContextOuterClass.Constraint_Exclusions.getDefaultInstance(); + } + } + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Constraint_Exclusions, context.ContextOuterClass.Constraint_Exclusions.Builder, context.ContextOuterClass.Constraint_ExclusionsOrBuilder> + getExclusionsFieldBuilder() { + if (exclusionsBuilder_ == null) { + if (!(constraintCase_ == 10)) { + constraint_ = context.ContextOuterClass.Constraint_Exclusions.getDefaultInstance(); + } + exclusionsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Constraint_Exclusions, context.ContextOuterClass.Constraint_Exclusions.Builder, context.ContextOuterClass.Constraint_ExclusionsOrBuilder>( + (context.ContextOuterClass.Constraint_Exclusions) constraint_, + getParentForChildren(), + isClean()); + constraint_ = null; + } + constraintCase_ = 10; + onChanged();; + return exclusionsBuilder_; + } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { @@ -68638,6 +73712,11 @@ public final class ContextOuterClass { private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_context_DeviceList_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_context_DeviceFilter_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_context_DeviceFilter_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_context_DeviceEvent_descriptor; private static final @@ -68698,6 +73777,11 @@ public final class ContextOuterClass { private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_context_ServiceList_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_context_ServiceFilter_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_context_ServiceFilter_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_context_ServiceEvent_descriptor; private static final @@ -68738,6 +73822,11 @@ public final class ContextOuterClass { private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_context_SliceList_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_context_SliceFilter_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_context_SliceFilter_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_context_SliceEvent_descriptor; private static final @@ -68883,6 +73972,11 @@ public final class ContextOuterClass { private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_context_Constraint_SLA_Isolation_level_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_context_Constraint_Exclusions_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_context_Constraint_Exclusions_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_context_Constraint_descriptor; private static final @@ -68940,7 +74034,7 @@ public final class ContextOuterClass { "vent\022\035\n\005event\030\001 \001(\0132\016.context.Event\022(\n\013t" + "opology_id\030\002 \001(\0132\023.context.TopologyId\".\n" + "\010DeviceId\022\"\n\013device_uuid\030\001 \001(\0132\r.context" + - ".Uuid\"\317\002\n\006Device\022$\n\tdevice_id\030\001 \001(\0132\021.co" + + ".Uuid\"\371\002\n\006Device\022$\n\tdevice_id\030\001 \001(\0132\021.co" + "ntext.DeviceId\022\014\n\004name\030\002 \001(\t\022\023\n\013device_t" + "ype\030\003 \001(\t\022,\n\rdevice_config\030\004 \001(\0132\025.conte" + "xt.DeviceConfig\022G\n\031device_operational_st" + @@ -68948,251 +74042,282 @@ public final class ContextOuterClass { "atusEnum\0221\n\016device_drivers\030\006 \003(\0162\031.conte" + "xt.DeviceDriverEnum\022+\n\020device_endpoints\030" + "\007 \003(\0132\021.context.EndPoint\022%\n\tcomponent\030\010 " + - "\003(\0132\022.context.Component\" \n\tComponent\022\023\n\013" + - "comp_string\030\001 \003(\t\"9\n\014DeviceConfig\022)\n\014con" + - "fig_rules\030\001 \003(\0132\023.context.ConfigRule\"5\n\014" + - "DeviceIdList\022%\n\ndevice_ids\030\001 \003(\0132\021.conte" + - "xt.DeviceId\".\n\nDeviceList\022 \n\007devices\030\001 \003" + - "(\0132\017.context.Device\"\200\001\n\013DeviceEvent\022\035\n\005e" + - "vent\030\001 \001(\0132\016.context.Event\022$\n\tdevice_id\030" + - "\002 \001(\0132\021.context.DeviceId\022,\n\rdevice_confi" + - "g\030\003 \001(\0132\025.context.DeviceConfig\"*\n\006LinkId" + - "\022 \n\tlink_uuid\030\001 \001(\0132\r.context.Uuid\"f\n\004Li" + - "nk\022 \n\007link_id\030\001 \001(\0132\017.context.LinkId\022\014\n\004" + - "name\030\002 \001(\t\022.\n\021link_endpoint_ids\030\003 \003(\0132\023." + - "context.EndPointId\"/\n\nLinkIdList\022!\n\010link" + - "_ids\030\001 \003(\0132\017.context.LinkId\"(\n\010LinkList\022" + - "\034\n\005links\030\001 \003(\0132\r.context.Link\"L\n\tLinkEve" + - "nt\022\035\n\005event\030\001 \001(\0132\016.context.Event\022 \n\007lin" + - "k_id\030\002 \001(\0132\017.context.LinkId\"X\n\tServiceId" + - "\022&\n\ncontext_id\030\001 \001(\0132\022.context.ContextId" + - "\022#\n\014service_uuid\030\002 \001(\0132\r.context.Uuid\"\333\002" + - "\n\007Service\022&\n\nservice_id\030\001 \001(\0132\022.context." + - "ServiceId\022\014\n\004name\030\002 \001(\t\022.\n\014service_type\030" + - "\003 \001(\0162\030.context.ServiceTypeEnum\0221\n\024servi" + - "ce_endpoint_ids\030\004 \003(\0132\023.context.EndPoint" + - "Id\0220\n\023service_constraints\030\005 \003(\0132\023.contex" + - "t.Constraint\022.\n\016service_status\030\006 \001(\0132\026.c" + - "ontext.ServiceStatus\022.\n\016service_config\030\007" + - " \001(\0132\026.context.ServiceConfig\022%\n\ttimestam" + - "p\030\010 \001(\0132\022.context.Timestamp\"C\n\rServiceSt" + - "atus\0222\n\016service_status\030\001 \001(\0162\032.context.S" + - "erviceStatusEnum\":\n\rServiceConfig\022)\n\014con" + - "fig_rules\030\001 \003(\0132\023.context.ConfigRule\"8\n\r" + - "ServiceIdList\022\'\n\013service_ids\030\001 \003(\0132\022.con" + - "text.ServiceId\"1\n\013ServiceList\022\"\n\010service" + - "s\030\001 \003(\0132\020.context.Service\"U\n\014ServiceEven" + - "t\022\035\n\005event\030\001 \001(\0132\016.context.Event\022&\n\nserv" + - "ice_id\030\002 \001(\0132\022.context.ServiceId\"T\n\007Slic" + - "eId\022&\n\ncontext_id\030\001 \001(\0132\022.context.Contex" + - "tId\022!\n\nslice_uuid\030\002 \001(\0132\r.context.Uuid\"\240" + - "\003\n\005Slice\022\"\n\010slice_id\030\001 \001(\0132\020.context.Sli" + - "ceId\022\014\n\004name\030\002 \001(\t\022/\n\022slice_endpoint_ids" + - "\030\003 \003(\0132\023.context.EndPointId\022.\n\021slice_con" + - "straints\030\004 \003(\0132\023.context.Constraint\022-\n\021s" + - "lice_service_ids\030\005 \003(\0132\022.context.Service" + - "Id\022,\n\022slice_subslice_ids\030\006 \003(\0132\020.context" + - ".SliceId\022*\n\014slice_status\030\007 \001(\0132\024.context" + - ".SliceStatus\022*\n\014slice_config\030\010 \001(\0132\024.con" + - "text.SliceConfig\022(\n\013slice_owner\030\t \001(\0132\023." + - "context.SliceOwner\022%\n\ttimestamp\030\n \001(\0132\022." + - "context.Timestamp\"E\n\nSliceOwner\022!\n\nowner" + - "_uuid\030\001 \001(\0132\r.context.Uuid\022\024\n\014owner_stri" + - "ng\030\002 \001(\t\"=\n\013SliceStatus\022.\n\014slice_status\030" + - "\001 \001(\0162\030.context.SliceStatusEnum\"8\n\013Slice" + - "Config\022)\n\014config_rules\030\001 \003(\0132\023.context.C" + - "onfigRule\"2\n\013SliceIdList\022#\n\tslice_ids\030\001 " + - "\003(\0132\020.context.SliceId\"+\n\tSliceList\022\036\n\006sl" + - "ices\030\001 \003(\0132\016.context.Slice\"O\n\nSliceEvent" + - "\022\035\n\005event\030\001 \001(\0132\016.context.Event\022\"\n\010slice" + - "_id\030\002 \001(\0132\020.context.SliceId\"6\n\014Connectio" + - "nId\022&\n\017connection_uuid\030\001 \001(\0132\r.context.U" + - "uid\"2\n\025ConnectionSettings_L0\022\031\n\021lsp_symb" + - "olic_name\030\001 \001(\t\"\236\001\n\025ConnectionSettings_L" + - "2\022\027\n\017src_mac_address\030\001 \001(\t\022\027\n\017dst_mac_ad" + - "dress\030\002 \001(\t\022\022\n\nether_type\030\003 \001(\r\022\017\n\007vlan_" + - "id\030\004 \001(\r\022\022\n\nmpls_label\030\005 \001(\r\022\032\n\022mpls_tra" + - "ffic_class\030\006 \001(\r\"t\n\025ConnectionSettings_L" + - "3\022\026\n\016src_ip_address\030\001 \001(\t\022\026\n\016dst_ip_addr" + - "ess\030\002 \001(\t\022\014\n\004dscp\030\003 \001(\r\022\020\n\010protocol\030\004 \001(" + - "\r\022\013\n\003ttl\030\005 \001(\r\"[\n\025ConnectionSettings_L4\022" + - "\020\n\010src_port\030\001 \001(\r\022\020\n\010dst_port\030\002 \001(\r\022\021\n\tt" + - "cp_flags\030\003 \001(\r\022\013\n\003ttl\030\004 \001(\r\"\304\001\n\022Connecti" + - "onSettings\022*\n\002l0\030\001 \001(\0132\036.context.Connect" + - "ionSettings_L0\022*\n\002l2\030\002 \001(\0132\036.context.Con" + - "nectionSettings_L2\022*\n\002l3\030\003 \001(\0132\036.context" + - ".ConnectionSettings_L3\022*\n\002l4\030\004 \001(\0132\036.con" + - "text.ConnectionSettings_L4\"\363\001\n\nConnectio" + - "n\022,\n\rconnection_id\030\001 \001(\0132\025.context.Conne" + - "ctionId\022&\n\nservice_id\030\002 \001(\0132\022.context.Se" + - "rviceId\0223\n\026path_hops_endpoint_ids\030\003 \003(\0132" + - "\023.context.EndPointId\022+\n\017sub_service_ids\030" + - "\004 \003(\0132\022.context.ServiceId\022-\n\010settings\030\005 " + - "\001(\0132\033.context.ConnectionSettings\"A\n\020Conn" + - "ectionIdList\022-\n\016connection_ids\030\001 \003(\0132\025.c" + - "ontext.ConnectionId\":\n\016ConnectionList\022(\n" + - "\013connections\030\001 \003(\0132\023.context.Connection\"" + - "^\n\017ConnectionEvent\022\035\n\005event\030\001 \001(\0132\016.cont" + - "ext.Event\022,\n\rconnection_id\030\002 \001(\0132\025.conte" + - "xt.ConnectionId\"\202\001\n\nEndPointId\022(\n\013topolo" + - "gy_id\030\001 \001(\0132\023.context.TopologyId\022$\n\tdevi" + - "ce_id\030\002 \001(\0132\021.context.DeviceId\022$\n\rendpoi" + - "nt_uuid\030\003 \001(\0132\r.context.Uuid\"\302\001\n\010EndPoin" + - "t\022(\n\013endpoint_id\030\001 \001(\0132\023.context.EndPoin" + - "tId\022\014\n\004name\030\002 \001(\t\022\025\n\rendpoint_type\030\003 \001(\t" + - "\0229\n\020kpi_sample_types\030\004 \003(\0162\037.kpi_sample_" + - "types.KpiSampleType\022,\n\021endpoint_location" + - "\030\005 \001(\0132\021.context.Location\"{\n\014EndPointNam" + - "e\022(\n\013endpoint_id\030\001 \001(\0132\023.context.EndPoin" + - "tId\022\023\n\013device_name\030\002 \001(\t\022\025\n\rendpoint_nam" + - "e\030\003 \001(\t\022\025\n\rendpoint_type\030\004 \001(\t\";\n\016EndPoi" + - "ntIdList\022)\n\014endpoint_ids\030\001 \003(\0132\023.context" + - ".EndPointId\"A\n\020EndPointNameList\022-\n\016endpo" + - "int_names\030\001 \003(\0132\025.context.EndPointName\"A" + - "\n\021ConfigRule_Custom\022\024\n\014resource_key\030\001 \001(" + - "\t\022\026\n\016resource_value\030\002 \001(\t\"]\n\016ConfigRule_" + - "ACL\022(\n\013endpoint_id\030\001 \001(\0132\023.context.EndPo" + - "intId\022!\n\010rule_set\030\002 \001(\0132\017.acl.AclRuleSet" + - "\"\234\001\n\nConfigRule\022)\n\006action\030\001 \001(\0162\031.contex" + - "t.ConfigActionEnum\022,\n\006custom\030\002 \001(\0132\032.con" + - "text.ConfigRule_CustomH\000\022&\n\003acl\030\003 \001(\0132\027." + - "context.ConfigRule_ACLH\000B\r\n\013config_rule\"" + - "F\n\021Constraint_Custom\022\027\n\017constraint_type\030" + - "\001 \001(\t\022\030\n\020constraint_value\030\002 \001(\t\"E\n\023Const" + - "raint_Schedule\022\027\n\017start_timestamp\030\001 \001(\002\022" + - "\025\n\rduration_days\030\002 \001(\002\"3\n\014GPS_Position\022\020" + - "\n\010latitude\030\001 \001(\002\022\021\n\tlongitude\030\002 \001(\002\"W\n\010L" + - "ocation\022\020\n\006region\030\001 \001(\tH\000\022-\n\014gps_positio" + - "n\030\002 \001(\0132\025.context.GPS_PositionH\000B\n\n\010loca" + - "tion\"l\n\033Constraint_EndPointLocation\022(\n\013e" + - "ndpoint_id\030\001 \001(\0132\023.context.EndPointId\022#\n" + - "\010location\030\002 \001(\0132\021.context.Location\"Y\n\033Co" + - "nstraint_EndPointPriority\022(\n\013endpoint_id" + - "\030\001 \001(\0132\023.context.EndPointId\022\020\n\010priority\030" + - "\002 \001(\r\"0\n\026Constraint_SLA_Latency\022\026\n\016e2e_l" + - "atency_ms\030\001 \001(\002\"0\n\027Constraint_SLA_Capaci" + - "ty\022\025\n\rcapacity_gbps\030\001 \001(\002\"M\n\033Constraint_" + - "SLA_Availability\022\032\n\022num_disjoint_paths\030\001" + - " \001(\r\022\022\n\nall_active\030\002 \001(\010\"V\n\036Constraint_S" + - "LA_Isolation_level\0224\n\017isolation_level\030\001 " + - "\003(\0162\033.context.IsolationLevelEnum\"\366\003\n\nCon" + - "straint\022,\n\006custom\030\001 \001(\0132\032.context.Constr" + - "aint_CustomH\000\0220\n\010schedule\030\002 \001(\0132\034.contex" + - "t.Constraint_ScheduleH\000\022A\n\021endpoint_loca" + - "tion\030\003 \001(\0132$.context.Constraint_EndPoint" + - "LocationH\000\022A\n\021endpoint_priority\030\004 \001(\0132$." + - "context.Constraint_EndPointPriorityH\000\0228\n" + - "\014sla_capacity\030\005 \001(\0132 .context.Constraint" + - "_SLA_CapacityH\000\0226\n\013sla_latency\030\006 \001(\0132\037.c" + - "ontext.Constraint_SLA_LatencyH\000\022@\n\020sla_a" + - "vailability\030\007 \001(\0132$.context.Constraint_S" + - "LA_AvailabilityH\000\022@\n\rsla_isolation\030\010 \001(\013" + - "2\'.context.Constraint_SLA_Isolation_leve" + - "lH\000B\014\n\nconstraint\"^\n\022TeraFlowController\022" + - "&\n\ncontext_id\030\001 \001(\0132\022.context.ContextId\022" + - "\022\n\nip_address\030\002 \001(\t\022\014\n\004port\030\003 \001(\r\"U\n\024Aut" + - "henticationResult\022&\n\ncontext_id\030\001 \001(\0132\022." + - "context.ContextId\022\025\n\rauthenticated\030\002 \001(\010" + - "*j\n\rEventTypeEnum\022\027\n\023EVENTTYPE_UNDEFINED" + - "\020\000\022\024\n\020EVENTTYPE_CREATE\020\001\022\024\n\020EVENTTYPE_UP" + - "DATE\020\002\022\024\n\020EVENTTYPE_REMOVE\020\003*\332\001\n\020DeviceD" + - "riverEnum\022\032\n\026DEVICEDRIVER_UNDEFINED\020\000\022\033\n" + - "\027DEVICEDRIVER_OPENCONFIG\020\001\022\036\n\032DEVICEDRIV" + - "ER_TRANSPORT_API\020\002\022\023\n\017DEVICEDRIVER_P4\020\003\022" + - "&\n\"DEVICEDRIVER_IETF_NETWORK_TOPOLOGY\020\004\022" + - "\033\n\027DEVICEDRIVER_ONF_TR_352\020\005\022\023\n\017DEVICEDR" + - "IVER_XR\020\006*\217\001\n\033DeviceOperationalStatusEnu" + - "m\022%\n!DEVICEOPERATIONALSTATUS_UNDEFINED\020\000" + - "\022$\n DEVICEOPERATIONALSTATUS_DISABLED\020\001\022#" + - "\n\037DEVICEOPERATIONALSTATUS_ENABLED\020\002*\201\001\n\017" + - "ServiceTypeEnum\022\027\n\023SERVICETYPE_UNKNOWN\020\000" + - "\022\024\n\020SERVICETYPE_L3NM\020\001\022\024\n\020SERVICETYPE_L2" + - "NM\020\002\022)\n%SERVICETYPE_TAPI_CONNECTIVITY_SE" + - "RVICE\020\003*\250\001\n\021ServiceStatusEnum\022\033\n\027SERVICE" + - "STATUS_UNDEFINED\020\000\022\031\n\025SERVICESTATUS_PLAN" + - "NED\020\001\022\030\n\024SERVICESTATUS_ACTIVE\020\002\022!\n\035SERVI" + - "CESTATUS_PENDING_REMOVAL\020\003\022\036\n\032SERVICESTA" + - "TUS_SLA_VIOLATED\020\004*\251\001\n\017SliceStatusEnum\022\031" + - "\n\025SLICESTATUS_UNDEFINED\020\000\022\027\n\023SLICESTATUS" + - "_PLANNED\020\001\022\024\n\020SLICESTATUS_INIT\020\002\022\026\n\022SLIC" + - "ESTATUS_ACTIVE\020\003\022\026\n\022SLICESTATUS_DEINIT\020\004" + - "\022\034\n\030SLICESTATUS_SLA_VIOLATED\020\005*]\n\020Config" + - "ActionEnum\022\032\n\026CONFIGACTION_UNDEFINED\020\000\022\024" + - "\n\020CONFIGACTION_SET\020\001\022\027\n\023CONFIGACTION_DEL" + - "ETE\020\002*\203\002\n\022IsolationLevelEnum\022\020\n\014NO_ISOLA" + - "TION\020\000\022\026\n\022PHYSICAL_ISOLATION\020\001\022\025\n\021LOGICA" + - "L_ISOLATION\020\002\022\025\n\021PROCESS_ISOLATION\020\003\022\035\n\031" + - "PHYSICAL_MEMORY_ISOLATION\020\004\022\036\n\032PHYSICAL_" + - "NETWORK_ISOLATION\020\005\022\036\n\032VIRTUAL_RESOURCE_" + - "ISOLATION\020\006\022\037\n\033NETWORK_FUNCTIONS_ISOLATI" + - "ON\020\007\022\025\n\021SERVICE_ISOLATION\020\0102\353\024\n\016ContextS" + - "ervice\022:\n\016ListContextIds\022\016.context.Empty" + - "\032\026.context.ContextIdList\"\000\0226\n\014ListContex" + - "ts\022\016.context.Empty\032\024.context.ContextList" + - "\"\000\0224\n\nGetContext\022\022.context.ContextId\032\020.c" + - "ontext.Context\"\000\0224\n\nSetContext\022\020.context" + - ".Context\032\022.context.ContextId\"\000\0225\n\rRemove" + - "Context\022\022.context.ContextId\032\016.context.Em" + - "pty\"\000\022=\n\020GetContextEvents\022\016.context.Empt" + - "y\032\025.context.ContextEvent\"\0000\001\022@\n\017ListTopo" + - "logyIds\022\022.context.ContextId\032\027.context.To" + - "pologyIdList\"\000\022=\n\016ListTopologies\022\022.conte" + - "xt.ContextId\032\025.context.TopologyList\"\000\0227\n" + - "\013GetTopology\022\023.context.TopologyId\032\021.cont" + - "ext.Topology\"\000\022E\n\022GetTopologyDetails\022\023.c" + - "ontext.TopologyId\032\030.context.TopologyDeta" + - "ils\"\000\0227\n\013SetTopology\022\021.context.Topology\032" + - "\023.context.TopologyId\"\000\0227\n\016RemoveTopology" + - "\022\023.context.TopologyId\032\016.context.Empty\"\000\022" + - "?\n\021GetTopologyEvents\022\016.context.Empty\032\026.c" + - "ontext.TopologyEvent\"\0000\001\0228\n\rListDeviceId" + - "s\022\016.context.Empty\032\025.context.DeviceIdList" + - "\"\000\0224\n\013ListDevices\022\016.context.Empty\032\023.cont" + - "ext.DeviceList\"\000\0221\n\tGetDevice\022\021.context." + - "DeviceId\032\017.context.Device\"\000\0221\n\tSetDevice" + - "\022\017.context.Device\032\021.context.DeviceId\"\000\0223" + - "\n\014RemoveDevice\022\021.context.DeviceId\032\016.cont" + - "ext.Empty\"\000\022;\n\017GetDeviceEvents\022\016.context" + - ".Empty\032\024.context.DeviceEvent\"\0000\001\022I\n\021List" + - "EndPointNames\022\027.context.EndPointIdList\032\031" + - ".context.EndPointNameList\"\000\0224\n\013ListLinkI" + - "ds\022\016.context.Empty\032\023.context.LinkIdList\"" + - "\000\0220\n\tListLinks\022\016.context.Empty\032\021.context" + - ".LinkList\"\000\022+\n\007GetLink\022\017.context.LinkId\032" + - "\r.context.Link\"\000\022+\n\007SetLink\022\r.context.Li" + - "nk\032\017.context.LinkId\"\000\022/\n\nRemoveLink\022\017.co" + - "ntext.LinkId\032\016.context.Empty\"\000\0227\n\rGetLin" + - "kEvents\022\016.context.Empty\032\022.context.LinkEv" + - "ent\"\0000\001\022>\n\016ListServiceIds\022\022.context.Cont" + - "extId\032\026.context.ServiceIdList\"\000\022:\n\014ListS" + - "ervices\022\022.context.ContextId\032\024.context.Se" + - "rviceList\"\000\0224\n\nGetService\022\022.context.Serv" + - "iceId\032\020.context.Service\"\000\0224\n\nSetService\022" + - "\020.context.Service\032\022.context.ServiceId\"\000\022" + - "6\n\014UnsetService\022\020.context.Service\032\022.cont" + - "ext.ServiceId\"\000\0225\n\rRemoveService\022\022.conte" + - "xt.ServiceId\032\016.context.Empty\"\000\022=\n\020GetSer" + - "viceEvents\022\016.context.Empty\032\025.context.Ser" + - "viceEvent\"\0000\001\022:\n\014ListSliceIds\022\022.context." + - "ContextId\032\024.context.SliceIdList\"\000\0226\n\nLis" + - "tSlices\022\022.context.ContextId\032\022.context.Sl" + - "iceList\"\000\022.\n\010GetSlice\022\020.context.SliceId\032" + - "\016.context.Slice\"\000\022.\n\010SetSlice\022\016.context." + - "Slice\032\020.context.SliceId\"\000\0220\n\nUnsetSlice\022" + - "\016.context.Slice\032\020.context.SliceId\"\000\0221\n\013R" + - "emoveSlice\022\020.context.SliceId\032\016.context.E" + - "mpty\"\000\0229\n\016GetSliceEvents\022\016.context.Empty" + - "\032\023.context.SliceEvent\"\0000\001\022D\n\021ListConnect" + - "ionIds\022\022.context.ServiceId\032\031.context.Con" + - "nectionIdList\"\000\022@\n\017ListConnections\022\022.con" + - "text.ServiceId\032\027.context.ConnectionList\"" + - "\000\022=\n\rGetConnection\022\025.context.ConnectionI" + - "d\032\023.context.Connection\"\000\022=\n\rSetConnectio" + - "n\022\023.context.Connection\032\025.context.Connect" + - "ionId\"\000\022;\n\020RemoveConnection\022\025.context.Co" + - "nnectionId\032\016.context.Empty\"\000\022C\n\023GetConne" + - "ctionEvents\022\016.context.Empty\032\030.context.Co" + - "nnectionEvent\"\0000\001b\006proto3" + "\003(\0132\022.context.Component\022(\n\rcontroller_id" + + "\030\t \001(\0132\021.context.DeviceId\" \n\tComponent\022\023" + + "\n\013comp_string\030\001 \003(\t\"9\n\014DeviceConfig\022)\n\014c" + + "onfig_rules\030\001 \003(\0132\023.context.ConfigRule\"5" + + "\n\014DeviceIdList\022%\n\ndevice_ids\030\001 \003(\0132\021.con" + + "text.DeviceId\".\n\nDeviceList\022 \n\007devices\030\001" + + " \003(\0132\017.context.Device\"\216\001\n\014DeviceFilter\022)" + + "\n\ndevice_ids\030\001 \001(\0132\025.context.DeviceIdLis" + + "t\022\031\n\021include_endpoints\030\002 \001(\010\022\034\n\024include_" + + "config_rules\030\003 \001(\010\022\032\n\022include_components" + + "\030\004 \001(\010\"\200\001\n\013DeviceEvent\022\035\n\005event\030\001 \001(\0132\016." + + "context.Event\022$\n\tdevice_id\030\002 \001(\0132\021.conte" + + "xt.DeviceId\022,\n\rdevice_config\030\003 \001(\0132\025.con" + + "text.DeviceConfig\"*\n\006LinkId\022 \n\tlink_uuid" + + "\030\001 \001(\0132\r.context.Uuid\"f\n\004Link\022 \n\007link_id" + + "\030\001 \001(\0132\017.context.LinkId\022\014\n\004name\030\002 \001(\t\022.\n" + + "\021link_endpoint_ids\030\003 \003(\0132\023.context.EndPo" + + "intId\"/\n\nLinkIdList\022!\n\010link_ids\030\001 \003(\0132\017." + + "context.LinkId\"(\n\010LinkList\022\034\n\005links\030\001 \003(" + + "\0132\r.context.Link\"L\n\tLinkEvent\022\035\n\005event\030\001" + + " \001(\0132\016.context.Event\022 \n\007link_id\030\002 \001(\0132\017." + + "context.LinkId\"X\n\tServiceId\022&\n\ncontext_i" + + "d\030\001 \001(\0132\022.context.ContextId\022#\n\014service_u" + + "uid\030\002 \001(\0132\r.context.Uuid\"\333\002\n\007Service\022&\n\n" + + "service_id\030\001 \001(\0132\022.context.ServiceId\022\014\n\004" + + "name\030\002 \001(\t\022.\n\014service_type\030\003 \001(\0162\030.conte" + + "xt.ServiceTypeEnum\0221\n\024service_endpoint_i" + + "ds\030\004 \003(\0132\023.context.EndPointId\0220\n\023service" + + "_constraints\030\005 \003(\0132\023.context.Constraint\022" + + ".\n\016service_status\030\006 \001(\0132\026.context.Servic" + + "eStatus\022.\n\016service_config\030\007 \001(\0132\026.contex" + + "t.ServiceConfig\022%\n\ttimestamp\030\010 \001(\0132\022.con" + + "text.Timestamp\"C\n\rServiceStatus\0222\n\016servi" + + "ce_status\030\001 \001(\0162\032.context.ServiceStatusE" + + "num\":\n\rServiceConfig\022)\n\014config_rules\030\001 \003" + + "(\0132\023.context.ConfigRule\"8\n\rServiceIdList" + + "\022\'\n\013service_ids\030\001 \003(\0132\022.context.ServiceI" + + "d\"1\n\013ServiceList\022\"\n\010services\030\001 \003(\0132\020.con" + + "text.Service\"\225\001\n\rServiceFilter\022+\n\013servic" + + "e_ids\030\001 \001(\0132\026.context.ServiceIdList\022\034\n\024i" + + "nclude_endpoint_ids\030\002 \001(\010\022\033\n\023include_con" + + "straints\030\003 \001(\010\022\034\n\024include_config_rules\030\004" + + " \001(\010\"U\n\014ServiceEvent\022\035\n\005event\030\001 \001(\0132\016.co" + + "ntext.Event\022&\n\nservice_id\030\002 \001(\0132\022.contex" + + "t.ServiceId\"T\n\007SliceId\022&\n\ncontext_id\030\001 \001" + + "(\0132\022.context.ContextId\022!\n\nslice_uuid\030\002 \001" + + "(\0132\r.context.Uuid\"\240\003\n\005Slice\022\"\n\010slice_id\030" + + "\001 \001(\0132\020.context.SliceId\022\014\n\004name\030\002 \001(\t\022/\n" + + "\022slice_endpoint_ids\030\003 \003(\0132\023.context.EndP" + + "ointId\022.\n\021slice_constraints\030\004 \003(\0132\023.cont" + + "ext.Constraint\022-\n\021slice_service_ids\030\005 \003(" + + "\0132\022.context.ServiceId\022,\n\022slice_subslice_" + + "ids\030\006 \003(\0132\020.context.SliceId\022*\n\014slice_sta" + + "tus\030\007 \001(\0132\024.context.SliceStatus\022*\n\014slice" + + "_config\030\010 \001(\0132\024.context.SliceConfig\022(\n\013s" + + "lice_owner\030\t \001(\0132\023.context.SliceOwner\022%\n" + + "\ttimestamp\030\n \001(\0132\022.context.Timestamp\"E\n\n" + + "SliceOwner\022!\n\nowner_uuid\030\001 \001(\0132\r.context" + + ".Uuid\022\024\n\014owner_string\030\002 \001(\t\"=\n\013SliceStat" + + "us\022.\n\014slice_status\030\001 \001(\0162\030.context.Slice" + + "StatusEnum\"8\n\013SliceConfig\022)\n\014config_rule" + + "s\030\001 \003(\0132\023.context.ConfigRule\"2\n\013SliceIdL" + + "ist\022#\n\tslice_ids\030\001 \003(\0132\020.context.SliceId" + + "\"+\n\tSliceList\022\036\n\006slices\030\001 \003(\0132\016.context." + + "Slice\"\312\001\n\013SliceFilter\022\'\n\tslice_ids\030\001 \001(\013" + + "2\024.context.SliceIdList\022\034\n\024include_endpoi" + + "nt_ids\030\002 \001(\010\022\033\n\023include_constraints\030\003 \001(" + + "\010\022\033\n\023include_service_ids\030\004 \001(\010\022\034\n\024includ" + + "e_subslice_ids\030\005 \001(\010\022\034\n\024include_config_r" + + "ules\030\006 \001(\010\"O\n\nSliceEvent\022\035\n\005event\030\001 \001(\0132" + + "\016.context.Event\022\"\n\010slice_id\030\002 \001(\0132\020.cont" + + "ext.SliceId\"6\n\014ConnectionId\022&\n\017connectio" + + "n_uuid\030\001 \001(\0132\r.context.Uuid\"2\n\025Connectio" + + "nSettings_L0\022\031\n\021lsp_symbolic_name\030\001 \001(\t\"" + + "\236\001\n\025ConnectionSettings_L2\022\027\n\017src_mac_add" + + "ress\030\001 \001(\t\022\027\n\017dst_mac_address\030\002 \001(\t\022\022\n\ne" + + "ther_type\030\003 \001(\r\022\017\n\007vlan_id\030\004 \001(\r\022\022\n\nmpls" + + "_label\030\005 \001(\r\022\032\n\022mpls_traffic_class\030\006 \001(\r" + + "\"t\n\025ConnectionSettings_L3\022\026\n\016src_ip_addr" + + "ess\030\001 \001(\t\022\026\n\016dst_ip_address\030\002 \001(\t\022\014\n\004dsc" + + "p\030\003 \001(\r\022\020\n\010protocol\030\004 \001(\r\022\013\n\003ttl\030\005 \001(\r\"[" + + "\n\025ConnectionSettings_L4\022\020\n\010src_port\030\001 \001(" + + "\r\022\020\n\010dst_port\030\002 \001(\r\022\021\n\ttcp_flags\030\003 \001(\r\022\013" + + "\n\003ttl\030\004 \001(\r\"\304\001\n\022ConnectionSettings\022*\n\002l0" + + "\030\001 \001(\0132\036.context.ConnectionSettings_L0\022*" + + "\n\002l2\030\002 \001(\0132\036.context.ConnectionSettings_" + + "L2\022*\n\002l3\030\003 \001(\0132\036.context.ConnectionSetti" + + "ngs_L3\022*\n\002l4\030\004 \001(\0132\036.context.ConnectionS" + + "ettings_L4\"\363\001\n\nConnection\022,\n\rconnection_" + + "id\030\001 \001(\0132\025.context.ConnectionId\022&\n\nservi" + + "ce_id\030\002 \001(\0132\022.context.ServiceId\0223\n\026path_" + + "hops_endpoint_ids\030\003 \003(\0132\023.context.EndPoi" + + "ntId\022+\n\017sub_service_ids\030\004 \003(\0132\022.context." + + "ServiceId\022-\n\010settings\030\005 \001(\0132\033.context.Co" + + "nnectionSettings\"A\n\020ConnectionIdList\022-\n\016" + + "connection_ids\030\001 \003(\0132\025.context.Connectio" + + "nId\":\n\016ConnectionList\022(\n\013connections\030\001 \003" + + "(\0132\023.context.Connection\"^\n\017ConnectionEve" + + "nt\022\035\n\005event\030\001 \001(\0132\016.context.Event\022,\n\rcon" + + "nection_id\030\002 \001(\0132\025.context.ConnectionId\"" + + "\202\001\n\nEndPointId\022(\n\013topology_id\030\001 \001(\0132\023.co" + + "ntext.TopologyId\022$\n\tdevice_id\030\002 \001(\0132\021.co" + + "ntext.DeviceId\022$\n\rendpoint_uuid\030\003 \001(\0132\r." + + "context.Uuid\"\302\001\n\010EndPoint\022(\n\013endpoint_id" + + "\030\001 \001(\0132\023.context.EndPointId\022\014\n\004name\030\002 \001(" + + "\t\022\025\n\rendpoint_type\030\003 \001(\t\0229\n\020kpi_sample_t" + + "ypes\030\004 \003(\0162\037.kpi_sample_types.KpiSampleT" + + "ype\022,\n\021endpoint_location\030\005 \001(\0132\021.context" + + ".Location\"{\n\014EndPointName\022(\n\013endpoint_id" + + "\030\001 \001(\0132\023.context.EndPointId\022\023\n\013device_na" + + "me\030\002 \001(\t\022\025\n\rendpoint_name\030\003 \001(\t\022\025\n\rendpo" + + "int_type\030\004 \001(\t\";\n\016EndPointIdList\022)\n\014endp" + + "oint_ids\030\001 \003(\0132\023.context.EndPointId\"A\n\020E" + + "ndPointNameList\022-\n\016endpoint_names\030\001 \003(\0132" + + "\025.context.EndPointName\"A\n\021ConfigRule_Cus" + + "tom\022\024\n\014resource_key\030\001 \001(\t\022\026\n\016resource_va" + + "lue\030\002 \001(\t\"]\n\016ConfigRule_ACL\022(\n\013endpoint_" + + "id\030\001 \001(\0132\023.context.EndPointId\022!\n\010rule_se" + + "t\030\002 \001(\0132\017.acl.AclRuleSet\"\234\001\n\nConfigRule\022" + + ")\n\006action\030\001 \001(\0162\031.context.ConfigActionEn" + + "um\022,\n\006custom\030\002 \001(\0132\032.context.ConfigRule_" + + "CustomH\000\022&\n\003acl\030\003 \001(\0132\027.context.ConfigRu" + + "le_ACLH\000B\r\n\013config_rule\"F\n\021Constraint_Cu" + + "stom\022\027\n\017constraint_type\030\001 \001(\t\022\030\n\020constra" + + "int_value\030\002 \001(\t\"E\n\023Constraint_Schedule\022\027" + + "\n\017start_timestamp\030\001 \001(\002\022\025\n\rduration_days" + + "\030\002 \001(\002\"3\n\014GPS_Position\022\020\n\010latitude\030\001 \001(\002" + + "\022\021\n\tlongitude\030\002 \001(\002\"W\n\010Location\022\020\n\006regio" + + "n\030\001 \001(\tH\000\022-\n\014gps_position\030\002 \001(\0132\025.contex" + + "t.GPS_PositionH\000B\n\n\010location\"l\n\033Constrai" + + "nt_EndPointLocation\022(\n\013endpoint_id\030\001 \001(\013" + + "2\023.context.EndPointId\022#\n\010location\030\002 \001(\0132" + + "\021.context.Location\"Y\n\033Constraint_EndPoin" + + "tPriority\022(\n\013endpoint_id\030\001 \001(\0132\023.context" + + ".EndPointId\022\020\n\010priority\030\002 \001(\r\"0\n\026Constra" + + "int_SLA_Latency\022\026\n\016e2e_latency_ms\030\001 \001(\002\"" + + "0\n\027Constraint_SLA_Capacity\022\025\n\rcapacity_g" + + "bps\030\001 \001(\002\"c\n\033Constraint_SLA_Availability" + + "\022\032\n\022num_disjoint_paths\030\001 \001(\r\022\022\n\nall_acti" + + "ve\030\002 \001(\010\022\024\n\014availability\030\003 \001(\002\"V\n\036Constr" + + "aint_SLA_Isolation_level\0224\n\017isolation_le" + + "vel\030\001 \003(\0162\033.context.IsolationLevelEnum\"\242" + + "\001\n\025Constraint_Exclusions\022\024\n\014is_permanent" + + "\030\001 \001(\010\022%\n\ndevice_ids\030\002 \003(\0132\021.context.Dev" + + "iceId\022)\n\014endpoint_ids\030\003 \003(\0132\023.context.En" + + "dPointId\022!\n\010link_ids\030\004 \003(\0132\017.context.Lin" + + "kId\"\333\004\n\nConstraint\022-\n\006action\030\001 \001(\0162\035.con" + + "text.ConstraintActionEnum\022,\n\006custom\030\002 \001(" + + "\0132\032.context.Constraint_CustomH\000\0220\n\010sched" + + "ule\030\003 \001(\0132\034.context.Constraint_ScheduleH" + + "\000\022A\n\021endpoint_location\030\004 \001(\0132$.context.C" + + "onstraint_EndPointLocationH\000\022A\n\021endpoint" + + "_priority\030\005 \001(\0132$.context.Constraint_End" + + "PointPriorityH\000\0228\n\014sla_capacity\030\006 \001(\0132 ." + + "context.Constraint_SLA_CapacityH\000\0226\n\013sla" + + "_latency\030\007 \001(\0132\037.context.Constraint_SLA_" + + "LatencyH\000\022@\n\020sla_availability\030\010 \001(\0132$.co" + + "ntext.Constraint_SLA_AvailabilityH\000\022@\n\rs" + + "la_isolation\030\t \001(\0132\'.context.Constraint_" + + "SLA_Isolation_levelH\000\0224\n\nexclusions\030\n \001(" + + "\0132\036.context.Constraint_ExclusionsH\000B\014\n\nc" + + "onstraint\"^\n\022TeraFlowController\022&\n\nconte" + + "xt_id\030\001 \001(\0132\022.context.ContextId\022\022\n\nip_ad" + + "dress\030\002 \001(\t\022\014\n\004port\030\003 \001(\r\"U\n\024Authenticat" + + "ionResult\022&\n\ncontext_id\030\001 \001(\0132\022.context." + + "ContextId\022\025\n\rauthenticated\030\002 \001(\010*j\n\rEven" + + "tTypeEnum\022\027\n\023EVENTTYPE_UNDEFINED\020\000\022\024\n\020EV" + + "ENTTYPE_CREATE\020\001\022\024\n\020EVENTTYPE_UPDATE\020\002\022\024" + + "\n\020EVENTTYPE_REMOVE\020\003*\231\002\n\020DeviceDriverEnu" + + "m\022\032\n\026DEVICEDRIVER_UNDEFINED\020\000\022\033\n\027DEVICED" + + "RIVER_OPENCONFIG\020\001\022\036\n\032DEVICEDRIVER_TRANS" + + "PORT_API\020\002\022\023\n\017DEVICEDRIVER_P4\020\003\022&\n\"DEVIC" + + "EDRIVER_IETF_NETWORK_TOPOLOGY\020\004\022\033\n\027DEVIC" + + "EDRIVER_ONF_TR_352\020\005\022\023\n\017DEVICEDRIVER_XR\020" + + "\006\022\033\n\027DEVICEDRIVER_IETF_L2VPN\020\007\022 \n\034DEVICE" + + "DRIVER_GNMI_OPENCONFIG\020\010*\217\001\n\033DeviceOpera" + + "tionalStatusEnum\022%\n!DEVICEOPERATIONALSTA" + + "TUS_UNDEFINED\020\000\022$\n DEVICEOPERATIONALSTAT" + + "US_DISABLED\020\001\022#\n\037DEVICEOPERATIONALSTATUS" + + "_ENABLED\020\002*\201\001\n\017ServiceTypeEnum\022\027\n\023SERVIC" + + "ETYPE_UNKNOWN\020\000\022\024\n\020SERVICETYPE_L3NM\020\001\022\024\n" + + "\020SERVICETYPE_L2NM\020\002\022)\n%SERVICETYPE_TAPI_" + + "CONNECTIVITY_SERVICE\020\003*\304\001\n\021ServiceStatus" + + "Enum\022\033\n\027SERVICESTATUS_UNDEFINED\020\000\022\031\n\025SER" + + "VICESTATUS_PLANNED\020\001\022\030\n\024SERVICESTATUS_AC" + + "TIVE\020\002\022\032\n\026SERVICESTATUS_UPDATING\020\003\022!\n\035SE" + + "RVICESTATUS_PENDING_REMOVAL\020\004\022\036\n\032SERVICE" + + "STATUS_SLA_VIOLATED\020\005*\251\001\n\017SliceStatusEnu" + + "m\022\031\n\025SLICESTATUS_UNDEFINED\020\000\022\027\n\023SLICESTA" + + "TUS_PLANNED\020\001\022\024\n\020SLICESTATUS_INIT\020\002\022\026\n\022S" + + "LICESTATUS_ACTIVE\020\003\022\026\n\022SLICESTATUS_DEINI" + + "T\020\004\022\034\n\030SLICESTATUS_SLA_VIOLATED\020\005*]\n\020Con" + + "figActionEnum\022\032\n\026CONFIGACTION_UNDEFINED\020" + + "\000\022\024\n\020CONFIGACTION_SET\020\001\022\027\n\023CONFIGACTION_" + + "DELETE\020\002*m\n\024ConstraintActionEnum\022\036\n\032CONS" + + "TRAINTACTION_UNDEFINED\020\000\022\030\n\024CONSTRAINTAC" + + "TION_SET\020\001\022\033\n\027CONSTRAINTACTION_DELETE\020\002*" + + "\203\002\n\022IsolationLevelEnum\022\020\n\014NO_ISOLATION\020\000" + + "\022\026\n\022PHYSICAL_ISOLATION\020\001\022\025\n\021LOGICAL_ISOL" + + "ATION\020\002\022\025\n\021PROCESS_ISOLATION\020\003\022\035\n\031PHYSIC" + + "AL_MEMORY_ISOLATION\020\004\022\036\n\032PHYSICAL_NETWOR" + + "K_ISOLATION\020\005\022\036\n\032VIRTUAL_RESOURCE_ISOLAT" + + "ION\020\006\022\037\n\033NETWORK_FUNCTIONS_ISOLATION\020\007\022\025" + + "\n\021SERVICE_ISOLATION\020\0102\245\026\n\016ContextService" + + "\022:\n\016ListContextIds\022\016.context.Empty\032\026.con" + + "text.ContextIdList\"\000\0226\n\014ListContexts\022\016.c" + + "ontext.Empty\032\024.context.ContextList\"\000\0224\n\n" + + "GetContext\022\022.context.ContextId\032\020.context" + + ".Context\"\000\0224\n\nSetContext\022\020.context.Conte" + + "xt\032\022.context.ContextId\"\000\0225\n\rRemoveContex" + + "t\022\022.context.ContextId\032\016.context.Empty\"\000\022" + + "=\n\020GetContextEvents\022\016.context.Empty\032\025.co" + + "ntext.ContextEvent\"\0000\001\022@\n\017ListTopologyId" + + "s\022\022.context.ContextId\032\027.context.Topology" + + "IdList\"\000\022=\n\016ListTopologies\022\022.context.Con" + + "textId\032\025.context.TopologyList\"\000\0227\n\013GetTo" + + "pology\022\023.context.TopologyId\032\021.context.To" + + "pology\"\000\022E\n\022GetTopologyDetails\022\023.context" + + ".TopologyId\032\030.context.TopologyDetails\"\000\022" + + "7\n\013SetTopology\022\021.context.Topology\032\023.cont" + + "ext.TopologyId\"\000\0227\n\016RemoveTopology\022\023.con" + + "text.TopologyId\032\016.context.Empty\"\000\022?\n\021Get" + + "TopologyEvents\022\016.context.Empty\032\026.context" + + ".TopologyEvent\"\0000\001\0228\n\rListDeviceIds\022\016.co" + + "ntext.Empty\032\025.context.DeviceIdList\"\000\0224\n\013" + + "ListDevices\022\016.context.Empty\032\023.context.De" + + "viceList\"\000\0221\n\tGetDevice\022\021.context.Device" + + "Id\032\017.context.Device\"\000\0221\n\tSetDevice\022\017.con" + + "text.Device\032\021.context.DeviceId\"\000\0223\n\014Remo" + + "veDevice\022\021.context.DeviceId\032\016.context.Em" + + "pty\"\000\022;\n\017GetDeviceEvents\022\016.context.Empty" + + "\032\024.context.DeviceEvent\"\0000\001\022<\n\014SelectDevi" + + "ce\022\025.context.DeviceFilter\032\023.context.Devi" + + "ceList\"\000\022I\n\021ListEndPointNames\022\027.context." + + "EndPointIdList\032\031.context.EndPointNameLis" + + "t\"\000\0224\n\013ListLinkIds\022\016.context.Empty\032\023.con" + + "text.LinkIdList\"\000\0220\n\tListLinks\022\016.context" + + ".Empty\032\021.context.LinkList\"\000\022+\n\007GetLink\022\017" + + ".context.LinkId\032\r.context.Link\"\000\022+\n\007SetL" + + "ink\022\r.context.Link\032\017.context.LinkId\"\000\022/\n" + + "\nRemoveLink\022\017.context.LinkId\032\016.context.E" + + "mpty\"\000\0227\n\rGetLinkEvents\022\016.context.Empty\032" + + "\022.context.LinkEvent\"\0000\001\022>\n\016ListServiceId" + + "s\022\022.context.ContextId\032\026.context.ServiceI" + + "dList\"\000\022:\n\014ListServices\022\022.context.Contex" + + "tId\032\024.context.ServiceList\"\000\0224\n\nGetServic" + + "e\022\022.context.ServiceId\032\020.context.Service\"" + + "\000\0224\n\nSetService\022\020.context.Service\032\022.cont" + + "ext.ServiceId\"\000\0226\n\014UnsetService\022\020.contex" + + "t.Service\032\022.context.ServiceId\"\000\0225\n\rRemov" + + "eService\022\022.context.ServiceId\032\016.context.E" + + "mpty\"\000\022=\n\020GetServiceEvents\022\016.context.Emp" + + "ty\032\025.context.ServiceEvent\"\0000\001\022?\n\rSelectS" + + "ervice\022\026.context.ServiceFilter\032\024.context" + + ".ServiceList\"\000\022:\n\014ListSliceIds\022\022.context" + + ".ContextId\032\024.context.SliceIdList\"\000\0226\n\nLi" + + "stSlices\022\022.context.ContextId\032\022.context.S" + + "liceList\"\000\022.\n\010GetSlice\022\020.context.SliceId" + + "\032\016.context.Slice\"\000\022.\n\010SetSlice\022\016.context" + + ".Slice\032\020.context.SliceId\"\000\0220\n\nUnsetSlice" + + "\022\016.context.Slice\032\020.context.SliceId\"\000\0221\n\013" + + "RemoveSlice\022\020.context.SliceId\032\016.context." + + "Empty\"\000\0229\n\016GetSliceEvents\022\016.context.Empt" + + "y\032\023.context.SliceEvent\"\0000\001\0229\n\013SelectSlic" + + "e\022\024.context.SliceFilter\032\022.context.SliceL" + + "ist\"\000\022D\n\021ListConnectionIds\022\022.context.Ser" + + "viceId\032\031.context.ConnectionIdList\"\000\022@\n\017L" + + "istConnections\022\022.context.ServiceId\032\027.con" + + "text.ConnectionList\"\000\022=\n\rGetConnection\022\025" + + ".context.ConnectionId\032\023.context.Connecti" + + "on\"\000\022=\n\rSetConnection\022\023.context.Connecti" + + "on\032\025.context.ConnectionId\"\000\022;\n\020RemoveCon" + + "nection\022\025.context.ConnectionId\032\016.context" + + ".Empty\"\000\022C\n\023GetConnectionEvents\022\016.contex" + + "t.Empty\032\030.context.ConnectionEvent\"\0000\001b\006p" + + "roto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, @@ -69301,7 +74426,7 @@ public final class ContextOuterClass { internal_static_context_Device_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Device_descriptor, - new java.lang.String[] { "DeviceId", "Name", "DeviceType", "DeviceConfig", "DeviceOperationalStatus", "DeviceDrivers", "DeviceEndpoints", "Component", }); + new java.lang.String[] { "DeviceId", "Name", "DeviceType", "DeviceConfig", "DeviceOperationalStatus", "DeviceDrivers", "DeviceEndpoints", "Component", "ControllerId", }); internal_static_context_Component_descriptor = getDescriptor().getMessageTypes().get(17); internal_static_context_Component_fieldAccessorTable = new @@ -69326,314 +74451,338 @@ public final class ContextOuterClass { com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_DeviceList_descriptor, new java.lang.String[] { "Devices", }); - internal_static_context_DeviceEvent_descriptor = + internal_static_context_DeviceFilter_descriptor = getDescriptor().getMessageTypes().get(21); + internal_static_context_DeviceFilter_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_context_DeviceFilter_descriptor, + new java.lang.String[] { "DeviceIds", "IncludeEndpoints", "IncludeConfigRules", "IncludeComponents", }); + internal_static_context_DeviceEvent_descriptor = + getDescriptor().getMessageTypes().get(22); internal_static_context_DeviceEvent_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_DeviceEvent_descriptor, new java.lang.String[] { "Event", "DeviceId", "DeviceConfig", }); internal_static_context_LinkId_descriptor = - getDescriptor().getMessageTypes().get(22); + getDescriptor().getMessageTypes().get(23); internal_static_context_LinkId_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_LinkId_descriptor, new java.lang.String[] { "LinkUuid", }); internal_static_context_Link_descriptor = - getDescriptor().getMessageTypes().get(23); + getDescriptor().getMessageTypes().get(24); internal_static_context_Link_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Link_descriptor, new java.lang.String[] { "LinkId", "Name", "LinkEndpointIds", }); internal_static_context_LinkIdList_descriptor = - getDescriptor().getMessageTypes().get(24); + getDescriptor().getMessageTypes().get(25); internal_static_context_LinkIdList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_LinkIdList_descriptor, new java.lang.String[] { "LinkIds", }); internal_static_context_LinkList_descriptor = - getDescriptor().getMessageTypes().get(25); + getDescriptor().getMessageTypes().get(26); internal_static_context_LinkList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_LinkList_descriptor, new java.lang.String[] { "Links", }); internal_static_context_LinkEvent_descriptor = - getDescriptor().getMessageTypes().get(26); + getDescriptor().getMessageTypes().get(27); internal_static_context_LinkEvent_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_LinkEvent_descriptor, new java.lang.String[] { "Event", "LinkId", }); internal_static_context_ServiceId_descriptor = - getDescriptor().getMessageTypes().get(27); + getDescriptor().getMessageTypes().get(28); internal_static_context_ServiceId_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ServiceId_descriptor, new java.lang.String[] { "ContextId", "ServiceUuid", }); internal_static_context_Service_descriptor = - getDescriptor().getMessageTypes().get(28); + getDescriptor().getMessageTypes().get(29); internal_static_context_Service_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Service_descriptor, new java.lang.String[] { "ServiceId", "Name", "ServiceType", "ServiceEndpointIds", "ServiceConstraints", "ServiceStatus", "ServiceConfig", "Timestamp", }); internal_static_context_ServiceStatus_descriptor = - getDescriptor().getMessageTypes().get(29); + getDescriptor().getMessageTypes().get(30); internal_static_context_ServiceStatus_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ServiceStatus_descriptor, new java.lang.String[] { "ServiceStatus", }); internal_static_context_ServiceConfig_descriptor = - getDescriptor().getMessageTypes().get(30); + getDescriptor().getMessageTypes().get(31); internal_static_context_ServiceConfig_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ServiceConfig_descriptor, new java.lang.String[] { "ConfigRules", }); internal_static_context_ServiceIdList_descriptor = - getDescriptor().getMessageTypes().get(31); + getDescriptor().getMessageTypes().get(32); internal_static_context_ServiceIdList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ServiceIdList_descriptor, new java.lang.String[] { "ServiceIds", }); internal_static_context_ServiceList_descriptor = - getDescriptor().getMessageTypes().get(32); + getDescriptor().getMessageTypes().get(33); internal_static_context_ServiceList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ServiceList_descriptor, new java.lang.String[] { "Services", }); + internal_static_context_ServiceFilter_descriptor = + getDescriptor().getMessageTypes().get(34); + internal_static_context_ServiceFilter_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_context_ServiceFilter_descriptor, + new java.lang.String[] { "ServiceIds", "IncludeEndpointIds", "IncludeConstraints", "IncludeConfigRules", }); internal_static_context_ServiceEvent_descriptor = - getDescriptor().getMessageTypes().get(33); + getDescriptor().getMessageTypes().get(35); internal_static_context_ServiceEvent_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ServiceEvent_descriptor, new java.lang.String[] { "Event", "ServiceId", }); internal_static_context_SliceId_descriptor = - getDescriptor().getMessageTypes().get(34); + getDescriptor().getMessageTypes().get(36); internal_static_context_SliceId_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_SliceId_descriptor, new java.lang.String[] { "ContextId", "SliceUuid", }); internal_static_context_Slice_descriptor = - getDescriptor().getMessageTypes().get(35); + getDescriptor().getMessageTypes().get(37); internal_static_context_Slice_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Slice_descriptor, new java.lang.String[] { "SliceId", "Name", "SliceEndpointIds", "SliceConstraints", "SliceServiceIds", "SliceSubsliceIds", "SliceStatus", "SliceConfig", "SliceOwner", "Timestamp", }); internal_static_context_SliceOwner_descriptor = - getDescriptor().getMessageTypes().get(36); + getDescriptor().getMessageTypes().get(38); internal_static_context_SliceOwner_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_SliceOwner_descriptor, new java.lang.String[] { "OwnerUuid", "OwnerString", }); internal_static_context_SliceStatus_descriptor = - getDescriptor().getMessageTypes().get(37); + getDescriptor().getMessageTypes().get(39); internal_static_context_SliceStatus_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_SliceStatus_descriptor, new java.lang.String[] { "SliceStatus", }); internal_static_context_SliceConfig_descriptor = - getDescriptor().getMessageTypes().get(38); + getDescriptor().getMessageTypes().get(40); internal_static_context_SliceConfig_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_SliceConfig_descriptor, new java.lang.String[] { "ConfigRules", }); internal_static_context_SliceIdList_descriptor = - getDescriptor().getMessageTypes().get(39); + getDescriptor().getMessageTypes().get(41); internal_static_context_SliceIdList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_SliceIdList_descriptor, new java.lang.String[] { "SliceIds", }); internal_static_context_SliceList_descriptor = - getDescriptor().getMessageTypes().get(40); + getDescriptor().getMessageTypes().get(42); internal_static_context_SliceList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_SliceList_descriptor, new java.lang.String[] { "Slices", }); + internal_static_context_SliceFilter_descriptor = + getDescriptor().getMessageTypes().get(43); + internal_static_context_SliceFilter_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_context_SliceFilter_descriptor, + new java.lang.String[] { "SliceIds", "IncludeEndpointIds", "IncludeConstraints", "IncludeServiceIds", "IncludeSubsliceIds", "IncludeConfigRules", }); internal_static_context_SliceEvent_descriptor = - getDescriptor().getMessageTypes().get(41); + getDescriptor().getMessageTypes().get(44); internal_static_context_SliceEvent_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_SliceEvent_descriptor, new java.lang.String[] { "Event", "SliceId", }); internal_static_context_ConnectionId_descriptor = - getDescriptor().getMessageTypes().get(42); + getDescriptor().getMessageTypes().get(45); internal_static_context_ConnectionId_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ConnectionId_descriptor, new java.lang.String[] { "ConnectionUuid", }); internal_static_context_ConnectionSettings_L0_descriptor = - getDescriptor().getMessageTypes().get(43); + getDescriptor().getMessageTypes().get(46); internal_static_context_ConnectionSettings_L0_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ConnectionSettings_L0_descriptor, new java.lang.String[] { "LspSymbolicName", }); internal_static_context_ConnectionSettings_L2_descriptor = - getDescriptor().getMessageTypes().get(44); + getDescriptor().getMessageTypes().get(47); internal_static_context_ConnectionSettings_L2_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ConnectionSettings_L2_descriptor, new java.lang.String[] { "SrcMacAddress", "DstMacAddress", "EtherType", "VlanId", "MplsLabel", "MplsTrafficClass", }); internal_static_context_ConnectionSettings_L3_descriptor = - getDescriptor().getMessageTypes().get(45); + getDescriptor().getMessageTypes().get(48); internal_static_context_ConnectionSettings_L3_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ConnectionSettings_L3_descriptor, new java.lang.String[] { "SrcIpAddress", "DstIpAddress", "Dscp", "Protocol", "Ttl", }); internal_static_context_ConnectionSettings_L4_descriptor = - getDescriptor().getMessageTypes().get(46); + getDescriptor().getMessageTypes().get(49); internal_static_context_ConnectionSettings_L4_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ConnectionSettings_L4_descriptor, new java.lang.String[] { "SrcPort", "DstPort", "TcpFlags", "Ttl", }); internal_static_context_ConnectionSettings_descriptor = - getDescriptor().getMessageTypes().get(47); + getDescriptor().getMessageTypes().get(50); internal_static_context_ConnectionSettings_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ConnectionSettings_descriptor, new java.lang.String[] { "L0", "L2", "L3", "L4", }); internal_static_context_Connection_descriptor = - getDescriptor().getMessageTypes().get(48); + getDescriptor().getMessageTypes().get(51); internal_static_context_Connection_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Connection_descriptor, new java.lang.String[] { "ConnectionId", "ServiceId", "PathHopsEndpointIds", "SubServiceIds", "Settings", }); internal_static_context_ConnectionIdList_descriptor = - getDescriptor().getMessageTypes().get(49); + getDescriptor().getMessageTypes().get(52); internal_static_context_ConnectionIdList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ConnectionIdList_descriptor, new java.lang.String[] { "ConnectionIds", }); internal_static_context_ConnectionList_descriptor = - getDescriptor().getMessageTypes().get(50); + getDescriptor().getMessageTypes().get(53); internal_static_context_ConnectionList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ConnectionList_descriptor, new java.lang.String[] { "Connections", }); internal_static_context_ConnectionEvent_descriptor = - getDescriptor().getMessageTypes().get(51); + getDescriptor().getMessageTypes().get(54); internal_static_context_ConnectionEvent_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ConnectionEvent_descriptor, new java.lang.String[] { "Event", "ConnectionId", }); internal_static_context_EndPointId_descriptor = - getDescriptor().getMessageTypes().get(52); + getDescriptor().getMessageTypes().get(55); internal_static_context_EndPointId_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_EndPointId_descriptor, new java.lang.String[] { "TopologyId", "DeviceId", "EndpointUuid", }); internal_static_context_EndPoint_descriptor = - getDescriptor().getMessageTypes().get(53); + getDescriptor().getMessageTypes().get(56); internal_static_context_EndPoint_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_EndPoint_descriptor, new java.lang.String[] { "EndpointId", "Name", "EndpointType", "KpiSampleTypes", "EndpointLocation", }); internal_static_context_EndPointName_descriptor = - getDescriptor().getMessageTypes().get(54); + getDescriptor().getMessageTypes().get(57); internal_static_context_EndPointName_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_EndPointName_descriptor, new java.lang.String[] { "EndpointId", "DeviceName", "EndpointName", "EndpointType", }); internal_static_context_EndPointIdList_descriptor = - getDescriptor().getMessageTypes().get(55); + getDescriptor().getMessageTypes().get(58); internal_static_context_EndPointIdList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_EndPointIdList_descriptor, new java.lang.String[] { "EndpointIds", }); internal_static_context_EndPointNameList_descriptor = - getDescriptor().getMessageTypes().get(56); + getDescriptor().getMessageTypes().get(59); internal_static_context_EndPointNameList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_EndPointNameList_descriptor, new java.lang.String[] { "EndpointNames", }); internal_static_context_ConfigRule_Custom_descriptor = - getDescriptor().getMessageTypes().get(57); + getDescriptor().getMessageTypes().get(60); internal_static_context_ConfigRule_Custom_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ConfigRule_Custom_descriptor, new java.lang.String[] { "ResourceKey", "ResourceValue", }); internal_static_context_ConfigRule_ACL_descriptor = - getDescriptor().getMessageTypes().get(58); + getDescriptor().getMessageTypes().get(61); internal_static_context_ConfigRule_ACL_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ConfigRule_ACL_descriptor, new java.lang.String[] { "EndpointId", "RuleSet", }); internal_static_context_ConfigRule_descriptor = - getDescriptor().getMessageTypes().get(59); + getDescriptor().getMessageTypes().get(62); internal_static_context_ConfigRule_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ConfigRule_descriptor, new java.lang.String[] { "Action", "Custom", "Acl", "ConfigRule", }); internal_static_context_Constraint_Custom_descriptor = - getDescriptor().getMessageTypes().get(60); + getDescriptor().getMessageTypes().get(63); internal_static_context_Constraint_Custom_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Constraint_Custom_descriptor, new java.lang.String[] { "ConstraintType", "ConstraintValue", }); internal_static_context_Constraint_Schedule_descriptor = - getDescriptor().getMessageTypes().get(61); + getDescriptor().getMessageTypes().get(64); internal_static_context_Constraint_Schedule_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Constraint_Schedule_descriptor, new java.lang.String[] { "StartTimestamp", "DurationDays", }); internal_static_context_GPS_Position_descriptor = - getDescriptor().getMessageTypes().get(62); + getDescriptor().getMessageTypes().get(65); internal_static_context_GPS_Position_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_GPS_Position_descriptor, new java.lang.String[] { "Latitude", "Longitude", }); internal_static_context_Location_descriptor = - getDescriptor().getMessageTypes().get(63); + getDescriptor().getMessageTypes().get(66); internal_static_context_Location_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Location_descriptor, new java.lang.String[] { "Region", "GpsPosition", "Location", }); internal_static_context_Constraint_EndPointLocation_descriptor = - getDescriptor().getMessageTypes().get(64); + getDescriptor().getMessageTypes().get(67); internal_static_context_Constraint_EndPointLocation_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Constraint_EndPointLocation_descriptor, new java.lang.String[] { "EndpointId", "Location", }); internal_static_context_Constraint_EndPointPriority_descriptor = - getDescriptor().getMessageTypes().get(65); + getDescriptor().getMessageTypes().get(68); internal_static_context_Constraint_EndPointPriority_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Constraint_EndPointPriority_descriptor, new java.lang.String[] { "EndpointId", "Priority", }); internal_static_context_Constraint_SLA_Latency_descriptor = - getDescriptor().getMessageTypes().get(66); + getDescriptor().getMessageTypes().get(69); internal_static_context_Constraint_SLA_Latency_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Constraint_SLA_Latency_descriptor, new java.lang.String[] { "E2ELatencyMs", }); internal_static_context_Constraint_SLA_Capacity_descriptor = - getDescriptor().getMessageTypes().get(67); + getDescriptor().getMessageTypes().get(70); internal_static_context_Constraint_SLA_Capacity_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Constraint_SLA_Capacity_descriptor, new java.lang.String[] { "CapacityGbps", }); internal_static_context_Constraint_SLA_Availability_descriptor = - getDescriptor().getMessageTypes().get(68); + getDescriptor().getMessageTypes().get(71); internal_static_context_Constraint_SLA_Availability_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Constraint_SLA_Availability_descriptor, - new java.lang.String[] { "NumDisjointPaths", "AllActive", }); + new java.lang.String[] { "NumDisjointPaths", "AllActive", "Availability", }); internal_static_context_Constraint_SLA_Isolation_level_descriptor = - getDescriptor().getMessageTypes().get(69); + getDescriptor().getMessageTypes().get(72); internal_static_context_Constraint_SLA_Isolation_level_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Constraint_SLA_Isolation_level_descriptor, new java.lang.String[] { "IsolationLevel", }); + internal_static_context_Constraint_Exclusions_descriptor = + getDescriptor().getMessageTypes().get(73); + internal_static_context_Constraint_Exclusions_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_context_Constraint_Exclusions_descriptor, + new java.lang.String[] { "IsPermanent", "DeviceIds", "EndpointIds", "LinkIds", }); internal_static_context_Constraint_descriptor = - getDescriptor().getMessageTypes().get(70); + getDescriptor().getMessageTypes().get(74); internal_static_context_Constraint_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Constraint_descriptor, - new java.lang.String[] { "Custom", "Schedule", "EndpointLocation", "EndpointPriority", "SlaCapacity", "SlaLatency", "SlaAvailability", "SlaIsolation", "Constraint", }); + new java.lang.String[] { "Action", "Custom", "Schedule", "EndpointLocation", "EndpointPriority", "SlaCapacity", "SlaLatency", "SlaAvailability", "SlaIsolation", "Exclusions", "Constraint", }); internal_static_context_TeraFlowController_descriptor = - getDescriptor().getMessageTypes().get(71); + getDescriptor().getMessageTypes().get(75); internal_static_context_TeraFlowController_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_TeraFlowController_descriptor, new java.lang.String[] { "ContextId", "IpAddress", "Port", }); internal_static_context_AuthenticationResult_descriptor = - getDescriptor().getMessageTypes().get(72); + getDescriptor().getMessageTypes().get(76); internal_static_context_AuthenticationResult_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_AuthenticationResult_descriptor, diff --git a/src/automation/target/generated-sources/grpc/context/ContextService.java b/src/automation/target/generated-sources/grpc/context/ContextService.java index 502501301a71cb28cac6ca9a804271558c15b5b5..b356bac75e24f5f412c51de5450d284ea340ce12 100644 --- a/src/automation/target/generated-sources/grpc/context/ContextService.java +++ b/src/automation/target/generated-sources/grpc/context/ContextService.java @@ -40,6 +40,8 @@ public interface ContextService extends MutinyService { io.smallrye.mutiny.Uni<context.ContextOuterClass.Empty> removeDevice(context.ContextOuterClass.DeviceId request); + io.smallrye.mutiny.Uni<context.ContextOuterClass.DeviceList> selectDevice(context.ContextOuterClass.DeviceFilter request); + io.smallrye.mutiny.Uni<context.ContextOuterClass.EndPointNameList> listEndPointNames(context.ContextOuterClass.EndPointIdList request); io.smallrye.mutiny.Uni<context.ContextOuterClass.LinkIdList> listLinkIds(context.ContextOuterClass.Empty request); @@ -64,6 +66,8 @@ public interface ContextService extends MutinyService { io.smallrye.mutiny.Uni<context.ContextOuterClass.Empty> removeService(context.ContextOuterClass.ServiceId request); + io.smallrye.mutiny.Uni<context.ContextOuterClass.ServiceList> selectService(context.ContextOuterClass.ServiceFilter request); + io.smallrye.mutiny.Uni<context.ContextOuterClass.SliceIdList> listSliceIds(context.ContextOuterClass.ContextId request); io.smallrye.mutiny.Uni<context.ContextOuterClass.SliceList> listSlices(context.ContextOuterClass.ContextId request); @@ -76,6 +80,8 @@ public interface ContextService extends MutinyService { io.smallrye.mutiny.Uni<context.ContextOuterClass.Empty> removeSlice(context.ContextOuterClass.SliceId request); + io.smallrye.mutiny.Uni<context.ContextOuterClass.SliceList> selectSlice(context.ContextOuterClass.SliceFilter request); + io.smallrye.mutiny.Uni<context.ContextOuterClass.ConnectionIdList> listConnectionIds(context.ContextOuterClass.ServiceId request); io.smallrye.mutiny.Uni<context.ContextOuterClass.ConnectionList> listConnections(context.ContextOuterClass.ServiceId request); diff --git a/src/automation/target/generated-sources/grpc/context/ContextServiceBean.java b/src/automation/target/generated-sources/grpc/context/ContextServiceBean.java index 6ba64acb52614945846b453c6775775714652beb..45a7959c4425a981fcbdaba6b06c22cd2fe769ac 100644 --- a/src/automation/target/generated-sources/grpc/context/ContextServiceBean.java +++ b/src/automation/target/generated-sources/grpc/context/ContextServiceBean.java @@ -144,6 +144,14 @@ public class ContextServiceBean extends MutinyContextServiceGrpc.ContextServiceI } } @Override + public io.smallrye.mutiny.Uni<context.ContextOuterClass.DeviceList> selectDevice(context.ContextOuterClass.DeviceFilter request) { + try { + return delegate.selectDevice(request); + } catch (UnsupportedOperationException e) { + throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); + } + } + @Override public io.smallrye.mutiny.Uni<context.ContextOuterClass.EndPointNameList> listEndPointNames(context.ContextOuterClass.EndPointIdList request) { try { return delegate.listEndPointNames(request); @@ -240,6 +248,14 @@ public class ContextServiceBean extends MutinyContextServiceGrpc.ContextServiceI } } @Override + public io.smallrye.mutiny.Uni<context.ContextOuterClass.ServiceList> selectService(context.ContextOuterClass.ServiceFilter request) { + try { + return delegate.selectService(request); + } catch (UnsupportedOperationException e) { + throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); + } + } + @Override public io.smallrye.mutiny.Uni<context.ContextOuterClass.SliceIdList> listSliceIds(context.ContextOuterClass.ContextId request) { try { return delegate.listSliceIds(request); @@ -288,6 +304,14 @@ public class ContextServiceBean extends MutinyContextServiceGrpc.ContextServiceI } } @Override + public io.smallrye.mutiny.Uni<context.ContextOuterClass.SliceList> selectSlice(context.ContextOuterClass.SliceFilter request) { + try { + return delegate.selectSlice(request); + } catch (UnsupportedOperationException e) { + throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); + } + } + @Override public io.smallrye.mutiny.Uni<context.ContextOuterClass.ConnectionIdList> listConnectionIds(context.ContextOuterClass.ServiceId request) { try { return delegate.listConnectionIds(request); diff --git a/src/automation/target/generated-sources/grpc/context/ContextServiceClient.java b/src/automation/target/generated-sources/grpc/context/ContextServiceClient.java index c5a639ef6e212f75200779098589997ecc67c55c..0b0e9f83f74d1ce33ba6d609544dabb590024758 100644 --- a/src/automation/target/generated-sources/grpc/context/ContextServiceClient.java +++ b/src/automation/target/generated-sources/grpc/context/ContextServiceClient.java @@ -85,6 +85,10 @@ public class ContextServiceClient implements ContextService, MutinyClient<Mutiny return stub.removeDevice(request); } @Override + public io.smallrye.mutiny.Uni<context.ContextOuterClass.DeviceList> selectDevice(context.ContextOuterClass.DeviceFilter request) { + return stub.selectDevice(request); + } + @Override public io.smallrye.mutiny.Uni<context.ContextOuterClass.EndPointNameList> listEndPointNames(context.ContextOuterClass.EndPointIdList request) { return stub.listEndPointNames(request); } @@ -133,6 +137,10 @@ public class ContextServiceClient implements ContextService, MutinyClient<Mutiny return stub.removeService(request); } @Override + public io.smallrye.mutiny.Uni<context.ContextOuterClass.ServiceList> selectService(context.ContextOuterClass.ServiceFilter request) { + return stub.selectService(request); + } + @Override public io.smallrye.mutiny.Uni<context.ContextOuterClass.SliceIdList> listSliceIds(context.ContextOuterClass.ContextId request) { return stub.listSliceIds(request); } @@ -157,6 +165,10 @@ public class ContextServiceClient implements ContextService, MutinyClient<Mutiny return stub.removeSlice(request); } @Override + public io.smallrye.mutiny.Uni<context.ContextOuterClass.SliceList> selectSlice(context.ContextOuterClass.SliceFilter request) { + return stub.selectSlice(request); + } + @Override public io.smallrye.mutiny.Uni<context.ContextOuterClass.ConnectionIdList> listConnectionIds(context.ContextOuterClass.ServiceId request) { return stub.listConnectionIds(request); } diff --git a/src/automation/target/generated-sources/grpc/context/ContextServiceGrpc.java b/src/automation/target/generated-sources/grpc/context/ContextServiceGrpc.java index eb5c892c6ae626d298eccdd69f25848529595f2f..27c73f5424bcf2d6739b5884f4946ced1515398c 100644 --- a/src/automation/target/generated-sources/grpc/context/ContextServiceGrpc.java +++ b/src/automation/target/generated-sources/grpc/context/ContextServiceGrpc.java @@ -603,6 +603,37 @@ public final class ContextServiceGrpc { return getGetDeviceEventsMethod; } + private static volatile io.grpc.MethodDescriptor<context.ContextOuterClass.DeviceFilter, + context.ContextOuterClass.DeviceList> getSelectDeviceMethod; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "SelectDevice", + requestType = context.ContextOuterClass.DeviceFilter.class, + responseType = context.ContextOuterClass.DeviceList.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor<context.ContextOuterClass.DeviceFilter, + context.ContextOuterClass.DeviceList> getSelectDeviceMethod() { + io.grpc.MethodDescriptor<context.ContextOuterClass.DeviceFilter, context.ContextOuterClass.DeviceList> getSelectDeviceMethod; + if ((getSelectDeviceMethod = ContextServiceGrpc.getSelectDeviceMethod) == null) { + synchronized (ContextServiceGrpc.class) { + if ((getSelectDeviceMethod = ContextServiceGrpc.getSelectDeviceMethod) == null) { + ContextServiceGrpc.getSelectDeviceMethod = getSelectDeviceMethod = + io.grpc.MethodDescriptor.<context.ContextOuterClass.DeviceFilter, context.ContextOuterClass.DeviceList>newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "SelectDevice")) + .setSampledToLocalTracing(true) + .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + context.ContextOuterClass.DeviceFilter.getDefaultInstance())) + .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + context.ContextOuterClass.DeviceList.getDefaultInstance())) + .setSchemaDescriptor(new ContextServiceMethodDescriptorSupplier("SelectDevice")) + .build(); + } + } + } + return getSelectDeviceMethod; + } + private static volatile io.grpc.MethodDescriptor<context.ContextOuterClass.EndPointIdList, context.ContextOuterClass.EndPointNameList> getListEndPointNamesMethod; @@ -1037,6 +1068,37 @@ public final class ContextServiceGrpc { return getGetServiceEventsMethod; } + private static volatile io.grpc.MethodDescriptor<context.ContextOuterClass.ServiceFilter, + context.ContextOuterClass.ServiceList> getSelectServiceMethod; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "SelectService", + requestType = context.ContextOuterClass.ServiceFilter.class, + responseType = context.ContextOuterClass.ServiceList.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor<context.ContextOuterClass.ServiceFilter, + context.ContextOuterClass.ServiceList> getSelectServiceMethod() { + io.grpc.MethodDescriptor<context.ContextOuterClass.ServiceFilter, context.ContextOuterClass.ServiceList> getSelectServiceMethod; + if ((getSelectServiceMethod = ContextServiceGrpc.getSelectServiceMethod) == null) { + synchronized (ContextServiceGrpc.class) { + if ((getSelectServiceMethod = ContextServiceGrpc.getSelectServiceMethod) == null) { + ContextServiceGrpc.getSelectServiceMethod = getSelectServiceMethod = + io.grpc.MethodDescriptor.<context.ContextOuterClass.ServiceFilter, context.ContextOuterClass.ServiceList>newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "SelectService")) + .setSampledToLocalTracing(true) + .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + context.ContextOuterClass.ServiceFilter.getDefaultInstance())) + .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + context.ContextOuterClass.ServiceList.getDefaultInstance())) + .setSchemaDescriptor(new ContextServiceMethodDescriptorSupplier("SelectService")) + .build(); + } + } + } + return getSelectServiceMethod; + } + private static volatile io.grpc.MethodDescriptor<context.ContextOuterClass.ContextId, context.ContextOuterClass.SliceIdList> getListSliceIdsMethod; @@ -1254,6 +1316,37 @@ public final class ContextServiceGrpc { return getGetSliceEventsMethod; } + private static volatile io.grpc.MethodDescriptor<context.ContextOuterClass.SliceFilter, + context.ContextOuterClass.SliceList> getSelectSliceMethod; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "SelectSlice", + requestType = context.ContextOuterClass.SliceFilter.class, + responseType = context.ContextOuterClass.SliceList.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor<context.ContextOuterClass.SliceFilter, + context.ContextOuterClass.SliceList> getSelectSliceMethod() { + io.grpc.MethodDescriptor<context.ContextOuterClass.SliceFilter, context.ContextOuterClass.SliceList> getSelectSliceMethod; + if ((getSelectSliceMethod = ContextServiceGrpc.getSelectSliceMethod) == null) { + synchronized (ContextServiceGrpc.class) { + if ((getSelectSliceMethod = ContextServiceGrpc.getSelectSliceMethod) == null) { + ContextServiceGrpc.getSelectSliceMethod = getSelectSliceMethod = + io.grpc.MethodDescriptor.<context.ContextOuterClass.SliceFilter, context.ContextOuterClass.SliceList>newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "SelectSlice")) + .setSampledToLocalTracing(true) + .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + context.ContextOuterClass.SliceFilter.getDefaultInstance())) + .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + context.ContextOuterClass.SliceList.getDefaultInstance())) + .setSchemaDescriptor(new ContextServiceMethodDescriptorSupplier("SelectSlice")) + .build(); + } + } + } + return getSelectSliceMethod; + } + private static volatile io.grpc.MethodDescriptor<context.ContextOuterClass.ServiceId, context.ContextOuterClass.ConnectionIdList> getListConnectionIdsMethod; @@ -1621,6 +1714,13 @@ public final class ContextServiceGrpc { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetDeviceEventsMethod(), responseObserver); } + /** + */ + public void selectDevice(context.ContextOuterClass.DeviceFilter request, + io.grpc.stub.StreamObserver<context.ContextOuterClass.DeviceList> responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getSelectDeviceMethod(), responseObserver); + } + /** */ public void listEndPointNames(context.ContextOuterClass.EndPointIdList request, @@ -1719,6 +1819,13 @@ public final class ContextServiceGrpc { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetServiceEventsMethod(), responseObserver); } + /** + */ + public void selectService(context.ContextOuterClass.ServiceFilter request, + io.grpc.stub.StreamObserver<context.ContextOuterClass.ServiceList> responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getSelectServiceMethod(), responseObserver); + } + /** */ public void listSliceIds(context.ContextOuterClass.ContextId request, @@ -1768,6 +1875,13 @@ public final class ContextServiceGrpc { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetSliceEventsMethod(), responseObserver); } + /** + */ + public void selectSlice(context.ContextOuterClass.SliceFilter request, + io.grpc.stub.StreamObserver<context.ContextOuterClass.SliceList> responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getSelectSliceMethod(), responseObserver); + } + /** */ public void listConnectionIds(context.ContextOuterClass.ServiceId request, @@ -1945,6 +2059,13 @@ public final class ContextServiceGrpc { context.ContextOuterClass.Empty, context.ContextOuterClass.DeviceEvent>( this, METHODID_GET_DEVICE_EVENTS))) + .addMethod( + getSelectDeviceMethod(), + io.grpc.stub.ServerCalls.asyncUnaryCall( + new MethodHandlers< + context.ContextOuterClass.DeviceFilter, + context.ContextOuterClass.DeviceList>( + this, METHODID_SELECT_DEVICE))) .addMethod( getListEndPointNamesMethod(), io.grpc.stub.ServerCalls.asyncUnaryCall( @@ -2043,6 +2164,13 @@ public final class ContextServiceGrpc { context.ContextOuterClass.Empty, context.ContextOuterClass.ServiceEvent>( this, METHODID_GET_SERVICE_EVENTS))) + .addMethod( + getSelectServiceMethod(), + io.grpc.stub.ServerCalls.asyncUnaryCall( + new MethodHandlers< + context.ContextOuterClass.ServiceFilter, + context.ContextOuterClass.ServiceList>( + this, METHODID_SELECT_SERVICE))) .addMethod( getListSliceIdsMethod(), io.grpc.stub.ServerCalls.asyncUnaryCall( @@ -2092,6 +2220,13 @@ public final class ContextServiceGrpc { context.ContextOuterClass.Empty, context.ContextOuterClass.SliceEvent>( this, METHODID_GET_SLICE_EVENTS))) + .addMethod( + getSelectSliceMethod(), + io.grpc.stub.ServerCalls.asyncUnaryCall( + new MethodHandlers< + context.ContextOuterClass.SliceFilter, + context.ContextOuterClass.SliceList>( + this, METHODID_SELECT_SLICE))) .addMethod( getListConnectionIdsMethod(), io.grpc.stub.ServerCalls.asyncUnaryCall( @@ -2304,6 +2439,14 @@ public final class ContextServiceGrpc { getChannel().newCall(getGetDeviceEventsMethod(), getCallOptions()), request, responseObserver); } + /** + */ + public void selectDevice(context.ContextOuterClass.DeviceFilter request, + io.grpc.stub.StreamObserver<context.ContextOuterClass.DeviceList> responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getSelectDeviceMethod(), getCallOptions()), request, responseObserver); + } + /** */ public void listEndPointNames(context.ContextOuterClass.EndPointIdList request, @@ -2416,6 +2559,14 @@ public final class ContextServiceGrpc { getChannel().newCall(getGetServiceEventsMethod(), getCallOptions()), request, responseObserver); } + /** + */ + public void selectService(context.ContextOuterClass.ServiceFilter request, + io.grpc.stub.StreamObserver<context.ContextOuterClass.ServiceList> responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getSelectServiceMethod(), getCallOptions()), request, responseObserver); + } + /** */ public void listSliceIds(context.ContextOuterClass.ContextId request, @@ -2472,6 +2623,14 @@ public final class ContextServiceGrpc { getChannel().newCall(getGetSliceEventsMethod(), getCallOptions()), request, responseObserver); } + /** + */ + public void selectSlice(context.ContextOuterClass.SliceFilter request, + io.grpc.stub.StreamObserver<context.ContextOuterClass.SliceList> responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getSelectSliceMethod(), getCallOptions()), request, responseObserver); + } + /** */ public void listConnectionIds(context.ContextOuterClass.ServiceId request, @@ -2671,6 +2830,13 @@ public final class ContextServiceGrpc { getChannel(), getGetDeviceEventsMethod(), getCallOptions(), request); } + /** + */ + public context.ContextOuterClass.DeviceList selectDevice(context.ContextOuterClass.DeviceFilter request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getSelectDeviceMethod(), getCallOptions(), request); + } + /** */ public context.ContextOuterClass.EndPointNameList listEndPointNames(context.ContextOuterClass.EndPointIdList request) { @@ -2771,6 +2937,13 @@ public final class ContextServiceGrpc { getChannel(), getGetServiceEventsMethod(), getCallOptions(), request); } + /** + */ + public context.ContextOuterClass.ServiceList selectService(context.ContextOuterClass.ServiceFilter request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getSelectServiceMethod(), getCallOptions(), request); + } + /** */ public context.ContextOuterClass.SliceIdList listSliceIds(context.ContextOuterClass.ContextId request) { @@ -2821,6 +2994,13 @@ public final class ContextServiceGrpc { getChannel(), getGetSliceEventsMethod(), getCallOptions(), request); } + /** + */ + public context.ContextOuterClass.SliceList selectSlice(context.ContextOuterClass.SliceFilter request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getSelectSliceMethod(), getCallOptions(), request); + } + /** */ public context.ContextOuterClass.ConnectionIdList listConnectionIds(context.ContextOuterClass.ServiceId request) { @@ -3007,6 +3187,14 @@ public final class ContextServiceGrpc { getChannel().newCall(getRemoveDeviceMethod(), getCallOptions()), request); } + /** + */ + public com.google.common.util.concurrent.ListenableFuture<context.ContextOuterClass.DeviceList> selectDevice( + context.ContextOuterClass.DeviceFilter request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getSelectDeviceMethod(), getCallOptions()), request); + } + /** */ public com.google.common.util.concurrent.ListenableFuture<context.ContextOuterClass.EndPointNameList> listEndPointNames( @@ -3103,6 +3291,14 @@ public final class ContextServiceGrpc { getChannel().newCall(getRemoveServiceMethod(), getCallOptions()), request); } + /** + */ + public com.google.common.util.concurrent.ListenableFuture<context.ContextOuterClass.ServiceList> selectService( + context.ContextOuterClass.ServiceFilter request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getSelectServiceMethod(), getCallOptions()), request); + } + /** */ public com.google.common.util.concurrent.ListenableFuture<context.ContextOuterClass.SliceIdList> listSliceIds( @@ -3151,6 +3347,14 @@ public final class ContextServiceGrpc { getChannel().newCall(getRemoveSliceMethod(), getCallOptions()), request); } + /** + */ + public com.google.common.util.concurrent.ListenableFuture<context.ContextOuterClass.SliceList> selectSlice( + context.ContextOuterClass.SliceFilter request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getSelectSliceMethod(), getCallOptions()), request); + } + /** */ public com.google.common.util.concurrent.ListenableFuture<context.ContextOuterClass.ConnectionIdList> listConnectionIds( @@ -3211,33 +3415,36 @@ public final class ContextServiceGrpc { private static final int METHODID_SET_DEVICE = 16; private static final int METHODID_REMOVE_DEVICE = 17; private static final int METHODID_GET_DEVICE_EVENTS = 18; - private static final int METHODID_LIST_END_POINT_NAMES = 19; - private static final int METHODID_LIST_LINK_IDS = 20; - private static final int METHODID_LIST_LINKS = 21; - private static final int METHODID_GET_LINK = 22; - private static final int METHODID_SET_LINK = 23; - private static final int METHODID_REMOVE_LINK = 24; - private static final int METHODID_GET_LINK_EVENTS = 25; - private static final int METHODID_LIST_SERVICE_IDS = 26; - private static final int METHODID_LIST_SERVICES = 27; - private static final int METHODID_GET_SERVICE = 28; - private static final int METHODID_SET_SERVICE = 29; - private static final int METHODID_UNSET_SERVICE = 30; - private static final int METHODID_REMOVE_SERVICE = 31; - private static final int METHODID_GET_SERVICE_EVENTS = 32; - private static final int METHODID_LIST_SLICE_IDS = 33; - private static final int METHODID_LIST_SLICES = 34; - private static final int METHODID_GET_SLICE = 35; - private static final int METHODID_SET_SLICE = 36; - private static final int METHODID_UNSET_SLICE = 37; - private static final int METHODID_REMOVE_SLICE = 38; - private static final int METHODID_GET_SLICE_EVENTS = 39; - private static final int METHODID_LIST_CONNECTION_IDS = 40; - private static final int METHODID_LIST_CONNECTIONS = 41; - private static final int METHODID_GET_CONNECTION = 42; - private static final int METHODID_SET_CONNECTION = 43; - private static final int METHODID_REMOVE_CONNECTION = 44; - private static final int METHODID_GET_CONNECTION_EVENTS = 45; + private static final int METHODID_SELECT_DEVICE = 19; + private static final int METHODID_LIST_END_POINT_NAMES = 20; + private static final int METHODID_LIST_LINK_IDS = 21; + private static final int METHODID_LIST_LINKS = 22; + private static final int METHODID_GET_LINK = 23; + private static final int METHODID_SET_LINK = 24; + private static final int METHODID_REMOVE_LINK = 25; + private static final int METHODID_GET_LINK_EVENTS = 26; + private static final int METHODID_LIST_SERVICE_IDS = 27; + private static final int METHODID_LIST_SERVICES = 28; + private static final int METHODID_GET_SERVICE = 29; + private static final int METHODID_SET_SERVICE = 30; + private static final int METHODID_UNSET_SERVICE = 31; + private static final int METHODID_REMOVE_SERVICE = 32; + private static final int METHODID_GET_SERVICE_EVENTS = 33; + private static final int METHODID_SELECT_SERVICE = 34; + private static final int METHODID_LIST_SLICE_IDS = 35; + private static final int METHODID_LIST_SLICES = 36; + private static final int METHODID_GET_SLICE = 37; + private static final int METHODID_SET_SLICE = 38; + private static final int METHODID_UNSET_SLICE = 39; + private static final int METHODID_REMOVE_SLICE = 40; + private static final int METHODID_GET_SLICE_EVENTS = 41; + private static final int METHODID_SELECT_SLICE = 42; + private static final int METHODID_LIST_CONNECTION_IDS = 43; + private static final int METHODID_LIST_CONNECTIONS = 44; + private static final int METHODID_GET_CONNECTION = 45; + private static final int METHODID_SET_CONNECTION = 46; + private static final int METHODID_REMOVE_CONNECTION = 47; + private static final int METHODID_GET_CONNECTION_EVENTS = 48; private static final class MethodHandlers<Req, Resp> implements io.grpc.stub.ServerCalls.UnaryMethod<Req, Resp>, @@ -3332,6 +3539,10 @@ public final class ContextServiceGrpc { serviceImpl.getDeviceEvents((context.ContextOuterClass.Empty) request, (io.grpc.stub.StreamObserver<context.ContextOuterClass.DeviceEvent>) responseObserver); break; + case METHODID_SELECT_DEVICE: + serviceImpl.selectDevice((context.ContextOuterClass.DeviceFilter) request, + (io.grpc.stub.StreamObserver<context.ContextOuterClass.DeviceList>) responseObserver); + break; case METHODID_LIST_END_POINT_NAMES: serviceImpl.listEndPointNames((context.ContextOuterClass.EndPointIdList) request, (io.grpc.stub.StreamObserver<context.ContextOuterClass.EndPointNameList>) responseObserver); @@ -3388,6 +3599,10 @@ public final class ContextServiceGrpc { serviceImpl.getServiceEvents((context.ContextOuterClass.Empty) request, (io.grpc.stub.StreamObserver<context.ContextOuterClass.ServiceEvent>) responseObserver); break; + case METHODID_SELECT_SERVICE: + serviceImpl.selectService((context.ContextOuterClass.ServiceFilter) request, + (io.grpc.stub.StreamObserver<context.ContextOuterClass.ServiceList>) responseObserver); + break; case METHODID_LIST_SLICE_IDS: serviceImpl.listSliceIds((context.ContextOuterClass.ContextId) request, (io.grpc.stub.StreamObserver<context.ContextOuterClass.SliceIdList>) responseObserver); @@ -3416,6 +3631,10 @@ public final class ContextServiceGrpc { serviceImpl.getSliceEvents((context.ContextOuterClass.Empty) request, (io.grpc.stub.StreamObserver<context.ContextOuterClass.SliceEvent>) responseObserver); break; + case METHODID_SELECT_SLICE: + serviceImpl.selectSlice((context.ContextOuterClass.SliceFilter) request, + (io.grpc.stub.StreamObserver<context.ContextOuterClass.SliceList>) responseObserver); + break; case METHODID_LIST_CONNECTION_IDS: serviceImpl.listConnectionIds((context.ContextOuterClass.ServiceId) request, (io.grpc.stub.StreamObserver<context.ContextOuterClass.ConnectionIdList>) responseObserver); @@ -3520,6 +3739,7 @@ public final class ContextServiceGrpc { .addMethod(getSetDeviceMethod()) .addMethod(getRemoveDeviceMethod()) .addMethod(getGetDeviceEventsMethod()) + .addMethod(getSelectDeviceMethod()) .addMethod(getListEndPointNamesMethod()) .addMethod(getListLinkIdsMethod()) .addMethod(getListLinksMethod()) @@ -3534,6 +3754,7 @@ public final class ContextServiceGrpc { .addMethod(getUnsetServiceMethod()) .addMethod(getRemoveServiceMethod()) .addMethod(getGetServiceEventsMethod()) + .addMethod(getSelectServiceMethod()) .addMethod(getListSliceIdsMethod()) .addMethod(getListSlicesMethod()) .addMethod(getGetSliceMethod()) @@ -3541,6 +3762,7 @@ public final class ContextServiceGrpc { .addMethod(getUnsetSliceMethod()) .addMethod(getRemoveSliceMethod()) .addMethod(getGetSliceEventsMethod()) + .addMethod(getSelectSliceMethod()) .addMethod(getListConnectionIdsMethod()) .addMethod(getListConnectionsMethod()) .addMethod(getGetConnectionMethod()) diff --git a/src/automation/target/generated-sources/grpc/context/MutinyContextServiceGrpc.java b/src/automation/target/generated-sources/grpc/context/MutinyContextServiceGrpc.java index 3433cc9064805b7d138531d1626ae454516c616c..45d853aa7771c71679f1b7a67051a478b3f73be8 100644 --- a/src/automation/target/generated-sources/grpc/context/MutinyContextServiceGrpc.java +++ b/src/automation/target/generated-sources/grpc/context/MutinyContextServiceGrpc.java @@ -116,6 +116,11 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M } + public io.smallrye.mutiny.Uni<context.ContextOuterClass.DeviceList> selectDevice(context.ContextOuterClass.DeviceFilter request) { + return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::selectDevice); + } + + public io.smallrye.mutiny.Uni<context.ContextOuterClass.EndPointNameList> listEndPointNames(context.ContextOuterClass.EndPointIdList request) { return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::listEndPointNames); } @@ -176,6 +181,11 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M } + public io.smallrye.mutiny.Uni<context.ContextOuterClass.ServiceList> selectService(context.ContextOuterClass.ServiceFilter request) { + return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::selectService); + } + + public io.smallrye.mutiny.Uni<context.ContextOuterClass.SliceIdList> listSliceIds(context.ContextOuterClass.ContextId request) { return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::listSliceIds); } @@ -206,6 +216,11 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M } + public io.smallrye.mutiny.Uni<context.ContextOuterClass.SliceList> selectSlice(context.ContextOuterClass.SliceFilter request) { + return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::selectSlice); + } + + public io.smallrye.mutiny.Uni<context.ContextOuterClass.ConnectionIdList> listConnectionIds(context.ContextOuterClass.ServiceId request) { return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::listConnectionIds); } @@ -363,6 +378,11 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M } + public io.smallrye.mutiny.Uni<context.ContextOuterClass.DeviceList> selectDevice(context.ContextOuterClass.DeviceFilter request) { + throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); + } + + public io.smallrye.mutiny.Uni<context.ContextOuterClass.EndPointNameList> listEndPointNames(context.ContextOuterClass.EndPointIdList request) { throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); } @@ -423,6 +443,11 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M } + public io.smallrye.mutiny.Uni<context.ContextOuterClass.ServiceList> selectService(context.ContextOuterClass.ServiceFilter request) { + throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); + } + + public io.smallrye.mutiny.Uni<context.ContextOuterClass.SliceIdList> listSliceIds(context.ContextOuterClass.ContextId request) { throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); } @@ -453,6 +478,11 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M } + public io.smallrye.mutiny.Uni<context.ContextOuterClass.SliceList> selectSlice(context.ContextOuterClass.SliceFilter request) { + throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); + } + + public io.smallrye.mutiny.Uni<context.ContextOuterClass.ConnectionIdList> listConnectionIds(context.ContextOuterClass.ServiceId request) { throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); } @@ -647,6 +677,13 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M context.ContextOuterClass.Empty, context.ContextOuterClass.DeviceEvent>( this, METHODID_GET_DEVICE_EVENTS, compression))) + .addMethod( + context.ContextServiceGrpc.getSelectDeviceMethod(), + asyncUnaryCall( + new MethodHandlers< + context.ContextOuterClass.DeviceFilter, + context.ContextOuterClass.DeviceList>( + this, METHODID_SELECT_DEVICE, compression))) .addMethod( context.ContextServiceGrpc.getListEndPointNamesMethod(), asyncUnaryCall( @@ -745,6 +782,13 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M context.ContextOuterClass.Empty, context.ContextOuterClass.ServiceEvent>( this, METHODID_GET_SERVICE_EVENTS, compression))) + .addMethod( + context.ContextServiceGrpc.getSelectServiceMethod(), + asyncUnaryCall( + new MethodHandlers< + context.ContextOuterClass.ServiceFilter, + context.ContextOuterClass.ServiceList>( + this, METHODID_SELECT_SERVICE, compression))) .addMethod( context.ContextServiceGrpc.getListSliceIdsMethod(), asyncUnaryCall( @@ -794,6 +838,13 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M context.ContextOuterClass.Empty, context.ContextOuterClass.SliceEvent>( this, METHODID_GET_SLICE_EVENTS, compression))) + .addMethod( + context.ContextServiceGrpc.getSelectSliceMethod(), + asyncUnaryCall( + new MethodHandlers< + context.ContextOuterClass.SliceFilter, + context.ContextOuterClass.SliceList>( + this, METHODID_SELECT_SLICE, compression))) .addMethod( context.ContextServiceGrpc.getListConnectionIdsMethod(), asyncUnaryCall( @@ -859,33 +910,36 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M private static final int METHODID_SET_DEVICE = 16; private static final int METHODID_REMOVE_DEVICE = 17; private static final int METHODID_GET_DEVICE_EVENTS = 18; - private static final int METHODID_LIST_END_POINT_NAMES = 19; - private static final int METHODID_LIST_LINK_IDS = 20; - private static final int METHODID_LIST_LINKS = 21; - private static final int METHODID_GET_LINK = 22; - private static final int METHODID_SET_LINK = 23; - private static final int METHODID_REMOVE_LINK = 24; - private static final int METHODID_GET_LINK_EVENTS = 25; - private static final int METHODID_LIST_SERVICE_IDS = 26; - private static final int METHODID_LIST_SERVICES = 27; - private static final int METHODID_GET_SERVICE = 28; - private static final int METHODID_SET_SERVICE = 29; - private static final int METHODID_UNSET_SERVICE = 30; - private static final int METHODID_REMOVE_SERVICE = 31; - private static final int METHODID_GET_SERVICE_EVENTS = 32; - private static final int METHODID_LIST_SLICE_IDS = 33; - private static final int METHODID_LIST_SLICES = 34; - private static final int METHODID_GET_SLICE = 35; - private static final int METHODID_SET_SLICE = 36; - private static final int METHODID_UNSET_SLICE = 37; - private static final int METHODID_REMOVE_SLICE = 38; - private static final int METHODID_GET_SLICE_EVENTS = 39; - private static final int METHODID_LIST_CONNECTION_IDS = 40; - private static final int METHODID_LIST_CONNECTIONS = 41; - private static final int METHODID_GET_CONNECTION = 42; - private static final int METHODID_SET_CONNECTION = 43; - private static final int METHODID_REMOVE_CONNECTION = 44; - private static final int METHODID_GET_CONNECTION_EVENTS = 45; + private static final int METHODID_SELECT_DEVICE = 19; + private static final int METHODID_LIST_END_POINT_NAMES = 20; + private static final int METHODID_LIST_LINK_IDS = 21; + private static final int METHODID_LIST_LINKS = 22; + private static final int METHODID_GET_LINK = 23; + private static final int METHODID_SET_LINK = 24; + private static final int METHODID_REMOVE_LINK = 25; + private static final int METHODID_GET_LINK_EVENTS = 26; + private static final int METHODID_LIST_SERVICE_IDS = 27; + private static final int METHODID_LIST_SERVICES = 28; + private static final int METHODID_GET_SERVICE = 29; + private static final int METHODID_SET_SERVICE = 30; + private static final int METHODID_UNSET_SERVICE = 31; + private static final int METHODID_REMOVE_SERVICE = 32; + private static final int METHODID_GET_SERVICE_EVENTS = 33; + private static final int METHODID_SELECT_SERVICE = 34; + private static final int METHODID_LIST_SLICE_IDS = 35; + private static final int METHODID_LIST_SLICES = 36; + private static final int METHODID_GET_SLICE = 37; + private static final int METHODID_SET_SLICE = 38; + private static final int METHODID_UNSET_SLICE = 39; + private static final int METHODID_REMOVE_SLICE = 40; + private static final int METHODID_GET_SLICE_EVENTS = 41; + private static final int METHODID_SELECT_SLICE = 42; + private static final int METHODID_LIST_CONNECTION_IDS = 43; + private static final int METHODID_LIST_CONNECTIONS = 44; + private static final int METHODID_GET_CONNECTION = 45; + private static final int METHODID_SET_CONNECTION = 46; + private static final int METHODID_REMOVE_CONNECTION = 47; + private static final int METHODID_GET_CONNECTION_EVENTS = 48; private static final class MethodHandlers<Req, Resp> implements io.grpc.stub.ServerCalls.UnaryMethod<Req, Resp>, @@ -1020,6 +1074,12 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M compression, serviceImpl::getDeviceEvents); break; + case METHODID_SELECT_DEVICE: + io.quarkus.grpc.runtime.ServerCalls.oneToOne((context.ContextOuterClass.DeviceFilter) request, + (io.grpc.stub.StreamObserver<context.ContextOuterClass.DeviceList>) responseObserver, + compression, + serviceImpl::selectDevice); + break; case METHODID_LIST_END_POINT_NAMES: io.quarkus.grpc.runtime.ServerCalls.oneToOne((context.ContextOuterClass.EndPointIdList) request, (io.grpc.stub.StreamObserver<context.ContextOuterClass.EndPointNameList>) responseObserver, @@ -1104,6 +1164,12 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M compression, serviceImpl::getServiceEvents); break; + case METHODID_SELECT_SERVICE: + io.quarkus.grpc.runtime.ServerCalls.oneToOne((context.ContextOuterClass.ServiceFilter) request, + (io.grpc.stub.StreamObserver<context.ContextOuterClass.ServiceList>) responseObserver, + compression, + serviceImpl::selectService); + break; case METHODID_LIST_SLICE_IDS: io.quarkus.grpc.runtime.ServerCalls.oneToOne((context.ContextOuterClass.ContextId) request, (io.grpc.stub.StreamObserver<context.ContextOuterClass.SliceIdList>) responseObserver, @@ -1146,6 +1212,12 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M compression, serviceImpl::getSliceEvents); break; + case METHODID_SELECT_SLICE: + io.quarkus.grpc.runtime.ServerCalls.oneToOne((context.ContextOuterClass.SliceFilter) request, + (io.grpc.stub.StreamObserver<context.ContextOuterClass.SliceList>) responseObserver, + compression, + serviceImpl::selectSlice); + break; case METHODID_LIST_CONNECTION_IDS: io.quarkus.grpc.runtime.ServerCalls.oneToOne((context.ContextOuterClass.ServiceId) request, (io.grpc.stub.StreamObserver<context.ContextOuterClass.ConnectionIdList>) responseObserver, diff --git a/src/automation/target/kubernetes/kubernetes.yml b/src/automation/target/kubernetes/kubernetes.yml index 7aa68a257eeda04d6101f05b291882c274c43f86..e0dc96c13046e09ae84f2afb4a4bb839c4166a1b 100644 --- a/src/automation/target/kubernetes/kubernetes.yml +++ b/src/automation/target/kubernetes/kubernetes.yml @@ -16,8 +16,8 @@ apiVersion: v1 kind: Service metadata: annotations: - app.quarkus.io/commit-id: 23832f2975e3c8967e9685f7e3a5f5458d04527a - app.quarkus.io/build-timestamp: 2023-04-04 - 11:47:48 +0000 + app.quarkus.io/commit-id: 8d0654b519e90fe0127e7d1419adce25fa3a179d + app.quarkus.io/build-timestamp: 2023-07-10 - 09:42:53 +0000 prometheus.io/scrape: "true" prometheus.io/path: /q/metrics prometheus.io/port: "8080" @@ -42,8 +42,8 @@ apiVersion: apps/v1 kind: Deployment metadata: annotations: - app.quarkus.io/commit-id: 23832f2975e3c8967e9685f7e3a5f5458d04527a - app.quarkus.io/build-timestamp: 2023-04-04 - 11:47:48 +0000 + app.quarkus.io/commit-id: 8d0654b519e90fe0127e7d1419adce25fa3a179d + app.quarkus.io/build-timestamp: 2023-07-10 - 09:42:53 +0000 prometheus.io/scrape: "true" prometheus.io/path: /q/metrics prometheus.io/port: "8080" @@ -60,8 +60,8 @@ spec: template: metadata: annotations: - app.quarkus.io/commit-id: 23832f2975e3c8967e9685f7e3a5f5458d04527a - app.quarkus.io/build-timestamp: 2023-04-04 - 11:47:48 +0000 + app.quarkus.io/commit-id: 8d0654b519e90fe0127e7d1419adce25fa3a179d + app.quarkus.io/build-timestamp: 2023-07-10 - 09:42:53 +0000 prometheus.io/scrape: "true" prometheus.io/path: /q/metrics prometheus.io/port: "8080" @@ -76,10 +76,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: labs.etsi.org:5050/tfs/controller/automation:0.2.0 imagePullPolicy: Always livenessProbe: diff --git a/src/common/Constants.py b/src/common/Constants.py index ed1c1475ad3c69cfb9bd650f0d99f33c6cf0f2bc..423f2558b71b189b9e771e5af94968d28f8777c0 100644 --- a/src/common/Constants.py +++ b/src/common/Constants.py @@ -56,6 +56,7 @@ class ServiceNameEnum(Enum): OPTICALATTACKDETECTOR = 'opticalattackdetector' OPTICALATTACKMITIGATOR = 'opticalattackmitigator' CACHING = 'caching' + TE = 'te' # Used for test and debugging only DLT_GATEWAY = 'dltgateway' @@ -80,6 +81,7 @@ DEFAULT_SERVICE_GRPC_PORTS = { ServiceNameEnum.OPTICALATTACKMANAGER .value : 10005, ServiceNameEnum.INTERDOMAIN .value : 10010, ServiceNameEnum.PATHCOMP .value : 10020, + ServiceNameEnum.TE .value : 10030, # Used for test and debugging only ServiceNameEnum.DLT_GATEWAY .value : 50051, diff --git a/src/common/Settings.py b/src/common/Settings.py index 1efe80db72cc47ba26a32241cc0bf9c15e866176..5d6fba2fdca0530851fabdc06954976b29f2f2b4 100644 --- a/src/common/Settings.py +++ b/src/common/Settings.py @@ -13,7 +13,7 @@ # limitations under the License. import logging, os, time -from typing import List +from typing import Dict, List from common.Constants import ( DEFAULT_GRPC_BIND_ADDRESS, DEFAULT_GRPC_GRACE_PERIOD, DEFAULT_GRPC_MAX_WORKERS, DEFAULT_HTTP_BIND_ADDRESS, DEFAULT_LOG_LEVEL, DEFAULT_METRICS_PORT, DEFAULT_SERVICE_GRPC_PORTS, DEFAULT_SERVICE_HTTP_BASEURLS, @@ -37,23 +37,24 @@ ENVVAR_SUFIX_SERVICE_HOST = 'SERVICE_HOST' ENVVAR_SUFIX_SERVICE_PORT_GRPC = 'SERVICE_PORT_GRPC' ENVVAR_SUFIX_SERVICE_PORT_HTTP = 'SERVICE_PORT_HTTP' -def find_missing_environment_variables( - required_environment_variables : List[str] = [] -) -> List[str]: - if ENVVAR_KUBERNETES_PORT in os.environ: - missing_variables = set(required_environment_variables).difference(set(os.environ.keys())) - else: - # We're not running in Kubernetes, nothing to wait for - missing_variables = required_environment_variables - return missing_variables +def find_environment_variables( + environment_variable_names : List[str] = [] +) -> Dict[str, str]: + environment_variable : Dict[str, str] = dict() + for name in environment_variable_names: + if name not in os.environ: continue + environment_variable[name] = os.environ[name] + return environment_variable def wait_for_environment_variables( required_environment_variables : List[str] = [], wait_delay_seconds : float = DEFAULT_RESTART_DELAY -): - missing_variables = find_missing_environment_variables(required_environment_variables) - if len(missing_variables) == 0: return # We have all environment variables defined - msg = 'Variables({:s}) are missing in Environment({:s}), restarting in {:f} seconds...' - LOGGER.error(msg.format(str(missing_variables), str(os.environ), wait_delay_seconds)) +) -> None: + if ENVVAR_KUBERNETES_PORT not in os.environ: return # Not running in Kubernetes + found = find_environment_variables(required_environment_variables) + missing = set(required_environment_variables).difference(set(found.keys())) + if len(missing) == 0: return # We have all environment variables defined + MSG = 'Variables({:s}) are missing in Environment({:s}), restarting in {:f} seconds...' + LOGGER.error(MSG.format(str(missing), str(os.environ), wait_delay_seconds)) time.sleep(wait_delay_seconds) raise Exception('Restarting...') # pylint: disable=broad-exception-raised diff --git a/src/common/message_broker/backend/nats/NatsBackendThread.py b/src/common/message_broker/backend/nats/NatsBackendThread.py index 0bedd2b242f7eeaa1585d0eb41c5a0bd9efe07e5..b8a4fcd7bb6c40b1c7ff837b6b1a19523c115500 100644 --- a/src/common/message_broker/backend/nats/NatsBackendThread.py +++ b/src/common/message_broker/backend/nats/NatsBackendThread.py @@ -49,13 +49,15 @@ class NatsBackendThread(threading.Thread): self._publish_queue.put_nowait(Message(topic_name, message_content)) async def _run_subscriber( - self, topic_name : str, timeout : float, out_queue : queue.Queue[Message], unsubscribe : threading.Event + self, topic_name : str, timeout : float, out_queue : queue.Queue[Message], unsubscribe : threading.Event, + ready_event : threading.Event ) -> None: LOGGER.info('[_run_subscriber] NATS URI: {:s}'.format(str(self._nats_uri))) client = await nats.connect(servers=[self._nats_uri]) LOGGER.info('[_run_subscriber] Connected!') subscription = await client.subscribe(topic_name) LOGGER.info('[_run_subscriber] Subscribed!') + ready_event.set() while not self._terminate.is_set() and not unsubscribe.is_set(): try: message = await subscription.next_msg(timeout) @@ -70,8 +72,14 @@ class NatsBackendThread(threading.Thread): def subscribe( self, topic_name : str, timeout : float, out_queue : queue.Queue[Message], unsubscribe : threading.Event ) -> None: - task = self._event_loop.create_task(self._run_subscriber(topic_name, timeout, out_queue, unsubscribe)) + ready_event = threading.Event() + task = self._event_loop.create_task( + self._run_subscriber(topic_name, timeout, out_queue, unsubscribe, ready_event) + ) self._tasks.append(task) + LOGGER.info('[subscribe] Waiting for subscriber to be ready...') + is_ready = ready_event.wait(timeout=120) + LOGGER.info('[subscribe] Subscriber Ready: {:s}'.format(str(is_ready))) def run(self) -> None: asyncio.set_event_loop(self._event_loop) diff --git a/src/common/tests/MockServicerImpl_Context.py b/src/common/tests/MockServicerImpl_Context.py index 0e6f819d8c5e9ddc823b8090a8d4b74548471bd2..667c9ed658cfbe648e345d691523375e1c5f8b79 100644 --- a/src/common/tests/MockServicerImpl_Context.py +++ b/src/common/tests/MockServicerImpl_Context.py @@ -13,16 +13,17 @@ # limitations under the License. import grpc, json, logging -from typing import Any, Dict, Iterator, List +from typing import Any, Dict, Iterator, List, Set +from common.Constants import DEFAULT_CONTEXT_NAME, DEFAULT_TOPOLOGY_NAME from common.proto.context_pb2 import ( Connection, ConnectionEvent, ConnectionId, ConnectionIdList, ConnectionList, Context, ContextEvent, ContextId, ContextIdList, ContextList, - Device, DeviceEvent, DeviceId, DeviceIdList, DeviceList, + Device, DeviceEvent, DeviceFilter, DeviceId, DeviceIdList, DeviceList, Empty, EventTypeEnum, Link, LinkEvent, LinkId, LinkIdList, LinkList, - Service, ServiceEvent, ServiceId, ServiceIdList, ServiceList, - Slice, SliceEvent, SliceId, SliceIdList, SliceList, - Topology, TopologyEvent, TopologyId, TopologyIdList, TopologyList) + Service, ServiceEvent, ServiceFilter, ServiceId, ServiceIdList, ServiceList, + Slice, SliceEvent, SliceFilter, SliceId, SliceIdList, SliceList, + Topology, TopologyDetails, TopologyEvent, TopologyId, TopologyIdList, TopologyList) from common.proto.context_pb2_grpc import ContextServiceServicer from common.tests.MockMessageBroker import ( TOPIC_CONNECTION, TOPIC_CONTEXT, TOPIC_DEVICE, TOPIC_LINK, TOPIC_SERVICE, TOPIC_SLICE, TOPIC_TOPOLOGY, @@ -68,10 +69,19 @@ def del_entry( del container[entry_uuid] return Empty() +def select_entries(database : Dict[str, Dict[str, Any]], container_name : str, entry_uuids : Set[str]) -> List[Any]: + if len(entry_uuids) == 0: return get_entries(database, container_name) + container = get_container(database, container_name) + return [ + container[entry_uuid] + for entry_uuid in sorted(container.keys()) + if entry_uuid in entry_uuids + ] + class MockServicerImpl_Context(ContextServiceServicer): def __init__(self): LOGGER.info('[__init__] Creating Servicer...') - self.database : Dict[str, Any] = {} + self.database : Dict[str, Dict[str, Any]] = {} self.msg_broker = MockMessageBroker() LOGGER.info('[__init__] Servicer Created') @@ -153,6 +163,29 @@ class MockServicerImpl_Context(ContextServiceServicer): LOGGER.info('[GetTopology] reply={:s}'.format(grpc_message_to_json_string(reply))) return reply + def GetTopologyDetails(self, request : TopologyId, context : grpc.ServicerContext) -> TopologyDetails: + LOGGER.info('[GetTopologyDetails] request={:s}'.format(grpc_message_to_json_string(request))) + context_uuid = request.context_id.context_uuid.uuid + container_name = 'topology[{:s}]'.format(str(context_uuid)) + topology_uuid = request.topology_uuid.uuid + _reply = get_entry(context, self.database, container_name, topology_uuid) + reply = TopologyDetails() + reply.topology_id.CopyFrom(_reply.topology_id) + reply.name = _reply.name + if context_uuid == DEFAULT_CONTEXT_NAME and topology_uuid == DEFAULT_TOPOLOGY_NAME: + for device in get_entries(self.database, 'device'): reply.devices.append(device) + for link in get_entries(self.database, 'link'): reply.links.append(link) + else: + # TODO: to be improved; Mock does not associate devices/links to topologies automatically + for device_id in _reply.device_ids: + device = get_entry(context, self.database, 'device', device_id.device_uuid.uuid) + reply.devices.append(device) + for link_id in _reply.link_ids: + link = get_entry(context, self.database, 'link', link_id.link_uuid.uuid) + reply.links.append(link) + LOGGER.info('[GetTopologyDetails] reply={:s}'.format(grpc_message_to_json_string(reply))) + return reply + def SetTopology(self, request: Topology, context : grpc.ServicerContext) -> TopologyId: LOGGER.info('[SetTopology] request={:s}'.format(grpc_message_to_json_string(request))) container_name = 'topology[{:s}]'.format(str(request.topology_id.context_id.context_uuid.uuid)) @@ -210,6 +243,33 @@ class MockServicerImpl_Context(ContextServiceServicer): LOGGER.info('[GetDeviceEvents] request={:s}'.format(grpc_message_to_json_string(request))) for message in self.msg_broker.consume({TOPIC_DEVICE}): yield DeviceEvent(**json.loads(message.content)) + def SelectDevice(self, request : DeviceFilter, context : grpc.ServicerContext) -> DeviceList: + LOGGER.info('[SelectDevice] request={:s}'.format(grpc_message_to_json_string(request))) + container_entry_uuids : Dict[str, Set[str]] = {} + container_name = 'device' + for device_id in request.device_ids.device_ids: + device_uuid = device_id.device_uuid.uuid + container_entry_uuids.setdefault(container_name, set()).add(device_uuid) + + exclude_endpoints = not request.include_endpoints + exclude_config_rules = not request.include_config_rules + exclude_components = not request.include_components + + devices = list() + for container_name in sorted(container_entry_uuids.keys()): + entry_uuids = container_entry_uuids[container_name] + for device in select_entries(self.database, container_name, entry_uuids): + reply_device = Device() + reply_device.CopyFrom(device) + if exclude_endpoints: del reply_device.device_endpoints [:] # pylint: disable=no-member + if exclude_config_rules: del reply_device.device_config.config_rules[:] # pylint: disable=no-member + if exclude_components: del reply_device.component[:] # pylint: disable=no-member + devices.append(reply_device) + + reply = DeviceList(devices=devices) + LOGGER.info('[SelectDevice] reply={:s}'.format(grpc_message_to_json_string(reply))) + return reply + # ----- Link ------------------------------------------------------------------------------------------------------- @@ -291,6 +351,37 @@ class MockServicerImpl_Context(ContextServiceServicer): LOGGER.info('[GetSliceEvents] request={:s}'.format(grpc_message_to_json_string(request))) for message in self.msg_broker.consume({TOPIC_SLICE}): yield SliceEvent(**json.loads(message.content)) + def SelectSlice(self, request : SliceFilter, context : grpc.ServicerContext) -> SliceList: + LOGGER.info('[SelectSlice] request={:s}'.format(grpc_message_to_json_string(request))) + container_entry_uuids : Dict[str, Set[str]] = {} + for slice_id in request.slice_ids.slice_ids: + container_name = 'slice[{:s}]'.format(str(slice_id.context_id.context_uuid.uuid)) + slice_uuid = slice_id.slice_uuid.uuid + container_entry_uuids.setdefault(container_name, set()).add(slice_uuid) + + exclude_endpoint_ids = not request.include_endpoint_ids + exclude_constraints = not request.include_constraints + exclude_service_ids = not request.include_service_ids + exclude_subslice_ids = not request.include_subslice_ids + exclude_config_rules = not request.include_config_rules + + slices = list() + for container_name in sorted(container_entry_uuids.keys()): + entry_uuids = container_entry_uuids[container_name] + for eslice in select_entries(self.database, container_name, entry_uuids): + reply_slice = Slice() + reply_slice.CopyFrom(eslice) + if exclude_endpoint_ids: del reply_slice.service_endpoint_ids[:] # pylint: disable=no-member + if exclude_constraints : del reply_slice.service_constraints[:] # pylint: disable=no-member + if exclude_service_ids : del reply_slice.slice_service_ids[:] # pylint: disable=no-member + if exclude_subslice_ids : del reply_slice.slice_subslice_ids[:] # pylint: disable=no-member + if exclude_config_rules: del reply_slice.slice_config .config_rules[:] # pylint: disable=no-member + slices.append(reply_slice) + + reply = SliceList(slices=slices) + LOGGER.info('[SelectSlice] reply={:s}'.format(grpc_message_to_json_string(reply))) + return reply + # ----- Service ---------------------------------------------------------------------------------------------------- @@ -335,6 +426,32 @@ class MockServicerImpl_Context(ContextServiceServicer): LOGGER.info('[GetServiceEvents] request={:s}'.format(grpc_message_to_json_string(request))) for message in self.msg_broker.consume({TOPIC_SERVICE}): yield ServiceEvent(**json.loads(message.content)) + def SelectService(self, request : ServiceFilter, context : grpc.ServicerContext) -> ServiceList: + LOGGER.info('[SelectService] request={:s}'.format(grpc_message_to_json_string(request))) + container_entry_uuids : Dict[str, Set[str]] = {} + for service_id in request.service_ids.service_ids: + container_name = 'service[{:s}]'.format(str(service_id.context_id.context_uuid.uuid)) + service_uuid = service_id.service_uuid.uuid + container_entry_uuids.setdefault(container_name, set()).add(service_uuid) + + exclude_endpoint_ids = not request.include_endpoint_ids + exclude_constraints = not request.include_constraints + exclude_config_rules = not request.include_config_rules + + services = list() + for container_name in sorted(container_entry_uuids.keys()): + entry_uuids = container_entry_uuids[container_name] + for service in select_entries(self.database, container_name, entry_uuids): + reply_service = Service() + reply_service.CopyFrom(service) + if exclude_endpoint_ids: del reply_service.service_endpoint_ids[:] # pylint: disable=no-member + if exclude_constraints : del reply_service.service_constraints[:] # pylint: disable=no-member + if exclude_config_rules: del reply_service.service_config.config_rules[:] # pylint: disable=no-member + services.append(reply_service) + + reply = ServiceList(services=services) + LOGGER.info('[SelectService] reply={:s}'.format(grpc_message_to_json_string(reply))) + return reply # ----- Connection ------------------------------------------------------------------------------------------------- diff --git a/src/common/tools/context_queries/Context.py b/src/common/tools/context_queries/Context.py index a627b9ba5828d31caca8332d7241d28e126895d3..5e1facf2e077cd043c4ac9193941ac0a47372613 100644 --- a/src/common/tools/context_queries/Context.py +++ b/src/common/tools/context_queries/Context.py @@ -19,12 +19,12 @@ from common.tools.object_factory.Context import json_context from context.client.ContextClient import ContextClient def create_context( - context_client : ContextClient, context_uuid : str + context_client : ContextClient, context_uuid : str, name : Optional[str] = None ) -> None: existing_context_ids = context_client.ListContextIds(Empty()) existing_context_uuids = {context_id.context_uuid.uuid for context_id in existing_context_ids.context_ids} if context_uuid in existing_context_uuids: return - context_client.SetContext(Context(**json_context(context_uuid))) + context_client.SetContext(Context(**json_context(context_uuid, name=name))) def get_context(context_client : ContextClient, context_uuid : str, rw_copy : bool = False) -> Optional[Context]: try: diff --git a/src/common/tools/context_queries/InterDomain.py b/src/common/tools/context_queries/InterDomain.py index edb640708b17b6734fbde6d759db5a2cdea692ec..aee7cbf7ff496aa8cb90bca62a0af402b6f7be3f 100644 --- a/src/common/tools/context_queries/InterDomain.py +++ b/src/common/tools/context_queries/InterDomain.py @@ -16,12 +16,12 @@ import logging from typing import Dict, List, Set, Tuple from common.Constants import DEFAULT_CONTEXT_NAME, DEFAULT_TOPOLOGY_NAME, INTERDOMAIN_TOPOLOGY_NAME from common.DeviceTypes import DeviceTypeEnum -from common.proto.context_pb2 import ContextId, Device, Empty, EndPointId, ServiceTypeEnum, Slice +from common.proto.context_pb2 import ContextId, Empty, EndPointId, ServiceTypeEnum, Slice from common.proto.pathcomp_pb2 import PathCompRequest -from common.tools.context_queries.CheckType import device_type_is_network -from common.tools.context_queries.Device import get_devices_in_topology -from common.tools.context_queries.Topology import get_topology -from common.tools.grpc.Tools import grpc_message_to_json_string +from .CheckType import device_type_is_network +from .Device import get_device #, get_devices_in_topology +from .Topology import get_topology +from common.tools.grpc.Tools import grpc_message_list_to_json, grpc_message_to_json_string from common.tools.object_factory.Context import json_context_id from context.client.ContextClient import ContextClient from pathcomp.frontend.client.PathCompClient import PathCompClient @@ -33,28 +33,37 @@ DATACENTER_DEVICE_TYPES = {DeviceTypeEnum.DATACENTER, DeviceTypeEnum.EMULATED_DA def get_local_device_uuids(context_client : ContextClient) -> Set[str]: topologies = context_client.ListTopologies(ADMIN_CONTEXT_ID) - topologies = {topology.topology_id.topology_uuid.uuid : topology for topology in topologies.topologies} - LOGGER.debug('[get_local_device_uuids] topologies.keys()={:s}'.format(str(topologies.keys()))) - local_topology_uuids = set(topologies.keys()) - local_topology_uuids.discard(INTERDOMAIN_TOPOLOGY_NAME) + local_topologies = dict() + for topology in topologies.topologies: + topology_uuid = topology.topology_id.topology_uuid.uuid + if topology_uuid == INTERDOMAIN_TOPOLOGY_NAME: continue + topology_name = topology.name + if topology_name == INTERDOMAIN_TOPOLOGY_NAME: continue + local_topologies[topology_uuid] = topology + str_local_topologies = { + topology_uuid:grpc_message_to_json_string(topology) + for topology_uuid,topology in local_topologies.items() + } + LOGGER.debug('[get_local_device_uuids] local_topologies={:s}'.format(str(str_local_topologies))) + + local_topology_uuids = set(local_topologies.keys()) LOGGER.debug('[get_local_device_uuids] local_topology_uuids={:s}'.format(str(local_topology_uuids))) + # Add topology names except DEFAULT_TOPOLOGY_NAME and INTERDOMAIN_TOPOLOGY_NAME; they are abstracted as a + # local device in inter-domain and the name of the topology is used as abstract device name + # Add physical devices in the local topologies local_device_uuids = set() + for topology_uuid,topology in local_topologies.items(): + if topology_uuid == DEFAULT_TOPOLOGY_NAME: continue + topology_name = topology.name + if topology_name == DEFAULT_TOPOLOGY_NAME: continue + #local_device_uuids.add(topology_uuid) - # add topology names except DEFAULT_TOPOLOGY_NAME and INTERDOMAIN_TOPOLOGY_NAME; they are abstracted as a - # local device in inter-domain and the name of the topology is used as abstract device name - for local_topology_uuid in local_topology_uuids: - if local_topology_uuid == DEFAULT_TOPOLOGY_NAME: continue - local_device_uuids.add(local_topology_uuid) - - # add physical devices in the local topologies - for local_topology_uuid in local_topology_uuids: - topology_device_ids = topologies[local_topology_uuid].device_ids - topology_device_uuids = {device_id.device_uuid.uuid for device_id in topology_device_ids} - LOGGER.debug('[get_local_device_uuids] [loop] local_topology_uuid={:s} topology_device_uuids={:s}'.format( - str(local_topology_uuid), str(topology_device_uuids))) - local_device_uuids.update(topology_device_uuids) + device_uuids = {device_id.device_uuid.uuid for device_id in topology.device_ids} + LOGGER.debug('[get_local_device_uuids] [loop] topology_uuid={:s} device_uuids={:s}'.format( + str(topology_uuid), str(device_uuids))) + local_device_uuids.update(device_uuids) LOGGER.debug('[get_local_device_uuids] local_device_uuids={:s}'.format(str(local_device_uuids))) return local_device_uuids @@ -74,17 +83,6 @@ def get_interdomain_device_uuids(context_client : ContextClient) -> Set[str]: LOGGER.debug('[get_interdomain_device_uuids] interdomain_device_uuids={:s}'.format(str(interdomain_device_uuids))) return interdomain_device_uuids -def get_local_domain_devices(context_client : ContextClient) -> List[Device]: - local_device_uuids = get_local_device_uuids(context_client) - all_devices = context_client.ListDevices(Empty()) - local_domain_devices = list() - for device in all_devices.devices: - if not device_type_is_network(device.device_type): continue - device_uuid = device.device_id.device_uuid.uuid - if device_uuid not in local_device_uuids: continue - local_domain_devices.append(device) - return local_domain_devices - def is_inter_domain(context_client : ContextClient, endpoint_ids : List[EndPointId]) -> bool: interdomain_device_uuids = get_interdomain_device_uuids(context_client) LOGGER.debug('[is_inter_domain] interdomain_device_uuids={:s}'.format(str(interdomain_device_uuids))) @@ -102,93 +100,22 @@ def is_inter_domain(context_client : ContextClient, endpoint_ids : List[EndPoint LOGGER.debug('[is_inter_domain] is_inter_domain={:s}'.format(str(is_inter_domain_))) return is_inter_domain_ -def is_multi_domain(context_client : ContextClient, endpoint_ids : List[EndPointId]) -> bool: - local_device_uuids = get_local_device_uuids(context_client) - LOGGER.debug('[is_multi_domain] local_device_uuids={:s}'.format(str(local_device_uuids))) - remote_endpoint_ids = [ - endpoint_id - for endpoint_id in endpoint_ids - if endpoint_id.device_id.device_uuid.uuid not in local_device_uuids - ] - str_remote_endpoint_ids = [ - (endpoint_id.device_id.device_uuid.uuid, endpoint_id.endpoint_uuid.uuid) - for endpoint_id in remote_endpoint_ids - ] - LOGGER.debug('[is_multi_domain] remote_endpoint_ids={:s}'.format(str(str_remote_endpoint_ids))) - is_multi_domain_ = len(remote_endpoint_ids) > 0 - LOGGER.debug('[is_multi_domain] is_multi_domain={:s}'.format(str(is_multi_domain_))) - return is_multi_domain_ - -def compute_interdomain_path( - pathcomp_client : PathCompClient, slice_ : Slice -) -> List[Tuple[str, List[EndPointId]]]: - context_uuid = slice_.slice_id.context_id.context_uuid.uuid - slice_uuid = slice_.slice_id.slice_uuid.uuid - - pathcomp_req = PathCompRequest() - pathcomp_req.shortest_path.Clear() # pylint: disable=no-member - pathcomp_req_svc = pathcomp_req.services.add() # pylint: disable=no-member - pathcomp_req_svc.service_id.context_id.context_uuid.uuid = context_uuid - pathcomp_req_svc.service_id.service_uuid.uuid = slice_uuid - pathcomp_req_svc.service_type = ServiceTypeEnum.SERVICETYPE_L2NM - - for endpoint_id in slice_.slice_endpoint_ids: - service_endpoint_id = pathcomp_req_svc.service_endpoint_ids.add() - service_endpoint_id.CopyFrom(endpoint_id) - - constraint_sla_capacity = pathcomp_req_svc.service_constraints.add() - constraint_sla_capacity.sla_capacity.capacity_gbps = 10.0 - - constraint_sla_latency = pathcomp_req_svc.service_constraints.add() - constraint_sla_latency.sla_latency.e2e_latency_ms = 100.0 - - LOGGER.debug('pathcomp_req = {:s}'.format(grpc_message_to_json_string(pathcomp_req))) - pathcomp_rep = pathcomp_client.Compute(pathcomp_req) - LOGGER.debug('pathcomp_rep = {:s}'.format(grpc_message_to_json_string(pathcomp_rep))) - - service = next(iter([ - service - for service in pathcomp_rep.services - if service.service_id == pathcomp_req_svc.service_id - ]), None) - if service is None: - str_service_id = grpc_message_to_json_string(pathcomp_req_svc.service_id) - raise Exception('Service({:s}) not found'.format(str_service_id)) - - connection = next(iter([ - connection - for connection in pathcomp_rep.connections - if connection.service_id == pathcomp_req_svc.service_id - ]), None) - if connection is None: - str_service_id = grpc_message_to_json_string(pathcomp_req_svc.service_id) - raise Exception('Connection for Service({:s}) not found'.format(str_service_id)) - - domain_list : List[str] = list() - domain_to_endpoint_ids : Dict[str, List[EndPointId]] = dict() - for endpoint_id in connection.path_hops_endpoint_ids: - device_uuid = endpoint_id.device_id.device_uuid.uuid - #endpoint_uuid = endpoint_id.endpoint_uuid.uuid - if device_uuid not in domain_to_endpoint_ids: domain_list.append(device_uuid) - domain_to_endpoint_ids.setdefault(device_uuid, []).append(endpoint_id) - - return [ - (domain_uuid, domain_to_endpoint_ids.get(domain_uuid)) - for domain_uuid in domain_list - ] - def get_device_to_domain_map(context_client : ContextClient) -> Dict[str, str]: devices_to_domains : Dict[str, str] = dict() contexts = context_client.ListContexts(Empty()) for context in contexts.contexts: context_id = context.context_id context_uuid = context_id.context_uuid.uuid + context_name = context.name topologies = context_client.ListTopologies(context_id) - if context_uuid == DEFAULT_CONTEXT_NAME: + if (context_uuid == DEFAULT_CONTEXT_NAME) or (context_name == DEFAULT_CONTEXT_NAME): for topology in topologies.topologies: topology_id = topology.topology_id topology_uuid = topology_id.topology_uuid.uuid + topology_name = topology.name + if topology_uuid in {DEFAULT_TOPOLOGY_NAME, INTERDOMAIN_TOPOLOGY_NAME}: continue + if topology_name in {DEFAULT_TOPOLOGY_NAME, INTERDOMAIN_TOPOLOGY_NAME}: continue # add topology names except DEFAULT_TOPOLOGY_NAME and INTERDOMAIN_TOPOLOGY_NAME; they are # abstracted as a local device in inter-domain and the name of the topology is used as @@ -204,9 +131,11 @@ def get_device_to_domain_map(context_client : ContextClient) -> Dict[str, str]: for topology in topologies.topologies: topology_id = topology.topology_id topology_uuid = topology_id.topology_uuid.uuid + topology_name = topology.name # if topology is not interdomain if topology_uuid in {INTERDOMAIN_TOPOLOGY_NAME}: continue + if topology_name in {INTERDOMAIN_TOPOLOGY_NAME}: continue # add devices to the remote domain list for device_id in topology.device_ids: @@ -215,40 +144,117 @@ def get_device_to_domain_map(context_client : ContextClient) -> Dict[str, str]: return devices_to_domains -def compute_traversed_domains( - context_client : ContextClient, interdomain_path : List[Tuple[str, List[EndPointId]]] -) -> List[Tuple[str, bool, List[EndPointId]]]: +def compute_interdomain_sub_slices( + context_client : ContextClient, pathcomp_client : PathCompClient, slice_ : Slice +) -> Tuple[Dict[str, List[EndPointId]], Dict[str, List[EndPointId]]]: + context_uuid = slice_.slice_id.context_id.context_uuid.uuid + slice_uuid = slice_.slice_id.slice_uuid.uuid + + pathcomp_req = PathCompRequest() + pathcomp_req.shortest_path.Clear() # pylint: disable=no-member + pathcomp_req_svc = pathcomp_req.services.add() # pylint: disable=no-member + pathcomp_req_svc.service_id.context_id.context_uuid.uuid = context_uuid + pathcomp_req_svc.service_id.service_uuid.uuid = slice_uuid + pathcomp_req_svc.service_type = ServiceTypeEnum.SERVICETYPE_L2NM + + for endpoint_id in slice_.slice_endpoint_ids: + service_endpoint_id = pathcomp_req_svc.service_endpoint_ids.add() + service_endpoint_id.CopyFrom(endpoint_id) + + capacity_gbps = 10.0 # default value; to be overwritten by constraints in slice + e2e_latency_ms = 100.0 # default value; to be overwritten by constraints in slice + for constraint in slice_.slice_constraints: + kind = constraint.WhichOneof('constraint') + if kind == 'sla_capacity': + capacity_gbps = constraint.sla_capacity.capacity_gbps + elif kind == 'sla_latency': + e2e_latency_ms = constraint.sla_latency.e2e_latency_ms + + constraint_sla_capacity = pathcomp_req_svc.service_constraints.add() + constraint_sla_capacity.sla_capacity.capacity_gbps = capacity_gbps + + constraint_sla_latency = pathcomp_req_svc.service_constraints.add() + constraint_sla_latency.sla_latency.e2e_latency_ms = e2e_latency_ms + + LOGGER.debug('[compute_interdomain_sub_slices] pathcomp_req = {:s}'.format( + grpc_message_to_json_string(pathcomp_req))) + pathcomp_rep = pathcomp_client.Compute(pathcomp_req) + LOGGER.debug('[compute_interdomain_sub_slices] pathcomp_rep = {:s}'.format( + grpc_message_to_json_string(pathcomp_rep))) + + num_services = len(pathcomp_rep.services) + if num_services == 0: + raise Exception('No services received : {:s}'.format(grpc_message_to_json_string(pathcomp_rep))) + + num_connections = len(pathcomp_rep.connections) + if num_connections != num_services: + raise Exception('No connections received : {:s}'.format(grpc_message_to_json_string(pathcomp_rep))) local_device_uuids = get_local_device_uuids(context_client) - LOGGER.debug('[compute_traversed_domains] local_device_uuids={:s}'.format(str(local_device_uuids))) + LOGGER.debug('[compute_interdomain_sub_slices] local_device_uuids={:s}'.format(str(local_device_uuids))) + + device_to_domain_map = get_device_to_domain_map(context_client) + LOGGER.debug('[compute_interdomain_sub_slices] device_to_domain_map={:s}'.format(str(device_to_domain_map))) + + local_slices : Dict[str, List[EndPointId]] = dict() + remote_slices : Dict[str, List[EndPointId]] = dict() + req_service_uuid = pathcomp_req_svc.service_id.service_uuid.uuid + for service in pathcomp_rep.services: + service_uuid = service.service_id.service_uuid.uuid + if service_uuid == req_service_uuid: continue # main synthetic service; we don't care + device_uuids = { + endpoint_id.device_id.device_uuid.uuid + for endpoint_id in service.service_endpoint_ids + } + + local_domain_uuids = set() + remote_domain_uuids = set() + for device_uuid in device_uuids: + if device_uuid in local_device_uuids: + domain_uuid = device_to_domain_map.get(device_uuid) + if domain_uuid is None: + raise Exception('Unable to map device({:s}) to a domain'.format(str(device_uuid))) + local_domain_uuids.add(domain_uuid) + else: + device = get_device( + context_client, device_uuid, include_endpoints=True, include_config_rules=False, + include_components=False) + if device is None: raise Exception('Device({:s}) not found'.format(str(device_uuid))) + if not device_type_is_network(device.device_type): + MSG = 'Weird device({:s}) is not local and not network' + raise Exception(MSG.format(grpc_message_to_json_string(device))) + remote_domain_uuids.add(device_uuid) + + if len(local_domain_uuids) > 1: + MSG = 'Devices({:s}) map to multiple local domains({:s})' + raise Exception(MSG.format(str(device_uuids), str(local_domain_uuids))) + is_local = len(local_domain_uuids) == 1 + + if len(remote_domain_uuids) > 1: + MSG = 'Devices({:s}) map to multiple remote domains({:s})' + raise Exception(MSG.format(str(device_uuids), str(remote_domain_uuids))) + is_remote = len(remote_domain_uuids) == 1 + + if is_local == is_remote: + MSG = 'Weird service combines local and remote devices: {:s}' + raise Exception(MSG.format(grpc_message_to_json_string(service))) + elif is_local: + local_domain_uuid = local_domain_uuids.pop() + local_slices.setdefault(local_domain_uuid, list()).append(service.service_endpoint_ids) + else: + remote_domain_uuid = remote_domain_uuids.pop() + remote_slices.setdefault(remote_domain_uuid, list()).append(service.service_endpoint_ids) - interdomain_devices = get_devices_in_topology(context_client, ADMIN_CONTEXT_ID, INTERDOMAIN_TOPOLOGY_NAME) - interdomain_devices = { - device.device_id.device_uuid.uuid : device - for device in interdomain_devices + str_local_slices = { + domain_uuid:grpc_message_list_to_json(endpoint_ids) + for domain_uuid,endpoint_ids in local_slices.items() } + LOGGER.debug('[compute_interdomain_sub_slices] local_slices={:s}'.format(str(str_local_slices))) - devices_to_domains = get_device_to_domain_map(context_client) - LOGGER.debug('[compute_traversed_domains] devices_to_domains={:s}'.format(str(devices_to_domains))) - - traversed_domains : List[Tuple[str, bool, List[EndPointId]]] = list() - domains_dict : Dict[str, Tuple[str, bool, List[EndPointId]]] = dict() - for device_uuid, endpoint_ids in interdomain_path: - domain_uuid = devices_to_domains.get(device_uuid, '---') - domain = domains_dict.get(domain_uuid) - if domain is None: - is_local_domain = domain_uuid in local_device_uuids - domain = (domain_uuid, is_local_domain, []) - traversed_domains.append(domain) - domains_dict[domain_uuid] = domain - domain[2].extend(endpoint_ids) - - str_traversed_domains = [ - (domain_uuid, is_local_domain, [ - (endpoint_id.device_id.device_uuid.uuid, endpoint_id.endpoint_uuid.uuid) - for endpoint_id in endpoint_ids - ]) - for domain_uuid,is_local_domain,endpoint_ids in traversed_domains - ] - LOGGER.debug('[compute_traversed_domains] devices_to_domains={:s}'.format(str(str_traversed_domains))) - return traversed_domains + str_remote_slices = { + domain_uuid:grpc_message_list_to_json(endpoint_ids) + for domain_uuid,endpoint_ids in remote_slices.items() + } + LOGGER.debug('[compute_interdomain_sub_slices] remote_slices={:s}'.format(str(str_remote_slices))) + + return local_slices, remote_slices diff --git a/src/common/tools/context_queries/InterDomain_old.py b/src/common/tools/context_queries/InterDomain_old.py new file mode 100644 index 0000000000000000000000000000000000000000..ef4f6aa808696d7290a2c80220c3212d3e586307 --- /dev/null +++ b/src/common/tools/context_queries/InterDomain_old.py @@ -0,0 +1,143 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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.tools.context_queries.Device import get_device #, get_devices_in_topology + +## DEPRECATED +#def get_local_domain_devices(context_client : ContextClient) -> List[Device]: +# local_device_uuids = get_local_device_uuids(context_client) +# all_devices = context_client.ListDevices(Empty()) +# local_domain_devices = list() +# for device in all_devices.devices: +# if not device_type_is_network(device.device_type): continue +# device_uuid = device.device_id.device_uuid.uuid +# if device_uuid not in local_device_uuids: continue +# local_domain_devices.append(device) +# return local_domain_devices + +## DEPRECATED +#def is_multi_domain(context_client : ContextClient, endpoint_ids : List[EndPointId]) -> bool: +# local_device_uuids = get_local_device_uuids(context_client) +# LOGGER.debug('[is_multi_domain] local_device_uuids={:s}'.format(str(local_device_uuids))) +# remote_endpoint_ids = [ +# endpoint_id +# for endpoint_id in endpoint_ids +# if endpoint_id.device_id.device_uuid.uuid not in local_device_uuids +# ] +# str_remote_endpoint_ids = [ +# (endpoint_id.device_id.device_uuid.uuid, endpoint_id.endpoint_uuid.uuid) +# for endpoint_id in remote_endpoint_ids +# ] +# LOGGER.debug('[is_multi_domain] remote_endpoint_ids={:s}'.format(str(str_remote_endpoint_ids))) +# is_multi_domain_ = len(remote_endpoint_ids) > 0 +# LOGGER.debug('[is_multi_domain] is_multi_domain={:s}'.format(str(is_multi_domain_))) +# return is_multi_domain_ + +## DEPRECATED +#def compute_interdomain_path( +# pathcomp_client : PathCompClient, slice_ : Slice +#) -> List[Tuple[str, List[EndPointId]]]: +# context_uuid = slice_.slice_id.context_id.context_uuid.uuid +# slice_uuid = slice_.slice_id.slice_uuid.uuid +# +# pathcomp_req = PathCompRequest() +# pathcomp_req.shortest_path.Clear() # pylint: disable=no-member +# pathcomp_req_svc = pathcomp_req.services.add() # pylint: disable=no-member +# pathcomp_req_svc.service_id.context_id.context_uuid.uuid = context_uuid +# pathcomp_req_svc.service_id.service_uuid.uuid = slice_uuid +# pathcomp_req_svc.service_type = ServiceTypeEnum.SERVICETYPE_L2NM +# +# for endpoint_id in slice_.slice_endpoint_ids: +# service_endpoint_id = pathcomp_req_svc.service_endpoint_ids.add() +# service_endpoint_id.CopyFrom(endpoint_id) +# +# constraint_sla_capacity = pathcomp_req_svc.service_constraints.add() +# constraint_sla_capacity.sla_capacity.capacity_gbps = 10.0 +# +# constraint_sla_latency = pathcomp_req_svc.service_constraints.add() +# constraint_sla_latency.sla_latency.e2e_latency_ms = 100.0 +# +# LOGGER.debug('pathcomp_req = {:s}'.format(grpc_message_to_json_string(pathcomp_req))) +# pathcomp_rep = pathcomp_client.Compute(pathcomp_req) +# LOGGER.debug('pathcomp_rep = {:s}'.format(grpc_message_to_json_string(pathcomp_rep))) +# +# service = next(iter([ +# service +# for service in pathcomp_rep.services +# if service.service_id.service_uuid.uuid == pathcomp_req_svc.service_id.service_uuid.uuid +# ]), None) +# if service is None: +# str_service_id = grpc_message_to_json_string(pathcomp_req_svc.service_id) +# raise Exception('Service({:s}) not found'.format(str_service_id)) +# +# connection = next(iter([ +# connection +# for connection in pathcomp_rep.connections +# if connection.service_id.service_uuid.uuid == pathcomp_req_svc.service_id.service_uuid.uuid +# ]), None) +# if connection is None: +# str_service_id = grpc_message_to_json_string(pathcomp_req_svc.service_id) +# raise Exception('Connection for Service({:s}) not found'.format(str_service_id)) +# +# domain_list : List[str] = list() +# domain_to_endpoint_ids : Dict[str, List[EndPointId]] = dict() +# for endpoint_id in connection.path_hops_endpoint_ids: +# device_uuid = endpoint_id.device_id.device_uuid.uuid +# #endpoint_uuid = endpoint_id.endpoint_uuid.uuid +# if device_uuid not in domain_to_endpoint_ids: domain_list.append(device_uuid) +# domain_to_endpoint_ids.setdefault(device_uuid, []).append(endpoint_id) +# +# return [ +# (domain_uuid, domain_to_endpoint_ids.get(domain_uuid)) +# for domain_uuid in domain_list +# ] + +## DEPRECATED +#def compute_traversed_domains( +# context_client : ContextClient, interdomain_path : List[Tuple[str, List[EndPointId]]] +#) -> List[Tuple[str, bool, List[EndPointId]]]: +# +# local_device_uuids = get_local_device_uuids(context_client) +# LOGGER.debug('[compute_traversed_domains] local_device_uuids={:s}'.format(str(local_device_uuids))) +# +# #interdomain_devices = get_devices_in_topology(context_client, ADMIN_CONTEXT_ID, INTERDOMAIN_TOPOLOGY_NAME) +# #interdomain_devices = { +# # device.device_id.device_uuid.uuid : device +# # for device in interdomain_devices +# #} +# +# devices_to_domains = get_device_to_domain_map(context_client) +# LOGGER.debug('[compute_traversed_domains] devices_to_domains={:s}'.format(str(devices_to_domains))) +# +# traversed_domains : List[Tuple[str, bool, List[EndPointId]]] = list() +# domains_dict : Dict[str, Tuple[str, bool, List[EndPointId]]] = dict() +# for device_uuid, endpoint_ids in interdomain_path: +# domain_uuid = devices_to_domains.get(device_uuid, '---') +# domain = domains_dict.get(domain_uuid) +# if domain is None: +# is_local_domain = domain_uuid in local_device_uuids +# domain = (domain_uuid, is_local_domain, []) +# traversed_domains.append(domain) +# domains_dict[domain_uuid] = domain +# domain[2].extend(endpoint_ids) +# +# str_traversed_domains = [ +# (domain_uuid, is_local_domain, [ +# (endpoint_id.device_id.device_uuid.uuid, endpoint_id.endpoint_uuid.uuid) +# for endpoint_id in endpoint_ids +# ]) +# for domain_uuid,is_local_domain,endpoint_ids in traversed_domains +# ] +# LOGGER.debug('[compute_traversed_domains] devices_to_domains={:s}'.format(str(str_traversed_domains))) +# return traversed_domains diff --git a/src/common/tools/object_factory/Device.py b/src/common/tools/object_factory/Device.py index 66c87b14dd866d44b5d48addf93d172aea962f8e..bc5c28740d5635df99c26ef56124c471d2c77d91 100644 --- a/src/common/tools/object_factory/Device.py +++ b/src/common/tools/object_factory/Device.py @@ -13,7 +13,7 @@ # limitations under the License. import copy -from typing import Dict, List, Tuple +from typing import Dict, List, Optional, Tuple from common.DeviceTypes import DeviceTypeEnum from common.proto.context_pb2 import DeviceDriverEnum, DeviceOperationalStatusEnum from common.tools.object_factory.ConfigRule import json_config_rule_set @@ -50,10 +50,10 @@ def json_device_id(device_uuid : str): return {'device_uuid': {'uuid': device_uuid}} def json_device( - device_uuid : str, device_type : str, status : DeviceOperationalStatusEnum, endpoints : List[Dict] = [], - config_rules : List[Dict] = [], drivers : List[Dict] = [] + device_uuid : str, device_type : str, status : DeviceOperationalStatusEnum, name : Optional[str] = None, + endpoints : List[Dict] = [], config_rules : List[Dict] = [], drivers : List[Dict] = [] ): - return { + result = { 'device_id' : json_device_id(device_uuid), 'device_type' : device_type, 'device_config' : {'config_rules': copy.deepcopy(config_rules)}, @@ -61,76 +61,82 @@ def json_device( 'device_drivers' : copy.deepcopy(drivers), 'device_endpoints' : copy.deepcopy(endpoints), } + if name is not None: result['name'] = name + return result def json_device_emulated_packet_router_disabled( - device_uuid : str, endpoints : List[Dict] = [], config_rules : List[Dict] = [], + device_uuid : str, name : Optional[str] = None, endpoints : List[Dict] = [], config_rules : List[Dict] = [], drivers : List[Dict] = DEVICE_EMU_DRIVERS ): return json_device( - device_uuid, DEVICE_EMUPR_TYPE, DEVICE_DISABLED, endpoints=endpoints, config_rules=config_rules, + device_uuid, DEVICE_EMUPR_TYPE, DEVICE_DISABLED, name=name, endpoints=endpoints, config_rules=config_rules, drivers=drivers) def json_device_emulated_tapi_disabled( - device_uuid : str, endpoints : List[Dict] = [], config_rules : List[Dict] = [], + device_uuid : str, name : Optional[str] = None, endpoints : List[Dict] = [], config_rules : List[Dict] = [], drivers : List[Dict] = DEVICE_EMU_DRIVERS ): return json_device( - device_uuid, DEVICE_EMUOLS_TYPE, DEVICE_DISABLED, endpoints=endpoints, config_rules=config_rules, + device_uuid, DEVICE_EMUOLS_TYPE, DEVICE_DISABLED, name=name, endpoints=endpoints, config_rules=config_rules, drivers=drivers) def json_device_emulated_datacenter_disabled( - device_uuid : str, endpoints : List[Dict] = [], config_rules : List[Dict] = [], + device_uuid : str, name : Optional[str] = None, endpoints : List[Dict] = [], config_rules : List[Dict] = [], drivers : List[Dict] = DEVICE_EMU_DRIVERS ): return json_device( - device_uuid, DEVICE_EMUDC_TYPE, DEVICE_DISABLED, endpoints=endpoints, config_rules=config_rules, + device_uuid, DEVICE_EMUDC_TYPE, DEVICE_DISABLED, name=name, endpoints=endpoints, config_rules=config_rules, drivers=drivers) def json_device_packetrouter_disabled( - device_uuid : str, endpoints : List[Dict] = [], config_rules : List[Dict] = [], + device_uuid : str, name : Optional[str] = None, endpoints : List[Dict] = [], config_rules : List[Dict] = [], drivers : List[Dict] = DEVICE_PR_DRIVERS ): return json_device( - device_uuid, DEVICE_PR_TYPE, DEVICE_DISABLED, endpoints=endpoints, config_rules=config_rules, drivers=drivers) + device_uuid, DEVICE_PR_TYPE, DEVICE_DISABLED, name=name, endpoints=endpoints, config_rules=config_rules, + drivers=drivers) def json_device_tapi_disabled( - device_uuid : str, endpoints : List[Dict] = [], config_rules : List[Dict] = [], + device_uuid : str, name : Optional[str] = None, endpoints : List[Dict] = [], config_rules : List[Dict] = [], drivers : List[Dict] = DEVICE_TAPI_DRIVERS ): return json_device( - device_uuid, DEVICE_TAPI_TYPE, DEVICE_DISABLED, endpoints=endpoints, config_rules=config_rules, drivers=drivers) + device_uuid, DEVICE_TAPI_TYPE, DEVICE_DISABLED, name=name, endpoints=endpoints, config_rules=config_rules, + drivers=drivers) def json_device_xr_constellation_disabled( - device_uuid : str, endpoints : List[Dict] = [], config_rules : List[Dict] = [], + device_uuid : str, name : Optional[str] = None, endpoints : List[Dict] = [], config_rules : List[Dict] = [], drivers : List[Dict] = DEVICE_XR_CONSTELLATION_DRIVERS ): return json_device( - device_uuid, DEVICE_XR_CONSTELLATION_TYPE, DEVICE_DISABLED, endpoints=endpoints, config_rules=config_rules, - drivers=drivers) + device_uuid, DEVICE_XR_CONSTELLATION_TYPE, DEVICE_DISABLED, name=name, endpoints=endpoints, + config_rules=config_rules, drivers=drivers) def json_device_microwave_disabled( - device_uuid : str, endpoints : List[Dict] = [], config_rules : List[Dict] = [], + device_uuid : str, name : Optional[str] = None, endpoints : List[Dict] = [], config_rules : List[Dict] = [], drivers : List[Dict] = DEVICE_MICROWAVE_DRIVERS ): return json_device( - device_uuid, DEVICE_MICROWAVE_TYPE, DEVICE_DISABLED, endpoints=endpoints, config_rules=config_rules, + device_uuid, DEVICE_MICROWAVE_TYPE, DEVICE_DISABLED, name=name, endpoints=endpoints, config_rules=config_rules, drivers=drivers) def json_device_p4_disabled( - device_uuid : str, endpoints : List[Dict] = [], config_rules : List[Dict] = [], + device_uuid : str, name : Optional[str] = None, endpoints : List[Dict] = [], config_rules : List[Dict] = [], drivers : List[Dict] = DEVICE_P4_DRIVERS ): return json_device( - device_uuid, DEVICE_P4_TYPE, DEVICE_DISABLED, endpoints=endpoints, config_rules=config_rules, drivers=drivers) + device_uuid, DEVICE_P4_TYPE, DEVICE_DISABLED, name=name, endpoints=endpoints, config_rules=config_rules, + drivers=drivers) def json_device_tfs_disabled( - device_uuid : str, endpoints : List[Dict] = [], config_rules : List[Dict] = [], + device_uuid : str, name : Optional[str] = None, endpoints : List[Dict] = [], config_rules : List[Dict] = [], drivers : List[Dict] = DEVICE_TFS_DRIVERS ): return json_device( - device_uuid, DEVICE_TFS_TYPE, DEVICE_DISABLED, endpoints=endpoints, config_rules=config_rules, drivers=drivers) + device_uuid, DEVICE_TFS_TYPE, DEVICE_DISABLED, name=name, endpoints=endpoints, config_rules=config_rules, + drivers=drivers) -def json_device_connect_rules(address : str, port : int, settings : Dict = {}): +def json_device_connect_rules(address : str, port : int, settings : Dict = {}) -> List[Dict]: return [ json_config_rule_set('_connect/address', address), json_config_rule_set('_connect/port', port), @@ -138,12 +144,7 @@ def json_device_connect_rules(address : str, port : int, settings : Dict = {}): ] def json_device_emulated_connect_rules( - endpoint_descriptors : List[Tuple[str, str, List[int]]], address : str = DEVICE_EMU_ADDRESS, - port : int = DEVICE_EMU_PORT - ): - - settings = {'endpoints': [ - {'uuid': endpoint_uuid, 'type': endpoint_type, 'sample_types': sample_types} - for endpoint_uuid,endpoint_type,sample_types in endpoint_descriptors - ]} + endpoint_descriptors : List[Dict], address : str = DEVICE_EMU_ADDRESS, port : int = DEVICE_EMU_PORT +) -> List[Dict]: + settings = {'endpoints': endpoint_descriptors} return json_device_connect_rules(address, port, settings=settings) diff --git a/src/common/tools/object_factory/EndPoint.py b/src/common/tools/object_factory/EndPoint.py index 326c67e1e942e5c4056389a633c70e2830737217..a776dfebb42cea5b51bf0a2566038859ffc02fa5 100644 --- a/src/common/tools/object_factory/EndPoint.py +++ b/src/common/tools/object_factory/EndPoint.py @@ -13,7 +13,20 @@ # limitations under the License. import copy -from typing import Dict, List, Optional, Tuple +from typing import Dict, List, Optional + +def json_endpoint_descriptor( + endpoint_uuid : str, endpoint_type : str, endpoint_name : Optional[str] = None, + sample_types : List[int] = [], location : Optional[Dict] = None +) -> Dict: + result = {'uuid': endpoint_uuid, 'type': endpoint_type} + if endpoint_name is not None: + result['name'] = endpoint_name + if sample_types is not None and len(sample_types) > 0: + result['sample_types'] = sample_types + if location is not None and len(location) > 0: + result['location'] = location + return result def json_endpoint_id(device_id : Dict, endpoint_uuid : str, topology_id : Optional[Dict] = None): result = {'device_id': copy.deepcopy(device_id), 'endpoint_uuid': {'uuid': endpoint_uuid}} @@ -21,31 +34,34 @@ def json_endpoint_id(device_id : Dict, endpoint_uuid : str, topology_id : Option return result def json_endpoint_ids( - device_id : Dict, endpoint_descriptors : List[Tuple[str, str, List[int]]], topology_id : Optional[Dict] = None + device_id : Dict, endpoint_descriptors : List[Dict], topology_id : Optional[Dict] = None ): return [ - json_endpoint_id(device_id, endpoint_uuid, topology_id=topology_id) - for endpoint_uuid, _, _ in endpoint_descriptors + json_endpoint_id(device_id, endpoint_data['uuid'], topology_id=topology_id) + for endpoint_data in endpoint_descriptors ] def json_endpoint( device_id : Dict, endpoint_uuid : str, endpoint_type : str, topology_id : Optional[Dict] = None, - kpi_sample_types : List[int] = [] + kpi_sample_types : List[int] = [], location : Optional[Dict] = None ): result = { 'endpoint_id': json_endpoint_id(device_id, endpoint_uuid, topology_id=topology_id), 'endpoint_type': endpoint_type, } - if len(kpi_sample_types) > 0: result['kpi_sample_types'] = copy.deepcopy(kpi_sample_types) + if kpi_sample_types is not None and len(kpi_sample_types) > 0: + result['kpi_sample_types'] = copy.deepcopy(kpi_sample_types) + if location is not None: + result['endpoint_location'] = copy.deepcopy(location) return result def json_endpoints( - device_id : Dict, endpoint_descriptors : List[Tuple[str, str, List[int]]], topology_id : Optional[Dict] = None + device_id : Dict, endpoint_descriptors : List[Dict], topology_id : Optional[Dict] = None ): return [ json_endpoint( - device_id, endpoint_uuid, endpoint_type, topology_id=topology_id, - kpi_sample_types=endpoint_sample_types) - for endpoint_uuid, endpoint_type, endpoint_sample_types in endpoint_descriptors + device_id, endpoint_data['uuid'], endpoint_data['type'], topology_id=topology_id, + kpi_sample_types=endpoint_data.get('sample_types'), location=endpoint_data.get('location')) + for endpoint_data in endpoint_descriptors ] diff --git a/src/common/tools/object_factory/Link.py b/src/common/tools/object_factory/Link.py index dbb3d7fb15ac167e6b0a227d8bc8ab8002d93bba..5f8080d300d9d6d646b8d769ec5819b0bd26f789 100644 --- a/src/common/tools/object_factory/Link.py +++ b/src/common/tools/object_factory/Link.py @@ -13,7 +13,7 @@ # limitations under the License. import copy -from typing import Dict, List, Tuple +from typing import Dict, List, Optional, Tuple def get_link_uuid(a_endpoint_id : Dict, z_endpoint_id : Dict) -> str: return '{:s}/{:s}=={:s}/{:s}'.format( @@ -23,8 +23,10 @@ def get_link_uuid(a_endpoint_id : Dict, z_endpoint_id : Dict) -> str: def json_link_id(link_uuid : str) -> Dict: return {'link_uuid': {'uuid': link_uuid}} -def json_link(link_uuid : str, endpoint_ids : List[Dict]) -> Dict: - return {'link_id': json_link_id(link_uuid), 'link_endpoint_ids': copy.deepcopy(endpoint_ids)} +def json_link(link_uuid : str, endpoint_ids : List[Dict], name : Optional[str] = None) -> Dict: + result = {'link_id': json_link_id(link_uuid), 'link_endpoint_ids': copy.deepcopy(endpoint_ids)} + if name is not None: result['name'] = name + return result def compose_link(endpoint_a, endpoint_z) -> Tuple[Dict, Dict]: link_uuid = get_link_uuid(endpoint_a['endpoint_id'], endpoint_z['endpoint_id']) diff --git a/src/common/tools/object_factory/Location.py b/src/common/tools/object_factory/Location.py new file mode 100644 index 0000000000000000000000000000000000000000..ac44ef4c64d8466be123c5a722bf7fe69f5e48a8 --- /dev/null +++ b/src/common/tools/object_factory/Location.py @@ -0,0 +1,30 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 copy +from typing import Dict, Optional + + +def json_gps_position(latitude : float, longitude : float): + return {'latitude': latitude, 'longitude': longitude} + +def json_location(region : Optional[str] = None, gps_position : Optional[Dict] = None): + if not region and not gps_position: + raise Exception('One of "region" or "gps_position" arguments must be filled') + if region: + result = {'region': region} + else: + result = {'gps_position': copy.deepcopy(gps_position)} + + return result diff --git a/src/common/type_checkers/Assertions.py b/src/common/type_checkers/Assertions.py index d5476a9534ca6e2d74ba16d3af71ed367bc5ab51..25eb42fabf9c670256e9079a060aa38deb3c0f3d 100644 --- a/src/common/type_checkers/Assertions.py +++ b/src/common/type_checkers/Assertions.py @@ -34,6 +34,7 @@ def validate_device_driver_enum(message): 'DEVICEDRIVER_ONF_TR_352', 'DEVICEDRIVER_XR', 'DEVICEDRIVER_IETF_L2VPN', + 'DEVICEDRIVER_GNMI_OPENCONFIG', ] def validate_device_operational_status_enum(message): diff --git a/src/compute/service/rest_server/nbi_plugins/debug_api/Resources.py b/src/compute/service/rest_server/nbi_plugins/debug_api/Resources.py index 67ef3dfb0ba1519440b0a22f46935165c8388cb8..ffdbba88f077f6490261372f7048b2e2526d8196 100644 --- a/src/compute/service/rest_server/nbi_plugins/debug_api/Resources.py +++ b/src/compute/service/rest_server/nbi_plugins/debug_api/Resources.py @@ -19,7 +19,6 @@ from .Tools import ( format_grpc_to_json, grpc_connection_id, grpc_context_id, grpc_device_id, grpc_link_id, grpc_policy_rule_id, grpc_service_id, grpc_slice_id, grpc_topology_id) - class _Resource(Resource): def __init__(self) -> None: super().__init__() diff --git a/src/compute/service/rest_server/nbi_plugins/ietf_l2vpn/L2VPN_SiteNetworkAccesses.py b/src/compute/service/rest_server/nbi_plugins/ietf_l2vpn/L2VPN_SiteNetworkAccesses.py index 7e829479a0a3dbd4968d488a22dc62219fa5376c..d74276b75275d1fe4711e10f848d9b9b94c33c38 100644 --- a/src/compute/service/rest_server/nbi_plugins/ietf_l2vpn/L2VPN_SiteNetworkAccesses.py +++ b/src/compute/service/rest_server/nbi_plugins/ietf_l2vpn/L2VPN_SiteNetworkAccesses.py @@ -111,7 +111,7 @@ def process_site_network_access(context_client : ContextClient, site_id : str, s str_location_id = grpc_message_to_json_string(constraint.endpoint_location.location) location_endpoints.setdefault(str_location_id, set()).add(str_endpoint_id) num_endpoints_per_location = {len(endpoints) for endpoints in location_endpoints.values()} - num_disjoint_paths = min(num_endpoints_per_location) + num_disjoint_paths = max(num_endpoints_per_location) update_constraint_sla_availability(constraints, num_disjoint_paths, all_active, 0.0) return target diff --git a/src/context/client/EventsCollector.py b/src/context/client/EventsCollector.py index a8783fa8ea1d7576d4cb81fc53303203d83c75e5..c661e0cab3ab4a550dfca84c9e112759c31b9c8c 100644 --- a/src/context/client/EventsCollector.py +++ b/src/context/client/EventsCollector.py @@ -12,8 +12,8 @@ # See the License for the specific language governing permissions and # limitations under the License. -from typing import Callable import grpc, logging, queue, threading, time +from typing import Callable from common.proto.context_pb2 import Empty from common.tools.grpc.Tools import grpc_message_to_json_string from context.client.ContextClient import ContextClient @@ -23,7 +23,7 @@ LOGGER.setLevel(logging.DEBUG) class _Collector(threading.Thread): def __init__( - self, subscription_func : Callable, events_queue = queue.Queue, + self, subscription_func : Callable, events_queue = queue.PriorityQueue, terminate = threading.Event, log_events_received: bool = False ) -> None: super().__init__(daemon=False) @@ -45,7 +45,8 @@ class _Collector(threading.Thread): if self._log_events_received: str_event = grpc_message_to_json_string(event) LOGGER.info('[_collect] event: {:s}'.format(str_event)) - self._events_queue.put_nowait(event) + timestamp = event.event.timestamp.timestamp + self._events_queue.put_nowait((timestamp, event)) except grpc.RpcError as e: if e.code() == grpc.StatusCode.UNAVAILABLE: LOGGER.info('[_collect] UNAVAILABLE... retrying...') @@ -68,7 +69,7 @@ class EventsCollector: activate_slice_collector : bool = True, activate_connection_collector : bool = True, ) -> None: - self._events_queue = queue.Queue() + self._events_queue = queue.PriorityQueue() self._terminate = threading.Event() self._log_events_received = log_events_received @@ -120,7 +121,8 @@ class EventsCollector: def get_event(self, block : bool = True, timeout : float = 0.1): try: - return self._events_queue.get(block=block, timeout=timeout) + _,event = self._events_queue.get(block=block, timeout=timeout) + return event except queue.Empty: # pylint: disable=catching-non-exception return None diff --git a/src/context/service/database/Constraint.py b/src/context/service/database/Constraint.py index b33316539e7ab728194bda52e80cbc4896981ca2..79970eacde5f6a08a22287cc72f1d75a954f969c 100644 --- a/src/context/service/database/Constraint.py +++ b/src/context/service/database/Constraint.py @@ -12,15 +12,16 @@ # See the License for the specific language governing permissions and # limitations under the License. -import datetime, logging +import datetime, json, logging from sqlalchemy import delete #from sqlalchemy.dialects import postgresql from sqlalchemy.dialects.postgresql import insert from sqlalchemy.orm import Session -from typing import Dict, List, Optional +from typing import Dict, List, Optional, Set from common.proto.context_pb2 import Constraint from common.tools.grpc.Tools import grpc_message_to_json_string from .models.ConstraintModel import ConstraintKindEnum, ServiceConstraintModel, SliceConstraintModel +from .models.enums.ConstraintAction import ORM_ConstraintActionEnum, grpc_to_enum__constraint_action from .uuids._Builder import get_uuid_from_string from .uuids.EndPoint import endpoint_get_uuid @@ -37,6 +38,7 @@ def compose_constraints_data( dict_constraint = { 'position' : position, 'kind' : kind, + 'action' : grpc_to_enum__constraint_action(constraint.action), 'data' : grpc_message_to_json_string(getattr(constraint, str_kind, {})), 'created_at': now, 'updated_at': now, @@ -50,7 +52,8 @@ def compose_constraints_data( dict_constraint['slice_uuid'] = slice_uuid parent_kind,parent_uuid = 'slice',slice_uuid else: - MSG = 'Parent for Constraint({:s}) cannot be identified (service_uuid={:s}, slice_uuid={:s})' + MSG = 'Parent for Constraint({:s}) cannot be identified '+\ + '(service_uuid={:s}, slice_uuid={:s})' str_constraint = grpc_message_to_json_string(constraint) raise Exception(MSG.format(str_constraint, str(service_uuid), str(slice_uuid))) @@ -70,7 +73,8 @@ def compose_constraints_data( }: constraint_name = '{:s}:{:s}:'.format(parent_kind, kind.value) else: - MSG = 'Name for Constraint({:s}) cannot be inferred (service_uuid={:s}, slice_uuid={:s})' + MSG = 'Name for Constraint({:s}) cannot be inferred '+\ + '(service_uuid={:s}, slice_uuid={:s})' str_constraint = grpc_message_to_json_string(constraint) raise Exception(MSG.format(str_constraint, str(service_uuid), str(slice_uuid))) @@ -91,27 +95,34 @@ def upsert_constraints( else: MSG = 'DataModel cannot be identified (service_uuid={:s}, slice_uuid={:s})' raise Exception(MSG.format(str(service_uuid), str(slice_uuid))) - + uuids_to_delete : Set[str] = set() uuids_to_upsert : Dict[str, int] = dict() rules_to_upsert : List[Dict] = list() for constraint in constraints: constraint_uuid = constraint['constraint_uuid'] - position = uuids_to_upsert.get(constraint_uuid) - if position is None: - # if not added, add it - rules_to_upsert.append(constraint) - uuids_to_upsert[constraint_uuid] = len(rules_to_upsert) - 1 + constraint_action = constraint['action'] + if is_delete or constraint_action == ORM_ConstraintActionEnum.DELETE: + uuids_to_delete.add(constraint_uuid) + elif constraint_action == ORM_ConstraintActionEnum.SET: + position = uuids_to_upsert.get(constraint_uuid) + if position is None: + # if not added, add it + rules_to_upsert.append(constraint) + uuids_to_upsert[constraint_uuid] = len(rules_to_upsert) - 1 + else: + # if already added, update occurrence + rules_to_upsert[position] = constraint else: - # if already added, update occurrence - rules_to_upsert[position] = constraint + MSG = 'Action for ConstraintRule({:s}) is not supported (service_uuid={:s}, slice_uuid={:s})' + LOGGER.warning(MSG.format(str(constraint), str(service_uuid), str(slice_uuid))) + # raise Exception(MSG.format(str_constraint, str(service_uuid), str(slice_uuid))) - # Delete all constraints not in uuids_to_upsert delete_affected = False - if len(uuids_to_upsert) > 0: + if len(uuids_to_delete) > 0: stmt = delete(klass) if service_uuid is not None: stmt = stmt.where(klass.service_uuid == service_uuid) if slice_uuid is not None: stmt = stmt.where(klass.slice_uuid == slice_uuid ) - stmt = stmt.where(klass.constraint_uuid.not_in(set(uuids_to_upsert.keys()))) + stmt = stmt.where(klass.constraint_uuid.in_(uuids_to_delete)) #str_stmt = stmt.compile(dialect=postgresql.dialect(), compile_kwargs={"literal_binds": True}) #LOGGER.warning('delete stmt={:s}'.format(str(str_stmt))) constraint_deletes = session.execute(stmt) @@ -125,6 +136,7 @@ def upsert_constraints( index_elements=[klass.constraint_uuid], set_=dict( position = stmt.excluded.position, + action = stmt.excluded.action, data = stmt.excluded.data, updated_at = stmt.excluded.updated_at, ) diff --git a/src/context/service/database/Device.py b/src/context/service/database/Device.py index 7fc202b9077f2e1212d0c81313fcfbd1c05efb43..8560399cc705729685cbaa7c10399a0ec7589015 100644 --- a/src/context/service/database/Device.py +++ b/src/context/service/database/Device.py @@ -20,7 +20,7 @@ from sqlalchemy_cockroachdb import run_transaction from typing import Dict, List, Optional, Set, Tuple from common.method_wrappers.ServiceExceptions import InvalidArgumentException, NotFoundException from common.proto.context_pb2 import Device, DeviceFilter, DeviceId, TopologyId -#from common.tools.grpc.Tools import grpc_message_to_json_string +from common.tools.grpc.Tools import grpc_message_to_json_string from common.tools.object_factory.Device import json_device_id from context.service.database.uuids.Topology import topology_get_uuid from .models.DeviceModel import DeviceModel @@ -115,14 +115,15 @@ def device_set(db_engine : Engine, request : Device) -> Tuple[Dict, bool]: kpi_sample_types = [grpc_to_enum__kpi_sample_type(kst) for kst in endpoint.kpi_sample_types] endpoints_data.append({ - 'endpoint_uuid' : endpoint_uuid, - 'device_uuid' : endpoint_device_uuid, - 'topology_uuid' : endpoint_topology_uuid, - 'name' : endpoint_name, - 'endpoint_type' : endpoint.endpoint_type, - 'kpi_sample_types': kpi_sample_types, - 'created_at' : now, - 'updated_at' : now, + 'endpoint_uuid' : endpoint_uuid, + 'device_uuid' : endpoint_device_uuid, + 'topology_uuid' : endpoint_topology_uuid, + 'name' : endpoint_name, + 'endpoint_type' : endpoint.endpoint_type, + 'kpi_sample_types' : kpi_sample_types, + 'endpoint_location': grpc_message_to_json_string(endpoint.endpoint_location), + 'created_at' : now, + 'updated_at' : now, }) if endpoint_topology_uuid not in topology_uuids: diff --git a/src/context/service/database/models/ConstraintModel.py b/src/context/service/database/models/ConstraintModel.py index d093e782adde23092d9c9d3949f9153c8ee9d4f3..112a5f35c8d23f4b4b84f5472c14dc3b1bc7fbec 100644 --- a/src/context/service/database/models/ConstraintModel.py +++ b/src/context/service/database/models/ConstraintModel.py @@ -16,6 +16,7 @@ import enum, json from sqlalchemy import CheckConstraint, Column, DateTime, Enum, ForeignKey, Integer, String from sqlalchemy.dialects.postgresql import UUID from typing import Dict +from .enums.ConstraintAction import ORM_ConstraintActionEnum from ._Base import _Base # Enum values should match name of field in Constraint message @@ -39,6 +40,7 @@ class ServiceConstraintModel(_Base): service_uuid = Column(ForeignKey('service.service_uuid', ondelete='CASCADE'), nullable=False) #, index=True position = Column(Integer, nullable=False) kind = Column(Enum(ConstraintKindEnum), nullable=False) + action = Column(Enum(ORM_ConstraintActionEnum), nullable=False) data = Column(String, nullable=False) created_at = Column(DateTime, nullable=False) updated_at = Column(DateTime, nullable=False) @@ -49,7 +51,10 @@ class ServiceConstraintModel(_Base): ) def dump(self) -> Dict: - return {self.kind.value: json.loads(self.data)} + return { + 'action': self.action.value, + self.kind.value: json.loads(self.data), + } class SliceConstraintModel(_Base): __tablename__ = 'slice_constraint' @@ -58,6 +63,7 @@ class SliceConstraintModel(_Base): slice_uuid = Column(ForeignKey('slice.slice_uuid', ondelete='CASCADE'), nullable=False) #, index=True position = Column(Integer, nullable=False) kind = Column(Enum(ConstraintKindEnum), nullable=False) + action = Column(Enum(ORM_ConstraintActionEnum), nullable=False) data = Column(String, nullable=False) created_at = Column(DateTime, nullable=False) updated_at = Column(DateTime, nullable=False) @@ -68,4 +74,7 @@ class SliceConstraintModel(_Base): ) def dump(self) -> Dict: - return {self.kind.value: json.loads(self.data)} + return { + 'action': self.action.value, + self.kind.value: json.loads(self.data), + } diff --git a/src/context/service/database/models/EndPointModel.py b/src/context/service/database/models/EndPointModel.py index a079f9900e39fdf3a4329e604f4e596e7f5d1f89..9bb2adb2d4209bde8cee4299d10521887f371428 100644 --- a/src/context/service/database/models/EndPointModel.py +++ b/src/context/service/database/models/EndPointModel.py @@ -12,6 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import json from sqlalchemy import Column, DateTime, Enum, ForeignKey, String from sqlalchemy.dialects.postgresql import ARRAY, UUID from sqlalchemy.orm import relationship @@ -22,14 +23,15 @@ from ._Base import _Base class EndPointModel(_Base): __tablename__ = 'endpoint' - endpoint_uuid = Column(UUID(as_uuid=False), primary_key=True) - device_uuid = Column(ForeignKey('device.device_uuid', ondelete='CASCADE' ), nullable=False, index=True) - topology_uuid = Column(ForeignKey('topology.topology_uuid', ondelete='RESTRICT'), nullable=False, index=True) - name = Column(String, nullable=False) - endpoint_type = Column(String, nullable=False) - kpi_sample_types = Column(ARRAY(Enum(ORM_KpiSampleTypeEnum), dimensions=1)) - created_at = Column(DateTime, nullable=False) - updated_at = Column(DateTime, nullable=False) + endpoint_uuid = Column(UUID(as_uuid=False), primary_key=True) + device_uuid = Column(ForeignKey('device.device_uuid', ondelete='CASCADE' ), nullable=False, index=True) + topology_uuid = Column(ForeignKey('topology.topology_uuid', ondelete='RESTRICT'), nullable=False, index=True) + name = Column(String, nullable=False) + endpoint_type = Column(String, nullable=False) + kpi_sample_types = Column(ARRAY(Enum(ORM_KpiSampleTypeEnum), dimensions=1)) + created_at = Column(DateTime, nullable=False) + updated_at = Column(DateTime, nullable=False) + endpoint_location = Column(String, nullable=True) device = relationship('DeviceModel', back_populates='endpoints') # lazy='selectin' topology = relationship('TopologyModel', lazy='selectin') @@ -46,10 +48,11 @@ class EndPointModel(_Base): def dump(self) -> Dict: return { - 'endpoint_id' : self.dump_id(), - 'name' : self.name, - 'endpoint_type' : self.endpoint_type, - 'kpi_sample_types': [kst.value for kst in self.kpi_sample_types], + 'endpoint_id' : self.dump_id(), + 'name' : self.name, + 'endpoint_type' : self.endpoint_type, + 'kpi_sample_types' : [kst.value for kst in self.kpi_sample_types], + 'endpoint_location': json.loads(self.endpoint_location) } def dump_name(self) -> Dict: diff --git a/src/tests/scenario3/l3/launch_l3_attack_detection_and_mitigation_complete.sh b/src/context/service/database/models/enums/ConstraintAction.py similarity index 57% rename from src/tests/scenario3/l3/launch_l3_attack_detection_and_mitigation_complete.sh rename to src/context/service/database/models/enums/ConstraintAction.py index 05b20077eb951102ab11fc90aaab53463c41f94f..65533b6f579ffe153b046dfcb39d37758f4c0577 100644 --- a/src/tests/scenario3/l3/launch_l3_attack_detection_and_mitigation_complete.sh +++ b/src/context/service/database/models/enums/ConstraintAction.py @@ -1,4 +1,3 @@ -#!/bin/bash # Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) # # Licensed under the Apache License, Version 2.0 (the "License"); @@ -13,14 +12,14 @@ # See the License for the specific language governing permissions and # limitations under the License. -cd /home/ubuntu/tfs-ctrl -source my_deploy.sh -./deploy.sh -./show_deploy.sh +import enum, functools +from common.proto.context_pb2 import ConstraintActionEnum +from ._GrpcToEnum import grpc_to_enum -source tfs_runtime_env_vars.sh +class ORM_ConstraintActionEnum(enum.Enum): + UNDEFINED = ConstraintActionEnum.CONSTRAINTACTION_UNDEFINED + SET = ConstraintActionEnum.CONSTRAINTACTION_SET + DELETE = ConstraintActionEnum.CONSTRAINTACTION_DELETE -ofc22/run_test_01_bootstrap.sh -ofc22/run_test_02_create_service.sh - -sshpass -p "ubuntu" ssh -o StrictHostKeyChecking=no -n -f ubuntu@192.168.165.73 "sh -c 'nohup /home/ubuntu/TeraflowDockerDistributed/restart.sh > /dev/null 2>&1 &'" +grpc_to_enum__constraint_action = functools.partial( + grpc_to_enum, ConstraintActionEnum, ORM_ConstraintActionEnum) diff --git a/src/context/service/database/models/enums/DeviceDriver.py b/src/context/service/database/models/enums/DeviceDriver.py index a612803e235de2c6d2d8c91052416a675a3a3085..09be94b1d7ec041f2d3f50f832f15017fb62e63c 100644 --- a/src/context/service/database/models/enums/DeviceDriver.py +++ b/src/context/service/database/models/enums/DeviceDriver.py @@ -25,6 +25,7 @@ class ORM_DeviceDriverEnum(enum.Enum): ONF_TR_352 = DeviceDriverEnum.DEVICEDRIVER_ONF_TR_352 XR = DeviceDriverEnum.DEVICEDRIVER_XR IETF_L2VPN = DeviceDriverEnum.DEVICEDRIVER_IETF_L2VPN + GNMI_OPENCONFIG = DeviceDriverEnum.DEVICEDRIVER_GNMI_OPENCONFIG grpc_to_enum__device_driver = functools.partial( grpc_to_enum, DeviceDriverEnum, ORM_DeviceDriverEnum) diff --git a/src/context/service/database/models/enums/ServiceType.py b/src/context/service/database/models/enums/ServiceType.py index 668133abff416dd21f693ff41d7b3c6431f5e148..3937eaa114429ce9d004933a5d5baf1ae6137513 100644 --- a/src/context/service/database/models/enums/ServiceType.py +++ b/src/context/service/database/models/enums/ServiceType.py @@ -21,6 +21,7 @@ class ORM_ServiceTypeEnum(enum.Enum): L3NM = ServiceTypeEnum.SERVICETYPE_L3NM L2NM = ServiceTypeEnum.SERVICETYPE_L2NM TAPI_CONNECTIVITY_SERVICE = ServiceTypeEnum.SERVICETYPE_TAPI_CONNECTIVITY_SERVICE + TE = ServiceTypeEnum.SERVICETYPE_TE grpc_to_enum__service_type = functools.partial( grpc_to_enum, ServiceTypeEnum, ORM_ServiceTypeEnum) diff --git a/src/dbscanserving/.gitlab-ci.yml b/src/dbscanserving/.gitlab-ci.yml index 5d5204cdd26d56aa8e47f056c8f3b84db1a1ceb3..d665bdaf2993bc578024cfc7ef8517ae44ccef7a 100644 --- a/src/dbscanserving/.gitlab-ci.yml +++ b/src/dbscanserving/.gitlab-ci.yml @@ -54,7 +54,7 @@ unit_test dbscanserving: - sleep 5 - docker ps -a - docker logs $IMAGE_NAME - - docker exec ps -a + - docker ps -a - sleep 5 - 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=/home/${IMAGE_NAME}/results/${IMAGE_NAME}_report.xml" diff --git a/src/dbscanserving/tests/test_unitary.py b/src/dbscanserving/tests/test_unitary.py index 7349978e51cf5be8aa2f9899a91de91e13d1ae7e..a9d5c7e139d84e854ef58976ca6edba31cea6d11 100644 --- a/src/dbscanserving/tests/test_unitary.py +++ b/src/dbscanserving/tests/test_unitary.py @@ -23,30 +23,27 @@ from common.proto.dbscanserving_pb2 import (DetectionRequest, DetectionResponse, Sample) from dbscanserving.client.DbscanServingClient import DbscanServingClient -from dbscanserving.Config import GRPC_SERVICE_PORT from dbscanserving.service.DbscanService import DbscanService -port = 10000 + GRPC_SERVICE_PORT # avoid privileged ports - LOGGER = logging.getLogger(__name__) LOGGER.setLevel(logging.DEBUG) @pytest.fixture(scope="session") def dbscanserving_service(): - _service = DbscanService(port=port) + _service = DbscanService() _service.start() yield _service _service.stop() @pytest.fixture(scope="session") -def dbscanserving_client(): +def dbscanserving_client(dbscanserving_service: DbscanService): with patch.dict( os.environ, { "DBSCANSERVINGSERVICE_SERVICE_HOST": "127.0.0.1", - "DBSCANSERVINGSERVICE_SERVICE_PORT_GRPC": str(port), + "DBSCANSERVINGSERVICE_SERVICE_PORT_GRPC": str(dbscanserving_service.bind_port), }, clear=True, ): diff --git a/src/device/Dockerfile b/src/device/Dockerfile index 7ddf719a389b4a059a03c4ab845b94a349955b43..6566625527f8ceaa8de4639d558c92572c4835cb 100644 --- a/src/device/Dockerfile +++ b/src/device/Dockerfile @@ -16,7 +16,7 @@ FROM python:3.9-slim # Install dependencies RUN apt-get --yes --quiet --quiet update && \ - apt-get --yes --quiet --quiet install wget g++ && \ + apt-get --yes --quiet --quiet install wget g++ git && \ rm -rf /var/lib/apt/lists/* # Set Python to show logs as they occur diff --git a/src/device/requirements.in b/src/device/requirements.in index 50b941160937aa09976dd3dda4afab6c69d309bb..c81e814603d4c84e0211e3b433fc916b616ecd04 100644 --- a/src/device/requirements.in +++ b/src/device/requirements.in @@ -14,14 +14,15 @@ anytree==2.8.0 -APScheduler==3.8.1 +APScheduler==3.10.1 +cryptography==36.0.2 #fastcache==1.1.0 Jinja2==3.0.3 ncclient==0.6.13 p4runtime==1.3.0 paramiko==2.9.2 python-json-logger==2.0.2 -pytz==2021.3 +#pytz==2021.3 #redis==4.1.2 requests==2.27.1 requests-mock==1.9.3 @@ -29,6 +30,9 @@ xmltodict==0.12.0 tabulate ipaddress macaddress +yattag +pyang +git+https://github.com/robshakir/pyangbind.git websockets==10.4 # pip's dependency resolver does not take into account installed packages. diff --git a/src/device/service/Tools.py b/src/device/service/Tools.py index 8717254cb59ad1b83a6e65ca3c1ba68757663674..b2b206471e07b654e5339f81db632699ae8b95df 100644 --- a/src/device/service/Tools.py +++ b/src/device/service/Tools.py @@ -16,12 +16,11 @@ import json, logging from typing import Any, Dict, List, Optional, Tuple, Union from common.Constants import DEFAULT_CONTEXT_NAME, DEFAULT_TOPOLOGY_NAME from common.method_wrappers.ServiceExceptions import InvalidArgumentException -from common.proto.context_pb2 import ConfigActionEnum, Device, DeviceConfig, Link +from common.proto.context_pb2 import ConfigActionEnum, ConfigRule_ACL, Device, DeviceConfig, Link, Location from common.proto.device_pb2 import MonitoringSettings from common.proto.kpi_sample_types_pb2 import KpiSampleType from common.tools.grpc.ConfigRules import update_config_rule_custom from common.tools.grpc.Tools import grpc_message_to_json -from context.client.ContextClient import ContextClient from .driver_api._Driver import _Driver, RESOURCE_ENDPOINTS from .monitoring.MonitoringLoops import MonitoringLoops from .ErrorMessages import ( @@ -202,6 +201,10 @@ def populate_endpoints( device_endpoint.kpi_sample_types.append(kpi_sample_type) monitoring_loops.add_resource_key(device_uuid, endpoint_uuid, kpi_sample_type, monitor_resource_key) + location = resource_value.get('location', None) + if location is not None: + device_endpoint.endpoint_location.MergeFrom(Location(**location)) + elif resource_key.startswith('/links/link'): # create sub-link _sub_link_uuid = resource_value['uuid'] @@ -253,6 +256,7 @@ def _raw_config_rules_to_grpc( if resource_value is None: continue resource_value = json.loads(resource_value) if isinstance(resource_value, str) else resource_value + if isinstance(resource_value, ConfigRule_ACL): resource_value = grpc_message_to_json(resource_value) resource_value = {field_name : (field_value, False) for field_name,field_value in resource_value.items()} update_config_rule_custom(device_config.config_rules, resource_key, resource_value, new_action=config_action) @@ -272,21 +276,36 @@ def populate_initial_config_rules(device_uuid : str, device_config : DeviceConfi def compute_rules_to_add_delete( device : Device, request : Device ) -> Tuple[List[Tuple[str, Any]], List[Tuple[str, Any]]]: - # convert config rules from context into a dictionary - # TODO: add support for non-custom config rules - context_config_rules = { - config_rule.custom.resource_key: config_rule.custom.resource_value - for config_rule in device.device_config.config_rules - if config_rule.WhichOneof('config_rule') == 'custom' - } - - # convert config rules from request into a list - # TODO: add support for non-custom config rules - request_config_rules = [ - (config_rule.action, config_rule.custom.resource_key, config_rule.custom.resource_value) - for config_rule in request.device_config.config_rules - if config_rule.WhichOneof('config_rule') == 'custom' - ] + # convert config rules from context into a dictionary + context_config_rules = {} + for config_rule in device.device_config.config_rules: + config_rule_kind = config_rule.WhichOneof('config_rule') + if config_rule_kind == 'custom': # process "custom" rules + context_config_rules[config_rule.custom.resource_key] = config_rule.custom.resource_value # get the resource value of the rule resource + elif config_rule_kind == 'acl': # process "custom" rules + device_uuid = config_rule.acl.endpoint_id.device_id.device_uuid.uuid # get the device name + endpoint_uuid = config_rule.acl.endpoint_id.endpoint_uuid.uuid # get the endpoint name + acl_ruleset_name = config_rule.acl.rule_set.name # get the acl name + ACL_KEY_TEMPLATE = '/device[{:s}]/endpoint[{:s}]/acl_ruleset[{:s}]' + key_or_path = ACL_KEY_TEMPLATE.format(device_uuid, endpoint_uuid, acl_ruleset_name) + context_config_rules[key_or_path] = grpc_message_to_json(config_rule.acl) # get the resource value of the acl + + request_config_rules = [] + for config_rule in request.device_config.config_rules: + config_rule_kind = config_rule.WhichOneof('config_rule') + if config_rule_kind == 'custom': # resource management of "custom" rule + request_config_rules.append(( + config_rule.action, config_rule.custom.resource_key, config_rule.custom.resource_value + )) + elif config_rule_kind == 'acl': # resource management of "acl" rule + device_uuid = config_rule.acl.endpoint_id.device_id.device_uuid.uuid + endpoint_uuid = config_rule.acl.endpoint_id.endpoint_uuid.uuid + acl_ruleset_name = config_rule.acl.rule_set.name + ACL_KEY_TEMPLATE = '/device[{:s}]/endpoint[{:s}]/acl_ruleset[{:s}]' + key_or_path = ACL_KEY_TEMPLATE.format(device_uuid, endpoint_uuid, acl_ruleset_name) + request_config_rules.append(( + config_rule.action, key_or_path, grpc_message_to_json(config_rule.acl) + )) resources_to_set : List[Tuple[str, Any]] = [] # key, value resources_to_delete : List[Tuple[str, Any]] = [] # key, value diff --git a/src/device/service/__main__.py b/src/device/service/__main__.py index a07a2ab90d15d99bdabe6b3fb6b0e0c9c497cf3c..401711b4e366dad5347cf771651516fe5e125d55 100644 --- a/src/device/service/__main__.py +++ b/src/device/service/__main__.py @@ -58,13 +58,14 @@ def main(): driver_factory = DriverFactory(DRIVERS) driver_instance_cache = DriverInstanceCache(driver_factory) - # Initialize drivers with existing devices in context - preload_drivers(driver_instance_cache) - # Starting device service grpc_service = DeviceService(driver_instance_cache) grpc_service.start() + # Initialize drivers with existing devices in context + LOGGER.info('Pre-loading drivers...') + preload_drivers(driver_instance_cache) + # Wait for Ctrl+C or termination signal while not terminate.wait(timeout=1.0): pass diff --git a/src/device/service/drivers/__init__.py b/src/device/service/drivers/__init__.py index b3b485a471899dd96a4985fedb4bb6ede2432921..4ae7128b0258536dae5fbed2ae86457d4f9f969f 100644 --- a/src/device/service/drivers/__init__.py +++ b/src/device/service/drivers/__init__.py @@ -70,6 +70,7 @@ DRIVERS.append( # DeviceDriverEnum.DEVICEDRIVER_P4, # DeviceDriverEnum.DEVICEDRIVER_IETF_NETWORK_TOPOLOGY, # DeviceDriverEnum.DEVICEDRIVER_ONF_TR_352, + # DeviceDriverEnum.DEVICEDRIVER_GNMI_OPENCONFIG, # ], #} ])) @@ -94,6 +95,17 @@ if LOAD_ALL_DEVICE_DRIVERS: } ])) +if LOAD_ALL_DEVICE_DRIVERS: + from .gnmi_openconfig.GnmiOpenConfigDriver import GnmiOpenConfigDriver # pylint: disable=wrong-import-position + DRIVERS.append( + (GnmiOpenConfigDriver, [ + { + # Real Packet Router, specifying gNMI OpenConfig Driver => use GnmiOpenConfigDriver + FilterFieldEnum.DEVICE_TYPE: DeviceTypeEnum.PACKET_ROUTER, + FilterFieldEnum.DRIVER : DeviceDriverEnum.DEVICEDRIVER_GNMI_OPENCONFIG, + } + ])) + if LOAD_ALL_DEVICE_DRIVERS: from .transport_api.TransportApiDriver import TransportApiDriver # pylint: disable=wrong-import-position DRIVERS.append( diff --git a/src/device/service/drivers/emulated/Tools.py b/src/device/service/drivers/emulated/Tools.py index 0ac92bf56d5538a5ed4d3e7c53bc480d5ecd40bd..15fa342388159a19bf071985ab1a7fc74d8b28a2 100644 --- a/src/device/service/drivers/emulated/Tools.py +++ b/src/device/service/drivers/emulated/Tools.py @@ -79,7 +79,10 @@ def compose_resource_endpoint(endpoint_data : Dict[str, Any]) -> Optional[Tuple[ if len(sample_types) > 0: endpoint_resource_value['sample_types'] = sample_types - + + if 'location' in endpoint_data: + endpoint_resource_value['location'] = endpoint_data['location'] + return endpoint_resource_key, endpoint_resource_value except: # pylint: disable=bare-except LOGGER.exception('Problem composing endpoint({:s})'.format(str(endpoint_data))) diff --git a/src/device/service/drivers/gnmi_openconfig/DeltaSampleCache.py b/src/device/service/drivers/gnmi_openconfig/DeltaSampleCache.py new file mode 100644 index 0000000000000000000000000000000000000000..5083082fe5694a95e95d95cd8ed72563d77dc098 --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/DeltaSampleCache.py @@ -0,0 +1,35 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 copy +from typing import Any, Dict, Tuple, Union + +class DeltaSampleCache: + def __init__(self) -> None: + self._previous_samples : Dict[str, Tuple[float, Union[int, float]]] = dict() + + def get_delta(self, path : str, current_timestamp : float, current_value : Any) -> None: + previous_sample = copy.deepcopy(self._previous_samples.get(path)) + self._previous_samples[path] = current_timestamp, current_value + + if not isinstance(current_value, (int, float)): return None + if previous_sample is None: return current_timestamp, 0 + previous_timestamp, previous_value = previous_sample + if not isinstance(previous_value, (int, float)): return None + + delta_value = max(0, current_value - previous_value) + delay = current_timestamp - previous_timestamp + delta_sample = current_timestamp, delta_value / delay + + return delta_sample diff --git a/src/device/service/drivers/gnmi_openconfig/GnmiOpenConfigDriver.py b/src/device/service/drivers/gnmi_openconfig/GnmiOpenConfigDriver.py new file mode 100644 index 0000000000000000000000000000000000000000..882c0de07440c3b89c4a82f522d08155329b5d7e --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/GnmiOpenConfigDriver.py @@ -0,0 +1,100 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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, queue, threading +from typing import Any, Iterator, List, Optional, Tuple, Union +from common.method_wrappers.Decorator import MetricsPool, metered_subclass_method +from common.type_checkers.Checkers import chk_type +from device.service.driver_api._Driver import _Driver +from .GnmiSessionHandler import GnmiSessionHandler + +DRIVER_NAME = 'gnmi_openconfig' +METRICS_POOL = MetricsPool('Device', 'Driver', labels={'driver': DRIVER_NAME}) + +class GnmiOpenConfigDriver(_Driver): + def __init__(self, address : str, port : int, **settings) -> None: + super().__init__(DRIVER_NAME, address, port, **settings) + self.__logger = logging.getLogger('{:s}:[{:s}:{:s}]'.format(str(__name__), str(self.address), str(self.port))) + self.__lock = threading.Lock() + self.__started = threading.Event() + self.__terminate = threading.Event() + self.__handler = GnmiSessionHandler(self.address, self.port, settings, self.__logger) + self.__out_samples = self.__handler.out_samples + + def Connect(self) -> bool: + with self.__lock: + if self.__started.is_set(): return True + self.__handler.connect() + self.__started.set() + return True + + def Disconnect(self) -> bool: + with self.__lock: + # Trigger termination of loops and processes + self.__terminate.set() + # If not started, assume it is already disconnected + if not self.__started.is_set(): return True + self.__handler.disconnect() + return True + + @metered_subclass_method(METRICS_POOL) + def GetInitialConfig(self) -> List[Tuple[str, Any]]: + with self.__lock: + return [] + + @metered_subclass_method(METRICS_POOL) + def GetConfig(self, resource_keys : List[str] = []) -> List[Tuple[str, Union[Any, None, Exception]]]: + chk_type('resources', resource_keys, list) + with self.__lock: + return self.__handler.get(resource_keys) + + @metered_subclass_method(METRICS_POOL) + def SetConfig(self, resources : List[Tuple[str, Any]]) -> List[Union[bool, Exception]]: + chk_type('resources', resources, list) + if len(resources) == 0: return [] + with self.__lock: + return self.__handler.set(resources) + + @metered_subclass_method(METRICS_POOL) + def DeleteConfig(self, resources : List[Tuple[str, Any]]) -> List[Union[bool, Exception]]: + chk_type('resources', resources, list) + if len(resources) == 0: return [] + with self.__lock: + return self.__handler.delete(resources) + + @metered_subclass_method(METRICS_POOL) + def SubscribeState(self, subscriptions : List[Tuple[str, float, float]]) -> List[Union[bool, Exception]]: + chk_type('subscriptions', subscriptions, list) + if len(subscriptions) == 0: return [] + with self.__lock: + return self.__handler.subscribe(subscriptions) + + @metered_subclass_method(METRICS_POOL) + def UnsubscribeState(self, subscriptions : List[Tuple[str, float, float]]) -> List[Union[bool, Exception]]: + chk_type('subscriptions', subscriptions, list) + if len(subscriptions) == 0: return [] + with self.__lock: + return self.__handler.unsubscribe(subscriptions) + + def GetState(self, blocking=False, terminate : Optional[threading.Event] = None) -> Iterator[Tuple[str, Any]]: + while True: + if self.__terminate.is_set(): break + if terminate is not None and terminate.is_set(): break + try: + sample = self.__out_samples.get(block=blocking, timeout=0.1) + except queue.Empty: + if blocking: continue + return + if sample is None: continue + yield sample diff --git a/src/device/service/drivers/gnmi_openconfig/GnmiSessionHandler.py b/src/device/service/drivers/gnmi_openconfig/GnmiSessionHandler.py new file mode 100644 index 0000000000000000000000000000000000000000..04dae4f5fcc6427c735b528b0ab32ba1c967709a --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/GnmiSessionHandler.py @@ -0,0 +1,332 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 copy, grpc, json, logging, queue, threading +from typing import Any, Dict, List, Optional, Tuple, Union +from common.tools.grpc.Tools import grpc_message_to_json_string +from common.type_checkers.Checkers import chk_float, chk_length, chk_string, chk_type +from .gnmi.gnmi_pb2_grpc import gNMIStub +from .gnmi.gnmi_pb2 import Encoding, GetRequest, SetRequest, UpdateResult # pylint: disable=no-name-in-module +from .handlers import ALL_RESOURCE_KEYS, compose, get_path, parse +from .tools.Capabilities import get_supported_encodings +from .tools.Channel import get_grpc_channel +from .tools.Path import path_from_string, path_to_string #, compose_path +from .tools.Subscriptions import Subscriptions +from .tools.Value import decode_value #, value_exists +from .MonitoringThread import MonitoringThread + +class GnmiSessionHandler: + def __init__(self, address : str, port : int, settings : Dict, logger : logging.Logger) -> None: + self._address = address + self._port = port + self._settings = copy.deepcopy(settings) + self._logger = logger + self._lock = threading.Lock() + self._connected = threading.Event() + self._username = settings.get('username') + self._password = settings.get('password') + self._use_tls = settings.get('use_tls', False) + self._channel : Optional[grpc.Channel] = None + self._stub : Optional[gNMIStub] = None + self._monit_thread = None + self._supported_encodings = None + self._subscriptions = Subscriptions() + self._in_subscriptions = queue.Queue() + self._out_samples = queue.Queue() + + @property + def subscriptions(self): return self._subscriptions + + @property + def in_subscriptions(self): return self._in_subscriptions + + @property + def out_samples(self): return self._out_samples + + def connect(self): + with self._lock: + self._channel = get_grpc_channel(self._address, self._port, self._use_tls, self._logger) + self._stub = gNMIStub(self._channel) + self._supported_encodings = get_supported_encodings( + self._stub, self._username, self._password, timeout=120) + self._monit_thread = MonitoringThread( + self._stub, self._logger, self._settings, self._in_subscriptions, self._out_samples) + self._monit_thread.start() + self._connected.set() + + def disconnect(self): + if not self._connected.is_set(): return + with self._lock: + self._monit_thread.stop() + self._monit_thread.join() + self._channel.close() + self._connected.clear() + + def get(self, resource_keys : List[str]) -> List[Tuple[str, Union[Any, None, Exception]]]: + if len(resource_keys) == 0: resource_keys = ALL_RESOURCE_KEYS + chk_type('resources', resource_keys, list) + + parsing_results = [] + + get_request = GetRequest() + get_request.type = GetRequest.DataType.ALL + get_request.encoding = Encoding.JSON_IETF + #get_request.use_models.add() # kept empty: return for all models supported + for i,resource_key in enumerate(resource_keys): + str_resource_name = 'resource_key[#{:d}]'.format(i) + try: + chk_string(str_resource_name, resource_key, allow_empty=False) + self._logger.debug('[GnmiSessionHandler:get] resource_key = {:s}'.format(str(resource_key))) + str_path = get_path(resource_key) + self._logger.debug('[GnmiSessionHandler:get] str_path = {:s}'.format(str(str_path))) + get_request.path.append(path_from_string(str_path)) + except Exception as e: # pylint: disable=broad-except + MSG = 'Exception parsing {:s}: {:s}' + self._logger.exception(MSG.format(str_resource_name, str(resource_key))) + parsing_results.append((resource_key, e)) # if validation fails, store the exception + + if len(parsing_results) > 0: + return parsing_results + + metadata = [('username', self._username), ('password', self._password)] + timeout = None # GNMI_SUBSCRIPTION_TIMEOUT = int(sampling_duration) + get_reply = self._stub.Get(get_request, metadata=metadata, timeout=timeout) + #self._logger.info('get_reply={:s}'.format(grpc_message_to_json_string(get_reply))) + + results = [] + #results[str_filter] = [i, None, False] # (index, value, processed?) + + for notification in get_reply.notification: + #for delete_path in notification.delete: + # self._logger.info('delete_path={:s}'.format(grpc_message_to_json_string(delete_path))) + # str_path = path_to_string(delete_path) + # resource_key_tuple = results.get(str_path) + # if resource_key_tuple is None: + # # pylint: disable=broad-exception-raised + # MSG = 'Unexpected Delete Path({:s}); requested resource_keys({:s})' + # raise Exception(MSG.format(str(str_path), str(resource_keys))) + # resource_key_tuple[2] = True + + for update in notification.update: + #self._logger.info('update={:s}'.format(grpc_message_to_json_string(update))) + str_path = path_to_string(update.path) + #resource_key_tuple = results.get(str_path) + #if resource_key_tuple is None: + # # pylint: disable=broad-exception-raised + # MSG = 'Unexpected Update Path({:s}); requested resource_keys({:s})' + # raise Exception(MSG.format(str(str_path), str(resource_keys))) + try: + value = decode_value(update.val) + #resource_key_tuple[1] = value + #resource_key_tuple[2] = True + results.extend(parse(str_path, value)) + except Exception as e: # pylint: disable=broad-except + MSG = 'Exception processing notification {:s}' + self._logger.exception(MSG.format(grpc_message_to_json_string(notification))) + results.append((str_path, e)) # if validation fails, store the exception + + #_results = sorted(results.items(), key=lambda x: x[1][0]) + #results = list() + #for resource_key,resource_key_tuple in _results: + # _, value, processed = resource_key_tuple + # value = value if processed else Exception('Not Processed') + # results.append((resource_key, value)) + return results + + def set(self, resources : List[Tuple[str, Any]]) -> List[Union[bool, Exception]]: + #resource_keys = [key for key,_ in resources] + #current_values = self.get(resource_keys) + + #resource_tuples = { + # resource_key : [i, value, value_exists(value), None] + # for i,(resource_key,value) in enumerate(current_values) + #} + + #self._logger.info('---0') + #self._logger.info(str(resource_tuples)) + + set_request = SetRequest() + #for resource_key in resource_keys: + for resource_key, resource_value in resources: + self._logger.info('---1') + self._logger.info(str(resource_key)) + self._logger.info(str(resource_value)) + #resource_tuple = resource_tuples.get(resource_key) + #if resource_tuple is None: continue + #_, value, exists, operation_done = resource_tuple + if isinstance(resource_value, str): resource_value = json.loads(resource_value) + str_path, str_data = compose(resource_key, resource_value, delete=False) + self._logger.info('---3') + self._logger.info(str(str_path)) + self._logger.info(str(str_data)) + set_request_list = set_request.update #if exists else set_request.replace + set_request_entry = set_request_list.add() + set_request_entry.path.CopyFrom(path_from_string(str_path)) + set_request_entry.val.json_val = str_data.encode('UTF-8') + + self._logger.info('set_request={:s}'.format(grpc_message_to_json_string(set_request))) + metadata = [('username', self._username), ('password', self._password)] + timeout = None # GNMI_SUBSCRIPTION_TIMEOUT = int(sampling_duration) + set_reply = self._stub.Set(set_request, metadata=metadata, timeout=timeout) + self._logger.info('set_reply={:s}'.format(grpc_message_to_json_string(set_reply))) + + results = [] + for (resource_key, resource_value), update_result in zip(resources, set_reply.response): + operation = update_result.op + if operation == UpdateResult.UPDATE: + results.append((resource_key, True)) + else: + results.append((resource_key, Exception('Unexpected'))) + + #str_path = path_to_string(update_result.path) + #resource_tuple = resource_tuples.get(str_path) + #if resource_tuple is None: continue + #resource_tuple[3] = operation + + #resource_tuples = sorted(resource_tuples.items(), key=lambda x: x[1][0]) + #results = list() + #for resource_key,resource_tuple in resource_tuples: + # _, _, exists, operation_done = resource_tuple + # desired_operation = 'update' if exists else 'replace' + # + # if operation_done == UpdateResult.INVALID: + # value = Exception('Invalid') + # elif operation_done == UpdateResult.DELETE: + # value = Exception('Unexpected Delete') + # elif operation_done == UpdateResult.REPLACE: + # value = True if desired_operation == 'replace' else Exception('Failed') + # elif operation_done == UpdateResult.UPDATE: + # value = True if desired_operation == 'update' else Exception('Failed') + # else: + # value = Exception('Unexpected') + # results.append((resource_key, value)) + return results + + def delete(self, resources : List[Tuple[str, Any]]) -> List[Union[bool, Exception]]: + #resource_keys = [key for key,_ in resources] + #current_values = self.get(resource_keys) + + #resource_tuples = { + # resource_key : [i, value, value_exists(value), None] + # for i,(resource_key,value) in enumerate(current_values) + #} + + #self._logger.info('---0') + #self._logger.info(str(resource_tuples)) + + set_request = SetRequest() + #for resource_key in resource_keys: + for resource_key, resource_value in resources: + self._logger.info('---1') + self._logger.info(str(resource_key)) + self._logger.info(str(resource_value)) + #resource_tuple = resource_tuples.get(resource_key) + #if resource_tuple is None: continue + #_, value, exists, operation_done = resource_tuple + #if not exists: continue + if isinstance(resource_value, str): resource_value = json.loads(resource_value) + str_path, str_data = compose(resource_key, resource_value, delete=True) + self._logger.info('---3') + self._logger.info(str(str_path)) + self._logger.info(str(str_data)) + set_request_entry = set_request.delete.add() + set_request_entry.CopyFrom(path_from_string(str_path)) + + self._logger.info('set_request={:s}'.format(grpc_message_to_json_string(set_request))) + metadata = [('username', self._username), ('password', self._password)] + timeout = None # GNMI_SUBSCRIPTION_TIMEOUT = int(sampling_duration) + set_reply = self._stub.Set(set_request, metadata=metadata, timeout=timeout) + self._logger.info('set_reply={:s}'.format(grpc_message_to_json_string(set_reply))) + + results = [] + for (resource_key, resource_value), update_result in zip(resources, set_reply.response): + operation = update_result.op + if operation == UpdateResult.DELETE: + results.append((resource_key, True)) + else: + results.append((resource_key, Exception('Unexpected'))) + + #str_path = path_to_string(update_result.path) + #resource_tuple = resource_tuples.get(str_path) + #if resource_tuple is None: continue + #resource_tuple[3] = operation + + #resource_tuples = sorted(resource_tuples.items(), key=lambda x: x[1][0]) + #results = list() + #for resource_key,resource_tuple in resource_tuples: + # _, _, exists, operation_done = resource_tuple + # if operation_done == UpdateResult.INVALID: + # value = Exception('Invalid') + # elif operation_done == UpdateResult.DELETE: + # value = True + # elif operation_done == UpdateResult.REPLACE: + # value = Exception('Unexpected Replace') + # elif operation_done == UpdateResult.UPDATE: + # value = Exception('Unexpected Update') + # else: + # value = Exception('Unexpected') + # results.append((resource_key, value)) + return results + + def subscribe(self, subscriptions : List[Tuple[str, float, float]]) -> List[Union[bool, Exception]]: + results = [] + for i,subscription in enumerate(subscriptions): + str_subscription_name = 'subscriptions[#{:d}]'.format(i) + try: + chk_type(str_subscription_name, subscription, (list, tuple)) + chk_length(str_subscription_name, subscription, min_length=3, max_length=3) + resource_key, sampling_duration, sampling_interval = subscription + chk_string(str_subscription_name + '.resource_key', resource_key, allow_empty=False) + chk_float(str_subscription_name + '.sampling_duration', sampling_duration, min_value=0) + chk_float(str_subscription_name + '.sampling_interval', sampling_interval, min_value=0) + except Exception as e: # pylint: disable=broad-except + MSG = 'Exception validating {:s}: {:s}' + self._logger.exception(MSG.format(str_subscription_name, str(resource_key))) + results.append(e) # if validation fails, store the exception + continue + + #resource_path = resource_key.split('/') + #self._subscriptions.add(resource_path, sampling_duration, sampling_interval, reference) + subscription = 'subscribe', resource_key, sampling_duration, sampling_interval + self._in_subscriptions.put_nowait(subscription) + results.append(True) + return results + + def unsubscribe(self, subscriptions : List[Tuple[str, float, float]]) -> List[Union[bool, Exception]]: + results = [] + for i,subscription in enumerate(subscriptions): + str_subscription_name = 'subscriptions[#{:d}]'.format(i) + try: + chk_type(str_subscription_name, subscription, (list, tuple)) + chk_length(str_subscription_name, subscription, min_length=3, max_length=3) + resource_key, sampling_duration, sampling_interval = subscription + chk_string(str_subscription_name + '.resource_key', resource_key, allow_empty=False) + chk_float(str_subscription_name + '.sampling_duration', sampling_duration, min_value=0) + chk_float(str_subscription_name + '.sampling_interval', sampling_interval, min_value=0) + except Exception as e: # pylint: disable=broad-except + MSG = 'Exception validating {:s}: {:s}' + self._logger.exception(MSG.format(str_subscription_name, str(resource_key))) + results.append(e) # if validation fails, store the exception + continue + + #resource_path = resource_key.split('/') + #reference = self._subscriptions.get(resource_path, sampling_duration, sampling_interval) + #if reference is None: + # results.append(False) + # continue + #self._subscriptions.delete(reference) + subscription = 'unsubscribe', resource_key, sampling_duration, sampling_interval + self._in_subscriptions.put_nowait(subscription) + results.append(True) + return results diff --git a/src/device/service/drivers/gnmi_openconfig/MonitoringThread.py b/src/device/service/drivers/gnmi_openconfig/MonitoringThread.py new file mode 100644 index 0000000000000000000000000000000000000000..7cbd0da87d15b6fac0ea7f4a5de3c02259a07dc8 --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/MonitoringThread.py @@ -0,0 +1,171 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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. + +# Ref: https://github.com/openconfig/reference/blob/master/rpc/gnmi/gnmi-specification.md +# Ref: https://github.com/openconfig/gnmi/blob/master/proto/gnmi/gnmi.proto + +from __future__ import annotations +import grpc, logging, queue, re, threading +from collections.abc import Iterator +from datetime import datetime +from typing import Dict +from common.tools.grpc.Tools import grpc_message_to_json_string +from .gnmi.gnmi_pb2 import ( # pylint: disable=no-name-in-module + QOSMarking, SubscribeRequest, Subscription, SubscriptionList, SubscriptionMode +) +from .gnmi.gnmi_pb2_grpc import gNMIStub +from .tools.Path import path_from_string, path_to_string +from .DeltaSampleCache import DeltaSampleCache + + +LOGGER = logging.getLogger(__name__) + +# SubscriptionList Mode: Mode of the subscription. +# STREAM = 0: Values streamed by the target. gNMI Specification Section 3.5.1.5.2 +# ONCE = 1: Values sent once-off by the target. gNMI Specification Section 3.5.1.5.1 +# POLL = 2: Values sent in response to a poll request. gNMI Specification Section 3.5.1.5.3 +GNMI_SUBSCRIPTION_LIST_MODE = SubscriptionList.Mode.STREAM + +# Path Prefix: Prefix used for paths. +GNMI_PATH_PREFIX = None + +# QOS MArking: DSCP marking to be used. +GNMI_QOS_MARKING = None + +# Allow Aggregation: Whether elements of the schema that are marked as eligible for aggregation +# should be aggregated or not. +GNMI_ALLOW_AGGREGATION = False + +# Encoding: The encoding that the target should use within the Notifications generated +# corresponding to the SubscriptionList. +GNMI_ENCODING = 'JSON' + +#Subscription Mode: The mode of the subscription, specifying how the target must return values +# in a subscription. gNMI Specification Section 3.5.1.3 +# TARGET_DEFINED = 0: The target selects the relevant mode for each element. +# ON_CHANGE = 1: The target sends an update on element value change. +# SAMPLE = 2: The target samples values according to the interval. +GNMI_SUBSCRIPTION_MODE = SubscriptionMode.SAMPLE + +# Suppress Redundant: Indicates whether values that have not changed should be sent in a SAMPLE +# subscription. gNMI Specification Section 3.5.1.3 +GNMI_SUPPRESS_REDUNDANT = False + +# Heartbeat Interval: Specifies the maximum allowable silent period in nanoseconds when +# suppress_redundant is in use. The target should send a value at least once in the period +# specified. gNMI Specification Section 3.5.1.3 +GNMI_HEARTBEAT_INTERVAL = 10 # seconds + +GNMI_SUBSCRIPTION_TIMEOUT = None + +class MonitoringThread(threading.Thread): + def __init__( + self, stub : gNMIStub, logger : logging.Logger, settings : Dict, + in_subscriptions : queue.Queue, out_samples : queue.Queue + ) -> None: + super().__init__(daemon=True) + self._terminate = threading.Event() + self._stub = stub + self._logger = logger + self._username = settings.get('username') + self._password = settings.get('password') + self._in_subscriptions = in_subscriptions + self._out_samples = out_samples + self._response_iterator = None + self._delta_sample_cache = DeltaSampleCache() + + def stop(self) -> None: + self._terminate.set() + if self._response_iterator is not None: + self._response_iterator.cancel() + + def generate_requests(self) -> Iterator[SubscribeRequest]: + subscriptions = [] + while not self._terminate.is_set(): + try: + subscription = self._in_subscriptions.get(block=True, timeout=0.1) + operation, resource_key, sampling_duration, sampling_interval = subscription # pylint: disable=unused-variable + if operation != 'subscribe': continue # Unsubscribe not supported by gNM, needs to cancel entire connection + # options.timeout = int(sampling_duration) + #_path = parse_xpath(resource_key) + path = path_from_string(resource_key) + subscription = Subscription( + path=path, mode=GNMI_SUBSCRIPTION_MODE, suppress_redundant=GNMI_SUPPRESS_REDUNDANT, + sample_interval=int(sampling_interval * 1000000000), + heartbeat_interval=int(GNMI_HEARTBEAT_INTERVAL * 1000000000)) + subscriptions.append(subscription) + except queue.Empty: + if len(subscriptions) == 0: continue + #self._logger.warning('[generate_requests] process') + prefix = path_from_string(GNMI_PATH_PREFIX) if GNMI_PATH_PREFIX is not None else None + qos = QOSMarking(marking=GNMI_QOS_MARKING) if GNMI_QOS_MARKING is not None else None + subscriptions_list = SubscriptionList( + prefix=prefix, mode=GNMI_SUBSCRIPTION_LIST_MODE, allow_aggregation=GNMI_ALLOW_AGGREGATION, + encoding=GNMI_ENCODING, subscription=subscriptions, qos=qos) + subscribe_request = SubscribeRequest(subscribe=subscriptions_list) + #str_subscribe_request = grpc_message_to_json_string(subscribe_request) + #self._logger.warning('[generate_requests] subscribe_request={:s}'.format(str_subscribe_request)) + yield subscribe_request + subscriptions = [] + except: # pylint: disable=bare-except + self._logger.exception('[generate_requests] Unhandled Exception') + + def run(self) -> None: + # Add a dummy subscription to be used as keep-alive + # usable only with SRLinux native data models + #subscription = ('/system/name/host-name', None, 1) + #self._in_subscriptions.put_nowait(subscription) + + try: + request_iterator = self.generate_requests() + metadata = [('username', self._username), ('password', self._password)] + timeout = None # GNMI_SUBSCRIPTION_TIMEOUT = int(sampling_duration) + self._response_iterator = self._stub.Subscribe(request_iterator, metadata=metadata, timeout=timeout) + for subscribe_response in self._response_iterator: + str_subscribe_response = grpc_message_to_json_string(subscribe_response) + self._logger.warning('[run] subscribe_response={:s}'.format(str_subscribe_response)) + update = subscribe_response.update + timestamp_device = float(update.timestamp) / 1.e9 + timestamp_local = datetime.timestamp(datetime.utcnow()) + # if difference between timestamp from device and local is lower than 1 second + if abs(timestamp_device - timestamp_local) <= 1: + # assume clocks are synchronized, use timestamp from device + timestamp = timestamp_device + else: + # might be clocks are not synchronized, use local timestamp + timestamp = timestamp_local + for update_entry in update.update: + str_path = path_to_string(update_entry.path) + #if str_path != '/system/name/host-name': continue + #counter_name = update_entry.path[-1].name + value_type = update_entry.val.WhichOneof('value') + value = getattr(update_entry.val, value_type) + if re.match(r'^[0-9]+$', value) is not None: + value = int(value) + elif re.match(r'^[0-9]*\.[0-9]*$', value) is not None: + value = float(value) + else: + value = str(value) + delta_sample = self._delta_sample_cache.get_delta(str_path, timestamp, value) + if delta_sample is None: + sample = (timestamp, str_path, value) + else: + sample = (delta_sample[0], str_path, delta_sample[1]) + self._logger.warning('[run] sample={:s}'.format(str(sample))) + self._out_samples.put_nowait(sample) + except grpc.RpcError as e: + if e.code() != grpc.StatusCode.CANCELLED: raise # pylint: disable=no-member + if e.details() != 'Locally cancelled by application!': raise # pylint: disable=no-member + except: # pylint: disable=bare-except + self._logger.exception('Unhandled Exception') diff --git a/src/tests/scenario3/l3/launch_webui.sh b/src/device/service/drivers/gnmi_openconfig/__init__.py old mode 100755 new mode 100644 similarity index 91% rename from src/tests/scenario3/l3/launch_webui.sh rename to src/device/service/drivers/gnmi_openconfig/__init__.py index bf1867eb108331647f3ad343b0ab23d098617aff..1549d9811aa5d1c193a44ad45d0d7773236c0612 --- a/src/tests/scenario3/l3/launch_webui.sh +++ b/src/device/service/drivers/gnmi_openconfig/__init__.py @@ -1,4 +1,3 @@ -#!/bin/bash # Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) # # Licensed under the Apache License, Version 2.0 (the "License"); @@ -13,4 +12,3 @@ # See the License for the specific language governing permissions and # limitations under the License. -ssh -L 12345:localhost:80 ubuntu@192.168.165.78 diff --git a/src/device/service/drivers/gnmi_openconfig/gnmi/Acknowledgement.txt b/src/device/service/drivers/gnmi_openconfig/gnmi/Acknowledgement.txt new file mode 100644 index 0000000000000000000000000000000000000000..a004e1f58bdea3ba78263a06e6e473f593e1b390 --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/gnmi/Acknowledgement.txt @@ -0,0 +1,25 @@ +This code is partially based on: +https://github.com/nokia/pygnmi/blob/master/gNMI_Subscribe.py + + +MIT License + +Copyright (c) 2017 Nokia + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/src/device/service/drivers/gnmi_openconfig/gnmi/__init__.py b/src/device/service/drivers/gnmi_openconfig/gnmi/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..1549d9811aa5d1c193a44ad45d0d7773236c0612 --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/gnmi/__init__.py @@ -0,0 +1,14 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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/device/service/drivers/gnmi_openconfig/gnmi/gnmi.proto b/src/device/service/drivers/gnmi_openconfig/gnmi/gnmi.proto new file mode 100644 index 0000000000000000000000000000000000000000..292880a55586f5a5c05b0edcfc0f2f73baf7be13 --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/gnmi/gnmi.proto @@ -0,0 +1,501 @@ +syntax = "proto3"; + +import "google/protobuf/any.proto"; +import "google/protobuf/descriptor.proto"; +// import gnmi_ext.proto; + +// Package gNMI defines a service specification for the gRPC Network Management +// Interface. This interface is defined to be a standard interface via which +// a network management system ("client") can subscribe to state values, +// retrieve snapshots of state information, and manipulate the state of a data +// tree supported by a device ("target"). +// +// This document references the gNMI Specification which can be found at +// http://github.com/openconfig/reference/blob/master/rpc/gnmi +package gnmi; + +// Define a protobuf FileOption that defines the gNMI service version. +extend google.protobuf.FileOptions { + // The gNMI service semantic version. + string gnmi_service = 1001; +} + +// gNMI_service is the current version of the gNMI service, returned through +// the Capabilities RPC. +option (gnmi_service) = "0.8.0"; + +option go_package = "github.com/openconfig/gnmi/proto/gnmi"; +option java_multiple_files = true; +option java_outer_classname = "GnmiProto"; +option java_package = "com.github.gnmi.proto"; + + +service gNMI { + // Capabilities allows the client to retrieve the set of capabilities that + // is supported by the target. This allows the target to validate the + // service version that is implemented and retrieve the set of models that + // the target supports. The models can then be specified in subsequent RPCs + // to restrict the set of data that is utilized. + // Reference: gNMI Specification Section 3.2 + rpc Capabilities(CapabilityRequest) returns (CapabilityResponse); + // Retrieve a snapshot of data from the target. A Get RPC requests that the + // target snapshots a subset of the data tree as specified by the paths + // included in the message and serializes this to be returned to the + // client using the specified encoding. + // Reference: gNMI Specification Section 3.3 + rpc Get(GetRequest) returns (GetResponse); + // Set allows the client to modify the state of data on the target. The + // paths to modified along with the new values that the client wishes + // to set the value to. + // Reference: gNMI Specification Section 3.4 + rpc Set(SetRequest) returns (SetResponse); + // Subscribe allows a client to request the target to send it values + // of particular paths within the data tree. These values may be streamed + // at a particular cadence (STREAM), sent one off on a long-lived channel + // (POLL), or sent as a one-off retrieval (ONCE). + // Reference: gNMI Specification Section 3.5 + rpc Subscribe(stream SubscribeRequest) returns (stream SubscribeResponse); +} +// The Extension message contains a single gNMI extension. +message Extension { + oneof ext { + RegisteredExtension registered_ext = 1; // A registered extension. + // Well known extensions. + MasterArbitration master_arbitration = 2; // Master arbitration extension. + History history = 3; // History extension. + } +} + +// The RegisteredExtension message defines an extension which is defined outside +// of this file. +message RegisteredExtension { + ExtensionID id = 1; // The unique ID assigned to this extension. + bytes msg = 2; // The binary-marshalled protobuf extension payload. +} + +// RegisteredExtension is an enumeration acting as a registry for extensions +// defined by external sources. +enum ExtensionID { + EID_UNSET = 0; + // New extensions are to be defined within this enumeration - their definition + // MUST link to a reference describing their implementation. + + // An experimental extension that may be used during prototyping of a new + // extension. + EID_EXPERIMENTAL = 999; +} + +// MasterArbitration is used to select the master among multiple gNMI clients +// with the same Roles. The client with the largest election_id is honored as +// the master. +// The document about gNMI master arbitration can be found at +// https://github.com/openconfig/reference/blob/master/rpc/gnmi/gnmi-master-arbitration.md +message MasterArbitration { + Role role = 1; + Uint128 election_id = 2; +} + +// Representation of unsigned 128-bit integer. +message Uint128 { + uint64 high = 1; + uint64 low = 2; +} + +// There can be one master for each role. The role is identified by its id. +message Role { + string id = 1; + // More fields can be added if needed, for example, to specify what paths the + // role can read/write. +} + +// The History extension allows clients to request historical data. Its +// spec can be found at +// https://github.com/openconfig/reference/blob/master/rpc/gnmi/gnmi-history.md +message History { + oneof request { + int64 snapshot_time = 1; // Nanoseconds since the epoch + TimeRange range = 2; + } +} + +message TimeRange { + int64 start = 1; // Nanoseconds since the epoch + int64 end = 2; // Nanoseconds since the epoch +} +// Notification is a re-usable message that is used to encode data from the +// target to the client. A Notification carries two types of changes to the data +// tree: +// - Deleted values (delete) - a set of paths that have been removed from the +// data tree. +// - Updated values (update) - a set of path-value pairs indicating the path +// whose value has changed in the data tree. +// Reference: gNMI Specification Section 2.1 +message Notification { + int64 timestamp = 1; // Timestamp in nanoseconds since Epoch. + Path prefix = 2; // Prefix used for paths in the message. + repeated Update update = 4; // Data elements that have changed values. + repeated Path delete = 5; // Data elements that have been deleted. + // This notification contains a set of paths that are always updated together + // referenced by a globally unique prefix. + bool atomic = 6; + // Reserved field numbers and identifiers. + reserved "alias"; + reserved 3; +} + +// Update is a re-usable message that is used to store a particular Path, +// Value pair. +// Reference: gNMI Specification Section 2.1 +message Update { + Path path = 1; // The path (key) for the update. + Value value = 2 [deprecated=true]; // The value (value) for the update. + TypedValue val = 3; // The explicitly typed update value. + uint32 duplicates = 4; // Number of coalesced duplicates. +} + +// TypedValue is used to encode a value being sent between the client and +// target (originated by either entity). +message TypedValue { + // One of the fields within the val oneof is populated with the value + // of the update. The type of the value being included in the Update + // determines which field should be populated. In the case that the + // encoding is a particular form of the base protobuf type, a specific + // field is used to store the value (e.g., json_val). + oneof value { + string string_val = 1; // String value. + int64 int_val = 2; // Integer value. + uint64 uint_val = 3; // Unsigned integer value. + bool bool_val = 4; // Bool value. + bytes bytes_val = 5; // Arbitrary byte sequence value. + float float_val = 6 [deprecated=true]; // Deprecated - use double_val. + double double_val = 14; // Floating point value. + Decimal64 decimal_val = 7 [deprecated=true]; // Deprecated - use double_val. + ScalarArray leaflist_val = 8; // Mixed type scalar array value. + google.protobuf.Any any_val = 9; // protobuf.Any encoded bytes. + bytes json_val = 10; // JSON-encoded text. + bytes json_ietf_val = 11; // JSON-encoded text per RFC7951. + string ascii_val = 12; // Arbitrary ASCII text. + // Protobuf binary encoded bytes. The message type is not included. + // See the specification at + // github.com/openconfig/reference/blob/master/rpc/gnmi/protobuf-vals.md + // for a complete specification. [Experimental] + bytes proto_bytes = 13; + } +} + +// Path encodes a data tree path as a series of repeated strings, with +// each element of the path representing a data tree node name and the +// associated attributes. +// Reference: gNMI Specification Section 2.2.2. +message Path { + // Elements of the path are no longer encoded as a string, but rather within + // the elem field as a PathElem message. + repeated string element = 1 [deprecated=true]; + string origin = 2; // Label to disambiguate path. + repeated PathElem elem = 3; // Elements of the path. + string target = 4; // The name of the target + // (Sec. 2.2.2.1) +} + +// PathElem encodes an element of a gNMI path, along with any attributes (keys) +// that may be associated with it. +// Reference: gNMI Specification Section 2.2.2. +message PathElem { + string name = 1; // The name of the element in the path. + map<string, string> key = 2; // Map of key (attribute) name to value. +} + +// Value encodes a data tree node's value - along with the way in which +// the value is encoded. This message is deprecated by gNMI 0.3.0. +// Reference: gNMI Specification Section 2.2.3. +message Value { + option deprecated = true; + bytes value = 1; // Value of the variable being transmitted. + Encoding type = 2; // Encoding used for the value field. +} + +// Encoding defines the value encoding formats that are supported by the gNMI +// protocol. These encodings are used by both the client (when sending Set +// messages to modify the state of the target) and the target when serializing +// data to be returned to the client (in both Subscribe and Get RPCs). +// Reference: gNMI Specification Section 2.3 +enum Encoding { + JSON = 0; // JSON encoded text. + BYTES = 1; // Arbitrarily encoded bytes. + PROTO = 2; // Encoded according to scalar values of TypedValue. + ASCII = 3; // ASCII text of an out-of-band agreed format. + JSON_IETF = 4; // JSON encoded text as per RFC7951. +} + +// Error message previously utilised to return errors to the client. Deprecated +// in favour of using the google.golang.org/genproto/googleapis/rpc/status +// message in the RPC response. +// Reference: gNMI Specification Section 2.5 +message Error { + option deprecated = true; + uint32 code = 1; // Canonical gRPC error code. + string message = 2; // Human readable error. + google.protobuf.Any data = 3; // Optional additional information. +} + +// Decimal64 is used to encode a fixed precision decimal number. The value +// is expressed as a set of digits with the precision specifying the +// number of digits following the decimal point in the digit set. +// This message is deprecated in favor of encoding all floating point types +// as double precision. +message Decimal64 { + option deprecated = true; + int64 digits = 1; // Set of digits. + uint32 precision = 2; // Number of digits following the decimal point. +} + +// ScalarArray is used to encode a mixed-type array of values. +message ScalarArray { + // The set of elements within the array. Each TypedValue message should + // specify only elements that have a field identifier of 1-7 (i.e., the + // values are scalar values). + repeated TypedValue element = 1; +} + +// SubscribeRequest is the message sent by the client to the target when +// initiating a subscription to a set of paths within the data tree. The +// request field must be populated and the initial message must specify a +// SubscriptionList to initiate a subscription. +// Reference: gNMI Specification Section 3.5.1.1 +message SubscribeRequest { + oneof request { + SubscriptionList subscribe = 1; // Specify the paths within a subscription. + Poll poll = 3; // Trigger a polled update. + } + // Extension messages associated with the SubscribeRequest. See the + // gNMI extension specification for further definition. + repeated Extension extension = 5; + // Reserved field numbers and identifiers. + reserved 4; + reserved "aliases"; +} + +// Poll is sent within a SubscribeRequest to trigger the device to +// send telemetry updates for the paths that are associated with the +// subscription. +// Reference: gNMI Specification Section Section 3.5.1.4 +message Poll { +} + +// SubscribeResponse is the message used by the target within a Subscribe RPC. +// The target includes a Notification message which is used to transmit values +// of the path(s) that are associated with the subscription. The same message +// is to indicate that the target has sent all data values once (is +// synchronized). +// Reference: gNMI Specification Section 3.5.1.4 +message SubscribeResponse { + oneof response { + Notification update = 1; // Changed or sampled value for a path. + // Indicate target has sent all values associated with the subscription + // at least once. + bool sync_response = 3; + // Deprecated in favour of google.golang.org/genproto/googleapis/rpc/status + Error error = 4 [deprecated=true]; + } + // Extension messages associated with the SubscribeResponse. See the + // gNMI extension specification for further definition. + repeated Extension extension = 5; +} + +// SubscriptionList is used within a Subscribe message to specify the list of +// paths that the client wishes to subscribe to. The message consists of a +// list of (possibly prefixed) paths, and options that relate to the +// subscription. +// Reference: gNMI Specification Section 3.5.1.2 +message SubscriptionList { + Path prefix = 1; // Prefix used for paths. + repeated Subscription subscription = 2; // Set of subscriptions to create. + QOSMarking qos = 4; // DSCP marking to be used. + // Mode of the subscription. + enum Mode { + STREAM = 0; // Values streamed by the target (Sec. 3.5.1.5.2). + ONCE = 1; // Values sent once-off by the target (Sec. 3.5.1.5.1). + POLL = 2; // Values sent in response to a poll request (Sec. 3.5.1.5.3). + } + Mode mode = 5; + // Whether elements of the schema that are marked as eligible for aggregation + // should be aggregated or not. + bool allow_aggregation = 6; + // The set of schemas that define the elements of the data tree that should + // be sent by the target. + repeated ModelData use_models = 7; + // The encoding that the target should use within the Notifications generated + // corresponding to the SubscriptionList. + Encoding encoding = 8; + // An optional field to specify that only updates to current state should be + // sent to a client. If set, the initial state is not sent to the client but + // rather only the sync message followed by any subsequent updates to the + // current state. For ONCE and POLL modes, this causes the server to send only + // the sync message (Sec. 3.5.2.3). + bool updates_only = 9; + // Reserved field numbers and identifiers. + reserved 3; + reserved "use_aliases"; +} + +// Subscription is a single request within a SubscriptionList. The path +// specified is interpreted (along with the prefix) as the elements of the data +// tree that the client is subscribing to. The mode determines how the target +// should trigger updates to be sent. +// Reference: gNMI Specification Section 3.5.1.3 +message Subscription { + Path path = 1; // The data tree path. + SubscriptionMode mode = 2; // Subscription mode to be used. + uint64 sample_interval = 3; // ns between samples in SAMPLE mode. + // Indicates whether values that have not changed should be sent in a SAMPLE + // subscription. + bool suppress_redundant = 4; + // Specifies the maximum allowable silent period in nanoseconds when + // suppress_redundant is in use. The target should send a value at least once + // in the period specified. + uint64 heartbeat_interval = 5; +} + +// SubscriptionMode is the mode of the subscription, specifying how the +// target must return values in a subscription. +// Reference: gNMI Specification Section 3.5.1.3 +enum SubscriptionMode { + TARGET_DEFINED = 0; // The target selects the relevant mode for each element. + ON_CHANGE = 1; // The target sends an update on element value change. + SAMPLE = 2; // The target samples values according to the interval. +} + +// QOSMarking specifies the DSCP value to be set on transmitted telemetry +// updates from the target. +// Reference: gNMI Specification Section 3.5.1.2 +message QOSMarking { + uint32 marking = 1; +} + +// SetRequest is sent from a client to the target to update values in the data +// tree. Paths are either deleted by the client, or modified by means of being +// updated, or replaced. Where a replace is used, unspecified values are +// considered to be replaced, whereas when update is used the changes are +// considered to be incremental. The set of changes that are specified within +// a single SetRequest are considered to be a transaction. +// Reference: gNMI Specification Section 3.4.1 +message SetRequest { + Path prefix = 1; // Prefix used for paths in the message. + repeated Path delete = 2; // Paths to be deleted from the data tree. + repeated Update replace = 3; // Updates specifying elements to be replaced. + repeated Update update = 4; // Updates specifying elements to updated. + // Extension messages associated with the SetRequest. See the + // gNMI extension specification for further definition. + repeated Extension extension = 5; +} + +// SetResponse is the response to a SetRequest, sent from the target to the +// client. It reports the result of the modifications to the data tree that were +// specified by the client. Errors for this RPC should be reported using the +// https://github.com/googleapis/googleapis/blob/master/google/rpc/status.proto +// message in the RPC return. The gnmi.Error message can be used to add additional +// details where required. +// Reference: gNMI Specification Section 3.4.2 +message SetResponse { + Path prefix = 1; // Prefix used for paths. + // A set of responses specifying the result of the operations specified in + // the SetRequest. + repeated UpdateResult response = 2; + Error message = 3 [deprecated=true]; // The overall status of the transaction. + int64 timestamp = 4; // Timestamp of transaction (ns since epoch). + // Extension messages associated with the SetResponse. See the + // gNMI extension specification for further definition. + repeated Extension extension = 5; +} + +// UpdateResult is used within the SetResponse message to communicate the +// result of an operation specified within a SetRequest message. +// Reference: gNMI Specification Section 3.4.2 +message UpdateResult { + // The operation that was associated with the Path specified. + enum Operation { + INVALID = 0; + DELETE = 1; // The result relates to a delete of Path. + REPLACE = 2; // The result relates to a replace of Path. + UPDATE = 3; // The result relates to an update of Path. + } + // Deprecated timestamp for the UpdateResult, this field has been + // replaced by the timestamp within the SetResponse message, since + // all mutations effected by a set should be applied as a single + // transaction. + int64 timestamp = 1 [deprecated=true]; + Path path = 2; // Path associated with the update. + Error message = 3 [deprecated=true]; // Status of the update operation. + Operation op = 4; // Update operation type. +} + +// GetRequest is sent when a client initiates a Get RPC. It is used to specify +// the set of data elements for which the target should return a snapshot of +// data. The use_models field specifies the set of schema modules that are to +// be used by the target - where use_models is not specified then the target +// must use all schema models that it has. +// Reference: gNMI Specification Section 3.3.1 +message GetRequest { + Path prefix = 1; // Prefix used for paths. + repeated Path path = 2; // Paths requested by the client. + // Type of elements within the data tree. + enum DataType { + ALL = 0; // All data elements. + CONFIG = 1; // Config (rw) only elements. + STATE = 2; // State (ro) only elements. + // Data elements marked in the schema as operational. This refers to data + // elements whose value relates to the state of processes or interactions + // running on the device. + OPERATIONAL = 3; + } + DataType type = 3; // The type of data being requested. + Encoding encoding = 5; // Encoding to be used. + repeated ModelData use_models = 6; // The schema models to be used. + // Extension messages associated with the GetRequest. See the + // gNMI extension specification for further definition. + repeated Extension extension = 7; +} + +// GetResponse is used by the target to respond to a GetRequest from a client. +// The set of Notifications corresponds to the data values that are requested +// by the client in the GetRequest. +// Reference: gNMI Specification Section 3.3.2 +message GetResponse { + repeated Notification notification = 1; // Data values. + Error error = 2 [deprecated=true]; // Errors that occurred in the Get. + // Extension messages associated with the GetResponse. See the + // gNMI extension specification for further definition. + repeated Extension extension = 3; +} + +// CapabilityRequest is sent by the client in the Capabilities RPC to request +// that the target reports its capabilities. +// Reference: gNMI Specification Section 3.2.1 +message CapabilityRequest { + // Extension messages associated with the CapabilityRequest. See the + // gNMI extension specification for further definition. + repeated Extension extension = 1; +} + +// CapabilityResponse is used by the target to report its capabilities to the +// client within the Capabilities RPC. +// Reference: gNMI Specification Section 3.2.2 +message CapabilityResponse { + repeated ModelData supported_models = 1; // Supported schema models. + repeated Encoding supported_encodings = 2; // Supported encodings. + string gNMI_version = 3; // Supported gNMI version. + // Extension messages associated with the CapabilityResponse. See the + // gNMI extension specification for further definition. + repeated Extension extension = 4; +} + +// ModelData is used to describe a set of schema modules. It can be used in a +// CapabilityResponse where a target reports the set of modules that it +// supports, and within the SubscribeRequest and GetRequest messages to specify +// the set of models from which data tree elements should be reported. +// Reference: gNMI Specification Section 3.2.3 +message ModelData { + string name = 1; // Name of the model. + string organization = 2; // Organization publishing the model. + string version = 3; // Semantic version of the model. +} \ No newline at end of file diff --git a/src/device/service/drivers/gnmi_openconfig/gnmi/gnmi_ext.proto b/src/device/service/drivers/gnmi_openconfig/gnmi/gnmi_ext.proto new file mode 100644 index 0000000000000000000000000000000000000000..9960f12afa9d19a45b3d30fd127cb27586f02607 --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/gnmi/gnmi_ext.proto @@ -0,0 +1,76 @@ +syntax = "proto3"; + +// Package gnmi_ext defines a set of extensions messages which can be optionally +// included with the request and response messages of gNMI RPCs. A set of +// well-known extensions are defined within this file, along with a registry for +// extensions defined outside of this package. +package gnmi_ext; + +option go_package = "github.com/openconfig/gnmi/proto/gnmi_ext"; + +// The Extension message contains a single gNMI extension. +message Extension { + oneof ext { + RegisteredExtension registered_ext = 1; // A registered extension. + // Well known extensions. + MasterArbitration master_arbitration = 2; // Master arbitration extension. + History history = 3; // History extension. + } +} + +// The RegisteredExtension message defines an extension which is defined outside +// of this file. +message RegisteredExtension { + ExtensionID id = 1; // The unique ID assigned to this extension. + bytes msg = 2; // The binary-marshalled protobuf extension payload. +} + +// RegisteredExtension is an enumeration acting as a registry for extensions +// defined by external sources. +enum ExtensionID { + EID_UNSET = 0; + // New extensions are to be defined within this enumeration - their definition + // MUST link to a reference describing their implementation. + + // An experimental extension that may be used during prototyping of a new + // extension. + EID_EXPERIMENTAL = 999; +} + +// MasterArbitration is used to select the master among multiple gNMI clients +// with the same Roles. The client with the largest election_id is honored as +// the master. +// The document about gNMI master arbitration can be found at +// https://github.com/openconfig/reference/blob/master/rpc/gnmi/gnmi-master-arbitration.md +message MasterArbitration { + Role role = 1; + Uint128 election_id = 2; +} + +// Representation of unsigned 128-bit integer. +message Uint128 { + uint64 high = 1; + uint64 low = 2; +} + +// There can be one master for each role. The role is identified by its id. +message Role { + string id = 1; + // More fields can be added if needed, for example, to specify what paths the + // role can read/write. +} + +// The History extension allows clients to request historical data. Its +// spec can be found at +// https://github.com/openconfig/reference/blob/master/rpc/gnmi/gnmi-history.md +message History { + oneof request { + int64 snapshot_time = 1; // Nanoseconds since the epoch + TimeRange range = 2; + } +} + +message TimeRange { + int64 start = 1; // Nanoseconds since the epoch + int64 end = 2; // Nanoseconds since the epoch +} \ No newline at end of file diff --git a/src/device/service/drivers/gnmi_openconfig/gnmi/gnmi_pb2.py b/src/device/service/drivers/gnmi_openconfig/gnmi/gnmi_pb2.py new file mode 100644 index 0000000000000000000000000000000000000000..af67f9a8ca1d4e01d1a95a0d86adbabe6d8e83ea --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/gnmi/gnmi_pb2.py @@ -0,0 +1,129 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: gnmi.proto +"""Generated protocol buffer code.""" +from google.protobuf.internal import builder as _builder +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import any_pb2 as google_dot_protobuf_dot_any__pb2 +from google.protobuf import descriptor_pb2 as google_dot_protobuf_dot_descriptor__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\ngnmi.proto\x12\x04gnmi\x1a\x19google/protobuf/any.proto\x1a google/protobuf/descriptor.proto\"\xa0\x01\n\tExtension\x12\x33\n\x0eregistered_ext\x18\x01 \x01(\x0b\x32\x19.gnmi.RegisteredExtensionH\x00\x12\x35\n\x12master_arbitration\x18\x02 \x01(\x0b\x32\x17.gnmi.MasterArbitrationH\x00\x12 \n\x07history\x18\x03 \x01(\x0b\x32\r.gnmi.HistoryH\x00\x42\x05\n\x03\x65xt\"A\n\x13RegisteredExtension\x12\x1d\n\x02id\x18\x01 \x01(\x0e\x32\x11.gnmi.ExtensionID\x12\x0b\n\x03msg\x18\x02 \x01(\x0c\"Q\n\x11MasterArbitration\x12\x18\n\x04role\x18\x01 \x01(\x0b\x32\n.gnmi.Role\x12\"\n\x0b\x65lection_id\x18\x02 \x01(\x0b\x32\r.gnmi.Uint128\"$\n\x07Uint128\x12\x0c\n\x04high\x18\x01 \x01(\x04\x12\x0b\n\x03low\x18\x02 \x01(\x04\"\x12\n\x04Role\x12\n\n\x02id\x18\x01 \x01(\t\"O\n\x07History\x12\x17\n\rsnapshot_time\x18\x01 \x01(\x03H\x00\x12 \n\x05range\x18\x02 \x01(\x0b\x32\x0f.gnmi.TimeRangeH\x00\x42\t\n\x07request\"\'\n\tTimeRange\x12\r\n\x05start\x18\x01 \x01(\x03\x12\x0b\n\x03\x65nd\x18\x02 \x01(\x03\"\x94\x01\n\x0cNotification\x12\x11\n\ttimestamp\x18\x01 \x01(\x03\x12\x1a\n\x06prefix\x18\x02 \x01(\x0b\x32\n.gnmi.Path\x12\x1c\n\x06update\x18\x04 \x03(\x0b\x32\x0c.gnmi.Update\x12\x1a\n\x06\x64\x65lete\x18\x05 \x03(\x0b\x32\n.gnmi.Path\x12\x0e\n\x06\x61tomic\x18\x06 \x01(\x08J\x04\x08\x03\x10\x04R\x05\x61lias\"u\n\x06Update\x12\x18\n\x04path\x18\x01 \x01(\x0b\x32\n.gnmi.Path\x12\x1e\n\x05value\x18\x02 \x01(\x0b\x32\x0b.gnmi.ValueB\x02\x18\x01\x12\x1d\n\x03val\x18\x03 \x01(\x0b\x32\x10.gnmi.TypedValue\x12\x12\n\nduplicates\x18\x04 \x01(\r\"\x83\x03\n\nTypedValue\x12\x14\n\nstring_val\x18\x01 \x01(\tH\x00\x12\x11\n\x07int_val\x18\x02 \x01(\x03H\x00\x12\x12\n\x08uint_val\x18\x03 \x01(\x04H\x00\x12\x12\n\x08\x62ool_val\x18\x04 \x01(\x08H\x00\x12\x13\n\tbytes_val\x18\x05 \x01(\x0cH\x00\x12\x17\n\tfloat_val\x18\x06 \x01(\x02\x42\x02\x18\x01H\x00\x12\x14\n\ndouble_val\x18\x0e \x01(\x01H\x00\x12*\n\x0b\x64\x65\x63imal_val\x18\x07 \x01(\x0b\x32\x0f.gnmi.Decimal64B\x02\x18\x01H\x00\x12)\n\x0cleaflist_val\x18\x08 \x01(\x0b\x32\x11.gnmi.ScalarArrayH\x00\x12\'\n\x07\x61ny_val\x18\t \x01(\x0b\x32\x14.google.protobuf.AnyH\x00\x12\x12\n\x08json_val\x18\n \x01(\x0cH\x00\x12\x17\n\rjson_ietf_val\x18\x0b \x01(\x0cH\x00\x12\x13\n\tascii_val\x18\x0c \x01(\tH\x00\x12\x15\n\x0bproto_bytes\x18\r \x01(\x0cH\x00\x42\x07\n\x05value\"Y\n\x04Path\x12\x13\n\x07\x65lement\x18\x01 \x03(\tB\x02\x18\x01\x12\x0e\n\x06origin\x18\x02 \x01(\t\x12\x1c\n\x04\x65lem\x18\x03 \x03(\x0b\x32\x0e.gnmi.PathElem\x12\x0e\n\x06target\x18\x04 \x01(\t\"j\n\x08PathElem\x12\x0c\n\x04name\x18\x01 \x01(\t\x12$\n\x03key\x18\x02 \x03(\x0b\x32\x17.gnmi.PathElem.KeyEntry\x1a*\n\x08KeyEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"8\n\x05Value\x12\r\n\x05value\x18\x01 \x01(\x0c\x12\x1c\n\x04type\x18\x02 \x01(\x0e\x32\x0e.gnmi.Encoding:\x02\x18\x01\"N\n\x05\x45rror\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\"\n\x04\x64\x61ta\x18\x03 \x01(\x0b\x32\x14.google.protobuf.Any:\x02\x18\x01\"2\n\tDecimal64\x12\x0e\n\x06\x64igits\x18\x01 \x01(\x03\x12\x11\n\tprecision\x18\x02 \x01(\r:\x02\x18\x01\"0\n\x0bScalarArray\x12!\n\x07\x65lement\x18\x01 \x03(\x0b\x32\x10.gnmi.TypedValue\"\x99\x01\n\x10SubscribeRequest\x12+\n\tsubscribe\x18\x01 \x01(\x0b\x32\x16.gnmi.SubscriptionListH\x00\x12\x1a\n\x04poll\x18\x03 \x01(\x0b\x32\n.gnmi.PollH\x00\x12\"\n\textension\x18\x05 \x03(\x0b\x32\x0f.gnmi.ExtensionB\t\n\x07requestJ\x04\x08\x04\x10\x05R\x07\x61liases\"\x06\n\x04Poll\"\xa4\x01\n\x11SubscribeResponse\x12$\n\x06update\x18\x01 \x01(\x0b\x32\x12.gnmi.NotificationH\x00\x12\x17\n\rsync_response\x18\x03 \x01(\x08H\x00\x12 \n\x05\x65rror\x18\x04 \x01(\x0b\x32\x0b.gnmi.ErrorB\x02\x18\x01H\x00\x12\"\n\textension\x18\x05 \x03(\x0b\x32\x0f.gnmi.ExtensionB\n\n\x08response\"\xd5\x02\n\x10SubscriptionList\x12\x1a\n\x06prefix\x18\x01 \x01(\x0b\x32\n.gnmi.Path\x12(\n\x0csubscription\x18\x02 \x03(\x0b\x32\x12.gnmi.Subscription\x12\x1d\n\x03qos\x18\x04 \x01(\x0b\x32\x10.gnmi.QOSMarking\x12)\n\x04mode\x18\x05 \x01(\x0e\x32\x1b.gnmi.SubscriptionList.Mode\x12\x19\n\x11\x61llow_aggregation\x18\x06 \x01(\x08\x12#\n\nuse_models\x18\x07 \x03(\x0b\x32\x0f.gnmi.ModelData\x12 \n\x08\x65ncoding\x18\x08 \x01(\x0e\x32\x0e.gnmi.Encoding\x12\x14\n\x0cupdates_only\x18\t \x01(\x08\"&\n\x04Mode\x12\n\n\x06STREAM\x10\x00\x12\x08\n\x04ONCE\x10\x01\x12\x08\n\x04POLL\x10\x02J\x04\x08\x03\x10\x04R\x0buse_aliases\"\x9f\x01\n\x0cSubscription\x12\x18\n\x04path\x18\x01 \x01(\x0b\x32\n.gnmi.Path\x12$\n\x04mode\x18\x02 \x01(\x0e\x32\x16.gnmi.SubscriptionMode\x12\x17\n\x0fsample_interval\x18\x03 \x01(\x04\x12\x1a\n\x12suppress_redundant\x18\x04 \x01(\x08\x12\x1a\n\x12heartbeat_interval\x18\x05 \x01(\x04\"\x1d\n\nQOSMarking\x12\x0f\n\x07marking\x18\x01 \x01(\r\"\xa5\x01\n\nSetRequest\x12\x1a\n\x06prefix\x18\x01 \x01(\x0b\x32\n.gnmi.Path\x12\x1a\n\x06\x64\x65lete\x18\x02 \x03(\x0b\x32\n.gnmi.Path\x12\x1d\n\x07replace\x18\x03 \x03(\x0b\x32\x0c.gnmi.Update\x12\x1c\n\x06update\x18\x04 \x03(\x0b\x32\x0c.gnmi.Update\x12\"\n\textension\x18\x05 \x03(\x0b\x32\x0f.gnmi.Extension\"\xa8\x01\n\x0bSetResponse\x12\x1a\n\x06prefix\x18\x01 \x01(\x0b\x32\n.gnmi.Path\x12$\n\x08response\x18\x02 \x03(\x0b\x32\x12.gnmi.UpdateResult\x12 \n\x07message\x18\x03 \x01(\x0b\x32\x0b.gnmi.ErrorB\x02\x18\x01\x12\x11\n\ttimestamp\x18\x04 \x01(\x03\x12\"\n\textension\x18\x05 \x03(\x0b\x32\x0f.gnmi.Extension\"\xca\x01\n\x0cUpdateResult\x12\x15\n\ttimestamp\x18\x01 \x01(\x03\x42\x02\x18\x01\x12\x18\n\x04path\x18\x02 \x01(\x0b\x32\n.gnmi.Path\x12 \n\x07message\x18\x03 \x01(\x0b\x32\x0b.gnmi.ErrorB\x02\x18\x01\x12(\n\x02op\x18\x04 \x01(\x0e\x32\x1c.gnmi.UpdateResult.Operation\"=\n\tOperation\x12\x0b\n\x07INVALID\x10\x00\x12\n\n\x06\x44\x45LETE\x10\x01\x12\x0b\n\x07REPLACE\x10\x02\x12\n\n\x06UPDATE\x10\x03\"\x93\x02\n\nGetRequest\x12\x1a\n\x06prefix\x18\x01 \x01(\x0b\x32\n.gnmi.Path\x12\x18\n\x04path\x18\x02 \x03(\x0b\x32\n.gnmi.Path\x12\'\n\x04type\x18\x03 \x01(\x0e\x32\x19.gnmi.GetRequest.DataType\x12 \n\x08\x65ncoding\x18\x05 \x01(\x0e\x32\x0e.gnmi.Encoding\x12#\n\nuse_models\x18\x06 \x03(\x0b\x32\x0f.gnmi.ModelData\x12\"\n\textension\x18\x07 \x03(\x0b\x32\x0f.gnmi.Extension\";\n\x08\x44\x61taType\x12\x07\n\x03\x41LL\x10\x00\x12\n\n\x06\x43ONFIG\x10\x01\x12\t\n\x05STATE\x10\x02\x12\x0f\n\x0bOPERATIONAL\x10\x03\"{\n\x0bGetResponse\x12(\n\x0cnotification\x18\x01 \x03(\x0b\x32\x12.gnmi.Notification\x12\x1e\n\x05\x65rror\x18\x02 \x01(\x0b\x32\x0b.gnmi.ErrorB\x02\x18\x01\x12\"\n\textension\x18\x03 \x03(\x0b\x32\x0f.gnmi.Extension\"7\n\x11\x43\x61pabilityRequest\x12\"\n\textension\x18\x01 \x03(\x0b\x32\x0f.gnmi.Extension\"\xa6\x01\n\x12\x43\x61pabilityResponse\x12)\n\x10supported_models\x18\x01 \x03(\x0b\x32\x0f.gnmi.ModelData\x12+\n\x13supported_encodings\x18\x02 \x03(\x0e\x32\x0e.gnmi.Encoding\x12\x14\n\x0cgNMI_version\x18\x03 \x01(\t\x12\"\n\textension\x18\x04 \x03(\x0b\x32\x0f.gnmi.Extension\"@\n\tModelData\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x14\n\x0corganization\x18\x02 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\t*3\n\x0b\x45xtensionID\x12\r\n\tEID_UNSET\x10\x00\x12\x15\n\x10\x45ID_EXPERIMENTAL\x10\xe7\x07*D\n\x08\x45ncoding\x12\x08\n\x04JSON\x10\x00\x12\t\n\x05\x42YTES\x10\x01\x12\t\n\x05PROTO\x10\x02\x12\t\n\x05\x41SCII\x10\x03\x12\r\n\tJSON_IETF\x10\x04*A\n\x10SubscriptionMode\x12\x12\n\x0eTARGET_DEFINED\x10\x00\x12\r\n\tON_CHANGE\x10\x01\x12\n\n\x06SAMPLE\x10\x02\x32\xe3\x01\n\x04gNMI\x12\x41\n\x0c\x43\x61pabilities\x12\x17.gnmi.CapabilityRequest\x1a\x18.gnmi.CapabilityResponse\x12*\n\x03Get\x12\x10.gnmi.GetRequest\x1a\x11.gnmi.GetResponse\x12*\n\x03Set\x12\x10.gnmi.SetRequest\x1a\x11.gnmi.SetResponse\x12@\n\tSubscribe\x12\x16.gnmi.SubscribeRequest\x1a\x17.gnmi.SubscribeResponse(\x01\x30\x01:3\n\x0cgnmi_service\x12\x1c.google.protobuf.FileOptions\x18\xe9\x07 \x01(\tBS\n\x15\x63om.github.gnmi.protoB\tGnmiProtoP\x01Z%github.com/openconfig/gnmi/proto/gnmi\xca>\x05\x30.8.0b\x06proto3') + +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals()) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'gnmi_pb2', globals()) +if _descriptor._USE_C_DESCRIPTORS == False: + google_dot_protobuf_dot_descriptor__pb2.FileOptions.RegisterExtension(gnmi_service) + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\025com.github.gnmi.protoB\tGnmiProtoP\001Z%github.com/openconfig/gnmi/proto/gnmi\312>\0050.8.0' + _UPDATE.fields_by_name['value']._options = None + _UPDATE.fields_by_name['value']._serialized_options = b'\030\001' + _TYPEDVALUE.fields_by_name['float_val']._options = None + _TYPEDVALUE.fields_by_name['float_val']._serialized_options = b'\030\001' + _TYPEDVALUE.fields_by_name['decimal_val']._options = None + _TYPEDVALUE.fields_by_name['decimal_val']._serialized_options = b'\030\001' + _PATH.fields_by_name['element']._options = None + _PATH.fields_by_name['element']._serialized_options = b'\030\001' + _PATHELEM_KEYENTRY._options = None + _PATHELEM_KEYENTRY._serialized_options = b'8\001' + _VALUE._options = None + _VALUE._serialized_options = b'\030\001' + _ERROR._options = None + _ERROR._serialized_options = b'\030\001' + _DECIMAL64._options = None + _DECIMAL64._serialized_options = b'\030\001' + _SUBSCRIBERESPONSE.fields_by_name['error']._options = None + _SUBSCRIBERESPONSE.fields_by_name['error']._serialized_options = b'\030\001' + _SETRESPONSE.fields_by_name['message']._options = None + _SETRESPONSE.fields_by_name['message']._serialized_options = b'\030\001' + _UPDATERESULT.fields_by_name['timestamp']._options = None + _UPDATERESULT.fields_by_name['timestamp']._serialized_options = b'\030\001' + _UPDATERESULT.fields_by_name['message']._options = None + _UPDATERESULT.fields_by_name['message']._serialized_options = b'\030\001' + _GETRESPONSE.fields_by_name['error']._options = None + _GETRESPONSE.fields_by_name['error']._serialized_options = b'\030\001' + _EXTENSIONID._serialized_start=3780 + _EXTENSIONID._serialized_end=3831 + _ENCODING._serialized_start=3833 + _ENCODING._serialized_end=3901 + _SUBSCRIPTIONMODE._serialized_start=3903 + _SUBSCRIPTIONMODE._serialized_end=3968 + _EXTENSION._serialized_start=82 + _EXTENSION._serialized_end=242 + _REGISTEREDEXTENSION._serialized_start=244 + _REGISTEREDEXTENSION._serialized_end=309 + _MASTERARBITRATION._serialized_start=311 + _MASTERARBITRATION._serialized_end=392 + _UINT128._serialized_start=394 + _UINT128._serialized_end=430 + _ROLE._serialized_start=432 + _ROLE._serialized_end=450 + _HISTORY._serialized_start=452 + _HISTORY._serialized_end=531 + _TIMERANGE._serialized_start=533 + _TIMERANGE._serialized_end=572 + _NOTIFICATION._serialized_start=575 + _NOTIFICATION._serialized_end=723 + _UPDATE._serialized_start=725 + _UPDATE._serialized_end=842 + _TYPEDVALUE._serialized_start=845 + _TYPEDVALUE._serialized_end=1232 + _PATH._serialized_start=1234 + _PATH._serialized_end=1323 + _PATHELEM._serialized_start=1325 + _PATHELEM._serialized_end=1431 + _PATHELEM_KEYENTRY._serialized_start=1389 + _PATHELEM_KEYENTRY._serialized_end=1431 + _VALUE._serialized_start=1433 + _VALUE._serialized_end=1489 + _ERROR._serialized_start=1491 + _ERROR._serialized_end=1569 + _DECIMAL64._serialized_start=1571 + _DECIMAL64._serialized_end=1621 + _SCALARARRAY._serialized_start=1623 + _SCALARARRAY._serialized_end=1671 + _SUBSCRIBEREQUEST._serialized_start=1674 + _SUBSCRIBEREQUEST._serialized_end=1827 + _POLL._serialized_start=1829 + _POLL._serialized_end=1835 + _SUBSCRIBERESPONSE._serialized_start=1838 + _SUBSCRIBERESPONSE._serialized_end=2002 + _SUBSCRIPTIONLIST._serialized_start=2005 + _SUBSCRIPTIONLIST._serialized_end=2346 + _SUBSCRIPTIONLIST_MODE._serialized_start=2289 + _SUBSCRIPTIONLIST_MODE._serialized_end=2327 + _SUBSCRIPTION._serialized_start=2349 + _SUBSCRIPTION._serialized_end=2508 + _QOSMARKING._serialized_start=2510 + _QOSMARKING._serialized_end=2539 + _SETREQUEST._serialized_start=2542 + _SETREQUEST._serialized_end=2707 + _SETRESPONSE._serialized_start=2710 + _SETRESPONSE._serialized_end=2878 + _UPDATERESULT._serialized_start=2881 + _UPDATERESULT._serialized_end=3083 + _UPDATERESULT_OPERATION._serialized_start=3022 + _UPDATERESULT_OPERATION._serialized_end=3083 + _GETREQUEST._serialized_start=3086 + _GETREQUEST._serialized_end=3361 + _GETREQUEST_DATATYPE._serialized_start=3302 + _GETREQUEST_DATATYPE._serialized_end=3361 + _GETRESPONSE._serialized_start=3363 + _GETRESPONSE._serialized_end=3486 + _CAPABILITYREQUEST._serialized_start=3488 + _CAPABILITYREQUEST._serialized_end=3543 + _CAPABILITYRESPONSE._serialized_start=3546 + _CAPABILITYRESPONSE._serialized_end=3712 + _MODELDATA._serialized_start=3714 + _MODELDATA._serialized_end=3778 + _GNMI._serialized_start=3971 + _GNMI._serialized_end=4198 +# @@protoc_insertion_point(module_scope) diff --git a/src/device/service/drivers/gnmi_openconfig/gnmi/gnmi_pb2.py.old b/src/device/service/drivers/gnmi_openconfig/gnmi/gnmi_pb2.py.old new file mode 100644 index 0000000000000000000000000000000000000000..313674f8ce5be1586c63df02226570f5082544ba --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/gnmi/gnmi_pb2.py.old @@ -0,0 +1,2037 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: proto/gnmi/gnmi.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +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 +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import any_pb2 as google_dot_protobuf_dot_any__pb2 +from google.protobuf import descriptor_pb2 as google_dot_protobuf_dot_descriptor__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='proto/gnmi/gnmi.proto', + package='gnmi', + syntax='proto3', + serialized_pb=_b('\n\x15proto/gnmi/gnmi.proto\x12\x04gnmi\x1a\x19google/protobuf/any.proto\x1a google/protobuf/descriptor.proto\"\x86\x01\n\x0cNotification\x12\x11\n\ttimestamp\x18\x01 \x01(\x03\x12\x1a\n\x06prefix\x18\x02 \x01(\x0b\x32\n.gnmi.Path\x12\r\n\x05\x61lias\x18\x03 \x01(\t\x12\x1c\n\x06update\x18\x04 \x03(\x0b\x32\x0c.gnmi.Update\x12\x1a\n\x06\x64\x65lete\x18\x05 \x03(\x0b\x32\n.gnmi.Path\"u\n\x06Update\x12\x18\n\x04path\x18\x01 \x01(\x0b\x32\n.gnmi.Path\x12\x1e\n\x05value\x18\x02 \x01(\x0b\x32\x0b.gnmi.ValueB\x02\x18\x01\x12\x1d\n\x03val\x18\x03 \x01(\x0b\x32\x10.gnmi.TypedValue\x12\x12\n\nduplicates\x18\x04 \x01(\r\"\xce\x02\n\nTypedValue\x12\x14\n\nstring_val\x18\x01 \x01(\tH\x00\x12\x11\n\x07int_val\x18\x02 \x01(\x03H\x00\x12\x12\n\x08uint_val\x18\x03 \x01(\x04H\x00\x12\x12\n\x08\x62ool_val\x18\x04 \x01(\x08H\x00\x12\x13\n\tbytes_val\x18\x05 \x01(\x0cH\x00\x12\x13\n\tfloat_val\x18\x06 \x01(\x02H\x00\x12&\n\x0b\x64\x65\x63imal_val\x18\x07 \x01(\x0b\x32\x0f.gnmi.Decimal64H\x00\x12)\n\x0cleaflist_val\x18\x08 \x01(\x0b\x32\x11.gnmi.ScalarArrayH\x00\x12\'\n\x07\x61ny_val\x18\t \x01(\x0b\x32\x14.google.protobuf.AnyH\x00\x12\x12\n\x08json_val\x18\n \x01(\x0cH\x00\x12\x17\n\rjson_ietf_val\x18\x0b \x01(\x0cH\x00\x12\x13\n\tascii_val\x18\x0c \x01(\tH\x00\x42\x07\n\x05value\"Y\n\x04Path\x12\x13\n\x07\x65lement\x18\x01 \x03(\tB\x02\x18\x01\x12\x0e\n\x06origin\x18\x02 \x01(\t\x12\x1c\n\x04\x65lem\x18\x03 \x03(\x0b\x32\x0e.gnmi.PathElem\x12\x0e\n\x06target\x18\x04 \x01(\t\"j\n\x08PathElem\x12\x0c\n\x04name\x18\x01 \x01(\t\x12$\n\x03key\x18\x02 \x03(\x0b\x32\x17.gnmi.PathElem.KeyEntry\x1a*\n\x08KeyEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"8\n\x05Value\x12\r\n\x05value\x18\x01 \x01(\x0c\x12\x1c\n\x04type\x18\x02 \x01(\x0e\x32\x0e.gnmi.Encoding:\x02\x18\x01\"N\n\x05\x45rror\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\"\n\x04\x64\x61ta\x18\x03 \x01(\x0b\x32\x14.google.protobuf.Any:\x02\x18\x01\".\n\tDecimal64\x12\x0e\n\x06\x64igits\x18\x01 \x01(\x04\x12\x11\n\tprecision\x18\x02 \x01(\r\"0\n\x0bScalarArray\x12!\n\x07\x65lement\x18\x01 \x03(\x0b\x32\x10.gnmi.TypedValue\"\x8a\x01\n\x10SubscribeRequest\x12+\n\tsubscribe\x18\x01 \x01(\x0b\x32\x16.gnmi.SubscriptionListH\x00\x12\x1a\n\x04poll\x18\x03 \x01(\x0b\x32\n.gnmi.PollH\x00\x12\"\n\x07\x61liases\x18\x04 \x01(\x0b\x32\x0f.gnmi.AliasListH\x00\x42\t\n\x07request\"\x06\n\x04Poll\"\x80\x01\n\x11SubscribeResponse\x12$\n\x06update\x18\x01 \x01(\x0b\x32\x12.gnmi.NotificationH\x00\x12\x17\n\rsync_response\x18\x03 \x01(\x08H\x00\x12 \n\x05\x65rror\x18\x04 \x01(\x0b\x32\x0b.gnmi.ErrorB\x02\x18\x01H\x00\x42\n\n\x08response\"\xd7\x02\n\x10SubscriptionList\x12\x1a\n\x06prefix\x18\x01 \x01(\x0b\x32\n.gnmi.Path\x12(\n\x0csubscription\x18\x02 \x03(\x0b\x32\x12.gnmi.Subscription\x12\x13\n\x0buse_aliases\x18\x03 \x01(\x08\x12\x1d\n\x03qos\x18\x04 \x01(\x0b\x32\x10.gnmi.QOSMarking\x12)\n\x04mode\x18\x05 \x01(\x0e\x32\x1b.gnmi.SubscriptionList.Mode\x12\x19\n\x11\x61llow_aggregation\x18\x06 \x01(\x08\x12#\n\nuse_models\x18\x07 \x03(\x0b\x32\x0f.gnmi.ModelData\x12 \n\x08\x65ncoding\x18\x08 \x01(\x0e\x32\x0e.gnmi.Encoding\x12\x14\n\x0cupdates_only\x18\t \x01(\x08\"&\n\x04Mode\x12\n\n\x06STREAM\x10\x00\x12\x08\n\x04ONCE\x10\x01\x12\x08\n\x04POLL\x10\x02\"\x9f\x01\n\x0cSubscription\x12\x18\n\x04path\x18\x01 \x01(\x0b\x32\n.gnmi.Path\x12$\n\x04mode\x18\x02 \x01(\x0e\x32\x16.gnmi.SubscriptionMode\x12\x17\n\x0fsample_interval\x18\x03 \x01(\x04\x12\x1a\n\x12suppress_redundant\x18\x04 \x01(\x08\x12\x1a\n\x12heartbeat_interval\x18\x05 \x01(\x04\"\x1d\n\nQOSMarking\x12\x0f\n\x07marking\x18\x01 \x01(\r\"0\n\x05\x41lias\x12\x18\n\x04path\x18\x01 \x01(\x0b\x32\n.gnmi.Path\x12\r\n\x05\x61lias\x18\x02 \x01(\t\"\'\n\tAliasList\x12\x1a\n\x05\x61lias\x18\x01 \x03(\x0b\x32\x0b.gnmi.Alias\"\x81\x01\n\nSetRequest\x12\x1a\n\x06prefix\x18\x01 \x01(\x0b\x32\n.gnmi.Path\x12\x1a\n\x06\x64\x65lete\x18\x02 \x03(\x0b\x32\n.gnmi.Path\x12\x1d\n\x07replace\x18\x03 \x03(\x0b\x32\x0c.gnmi.Update\x12\x1c\n\x06update\x18\x04 \x03(\x0b\x32\x0c.gnmi.Update\"\x84\x01\n\x0bSetResponse\x12\x1a\n\x06prefix\x18\x01 \x01(\x0b\x32\n.gnmi.Path\x12$\n\x08response\x18\x02 \x03(\x0b\x32\x12.gnmi.UpdateResult\x12 \n\x07message\x18\x03 \x01(\x0b\x32\x0b.gnmi.ErrorB\x02\x18\x01\x12\x11\n\ttimestamp\x18\x04 \x01(\x03\"\xca\x01\n\x0cUpdateResult\x12\x15\n\ttimestamp\x18\x01 \x01(\x03\x42\x02\x18\x01\x12\x18\n\x04path\x18\x02 \x01(\x0b\x32\n.gnmi.Path\x12 \n\x07message\x18\x03 \x01(\x0b\x32\x0b.gnmi.ErrorB\x02\x18\x01\x12(\n\x02op\x18\x04 \x01(\x0e\x32\x1c.gnmi.UpdateResult.Operation\"=\n\tOperation\x12\x0b\n\x07INVALID\x10\x00\x12\n\n\x06\x44\x45LETE\x10\x01\x12\x0b\n\x07REPLACE\x10\x02\x12\n\n\x06UPDATE\x10\x03\"\xef\x01\n\nGetRequest\x12\x1a\n\x06prefix\x18\x01 \x01(\x0b\x32\n.gnmi.Path\x12\x18\n\x04path\x18\x02 \x03(\x0b\x32\n.gnmi.Path\x12\'\n\x04type\x18\x03 \x01(\x0e\x32\x19.gnmi.GetRequest.DataType\x12 \n\x08\x65ncoding\x18\x05 \x01(\x0e\x32\x0e.gnmi.Encoding\x12#\n\nuse_models\x18\x06 \x03(\x0b\x32\x0f.gnmi.ModelData\";\n\x08\x44\x61taType\x12\x07\n\x03\x41LL\x10\x00\x12\n\n\x06\x43ONFIG\x10\x01\x12\t\n\x05STATE\x10\x02\x12\x0f\n\x0bOPERATIONAL\x10\x03\"W\n\x0bGetResponse\x12(\n\x0cnotification\x18\x01 \x03(\x0b\x32\x12.gnmi.Notification\x12\x1e\n\x05\x65rror\x18\x02 \x01(\x0b\x32\x0b.gnmi.ErrorB\x02\x18\x01\"\x13\n\x11\x43\x61pabilityRequest\"\x82\x01\n\x12\x43\x61pabilityResponse\x12)\n\x10supported_models\x18\x01 \x03(\x0b\x32\x0f.gnmi.ModelData\x12+\n\x13supported_encodings\x18\x02 \x03(\x0e\x32\x0e.gnmi.Encoding\x12\x14\n\x0cgNMI_version\x18\x03 \x01(\t\"@\n\tModelData\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x14\n\x0corganization\x18\x02 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\t*D\n\x08\x45ncoding\x12\x08\n\x04JSON\x10\x00\x12\t\n\x05\x42YTES\x10\x01\x12\t\n\x05PROTO\x10\x02\x12\t\n\x05\x41SCII\x10\x03\x12\r\n\tJSON_IETF\x10\x04*A\n\x10SubscriptionMode\x12\x12\n\x0eTARGET_DEFINED\x10\x00\x12\r\n\tON_CHANGE\x10\x01\x12\n\n\x06SAMPLE\x10\x02\x32\xe3\x01\n\x04gNMI\x12\x41\n\x0c\x43\x61pabilities\x12\x17.gnmi.CapabilityRequest\x1a\x18.gnmi.CapabilityResponse\x12*\n\x03Get\x12\x10.gnmi.GetRequest\x1a\x11.gnmi.GetResponse\x12*\n\x03Set\x12\x10.gnmi.SetRequest\x1a\x11.gnmi.SetResponse\x12@\n\tSubscribe\x12\x16.gnmi.SubscribeRequest\x1a\x17.gnmi.SubscribeResponse(\x01\x30\x01:3\n\x0cgnmi_service\x12\x1c.google.protobuf.FileOptions\x18\xe9\x07 \x01(\tB\x08\xca>\x05\x30.5.0b\x06proto3') + , + dependencies=[google_dot_protobuf_dot_any__pb2.DESCRIPTOR,google_dot_protobuf_dot_descriptor__pb2.DESCRIPTOR,]) + +_ENCODING = _descriptor.EnumDescriptor( + name='Encoding', + full_name='gnmi.Encoding', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='JSON', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='BYTES', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='PROTO', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ASCII', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='JSON_IETF', index=4, number=4, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=3053, + serialized_end=3121, +) +_sym_db.RegisterEnumDescriptor(_ENCODING) + +Encoding = enum_type_wrapper.EnumTypeWrapper(_ENCODING) +_SUBSCRIPTIONMODE = _descriptor.EnumDescriptor( + name='SubscriptionMode', + full_name='gnmi.SubscriptionMode', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='TARGET_DEFINED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ON_CHANGE', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='SAMPLE', index=2, number=2, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=3123, + serialized_end=3188, +) +_sym_db.RegisterEnumDescriptor(_SUBSCRIPTIONMODE) + +SubscriptionMode = enum_type_wrapper.EnumTypeWrapper(_SUBSCRIPTIONMODE) +JSON = 0 +BYTES = 1 +PROTO = 2 +ASCII = 3 +JSON_IETF = 4 +TARGET_DEFINED = 0 +ON_CHANGE = 1 +SAMPLE = 2 + +GNMI_SERVICE_FIELD_NUMBER = 1001 +gnmi_service = _descriptor.FieldDescriptor( + name='gnmi_service', full_name='gnmi.gnmi_service', index=0, + number=1001, 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=True, extension_scope=None, + options=None) + +_SUBSCRIPTIONLIST_MODE = _descriptor.EnumDescriptor( + name='Mode', + full_name='gnmi.SubscriptionList.Mode', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='STREAM', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ONCE', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='POLL', index=2, number=2, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=1706, + serialized_end=1744, +) +_sym_db.RegisterEnumDescriptor(_SUBSCRIPTIONLIST_MODE) + +_UPDATERESULT_OPERATION = _descriptor.EnumDescriptor( + name='Operation', + full_name='gnmi.UpdateResult.Operation', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='INVALID', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DELETE', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='REPLACE', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UPDATE', index=3, number=3, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=2439, + serialized_end=2500, +) +_sym_db.RegisterEnumDescriptor(_UPDATERESULT_OPERATION) + +_GETREQUEST_DATATYPE = _descriptor.EnumDescriptor( + name='DataType', + full_name='gnmi.GetRequest.DataType', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='ALL', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CONFIG', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='STATE', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='OPERATIONAL', index=3, number=3, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=2683, + serialized_end=2742, +) +_sym_db.RegisterEnumDescriptor(_GETREQUEST_DATATYPE) + + +_NOTIFICATION = _descriptor.Descriptor( + name='Notification', + full_name='gnmi.Notification', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='timestamp', full_name='gnmi.Notification.timestamp', index=0, + number=1, type=3, cpp_type=2, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='prefix', full_name='gnmi.Notification.prefix', 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, + options=None), + _descriptor.FieldDescriptor( + name='alias', full_name='gnmi.Notification.alias', 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, + options=None), + _descriptor.FieldDescriptor( + name='update', full_name='gnmi.Notification.update', 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, + options=None), + _descriptor.FieldDescriptor( + name='delete', full_name='gnmi.Notification.delete', 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, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=93, + serialized_end=227, +) + + +_UPDATE = _descriptor.Descriptor( + name='Update', + full_name='gnmi.Update', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='path', full_name='gnmi.Update.path', 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, + options=None), + _descriptor.FieldDescriptor( + name='value', full_name='gnmi.Update.value', 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, + options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))), + _descriptor.FieldDescriptor( + name='val', full_name='gnmi.Update.val', 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, + options=None), + _descriptor.FieldDescriptor( + name='duplicates', full_name='gnmi.Update.duplicates', 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, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=229, + serialized_end=346, +) + + +_TYPEDVALUE = _descriptor.Descriptor( + name='TypedValue', + full_name='gnmi.TypedValue', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='string_val', full_name='gnmi.TypedValue.string_val', 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, + options=None), + _descriptor.FieldDescriptor( + name='int_val', full_name='gnmi.TypedValue.int_val', index=1, + number=2, type=3, cpp_type=2, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='uint_val', full_name='gnmi.TypedValue.uint_val', index=2, + number=3, type=4, cpp_type=4, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='bool_val', full_name='gnmi.TypedValue.bool_val', index=3, + number=4, 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, + options=None), + _descriptor.FieldDescriptor( + name='bytes_val', full_name='gnmi.TypedValue.bytes_val', index=4, + number=5, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=_b(""), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='float_val', full_name='gnmi.TypedValue.float_val', index=5, + number=6, 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, + options=None), + _descriptor.FieldDescriptor( + name='decimal_val', full_name='gnmi.TypedValue.decimal_val', index=6, + number=7, 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, + options=None), + _descriptor.FieldDescriptor( + name='leaflist_val', full_name='gnmi.TypedValue.leaflist_val', 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, + options=None), + _descriptor.FieldDescriptor( + name='any_val', full_name='gnmi.TypedValue.any_val', index=8, + number=9, 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, + options=None), + _descriptor.FieldDescriptor( + name='json_val', full_name='gnmi.TypedValue.json_val', index=9, + number=10, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=_b(""), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='json_ietf_val', full_name='gnmi.TypedValue.json_ietf_val', index=10, + number=11, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=_b(""), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='ascii_val', full_name='gnmi.TypedValue.ascii_val', index=11, + number=12, 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, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + _descriptor.OneofDescriptor( + name='value', full_name='gnmi.TypedValue.value', + index=0, containing_type=None, fields=[]), + ], + serialized_start=349, + serialized_end=683, +) + + +_PATH = _descriptor.Descriptor( + name='Path', + full_name='gnmi.Path', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='element', full_name='gnmi.Path.element', index=0, + number=1, type=9, cpp_type=9, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))), + _descriptor.FieldDescriptor( + name='origin', full_name='gnmi.Path.origin', 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, + options=None), + _descriptor.FieldDescriptor( + name='elem', full_name='gnmi.Path.elem', 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, + options=None), + _descriptor.FieldDescriptor( + name='target', full_name='gnmi.Path.target', 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, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=685, + serialized_end=774, +) + + +_PATHELEM_KEYENTRY = _descriptor.Descriptor( + name='KeyEntry', + full_name='gnmi.PathElem.KeyEntry', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='key', full_name='gnmi.PathElem.KeyEntry.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, + options=None), + _descriptor.FieldDescriptor( + name='value', full_name='gnmi.PathElem.KeyEntry.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, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=_descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001')), + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=840, + serialized_end=882, +) + +_PATHELEM = _descriptor.Descriptor( + name='PathElem', + full_name='gnmi.PathElem', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='name', full_name='gnmi.PathElem.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, + options=None), + _descriptor.FieldDescriptor( + name='key', full_name='gnmi.PathElem.key', 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, + options=None), + ], + extensions=[ + ], + nested_types=[_PATHELEM_KEYENTRY, ], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=776, + serialized_end=882, +) + + +_VALUE = _descriptor.Descriptor( + name='Value', + full_name='gnmi.Value', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='value', full_name='gnmi.Value.value', index=0, + number=1, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=_b(""), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='type', full_name='gnmi.Value.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, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=_descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('\030\001')), + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=884, + serialized_end=940, +) + + +_ERROR = _descriptor.Descriptor( + name='Error', + full_name='gnmi.Error', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='code', full_name='gnmi.Error.code', 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, + options=None), + _descriptor.FieldDescriptor( + name='message', full_name='gnmi.Error.message', 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, + options=None), + _descriptor.FieldDescriptor( + name='data', full_name='gnmi.Error.data', 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, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=_descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('\030\001')), + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=942, + serialized_end=1020, +) + + +_DECIMAL64 = _descriptor.Descriptor( + name='Decimal64', + full_name='gnmi.Decimal64', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='digits', full_name='gnmi.Decimal64.digits', index=0, + number=1, type=4, cpp_type=4, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='precision', full_name='gnmi.Decimal64.precision', 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, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1022, + serialized_end=1068, +) + + +_SCALARARRAY = _descriptor.Descriptor( + name='ScalarArray', + full_name='gnmi.ScalarArray', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='element', full_name='gnmi.ScalarArray.element', 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, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1070, + serialized_end=1118, +) + + +_SUBSCRIBEREQUEST = _descriptor.Descriptor( + name='SubscribeRequest', + full_name='gnmi.SubscribeRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='subscribe', full_name='gnmi.SubscribeRequest.subscribe', 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, + options=None), + _descriptor.FieldDescriptor( + name='poll', full_name='gnmi.SubscribeRequest.poll', index=1, + 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, + options=None), + _descriptor.FieldDescriptor( + name='aliases', full_name='gnmi.SubscribeRequest.aliases', index=2, + 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, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + _descriptor.OneofDescriptor( + name='request', full_name='gnmi.SubscribeRequest.request', + index=0, containing_type=None, fields=[]), + ], + serialized_start=1121, + serialized_end=1259, +) + + +_POLL = _descriptor.Descriptor( + name='Poll', + full_name='gnmi.Poll', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1261, + serialized_end=1267, +) + + +_SUBSCRIBERESPONSE = _descriptor.Descriptor( + name='SubscribeResponse', + full_name='gnmi.SubscribeResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='update', full_name='gnmi.SubscribeResponse.update', 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, + options=None), + _descriptor.FieldDescriptor( + name='sync_response', full_name='gnmi.SubscribeResponse.sync_response', index=1, + number=3, 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, + options=None), + _descriptor.FieldDescriptor( + name='error', full_name='gnmi.SubscribeResponse.error', index=2, + 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, + options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + _descriptor.OneofDescriptor( + name='response', full_name='gnmi.SubscribeResponse.response', + index=0, containing_type=None, fields=[]), + ], + serialized_start=1270, + serialized_end=1398, +) + + +_SUBSCRIPTIONLIST = _descriptor.Descriptor( + name='SubscriptionList', + full_name='gnmi.SubscriptionList', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='prefix', full_name='gnmi.SubscriptionList.prefix', 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, + options=None), + _descriptor.FieldDescriptor( + name='subscription', full_name='gnmi.SubscriptionList.subscription', 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, + options=None), + _descriptor.FieldDescriptor( + name='use_aliases', full_name='gnmi.SubscriptionList.use_aliases', index=2, + number=3, 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, + options=None), + _descriptor.FieldDescriptor( + name='qos', full_name='gnmi.SubscriptionList.qos', 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, + options=None), + _descriptor.FieldDescriptor( + name='mode', full_name='gnmi.SubscriptionList.mode', index=4, + number=5, 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, + options=None), + _descriptor.FieldDescriptor( + name='allow_aggregation', full_name='gnmi.SubscriptionList.allow_aggregation', index=5, + number=6, 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, + options=None), + _descriptor.FieldDescriptor( + name='use_models', full_name='gnmi.SubscriptionList.use_models', 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, + options=None), + _descriptor.FieldDescriptor( + name='encoding', full_name='gnmi.SubscriptionList.encoding', index=7, + number=8, 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, + options=None), + _descriptor.FieldDescriptor( + name='updates_only', full_name='gnmi.SubscriptionList.updates_only', index=8, + number=9, 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, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _SUBSCRIPTIONLIST_MODE, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1401, + serialized_end=1744, +) + + +_SUBSCRIPTION = _descriptor.Descriptor( + name='Subscription', + full_name='gnmi.Subscription', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='path', full_name='gnmi.Subscription.path', 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, + options=None), + _descriptor.FieldDescriptor( + name='mode', full_name='gnmi.Subscription.mode', 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, + options=None), + _descriptor.FieldDescriptor( + name='sample_interval', full_name='gnmi.Subscription.sample_interval', index=2, + number=3, type=4, cpp_type=4, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='suppress_redundant', full_name='gnmi.Subscription.suppress_redundant', index=3, + number=4, 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, + options=None), + _descriptor.FieldDescriptor( + name='heartbeat_interval', full_name='gnmi.Subscription.heartbeat_interval', index=4, + number=5, type=4, cpp_type=4, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1747, + serialized_end=1906, +) + + +_QOSMARKING = _descriptor.Descriptor( + name='QOSMarking', + full_name='gnmi.QOSMarking', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='marking', full_name='gnmi.QOSMarking.marking', 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, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1908, + serialized_end=1937, +) + + +_ALIAS = _descriptor.Descriptor( + name='Alias', + full_name='gnmi.Alias', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='path', full_name='gnmi.Alias.path', 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, + options=None), + _descriptor.FieldDescriptor( + name='alias', full_name='gnmi.Alias.alias', 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, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1939, + serialized_end=1987, +) + + +_ALIASLIST = _descriptor.Descriptor( + name='AliasList', + full_name='gnmi.AliasList', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='alias', full_name='gnmi.AliasList.alias', 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, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1989, + serialized_end=2028, +) + + +_SETREQUEST = _descriptor.Descriptor( + name='SetRequest', + full_name='gnmi.SetRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='prefix', full_name='gnmi.SetRequest.prefix', 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, + options=None), + _descriptor.FieldDescriptor( + name='delete', full_name='gnmi.SetRequest.delete', 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, + options=None), + _descriptor.FieldDescriptor( + name='replace', full_name='gnmi.SetRequest.replace', 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, + options=None), + _descriptor.FieldDescriptor( + name='update', full_name='gnmi.SetRequest.update', 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, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2031, + serialized_end=2160, +) + + +_SETRESPONSE = _descriptor.Descriptor( + name='SetResponse', + full_name='gnmi.SetResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='prefix', full_name='gnmi.SetResponse.prefix', 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, + options=None), + _descriptor.FieldDescriptor( + name='response', full_name='gnmi.SetResponse.response', 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, + options=None), + _descriptor.FieldDescriptor( + name='message', full_name='gnmi.SetResponse.message', 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, + options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))), + _descriptor.FieldDescriptor( + name='timestamp', full_name='gnmi.SetResponse.timestamp', index=3, + number=4, type=3, cpp_type=2, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2163, + serialized_end=2295, +) + + +_UPDATERESULT = _descriptor.Descriptor( + name='UpdateResult', + full_name='gnmi.UpdateResult', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='timestamp', full_name='gnmi.UpdateResult.timestamp', index=0, + number=1, type=3, cpp_type=2, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))), + _descriptor.FieldDescriptor( + name='path', full_name='gnmi.UpdateResult.path', 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, + options=None), + _descriptor.FieldDescriptor( + name='message', full_name='gnmi.UpdateResult.message', 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, + options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))), + _descriptor.FieldDescriptor( + name='op', full_name='gnmi.UpdateResult.op', 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, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _UPDATERESULT_OPERATION, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2298, + serialized_end=2500, +) + + +_GETREQUEST = _descriptor.Descriptor( + name='GetRequest', + full_name='gnmi.GetRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='prefix', full_name='gnmi.GetRequest.prefix', 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, + options=None), + _descriptor.FieldDescriptor( + name='path', full_name='gnmi.GetRequest.path', 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, + options=None), + _descriptor.FieldDescriptor( + name='type', full_name='gnmi.GetRequest.type', index=2, + number=3, 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, + options=None), + _descriptor.FieldDescriptor( + name='encoding', full_name='gnmi.GetRequest.encoding', index=3, + number=5, 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, + options=None), + _descriptor.FieldDescriptor( + name='use_models', full_name='gnmi.GetRequest.use_models', index=4, + 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, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _GETREQUEST_DATATYPE, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2503, + serialized_end=2742, +) + + +_GETRESPONSE = _descriptor.Descriptor( + name='GetResponse', + full_name='gnmi.GetResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='notification', full_name='gnmi.GetResponse.notification', 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, + options=None), + _descriptor.FieldDescriptor( + name='error', full_name='gnmi.GetResponse.error', 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, + options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2744, + serialized_end=2831, +) + + +_CAPABILITYREQUEST = _descriptor.Descriptor( + name='CapabilityRequest', + full_name='gnmi.CapabilityRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2833, + serialized_end=2852, +) + + +_CAPABILITYRESPONSE = _descriptor.Descriptor( + name='CapabilityResponse', + full_name='gnmi.CapabilityResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='supported_models', full_name='gnmi.CapabilityResponse.supported_models', 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, + options=None), + _descriptor.FieldDescriptor( + name='supported_encodings', full_name='gnmi.CapabilityResponse.supported_encodings', index=1, + number=2, 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, + options=None), + _descriptor.FieldDescriptor( + name='gNMI_version', full_name='gnmi.CapabilityResponse.gNMI_version', 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, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2855, + serialized_end=2985, +) + + +_MODELDATA = _descriptor.Descriptor( + name='ModelData', + full_name='gnmi.ModelData', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='name', full_name='gnmi.ModelData.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, + options=None), + _descriptor.FieldDescriptor( + name='organization', full_name='gnmi.ModelData.organization', 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, + options=None), + _descriptor.FieldDescriptor( + name='version', full_name='gnmi.ModelData.version', 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, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2987, + serialized_end=3051, +) + +_NOTIFICATION.fields_by_name['prefix'].message_type = _PATH +_NOTIFICATION.fields_by_name['update'].message_type = _UPDATE +_NOTIFICATION.fields_by_name['delete'].message_type = _PATH +_UPDATE.fields_by_name['path'].message_type = _PATH +_UPDATE.fields_by_name['value'].message_type = _VALUE +_UPDATE.fields_by_name['val'].message_type = _TYPEDVALUE +_TYPEDVALUE.fields_by_name['decimal_val'].message_type = _DECIMAL64 +_TYPEDVALUE.fields_by_name['leaflist_val'].message_type = _SCALARARRAY +_TYPEDVALUE.fields_by_name['any_val'].message_type = google_dot_protobuf_dot_any__pb2._ANY +_TYPEDVALUE.oneofs_by_name['value'].fields.append( + _TYPEDVALUE.fields_by_name['string_val']) +_TYPEDVALUE.fields_by_name['string_val'].containing_oneof = _TYPEDVALUE.oneofs_by_name['value'] +_TYPEDVALUE.oneofs_by_name['value'].fields.append( + _TYPEDVALUE.fields_by_name['int_val']) +_TYPEDVALUE.fields_by_name['int_val'].containing_oneof = _TYPEDVALUE.oneofs_by_name['value'] +_TYPEDVALUE.oneofs_by_name['value'].fields.append( + _TYPEDVALUE.fields_by_name['uint_val']) +_TYPEDVALUE.fields_by_name['uint_val'].containing_oneof = _TYPEDVALUE.oneofs_by_name['value'] +_TYPEDVALUE.oneofs_by_name['value'].fields.append( + _TYPEDVALUE.fields_by_name['bool_val']) +_TYPEDVALUE.fields_by_name['bool_val'].containing_oneof = _TYPEDVALUE.oneofs_by_name['value'] +_TYPEDVALUE.oneofs_by_name['value'].fields.append( + _TYPEDVALUE.fields_by_name['bytes_val']) +_TYPEDVALUE.fields_by_name['bytes_val'].containing_oneof = _TYPEDVALUE.oneofs_by_name['value'] +_TYPEDVALUE.oneofs_by_name['value'].fields.append( + _TYPEDVALUE.fields_by_name['float_val']) +_TYPEDVALUE.fields_by_name['float_val'].containing_oneof = _TYPEDVALUE.oneofs_by_name['value'] +_TYPEDVALUE.oneofs_by_name['value'].fields.append( + _TYPEDVALUE.fields_by_name['decimal_val']) +_TYPEDVALUE.fields_by_name['decimal_val'].containing_oneof = _TYPEDVALUE.oneofs_by_name['value'] +_TYPEDVALUE.oneofs_by_name['value'].fields.append( + _TYPEDVALUE.fields_by_name['leaflist_val']) +_TYPEDVALUE.fields_by_name['leaflist_val'].containing_oneof = _TYPEDVALUE.oneofs_by_name['value'] +_TYPEDVALUE.oneofs_by_name['value'].fields.append( + _TYPEDVALUE.fields_by_name['any_val']) +_TYPEDVALUE.fields_by_name['any_val'].containing_oneof = _TYPEDVALUE.oneofs_by_name['value'] +_TYPEDVALUE.oneofs_by_name['value'].fields.append( + _TYPEDVALUE.fields_by_name['json_val']) +_TYPEDVALUE.fields_by_name['json_val'].containing_oneof = _TYPEDVALUE.oneofs_by_name['value'] +_TYPEDVALUE.oneofs_by_name['value'].fields.append( + _TYPEDVALUE.fields_by_name['json_ietf_val']) +_TYPEDVALUE.fields_by_name['json_ietf_val'].containing_oneof = _TYPEDVALUE.oneofs_by_name['value'] +_TYPEDVALUE.oneofs_by_name['value'].fields.append( + _TYPEDVALUE.fields_by_name['ascii_val']) +_TYPEDVALUE.fields_by_name['ascii_val'].containing_oneof = _TYPEDVALUE.oneofs_by_name['value'] +_PATH.fields_by_name['elem'].message_type = _PATHELEM +_PATHELEM_KEYENTRY.containing_type = _PATHELEM +_PATHELEM.fields_by_name['key'].message_type = _PATHELEM_KEYENTRY +_VALUE.fields_by_name['type'].enum_type = _ENCODING +_ERROR.fields_by_name['data'].message_type = google_dot_protobuf_dot_any__pb2._ANY +_SCALARARRAY.fields_by_name['element'].message_type = _TYPEDVALUE +_SUBSCRIBEREQUEST.fields_by_name['subscribe'].message_type = _SUBSCRIPTIONLIST +_SUBSCRIBEREQUEST.fields_by_name['poll'].message_type = _POLL +_SUBSCRIBEREQUEST.fields_by_name['aliases'].message_type = _ALIASLIST +_SUBSCRIBEREQUEST.oneofs_by_name['request'].fields.append( + _SUBSCRIBEREQUEST.fields_by_name['subscribe']) +_SUBSCRIBEREQUEST.fields_by_name['subscribe'].containing_oneof = _SUBSCRIBEREQUEST.oneofs_by_name['request'] +_SUBSCRIBEREQUEST.oneofs_by_name['request'].fields.append( + _SUBSCRIBEREQUEST.fields_by_name['poll']) +_SUBSCRIBEREQUEST.fields_by_name['poll'].containing_oneof = _SUBSCRIBEREQUEST.oneofs_by_name['request'] +_SUBSCRIBEREQUEST.oneofs_by_name['request'].fields.append( + _SUBSCRIBEREQUEST.fields_by_name['aliases']) +_SUBSCRIBEREQUEST.fields_by_name['aliases'].containing_oneof = _SUBSCRIBEREQUEST.oneofs_by_name['request'] +_SUBSCRIBERESPONSE.fields_by_name['update'].message_type = _NOTIFICATION +_SUBSCRIBERESPONSE.fields_by_name['error'].message_type = _ERROR +_SUBSCRIBERESPONSE.oneofs_by_name['response'].fields.append( + _SUBSCRIBERESPONSE.fields_by_name['update']) +_SUBSCRIBERESPONSE.fields_by_name['update'].containing_oneof = _SUBSCRIBERESPONSE.oneofs_by_name['response'] +_SUBSCRIBERESPONSE.oneofs_by_name['response'].fields.append( + _SUBSCRIBERESPONSE.fields_by_name['sync_response']) +_SUBSCRIBERESPONSE.fields_by_name['sync_response'].containing_oneof = _SUBSCRIBERESPONSE.oneofs_by_name['response'] +_SUBSCRIBERESPONSE.oneofs_by_name['response'].fields.append( + _SUBSCRIBERESPONSE.fields_by_name['error']) +_SUBSCRIBERESPONSE.fields_by_name['error'].containing_oneof = _SUBSCRIBERESPONSE.oneofs_by_name['response'] +_SUBSCRIPTIONLIST.fields_by_name['prefix'].message_type = _PATH +_SUBSCRIPTIONLIST.fields_by_name['subscription'].message_type = _SUBSCRIPTION +_SUBSCRIPTIONLIST.fields_by_name['qos'].message_type = _QOSMARKING +_SUBSCRIPTIONLIST.fields_by_name['mode'].enum_type = _SUBSCRIPTIONLIST_MODE +_SUBSCRIPTIONLIST.fields_by_name['use_models'].message_type = _MODELDATA +_SUBSCRIPTIONLIST.fields_by_name['encoding'].enum_type = _ENCODING +_SUBSCRIPTIONLIST_MODE.containing_type = _SUBSCRIPTIONLIST +_SUBSCRIPTION.fields_by_name['path'].message_type = _PATH +_SUBSCRIPTION.fields_by_name['mode'].enum_type = _SUBSCRIPTIONMODE +_ALIAS.fields_by_name['path'].message_type = _PATH +_ALIASLIST.fields_by_name['alias'].message_type = _ALIAS +_SETREQUEST.fields_by_name['prefix'].message_type = _PATH +_SETREQUEST.fields_by_name['delete'].message_type = _PATH +_SETREQUEST.fields_by_name['replace'].message_type = _UPDATE +_SETREQUEST.fields_by_name['update'].message_type = _UPDATE +_SETRESPONSE.fields_by_name['prefix'].message_type = _PATH +_SETRESPONSE.fields_by_name['response'].message_type = _UPDATERESULT +_SETRESPONSE.fields_by_name['message'].message_type = _ERROR +_UPDATERESULT.fields_by_name['path'].message_type = _PATH +_UPDATERESULT.fields_by_name['message'].message_type = _ERROR +_UPDATERESULT.fields_by_name['op'].enum_type = _UPDATERESULT_OPERATION +_UPDATERESULT_OPERATION.containing_type = _UPDATERESULT +_GETREQUEST.fields_by_name['prefix'].message_type = _PATH +_GETREQUEST.fields_by_name['path'].message_type = _PATH +_GETREQUEST.fields_by_name['type'].enum_type = _GETREQUEST_DATATYPE +_GETREQUEST.fields_by_name['encoding'].enum_type = _ENCODING +_GETREQUEST.fields_by_name['use_models'].message_type = _MODELDATA +_GETREQUEST_DATATYPE.containing_type = _GETREQUEST +_GETRESPONSE.fields_by_name['notification'].message_type = _NOTIFICATION +_GETRESPONSE.fields_by_name['error'].message_type = _ERROR +_CAPABILITYRESPONSE.fields_by_name['supported_models'].message_type = _MODELDATA +_CAPABILITYRESPONSE.fields_by_name['supported_encodings'].enum_type = _ENCODING +DESCRIPTOR.message_types_by_name['Notification'] = _NOTIFICATION +DESCRIPTOR.message_types_by_name['Update'] = _UPDATE +DESCRIPTOR.message_types_by_name['TypedValue'] = _TYPEDVALUE +DESCRIPTOR.message_types_by_name['Path'] = _PATH +DESCRIPTOR.message_types_by_name['PathElem'] = _PATHELEM +DESCRIPTOR.message_types_by_name['Value'] = _VALUE +DESCRIPTOR.message_types_by_name['Error'] = _ERROR +DESCRIPTOR.message_types_by_name['Decimal64'] = _DECIMAL64 +DESCRIPTOR.message_types_by_name['ScalarArray'] = _SCALARARRAY +DESCRIPTOR.message_types_by_name['SubscribeRequest'] = _SUBSCRIBEREQUEST +DESCRIPTOR.message_types_by_name['Poll'] = _POLL +DESCRIPTOR.message_types_by_name['SubscribeResponse'] = _SUBSCRIBERESPONSE +DESCRIPTOR.message_types_by_name['SubscriptionList'] = _SUBSCRIPTIONLIST +DESCRIPTOR.message_types_by_name['Subscription'] = _SUBSCRIPTION +DESCRIPTOR.message_types_by_name['QOSMarking'] = _QOSMARKING +DESCRIPTOR.message_types_by_name['Alias'] = _ALIAS +DESCRIPTOR.message_types_by_name['AliasList'] = _ALIASLIST +DESCRIPTOR.message_types_by_name['SetRequest'] = _SETREQUEST +DESCRIPTOR.message_types_by_name['SetResponse'] = _SETRESPONSE +DESCRIPTOR.message_types_by_name['UpdateResult'] = _UPDATERESULT +DESCRIPTOR.message_types_by_name['GetRequest'] = _GETREQUEST +DESCRIPTOR.message_types_by_name['GetResponse'] = _GETRESPONSE +DESCRIPTOR.message_types_by_name['CapabilityRequest'] = _CAPABILITYREQUEST +DESCRIPTOR.message_types_by_name['CapabilityResponse'] = _CAPABILITYRESPONSE +DESCRIPTOR.message_types_by_name['ModelData'] = _MODELDATA +DESCRIPTOR.enum_types_by_name['Encoding'] = _ENCODING +DESCRIPTOR.enum_types_by_name['SubscriptionMode'] = _SUBSCRIPTIONMODE +DESCRIPTOR.extensions_by_name['gnmi_service'] = gnmi_service +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +Notification = _reflection.GeneratedProtocolMessageType('Notification', (_message.Message,), dict( + DESCRIPTOR = _NOTIFICATION, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.Notification) + )) +_sym_db.RegisterMessage(Notification) + +Update = _reflection.GeneratedProtocolMessageType('Update', (_message.Message,), dict( + DESCRIPTOR = _UPDATE, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.Update) + )) +_sym_db.RegisterMessage(Update) + +TypedValue = _reflection.GeneratedProtocolMessageType('TypedValue', (_message.Message,), dict( + DESCRIPTOR = _TYPEDVALUE, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.TypedValue) + )) +_sym_db.RegisterMessage(TypedValue) + +Path = _reflection.GeneratedProtocolMessageType('Path', (_message.Message,), dict( + DESCRIPTOR = _PATH, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.Path) + )) +_sym_db.RegisterMessage(Path) + +PathElem = _reflection.GeneratedProtocolMessageType('PathElem', (_message.Message,), dict( + + KeyEntry = _reflection.GeneratedProtocolMessageType('KeyEntry', (_message.Message,), dict( + DESCRIPTOR = _PATHELEM_KEYENTRY, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.PathElem.KeyEntry) + )) + , + DESCRIPTOR = _PATHELEM, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.PathElem) + )) +_sym_db.RegisterMessage(PathElem) +_sym_db.RegisterMessage(PathElem.KeyEntry) + +Value = _reflection.GeneratedProtocolMessageType('Value', (_message.Message,), dict( + DESCRIPTOR = _VALUE, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.Value) + )) +_sym_db.RegisterMessage(Value) + +Error = _reflection.GeneratedProtocolMessageType('Error', (_message.Message,), dict( + DESCRIPTOR = _ERROR, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.Error) + )) +_sym_db.RegisterMessage(Error) + +Decimal64 = _reflection.GeneratedProtocolMessageType('Decimal64', (_message.Message,), dict( + DESCRIPTOR = _DECIMAL64, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.Decimal64) + )) +_sym_db.RegisterMessage(Decimal64) + +ScalarArray = _reflection.GeneratedProtocolMessageType('ScalarArray', (_message.Message,), dict( + DESCRIPTOR = _SCALARARRAY, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.ScalarArray) + )) +_sym_db.RegisterMessage(ScalarArray) + +SubscribeRequest = _reflection.GeneratedProtocolMessageType('SubscribeRequest', (_message.Message,), dict( + DESCRIPTOR = _SUBSCRIBEREQUEST, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.SubscribeRequest) + )) +_sym_db.RegisterMessage(SubscribeRequest) + +Poll = _reflection.GeneratedProtocolMessageType('Poll', (_message.Message,), dict( + DESCRIPTOR = _POLL, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.Poll) + )) +_sym_db.RegisterMessage(Poll) + +SubscribeResponse = _reflection.GeneratedProtocolMessageType('SubscribeResponse', (_message.Message,), dict( + DESCRIPTOR = _SUBSCRIBERESPONSE, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.SubscribeResponse) + )) +_sym_db.RegisterMessage(SubscribeResponse) + +SubscriptionList = _reflection.GeneratedProtocolMessageType('SubscriptionList', (_message.Message,), dict( + DESCRIPTOR = _SUBSCRIPTIONLIST, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.SubscriptionList) + )) +_sym_db.RegisterMessage(SubscriptionList) + +Subscription = _reflection.GeneratedProtocolMessageType('Subscription', (_message.Message,), dict( + DESCRIPTOR = _SUBSCRIPTION, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.Subscription) + )) +_sym_db.RegisterMessage(Subscription) + +QOSMarking = _reflection.GeneratedProtocolMessageType('QOSMarking', (_message.Message,), dict( + DESCRIPTOR = _QOSMARKING, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.QOSMarking) + )) +_sym_db.RegisterMessage(QOSMarking) + +Alias = _reflection.GeneratedProtocolMessageType('Alias', (_message.Message,), dict( + DESCRIPTOR = _ALIAS, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.Alias) + )) +_sym_db.RegisterMessage(Alias) + +AliasList = _reflection.GeneratedProtocolMessageType('AliasList', (_message.Message,), dict( + DESCRIPTOR = _ALIASLIST, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.AliasList) + )) +_sym_db.RegisterMessage(AliasList) + +SetRequest = _reflection.GeneratedProtocolMessageType('SetRequest', (_message.Message,), dict( + DESCRIPTOR = _SETREQUEST, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.SetRequest) + )) +_sym_db.RegisterMessage(SetRequest) + +SetResponse = _reflection.GeneratedProtocolMessageType('SetResponse', (_message.Message,), dict( + DESCRIPTOR = _SETRESPONSE, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.SetResponse) + )) +_sym_db.RegisterMessage(SetResponse) + +UpdateResult = _reflection.GeneratedProtocolMessageType('UpdateResult', (_message.Message,), dict( + DESCRIPTOR = _UPDATERESULT, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.UpdateResult) + )) +_sym_db.RegisterMessage(UpdateResult) + +GetRequest = _reflection.GeneratedProtocolMessageType('GetRequest', (_message.Message,), dict( + DESCRIPTOR = _GETREQUEST, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.GetRequest) + )) +_sym_db.RegisterMessage(GetRequest) + +GetResponse = _reflection.GeneratedProtocolMessageType('GetResponse', (_message.Message,), dict( + DESCRIPTOR = _GETRESPONSE, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.GetResponse) + )) +_sym_db.RegisterMessage(GetResponse) + +CapabilityRequest = _reflection.GeneratedProtocolMessageType('CapabilityRequest', (_message.Message,), dict( + DESCRIPTOR = _CAPABILITYREQUEST, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.CapabilityRequest) + )) +_sym_db.RegisterMessage(CapabilityRequest) + +CapabilityResponse = _reflection.GeneratedProtocolMessageType('CapabilityResponse', (_message.Message,), dict( + DESCRIPTOR = _CAPABILITYRESPONSE, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.CapabilityResponse) + )) +_sym_db.RegisterMessage(CapabilityResponse) + +ModelData = _reflection.GeneratedProtocolMessageType('ModelData', (_message.Message,), dict( + DESCRIPTOR = _MODELDATA, + __module__ = 'proto.gnmi.gnmi_pb2' + # @@protoc_insertion_point(class_scope:gnmi.ModelData) + )) +_sym_db.RegisterMessage(ModelData) + +google_dot_protobuf_dot_descriptor__pb2.FileOptions.RegisterExtension(gnmi_service) + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\312>\0050.5.0')) +_UPDATE.fields_by_name['value'].has_options = True +_UPDATE.fields_by_name['value']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001')) +_PATH.fields_by_name['element'].has_options = True +_PATH.fields_by_name['element']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001')) +_PATHELEM_KEYENTRY.has_options = True +_PATHELEM_KEYENTRY._options = _descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001')) +_VALUE.has_options = True +_VALUE._options = _descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('\030\001')) +_ERROR.has_options = True +_ERROR._options = _descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('\030\001')) +_SUBSCRIBERESPONSE.fields_by_name['error'].has_options = True +_SUBSCRIBERESPONSE.fields_by_name['error']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001')) +_SETRESPONSE.fields_by_name['message'].has_options = True +_SETRESPONSE.fields_by_name['message']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001')) +_UPDATERESULT.fields_by_name['timestamp'].has_options = True +_UPDATERESULT.fields_by_name['timestamp']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001')) +_UPDATERESULT.fields_by_name['message'].has_options = True +_UPDATERESULT.fields_by_name['message']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001')) +_GETRESPONSE.fields_by_name['error'].has_options = True +_GETRESPONSE.fields_by_name['error']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001')) +try: + # THESE ELEMENTS WILL BE DEPRECATED. + # Please use the generated *_pb2_grpc.py files instead. + import grpc + from grpc.beta import implementations as beta_implementations + from grpc.beta import interfaces as beta_interfaces + from grpc.framework.common import cardinality + from grpc.framework.interfaces.face import utilities as face_utilities + + + class gNMIStub(object): + # missing associated documentation comment in .proto file + pass + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.Capabilities = channel.unary_unary( + '/gnmi.gNMI/Capabilities', + request_serializer=CapabilityRequest.SerializeToString, + response_deserializer=CapabilityResponse.FromString, + ) + self.Get = channel.unary_unary( + '/gnmi.gNMI/Get', + request_serializer=GetRequest.SerializeToString, + response_deserializer=GetResponse.FromString, + ) + self.Set = channel.unary_unary( + '/gnmi.gNMI/Set', + request_serializer=SetRequest.SerializeToString, + response_deserializer=SetResponse.FromString, + ) + self.Subscribe = channel.stream_stream( + '/gnmi.gNMI/Subscribe', + request_serializer=SubscribeRequest.SerializeToString, + response_deserializer=SubscribeResponse.FromString, + ) + + + class gNMIServicer(object): + # missing associated documentation comment in .proto file + pass + + def Capabilities(self, request, context): + """Capabilities allows the client to retrieve the set of capabilities that + is supported by the target. This allows the target to validate the + service version that is implemented and retrieve the set of models that + the target supports. The models can then be specified in subsequent RPCs + to restrict the set of data that is utilized. + Reference: gNMI Specification Section 3.2 + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def Get(self, request, context): + """Retrieve a snapshot of data from the target. A Get RPC requests that the + target snapshots a subset of the data tree as specified by the paths + included in the message and serializes this to be returned to the + client using the specified encoding. + Reference: gNMI Specification Section 3.3 + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def Set(self, request, context): + """Set allows the client to modify the state of data on the target. The + paths to modified along with the new values that the client wishes + to set the value to. + Reference: gNMI Specification Section 3.4 + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def Subscribe(self, request_iterator, context): + """Subscribe allows a client to request the target to send it values + of particular paths within the data tree. These values may be streamed + at a particular cadence (STREAM), sent one off on a long-lived channel + (POLL), or sent as a one-off retrieval (ONCE). + Reference: gNMI Specification Section 3.5 + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + + def add_gNMIServicer_to_server(servicer, server): + rpc_method_handlers = { + 'Capabilities': grpc.unary_unary_rpc_method_handler( + servicer.Capabilities, + request_deserializer=CapabilityRequest.FromString, + response_serializer=CapabilityResponse.SerializeToString, + ), + 'Get': grpc.unary_unary_rpc_method_handler( + servicer.Get, + request_deserializer=GetRequest.FromString, + response_serializer=GetResponse.SerializeToString, + ), + 'Set': grpc.unary_unary_rpc_method_handler( + servicer.Set, + request_deserializer=SetRequest.FromString, + response_serializer=SetResponse.SerializeToString, + ), + 'Subscribe': grpc.stream_stream_rpc_method_handler( + servicer.Subscribe, + request_deserializer=SubscribeRequest.FromString, + response_serializer=SubscribeResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'gnmi.gNMI', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + class BetagNMIServicer(object): + """The Beta API is deprecated for 0.15.0 and later. + + It is recommended to use the GA API (classes and functions in this + file not marked beta) for all further purposes. This class was generated + only to ease transition from grpcio<0.15.0 to grpcio>=0.15.0.""" + # missing associated documentation comment in .proto file + pass + def Capabilities(self, request, context): + """Capabilities allows the client to retrieve the set of capabilities that + is supported by the target. This allows the target to validate the + service version that is implemented and retrieve the set of models that + the target supports. The models can then be specified in subsequent RPCs + to restrict the set of data that is utilized. + Reference: gNMI Specification Section 3.2 + """ + context.code(beta_interfaces.StatusCode.UNIMPLEMENTED) + def Get(self, request, context): + """Retrieve a snapshot of data from the target. A Get RPC requests that the + target snapshots a subset of the data tree as specified by the paths + included in the message and serializes this to be returned to the + client using the specified encoding. + Reference: gNMI Specification Section 3.3 + """ + context.code(beta_interfaces.StatusCode.UNIMPLEMENTED) + def Set(self, request, context): + """Set allows the client to modify the state of data on the target. The + paths to modified along with the new values that the client wishes + to set the value to. + Reference: gNMI Specification Section 3.4 + """ + context.code(beta_interfaces.StatusCode.UNIMPLEMENTED) + def Subscribe(self, request_iterator, context): + """Subscribe allows a client to request the target to send it values + of particular paths within the data tree. These values may be streamed + at a particular cadence (STREAM), sent one off on a long-lived channel + (POLL), or sent as a one-off retrieval (ONCE). + Reference: gNMI Specification Section 3.5 + """ + context.code(beta_interfaces.StatusCode.UNIMPLEMENTED) + + + class BetagNMIStub(object): + """The Beta API is deprecated for 0.15.0 and later. + + It is recommended to use the GA API (classes and functions in this + file not marked beta) for all further purposes. This class was generated + only to ease transition from grpcio<0.15.0 to grpcio>=0.15.0.""" + # missing associated documentation comment in .proto file + pass + def Capabilities(self, request, timeout, metadata=None, with_call=False, protocol_options=None): + """Capabilities allows the client to retrieve the set of capabilities that + is supported by the target. This allows the target to validate the + service version that is implemented and retrieve the set of models that + the target supports. The models can then be specified in subsequent RPCs + to restrict the set of data that is utilized. + Reference: gNMI Specification Section 3.2 + """ + raise NotImplementedError() + Capabilities.future = None + def Get(self, request, timeout, metadata=None, with_call=False, protocol_options=None): + """Retrieve a snapshot of data from the target. A Get RPC requests that the + target snapshots a subset of the data tree as specified by the paths + included in the message and serializes this to be returned to the + client using the specified encoding. + Reference: gNMI Specification Section 3.3 + """ + raise NotImplementedError() + Get.future = None + def Set(self, request, timeout, metadata=None, with_call=False, protocol_options=None): + """Set allows the client to modify the state of data on the target. The + paths to modified along with the new values that the client wishes + to set the value to. + Reference: gNMI Specification Section 3.4 + """ + raise NotImplementedError() + Set.future = None + def Subscribe(self, request_iterator, timeout, metadata=None, with_call=False, protocol_options=None): + """Subscribe allows a client to request the target to send it values + of particular paths within the data tree. These values may be streamed + at a particular cadence (STREAM), sent one off on a long-lived channel + (POLL), or sent as a one-off retrieval (ONCE). + Reference: gNMI Specification Section 3.5 + """ + raise NotImplementedError() + + + def beta_create_gNMI_server(servicer, pool=None, pool_size=None, default_timeout=None, maximum_timeout=None): + """The Beta API is deprecated for 0.15.0 and later. + + It is recommended to use the GA API (classes and functions in this + file not marked beta) for all further purposes. This function was + generated only to ease transition from grpcio<0.15.0 to grpcio>=0.15.0""" + request_deserializers = { + ('gnmi.gNMI', 'Capabilities'): CapabilityRequest.FromString, + ('gnmi.gNMI', 'Get'): GetRequest.FromString, + ('gnmi.gNMI', 'Set'): SetRequest.FromString, + ('gnmi.gNMI', 'Subscribe'): SubscribeRequest.FromString, + } + response_serializers = { + ('gnmi.gNMI', 'Capabilities'): CapabilityResponse.SerializeToString, + ('gnmi.gNMI', 'Get'): GetResponse.SerializeToString, + ('gnmi.gNMI', 'Set'): SetResponse.SerializeToString, + ('gnmi.gNMI', 'Subscribe'): SubscribeResponse.SerializeToString, + } + method_implementations = { + ('gnmi.gNMI', 'Capabilities'): face_utilities.unary_unary_inline(servicer.Capabilities), + ('gnmi.gNMI', 'Get'): face_utilities.unary_unary_inline(servicer.Get), + ('gnmi.gNMI', 'Set'): face_utilities.unary_unary_inline(servicer.Set), + ('gnmi.gNMI', 'Subscribe'): face_utilities.stream_stream_inline(servicer.Subscribe), + } + server_options = beta_implementations.server_options(request_deserializers=request_deserializers, response_serializers=response_serializers, thread_pool=pool, thread_pool_size=pool_size, default_timeout=default_timeout, maximum_timeout=maximum_timeout) + return beta_implementations.server(method_implementations, options=server_options) + + + def beta_create_gNMI_stub(channel, host=None, metadata_transformer=None, pool=None, pool_size=None): + """The Beta API is deprecated for 0.15.0 and later. + + It is recommended to use the GA API (classes and functions in this + file not marked beta) for all further purposes. This function was + generated only to ease transition from grpcio<0.15.0 to grpcio>=0.15.0""" + request_serializers = { + ('gnmi.gNMI', 'Capabilities'): CapabilityRequest.SerializeToString, + ('gnmi.gNMI', 'Get'): GetRequest.SerializeToString, + ('gnmi.gNMI', 'Set'): SetRequest.SerializeToString, + ('gnmi.gNMI', 'Subscribe'): SubscribeRequest.SerializeToString, + } + response_deserializers = { + ('gnmi.gNMI', 'Capabilities'): CapabilityResponse.FromString, + ('gnmi.gNMI', 'Get'): GetResponse.FromString, + ('gnmi.gNMI', 'Set'): SetResponse.FromString, + ('gnmi.gNMI', 'Subscribe'): SubscribeResponse.FromString, + } + cardinalities = { + 'Capabilities': cardinality.Cardinality.UNARY_UNARY, + 'Get': cardinality.Cardinality.UNARY_UNARY, + 'Set': cardinality.Cardinality.UNARY_UNARY, + 'Subscribe': cardinality.Cardinality.STREAM_STREAM, + } + stub_options = beta_implementations.stub_options(host=host, metadata_transformer=metadata_transformer, request_serializers=request_serializers, response_deserializers=response_deserializers, thread_pool=pool, thread_pool_size=pool_size) + return beta_implementations.dynamic_stub(channel, 'gnmi.gNMI', cardinalities, options=stub_options) +except ImportError: + pass +# @@protoc_insertion_point(module_scope) diff --git a/src/device/service/drivers/gnmi_openconfig/gnmi/gnmi_pb2.pyi b/src/device/service/drivers/gnmi_openconfig/gnmi/gnmi_pb2.pyi new file mode 100644 index 0000000000000000000000000000000000000000..423bcfb90e1a603c2ebcdc29092569c7695db2d0 --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/gnmi/gnmi_pb2.pyi @@ -0,0 +1,380 @@ +from google.protobuf import any_pb2 as _any_pb2 +from google.protobuf import descriptor_pb2 as _descriptor_pb2 +from google.protobuf.internal import containers as _containers +from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union + +ASCII: Encoding +BYTES: Encoding +DESCRIPTOR: _descriptor.FileDescriptor +EID_EXPERIMENTAL: ExtensionID +EID_UNSET: ExtensionID +GNMI_SERVICE_FIELD_NUMBER: _ClassVar[int] +JSON: Encoding +JSON_IETF: Encoding +ON_CHANGE: SubscriptionMode +PROTO: Encoding +SAMPLE: SubscriptionMode +TARGET_DEFINED: SubscriptionMode +gnmi_service: _descriptor.FieldDescriptor + +class CapabilityRequest(_message.Message): + __slots__ = ["extension"] + EXTENSION_FIELD_NUMBER: _ClassVar[int] + extension: _containers.RepeatedCompositeFieldContainer[Extension] + def __init__(self, extension: _Optional[_Iterable[_Union[Extension, _Mapping]]] = ...) -> None: ... + +class CapabilityResponse(_message.Message): + __slots__ = ["extension", "gNMI_version", "supported_encodings", "supported_models"] + EXTENSION_FIELD_NUMBER: _ClassVar[int] + GNMI_VERSION_FIELD_NUMBER: _ClassVar[int] + SUPPORTED_ENCODINGS_FIELD_NUMBER: _ClassVar[int] + SUPPORTED_MODELS_FIELD_NUMBER: _ClassVar[int] + extension: _containers.RepeatedCompositeFieldContainer[Extension] + gNMI_version: str + supported_encodings: _containers.RepeatedScalarFieldContainer[Encoding] + supported_models: _containers.RepeatedCompositeFieldContainer[ModelData] + def __init__(self, supported_models: _Optional[_Iterable[_Union[ModelData, _Mapping]]] = ..., supported_encodings: _Optional[_Iterable[_Union[Encoding, str]]] = ..., gNMI_version: _Optional[str] = ..., extension: _Optional[_Iterable[_Union[Extension, _Mapping]]] = ...) -> None: ... + +class Decimal64(_message.Message): + __slots__ = ["digits", "precision"] + DIGITS_FIELD_NUMBER: _ClassVar[int] + PRECISION_FIELD_NUMBER: _ClassVar[int] + digits: int + precision: int + def __init__(self, digits: _Optional[int] = ..., precision: _Optional[int] = ...) -> None: ... + +class Error(_message.Message): + __slots__ = ["code", "data", "message"] + CODE_FIELD_NUMBER: _ClassVar[int] + DATA_FIELD_NUMBER: _ClassVar[int] + MESSAGE_FIELD_NUMBER: _ClassVar[int] + code: int + data: _any_pb2.Any + message: str + def __init__(self, code: _Optional[int] = ..., message: _Optional[str] = ..., data: _Optional[_Union[_any_pb2.Any, _Mapping]] = ...) -> None: ... + +class Extension(_message.Message): + __slots__ = ["history", "master_arbitration", "registered_ext"] + HISTORY_FIELD_NUMBER: _ClassVar[int] + MASTER_ARBITRATION_FIELD_NUMBER: _ClassVar[int] + REGISTERED_EXT_FIELD_NUMBER: _ClassVar[int] + history: History + master_arbitration: MasterArbitration + registered_ext: RegisteredExtension + def __init__(self, registered_ext: _Optional[_Union[RegisteredExtension, _Mapping]] = ..., master_arbitration: _Optional[_Union[MasterArbitration, _Mapping]] = ..., history: _Optional[_Union[History, _Mapping]] = ...) -> None: ... + +class GetRequest(_message.Message): + __slots__ = ["encoding", "extension", "path", "prefix", "type", "use_models"] + class DataType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + ALL: GetRequest.DataType + CONFIG: GetRequest.DataType + ENCODING_FIELD_NUMBER: _ClassVar[int] + EXTENSION_FIELD_NUMBER: _ClassVar[int] + OPERATIONAL: GetRequest.DataType + PATH_FIELD_NUMBER: _ClassVar[int] + PREFIX_FIELD_NUMBER: _ClassVar[int] + STATE: GetRequest.DataType + TYPE_FIELD_NUMBER: _ClassVar[int] + USE_MODELS_FIELD_NUMBER: _ClassVar[int] + encoding: Encoding + extension: _containers.RepeatedCompositeFieldContainer[Extension] + path: _containers.RepeatedCompositeFieldContainer[Path] + prefix: Path + type: GetRequest.DataType + use_models: _containers.RepeatedCompositeFieldContainer[ModelData] + def __init__(self, prefix: _Optional[_Union[Path, _Mapping]] = ..., path: _Optional[_Iterable[_Union[Path, _Mapping]]] = ..., type: _Optional[_Union[GetRequest.DataType, str]] = ..., encoding: _Optional[_Union[Encoding, str]] = ..., use_models: _Optional[_Iterable[_Union[ModelData, _Mapping]]] = ..., extension: _Optional[_Iterable[_Union[Extension, _Mapping]]] = ...) -> None: ... + +class GetResponse(_message.Message): + __slots__ = ["error", "extension", "notification"] + ERROR_FIELD_NUMBER: _ClassVar[int] + EXTENSION_FIELD_NUMBER: _ClassVar[int] + NOTIFICATION_FIELD_NUMBER: _ClassVar[int] + error: Error + extension: _containers.RepeatedCompositeFieldContainer[Extension] + notification: _containers.RepeatedCompositeFieldContainer[Notification] + def __init__(self, notification: _Optional[_Iterable[_Union[Notification, _Mapping]]] = ..., error: _Optional[_Union[Error, _Mapping]] = ..., extension: _Optional[_Iterable[_Union[Extension, _Mapping]]] = ...) -> None: ... + +class History(_message.Message): + __slots__ = ["range", "snapshot_time"] + RANGE_FIELD_NUMBER: _ClassVar[int] + SNAPSHOT_TIME_FIELD_NUMBER: _ClassVar[int] + range: TimeRange + snapshot_time: int + def __init__(self, snapshot_time: _Optional[int] = ..., range: _Optional[_Union[TimeRange, _Mapping]] = ...) -> None: ... + +class MasterArbitration(_message.Message): + __slots__ = ["election_id", "role"] + ELECTION_ID_FIELD_NUMBER: _ClassVar[int] + ROLE_FIELD_NUMBER: _ClassVar[int] + election_id: Uint128 + role: Role + def __init__(self, role: _Optional[_Union[Role, _Mapping]] = ..., election_id: _Optional[_Union[Uint128, _Mapping]] = ...) -> None: ... + +class ModelData(_message.Message): + __slots__ = ["name", "organization", "version"] + NAME_FIELD_NUMBER: _ClassVar[int] + ORGANIZATION_FIELD_NUMBER: _ClassVar[int] + VERSION_FIELD_NUMBER: _ClassVar[int] + name: str + organization: str + version: str + def __init__(self, name: _Optional[str] = ..., organization: _Optional[str] = ..., version: _Optional[str] = ...) -> None: ... + +class Notification(_message.Message): + __slots__ = ["atomic", "delete", "prefix", "timestamp", "update"] + ATOMIC_FIELD_NUMBER: _ClassVar[int] + DELETE_FIELD_NUMBER: _ClassVar[int] + PREFIX_FIELD_NUMBER: _ClassVar[int] + TIMESTAMP_FIELD_NUMBER: _ClassVar[int] + UPDATE_FIELD_NUMBER: _ClassVar[int] + atomic: bool + delete: _containers.RepeatedCompositeFieldContainer[Path] + prefix: Path + timestamp: int + update: _containers.RepeatedCompositeFieldContainer[Update] + def __init__(self, timestamp: _Optional[int] = ..., prefix: _Optional[_Union[Path, _Mapping]] = ..., update: _Optional[_Iterable[_Union[Update, _Mapping]]] = ..., delete: _Optional[_Iterable[_Union[Path, _Mapping]]] = ..., atomic: bool = ...) -> None: ... + +class Path(_message.Message): + __slots__ = ["elem", "element", "origin", "target"] + ELEMENT_FIELD_NUMBER: _ClassVar[int] + ELEM_FIELD_NUMBER: _ClassVar[int] + ORIGIN_FIELD_NUMBER: _ClassVar[int] + TARGET_FIELD_NUMBER: _ClassVar[int] + elem: _containers.RepeatedCompositeFieldContainer[PathElem] + element: _containers.RepeatedScalarFieldContainer[str] + origin: str + target: str + def __init__(self, element: _Optional[_Iterable[str]] = ..., origin: _Optional[str] = ..., elem: _Optional[_Iterable[_Union[PathElem, _Mapping]]] = ..., target: _Optional[str] = ...) -> None: ... + +class PathElem(_message.Message): + __slots__ = ["key", "name"] + class KeyEntry(_message.Message): + __slots__ = ["key", "value"] + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: str + value: str + def __init__(self, key: _Optional[str] = ..., value: _Optional[str] = ...) -> None: ... + KEY_FIELD_NUMBER: _ClassVar[int] + NAME_FIELD_NUMBER: _ClassVar[int] + key: _containers.ScalarMap[str, str] + name: str + def __init__(self, name: _Optional[str] = ..., key: _Optional[_Mapping[str, str]] = ...) -> None: ... + +class Poll(_message.Message): + __slots__ = [] + def __init__(self) -> None: ... + +class QOSMarking(_message.Message): + __slots__ = ["marking"] + MARKING_FIELD_NUMBER: _ClassVar[int] + marking: int + def __init__(self, marking: _Optional[int] = ...) -> None: ... + +class RegisteredExtension(_message.Message): + __slots__ = ["id", "msg"] + ID_FIELD_NUMBER: _ClassVar[int] + MSG_FIELD_NUMBER: _ClassVar[int] + id: ExtensionID + msg: bytes + def __init__(self, id: _Optional[_Union[ExtensionID, str]] = ..., msg: _Optional[bytes] = ...) -> None: ... + +class Role(_message.Message): + __slots__ = ["id"] + ID_FIELD_NUMBER: _ClassVar[int] + id: str + def __init__(self, id: _Optional[str] = ...) -> None: ... + +class ScalarArray(_message.Message): + __slots__ = ["element"] + ELEMENT_FIELD_NUMBER: _ClassVar[int] + element: _containers.RepeatedCompositeFieldContainer[TypedValue] + def __init__(self, element: _Optional[_Iterable[_Union[TypedValue, _Mapping]]] = ...) -> None: ... + +class SetRequest(_message.Message): + __slots__ = ["delete", "extension", "prefix", "replace", "update"] + DELETE_FIELD_NUMBER: _ClassVar[int] + EXTENSION_FIELD_NUMBER: _ClassVar[int] + PREFIX_FIELD_NUMBER: _ClassVar[int] + REPLACE_FIELD_NUMBER: _ClassVar[int] + UPDATE_FIELD_NUMBER: _ClassVar[int] + delete: _containers.RepeatedCompositeFieldContainer[Path] + extension: _containers.RepeatedCompositeFieldContainer[Extension] + prefix: Path + replace: _containers.RepeatedCompositeFieldContainer[Update] + update: _containers.RepeatedCompositeFieldContainer[Update] + def __init__(self, prefix: _Optional[_Union[Path, _Mapping]] = ..., delete: _Optional[_Iterable[_Union[Path, _Mapping]]] = ..., replace: _Optional[_Iterable[_Union[Update, _Mapping]]] = ..., update: _Optional[_Iterable[_Union[Update, _Mapping]]] = ..., extension: _Optional[_Iterable[_Union[Extension, _Mapping]]] = ...) -> None: ... + +class SetResponse(_message.Message): + __slots__ = ["extension", "message", "prefix", "response", "timestamp"] + EXTENSION_FIELD_NUMBER: _ClassVar[int] + MESSAGE_FIELD_NUMBER: _ClassVar[int] + PREFIX_FIELD_NUMBER: _ClassVar[int] + RESPONSE_FIELD_NUMBER: _ClassVar[int] + TIMESTAMP_FIELD_NUMBER: _ClassVar[int] + extension: _containers.RepeatedCompositeFieldContainer[Extension] + message: Error + prefix: Path + response: _containers.RepeatedCompositeFieldContainer[UpdateResult] + timestamp: int + def __init__(self, prefix: _Optional[_Union[Path, _Mapping]] = ..., response: _Optional[_Iterable[_Union[UpdateResult, _Mapping]]] = ..., message: _Optional[_Union[Error, _Mapping]] = ..., timestamp: _Optional[int] = ..., extension: _Optional[_Iterable[_Union[Extension, _Mapping]]] = ...) -> None: ... + +class SubscribeRequest(_message.Message): + __slots__ = ["extension", "poll", "subscribe"] + EXTENSION_FIELD_NUMBER: _ClassVar[int] + POLL_FIELD_NUMBER: _ClassVar[int] + SUBSCRIBE_FIELD_NUMBER: _ClassVar[int] + extension: _containers.RepeatedCompositeFieldContainer[Extension] + poll: Poll + subscribe: SubscriptionList + def __init__(self, subscribe: _Optional[_Union[SubscriptionList, _Mapping]] = ..., poll: _Optional[_Union[Poll, _Mapping]] = ..., extension: _Optional[_Iterable[_Union[Extension, _Mapping]]] = ...) -> None: ... + +class SubscribeResponse(_message.Message): + __slots__ = ["error", "extension", "sync_response", "update"] + ERROR_FIELD_NUMBER: _ClassVar[int] + EXTENSION_FIELD_NUMBER: _ClassVar[int] + SYNC_RESPONSE_FIELD_NUMBER: _ClassVar[int] + UPDATE_FIELD_NUMBER: _ClassVar[int] + error: Error + extension: _containers.RepeatedCompositeFieldContainer[Extension] + sync_response: bool + update: Notification + def __init__(self, update: _Optional[_Union[Notification, _Mapping]] = ..., sync_response: bool = ..., error: _Optional[_Union[Error, _Mapping]] = ..., extension: _Optional[_Iterable[_Union[Extension, _Mapping]]] = ...) -> None: ... + +class Subscription(_message.Message): + __slots__ = ["heartbeat_interval", "mode", "path", "sample_interval", "suppress_redundant"] + HEARTBEAT_INTERVAL_FIELD_NUMBER: _ClassVar[int] + MODE_FIELD_NUMBER: _ClassVar[int] + PATH_FIELD_NUMBER: _ClassVar[int] + SAMPLE_INTERVAL_FIELD_NUMBER: _ClassVar[int] + SUPPRESS_REDUNDANT_FIELD_NUMBER: _ClassVar[int] + heartbeat_interval: int + mode: SubscriptionMode + path: Path + sample_interval: int + suppress_redundant: bool + def __init__(self, path: _Optional[_Union[Path, _Mapping]] = ..., mode: _Optional[_Union[SubscriptionMode, str]] = ..., sample_interval: _Optional[int] = ..., suppress_redundant: bool = ..., heartbeat_interval: _Optional[int] = ...) -> None: ... + +class SubscriptionList(_message.Message): + __slots__ = ["allow_aggregation", "encoding", "mode", "prefix", "qos", "subscription", "updates_only", "use_models"] + class Mode(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + ALLOW_AGGREGATION_FIELD_NUMBER: _ClassVar[int] + ENCODING_FIELD_NUMBER: _ClassVar[int] + MODE_FIELD_NUMBER: _ClassVar[int] + ONCE: SubscriptionList.Mode + POLL: SubscriptionList.Mode + PREFIX_FIELD_NUMBER: _ClassVar[int] + QOS_FIELD_NUMBER: _ClassVar[int] + STREAM: SubscriptionList.Mode + SUBSCRIPTION_FIELD_NUMBER: _ClassVar[int] + UPDATES_ONLY_FIELD_NUMBER: _ClassVar[int] + USE_MODELS_FIELD_NUMBER: _ClassVar[int] + allow_aggregation: bool + encoding: Encoding + mode: SubscriptionList.Mode + prefix: Path + qos: QOSMarking + subscription: _containers.RepeatedCompositeFieldContainer[Subscription] + updates_only: bool + use_models: _containers.RepeatedCompositeFieldContainer[ModelData] + def __init__(self, prefix: _Optional[_Union[Path, _Mapping]] = ..., subscription: _Optional[_Iterable[_Union[Subscription, _Mapping]]] = ..., qos: _Optional[_Union[QOSMarking, _Mapping]] = ..., mode: _Optional[_Union[SubscriptionList.Mode, str]] = ..., allow_aggregation: bool = ..., use_models: _Optional[_Iterable[_Union[ModelData, _Mapping]]] = ..., encoding: _Optional[_Union[Encoding, str]] = ..., updates_only: bool = ...) -> None: ... + +class TimeRange(_message.Message): + __slots__ = ["end", "start"] + END_FIELD_NUMBER: _ClassVar[int] + START_FIELD_NUMBER: _ClassVar[int] + end: int + start: int + def __init__(self, start: _Optional[int] = ..., end: _Optional[int] = ...) -> None: ... + +class TypedValue(_message.Message): + __slots__ = ["any_val", "ascii_val", "bool_val", "bytes_val", "decimal_val", "double_val", "float_val", "int_val", "json_ietf_val", "json_val", "leaflist_val", "proto_bytes", "string_val", "uint_val"] + ANY_VAL_FIELD_NUMBER: _ClassVar[int] + ASCII_VAL_FIELD_NUMBER: _ClassVar[int] + BOOL_VAL_FIELD_NUMBER: _ClassVar[int] + BYTES_VAL_FIELD_NUMBER: _ClassVar[int] + DECIMAL_VAL_FIELD_NUMBER: _ClassVar[int] + DOUBLE_VAL_FIELD_NUMBER: _ClassVar[int] + FLOAT_VAL_FIELD_NUMBER: _ClassVar[int] + INT_VAL_FIELD_NUMBER: _ClassVar[int] + JSON_IETF_VAL_FIELD_NUMBER: _ClassVar[int] + JSON_VAL_FIELD_NUMBER: _ClassVar[int] + LEAFLIST_VAL_FIELD_NUMBER: _ClassVar[int] + PROTO_BYTES_FIELD_NUMBER: _ClassVar[int] + STRING_VAL_FIELD_NUMBER: _ClassVar[int] + UINT_VAL_FIELD_NUMBER: _ClassVar[int] + any_val: _any_pb2.Any + ascii_val: str + bool_val: bool + bytes_val: bytes + decimal_val: Decimal64 + double_val: float + float_val: float + int_val: int + json_ietf_val: bytes + json_val: bytes + leaflist_val: ScalarArray + proto_bytes: bytes + string_val: str + uint_val: int + def __init__(self, string_val: _Optional[str] = ..., int_val: _Optional[int] = ..., uint_val: _Optional[int] = ..., bool_val: bool = ..., bytes_val: _Optional[bytes] = ..., float_val: _Optional[float] = ..., double_val: _Optional[float] = ..., decimal_val: _Optional[_Union[Decimal64, _Mapping]] = ..., leaflist_val: _Optional[_Union[ScalarArray, _Mapping]] = ..., any_val: _Optional[_Union[_any_pb2.Any, _Mapping]] = ..., json_val: _Optional[bytes] = ..., json_ietf_val: _Optional[bytes] = ..., ascii_val: _Optional[str] = ..., proto_bytes: _Optional[bytes] = ...) -> None: ... + +class Uint128(_message.Message): + __slots__ = ["high", "low"] + HIGH_FIELD_NUMBER: _ClassVar[int] + LOW_FIELD_NUMBER: _ClassVar[int] + high: int + low: int + def __init__(self, high: _Optional[int] = ..., low: _Optional[int] = ...) -> None: ... + +class Update(_message.Message): + __slots__ = ["duplicates", "path", "val", "value"] + DUPLICATES_FIELD_NUMBER: _ClassVar[int] + PATH_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + VAL_FIELD_NUMBER: _ClassVar[int] + duplicates: int + path: Path + val: TypedValue + value: Value + def __init__(self, path: _Optional[_Union[Path, _Mapping]] = ..., value: _Optional[_Union[Value, _Mapping]] = ..., val: _Optional[_Union[TypedValue, _Mapping]] = ..., duplicates: _Optional[int] = ...) -> None: ... + +class UpdateResult(_message.Message): + __slots__ = ["message", "op", "path", "timestamp"] + class Operation(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + DELETE: UpdateResult.Operation + INVALID: UpdateResult.Operation + MESSAGE_FIELD_NUMBER: _ClassVar[int] + OP_FIELD_NUMBER: _ClassVar[int] + PATH_FIELD_NUMBER: _ClassVar[int] + REPLACE: UpdateResult.Operation + TIMESTAMP_FIELD_NUMBER: _ClassVar[int] + UPDATE: UpdateResult.Operation + message: Error + op: UpdateResult.Operation + path: Path + timestamp: int + def __init__(self, timestamp: _Optional[int] = ..., path: _Optional[_Union[Path, _Mapping]] = ..., message: _Optional[_Union[Error, _Mapping]] = ..., op: _Optional[_Union[UpdateResult.Operation, str]] = ...) -> None: ... + +class Value(_message.Message): + __slots__ = ["type", "value"] + TYPE_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + type: Encoding + value: bytes + def __init__(self, value: _Optional[bytes] = ..., type: _Optional[_Union[Encoding, str]] = ...) -> None: ... + +class ExtensionID(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + +class Encoding(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + +class SubscriptionMode(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] \ No newline at end of file diff --git a/src/device/service/drivers/gnmi_openconfig/gnmi/gnmi_pb2_grpc.py b/src/device/service/drivers/gnmi_openconfig/gnmi/gnmi_pb2_grpc.py new file mode 100644 index 0000000000000000000000000000000000000000..517d3d9eb41c5833a28cc9b7f43859dde186f348 --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/gnmi/gnmi_pb2_grpc.py @@ -0,0 +1,185 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + +from . import gnmi_pb2 as gnmi__pb2 + + +class gNMIStub(object): + """Missing associated documentation comment in .proto file.""" + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.Capabilities = channel.unary_unary( + '/gnmi.gNMI/Capabilities', + request_serializer=gnmi__pb2.CapabilityRequest.SerializeToString, + response_deserializer=gnmi__pb2.CapabilityResponse.FromString, + ) + self.Get = channel.unary_unary( + '/gnmi.gNMI/Get', + request_serializer=gnmi__pb2.GetRequest.SerializeToString, + response_deserializer=gnmi__pb2.GetResponse.FromString, + ) + self.Set = channel.unary_unary( + '/gnmi.gNMI/Set', + request_serializer=gnmi__pb2.SetRequest.SerializeToString, + response_deserializer=gnmi__pb2.SetResponse.FromString, + ) + self.Subscribe = channel.stream_stream( + '/gnmi.gNMI/Subscribe', + request_serializer=gnmi__pb2.SubscribeRequest.SerializeToString, + response_deserializer=gnmi__pb2.SubscribeResponse.FromString, + ) + + +class gNMIServicer(object): + """Missing associated documentation comment in .proto file.""" + + def Capabilities(self, request, context): + """Capabilities allows the client to retrieve the set of capabilities that + is supported by the target. This allows the target to validate the + service version that is implemented and retrieve the set of models that + the target supports. The models can then be specified in subsequent RPCs + to restrict the set of data that is utilized. + Reference: gNMI Specification Section 3.2 + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def Get(self, request, context): + """Retrieve a snapshot of data from the target. A Get RPC requests that the + target snapshots a subset of the data tree as specified by the paths + included in the message and serializes this to be returned to the + client using the specified encoding. + Reference: gNMI Specification Section 3.3 + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def Set(self, request, context): + """Set allows the client to modify the state of data on the target. The + paths to modified along with the new values that the client wishes + to set the value to. + Reference: gNMI Specification Section 3.4 + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def Subscribe(self, request_iterator, context): + """Subscribe allows a client to request the target to send it values + of particular paths within the data tree. These values may be streamed + at a particular cadence (STREAM), sent one off on a long-lived channel + (POLL), or sent as a one-off retrieval (ONCE). + Reference: gNMI Specification Section 3.5 + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_gNMIServicer_to_server(servicer, server): + rpc_method_handlers = { + 'Capabilities': grpc.unary_unary_rpc_method_handler( + servicer.Capabilities, + request_deserializer=gnmi__pb2.CapabilityRequest.FromString, + response_serializer=gnmi__pb2.CapabilityResponse.SerializeToString, + ), + 'Get': grpc.unary_unary_rpc_method_handler( + servicer.Get, + request_deserializer=gnmi__pb2.GetRequest.FromString, + response_serializer=gnmi__pb2.GetResponse.SerializeToString, + ), + 'Set': grpc.unary_unary_rpc_method_handler( + servicer.Set, + request_deserializer=gnmi__pb2.SetRequest.FromString, + response_serializer=gnmi__pb2.SetResponse.SerializeToString, + ), + 'Subscribe': grpc.stream_stream_rpc_method_handler( + servicer.Subscribe, + request_deserializer=gnmi__pb2.SubscribeRequest.FromString, + response_serializer=gnmi__pb2.SubscribeResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'gnmi.gNMI', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + # This class is part of an EXPERIMENTAL API. +class gNMI(object): + """Missing associated documentation comment in .proto file.""" + + @staticmethod + def Capabilities(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, '/gnmi.gNMI/Capabilities', + gnmi__pb2.CapabilityRequest.SerializeToString, + gnmi__pb2.CapabilityResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def Get(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, '/gnmi.gNMI/Get', + gnmi__pb2.GetRequest.SerializeToString, + gnmi__pb2.GetResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def Set(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, '/gnmi.gNMI/Set', + gnmi__pb2.SetRequest.SerializeToString, + gnmi__pb2.SetResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def Subscribe(request_iterator, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.stream_stream(request_iterator, target, '/gnmi.gNMI/Subscribe', + gnmi__pb2.SubscribeRequest.SerializeToString, + gnmi__pb2.SubscribeResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/src/device/service/drivers/gnmi_openconfig/handlers/Component.py b/src/device/service/drivers/gnmi_openconfig/handlers/Component.py new file mode 100644 index 0000000000000000000000000000000000000000..0b3c1f9705353548025cb4365ea31e68978c79f1 --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/handlers/Component.py @@ -0,0 +1,63 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 typing import Any, Dict, List, Tuple +from common.proto.kpi_sample_types_pb2 import KpiSampleType +from ._Handler import _Handler + +LOGGER = logging.getLogger(__name__) + +PATH_IF_CTR = "/interfaces/interface[name={:s}]/state/counters/{:s}" + +class ComponentHandler(_Handler): + def get_resource_key(self) -> str: return '/endpoints/endpoint' + def get_path(self) -> str: return '/components/component' + + def parse(self, json_data : Dict) -> List[Tuple[str, Dict[str, Any]]]: + #LOGGER.info('json_data = {:s}'.format(json.dumps(json_data))) + json_component_list : List[Dict] = json_data.get('component', []) + response = [] + for json_component in json_component_list: + #LOGGER.info('json_component = {:s}'.format(json.dumps(json_component))) + + endpoint = {} + + component_type = json_component.get('state', {}).get('type') + if component_type is None: continue + component_type = component_type.replace('oc-platform-types:', '') + component_type = component_type.replace('openconfig-platform-types:', '') + if component_type not in {'PORT'}: continue + endpoint['type'] = '-' + + #LOGGER.info('PORT json_component = {:s}'.format(json.dumps(json_component))) + + component_name = json_component.get('name') + if component_name is None: continue + + # TODO: improve mapping between interface name and component name + # By now, computed by time for the sake of saving time for the Hackfest. + interface_name = component_name.lower().replace('-port', '') + + endpoint['uuid'] = interface_name + endpoint['sample_types'] = { + KpiSampleType.KPISAMPLETYPE_BYTES_RECEIVED : PATH_IF_CTR.format(interface_name, 'in-octets' ), + KpiSampleType.KPISAMPLETYPE_BYTES_TRANSMITTED : PATH_IF_CTR.format(interface_name, 'out-octets'), + KpiSampleType.KPISAMPLETYPE_PACKETS_RECEIVED : PATH_IF_CTR.format(interface_name, 'in-pkts' ), + KpiSampleType.KPISAMPLETYPE_PACKETS_TRANSMITTED: PATH_IF_CTR.format(interface_name, 'out-pkts' ), + } + + if len(endpoint) == 0: continue + response.append(('/endpoints/endpoint[{:s}]'.format(endpoint['uuid']), endpoint)) + return response diff --git a/src/device/service/drivers/gnmi_openconfig/handlers/Interface.py b/src/device/service/drivers/gnmi_openconfig/handlers/Interface.py new file mode 100644 index 0000000000000000000000000000000000000000..20f79b3c2e15b58ab99166a68422fd35d40fd00f --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/handlers/Interface.py @@ -0,0 +1,248 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 json, logging +from typing import Any, Dict, List, Tuple +from ._Handler import _Handler +from .Tools import dict_get_first + +LOGGER = logging.getLogger(__name__) + +class InterfaceHandler(_Handler): + def get_resource_key(self) -> str: return '/interface' + def get_path(self) -> str: return '/interfaces/interface' + + def compose(self, resource_key : str, resource_value : Dict, delete : bool = False) -> Tuple[str, str]: + if_name = str (resource_value['name' ]) # ethernet-1/1 + sif_index = int (resource_value.get('sub_if_index' , 0 )) # 0 + + if delete: + PATH_TMPL = '/interfaces/interface[name={:s}]/subinterfaces/subinterface[index={:d}]' + str_path = PATH_TMPL.format(if_name, sif_index) + str_data = json.dumps({}) + return str_path, str_data + + if_enabled = bool(resource_value.get('enabled' , True)) # True/False + sif_enabled = bool(resource_value.get('sub_if_enabled' , True)) # True/False + sif_ipv4_enabled = bool(resource_value.get('sub_if_ipv4_enabled', True)) # True/False + sif_ipv4_address = str (resource_value['sub_if_ipv4_address' ]) # 172.16.0.1 + sif_ipv4_prefix = int (resource_value['sub_if_ipv4_prefix' ]) # 24 + + str_path = '/interfaces/interface[name={:s}]'.format(if_name) + str_data = json.dumps({ + 'name': if_name, + 'config': {'name': if_name, 'enabled': if_enabled}, + 'subinterfaces': { + 'subinterface': { + 'index': sif_index, + 'config': {'index': sif_index, 'enabled': sif_enabled}, + 'ipv4': { + 'config': {'enabled': sif_ipv4_enabled}, + 'addresses': { + 'address': { + 'ip': sif_ipv4_address, + 'config': {'ip': sif_ipv4_address, 'prefix_length': sif_ipv4_prefix}, + } + } + } + } + } + }) + return str_path, str_data + + def parse(self, json_data : Dict) -> List[Tuple[str, Dict[str, Any]]]: + #LOGGER.info('json_data = {:s}'.format(json.dumps(json_data))) + json_interface_list : List[Dict] = json_data.get('interface', []) + + response = [] + for json_interface in json_interface_list: + #LOGGER.info('json_interface = {:s}'.format(json.dumps(json_interface))) + + interface = {} + + interface_name = json_interface.get('name') + if interface_name is None: + LOGGER.info('DISCARDED json_interface = {:s}'.format(json.dumps(json_interface))) + continue + interface['name'] = interface_name + + CONFIG_FIELDS = ('config', 'openconfig-interface:config', 'oci:config') + json_config : Dict = dict_get_first(json_interface, CONFIG_FIELDS, default={}) + + STATE_FIELDS = ('state', 'openconfig-interface:state', 'oci:state') + json_state : Dict = dict_get_first(json_interface, STATE_FIELDS, default={}) + + interface_type = json_config.get('type') + if interface_type is None: interface_type = json_state.get('type') + if interface_type is None: + LOGGER.info('DISCARDED json_interface = {:s}'.format(json.dumps(json_interface))) + continue + interface_type = interface_type.replace('ianaift:', '') + interface_type = interface_type.replace('iana-if-type:', '') + interface['type'] = interface_type + + interface_mtu = json_config.get('mtu') + if interface_mtu is None: interface_mtu = json_state.get('mtu') + if interface_mtu is not None: interface['mtu'] = int(interface_mtu) + + interface_enabled = json_config.get('enabled') + if interface_enabled is None: interface_enabled = json_state.get('enabled') + interface['enabled'] = False if interface_enabled is None else bool(interface_enabled) + + interface_management = json_config.get('management') + if interface_management is None: interface_management = json_state.get('management') + interface['management'] = False if interface_management is None else bool(interface_management) + + interface_descr = json_interface.get('config', {}).get('description') + if interface_descr is not None: interface['description'] = interface_descr + + json_subinterfaces = json_interface.get('subinterfaces', {}) + json_subinterface_list : List[Dict] = json_subinterfaces.get('subinterface', []) + + for json_subinterface in json_subinterface_list: + #LOGGER.info('json_subinterface = {:s}'.format(json.dumps(json_subinterface))) + + subinterface = {} + + subinterface_index = json_subinterface.get('state', {}).get('index') + if subinterface_index is None: continue + subinterface['index'] = int(subinterface_index) + + subinterface_name = json_subinterface.get('state', {}).get('name') + if subinterface_name is None: continue + subinterface['name'] = subinterface_name + + subinterface_enabled = json_subinterface.get('state', {}).get('enabled', False) + subinterface['enabled'] = bool(subinterface_enabled) + + VLAN_FIELDS = ('vlan', 'openconfig-vlan:vlan', 'ocv:vlan') + json_vlan = dict_get_first(json_subinterface, VLAN_FIELDS, default={}) + + MATCH_FIELDS = ('match', 'openconfig-vlan:match', 'ocv:match') + json_vlan = dict_get_first(json_vlan, MATCH_FIELDS, default={}) + + SIN_TAG_FIELDS = ('single-tagged', 'openconfig-vlan:single-tagged', 'ocv:single-tagged') + json_vlan = dict_get_first(json_vlan, SIN_TAG_FIELDS, default={}) + + CONFIG_FIELDS = ('config', 'openconfig-vlan:config', 'ocv:config') + json_vlan = dict_get_first(json_vlan, CONFIG_FIELDS, default={}) + + VLAN_ID_FIELDS = ('vlan-id', 'openconfig-vlan:vlan-id', 'ocv:vlan-id') + subinterface_vlan_id = dict_get_first(json_vlan, VLAN_ID_FIELDS) + if subinterface_vlan_id is not None: subinterface['vlan_id'] = subinterface_vlan_id + + + # TODO: implement support for multiple IP addresses per subinterface + + IPV4_FIELDS = ('ipv4', 'openconfig-if-ip:ipv4', 'ociip:ipv4') + json_ipv4 = dict_get_first(json_subinterface, IPV4_FIELDS, default={}) + + IPV4_ADDRESSES_FIELDS = ('addresses', 'openconfig-if-ip:addresses', 'ociip:addresses') + json_ipv4_addresses = dict_get_first(json_ipv4, IPV4_ADDRESSES_FIELDS, default={}) + + IPV4_ADDRESS_FIELDS = ('address', 'openconfig-if-ip:address', 'ociip:address') + json_ipv4_address_list : List[Dict] = dict_get_first(json_ipv4_addresses, IPV4_ADDRESS_FIELDS, default=[]) + + #ipv4_addresses = [] + for json_ipv4_address in json_ipv4_address_list: + #LOGGER.info('json_ipv4_address = {:s}'.format(json.dumps(json_ipv4_address))) + + STATE_FIELDS = ('state', 'openconfig-if-ip:state', 'ociip:state') + json_ipv4_address_state = dict_get_first(json_ipv4_address, STATE_FIELDS, default={}) + + #ipv4_address = {} + + #ORIGIN_FIELDS = ('origin', 'openconfig-if-ip:origin', 'ociip:origin') + #ipv4_address_origin = dict_get_first(json_ipv4_address_state, ORIGIN_FIELDS, default={}) + #if ipv4_address_origin is not None: ipv4_address['origin'] = ipv4_address_origin + + IP_FIELDS = ('ip', 'openconfig-if-ip:ip', 'ociip:ip') + ipv4_address_ip = dict_get_first(json_ipv4_address_state, IP_FIELDS) + #if ipv4_address_ip is not None: ipv4_address['address_ip'] = ipv4_address_ip + if ipv4_address_ip is not None: subinterface['address_ip'] = ipv4_address_ip + + PREFIX_FIELDS = ('prefix-length', 'openconfig-if-ip:prefix-length', 'ociip:prefix-length') + ipv4_address_prefix = dict_get_first(json_ipv4_address_state, PREFIX_FIELDS) + #if ipv4_address_prefix is not None: ipv4_address['address_prefix'] = int(ipv4_address_prefix) + if ipv4_address_prefix is not None: subinterface['address_prefix'] = int(ipv4_address_prefix) + + #if len(ipv4_address) == 0: continue + #ipv4_addresses.append(ipv4_address) + + #subinterface['ipv4_addresses'] = ipv4_addresses + + if len(subinterface) == 0: continue + resource_key = '/interface[{:s}]/subinterface[{:s}]'.format(interface['name'], str(subinterface['index'])) + response.append((resource_key, subinterface)) + + if len(interface) == 0: continue + response.append(('/interface[{:s}]'.format(interface['name']), interface)) + + return response + + def parse_counters(self, json_data : Dict) -> List[Tuple[str, Dict[str, Any]]]: + LOGGER.info('[parse_counters] json_data = {:s}'.format(json.dumps(json_data))) + json_interface_list : List[Dict] = json_data.get('interface', []) + + response = [] + for json_interface in json_interface_list: + LOGGER.info('[parse_counters] json_interface = {:s}'.format(json.dumps(json_interface))) + + interface = {} + + NAME_FIELDS = ('name', 'openconfig-interface:name', 'oci:name') + interface_name = dict_get_first(json_interface, NAME_FIELDS) + if interface_name is None: continue + interface['name'] = interface_name + + STATE_FIELDS = ('state', 'openconfig-interface:state', 'oci:state') + json_state = dict_get_first(json_interface, STATE_FIELDS, default={}) + + COUNTERS_FIELDS = ('counters', 'openconfig-interface:counters', 'oci:counters') + json_counters = dict_get_first(json_state, COUNTERS_FIELDS, default={}) + + IN_PKTS_FIELDS = ('in-pkts', 'openconfig-interface:in-pkts', 'oci:in-pkts') + interface_in_pkts = dict_get_first(json_counters, IN_PKTS_FIELDS) + if interface_in_pkts is not None: interface['in-pkts'] = int(interface_in_pkts) + + IN_OCTETS_FIELDS = ('in-octets', 'openconfig-interface:in-octets', 'oci:in-octets') + interface_in_octets = dict_get_first(json_counters, IN_OCTETS_FIELDS) + if interface_in_octets is not None: interface['in-octets'] = int(interface_in_octets) + + IN_ERRORS_FIELDS = ('in-errors', 'openconfig-interface:in-errors', 'oci:in-errors') + interface_in_errors = dict_get_first(json_counters, IN_ERRORS_FIELDS) + if interface_in_errors is not None: interface['in-errors'] = int(interface_in_errors) + + OUT_OCTETS_FIELDS = ('out-octets', 'openconfig-interface:out-octets', 'oci:out-octets') + interface_out_octets = dict_get_first(json_counters, OUT_OCTETS_FIELDS) + if interface_out_octets is not None: interface['out-octets'] = int(interface_out_octets) + + OUT_PKTS_FIELDS = ('out-pkts', 'openconfig-interface:out-pkts', 'oci:out-pkts') + interface_out_pkts = dict_get_first(json_counters, OUT_PKTS_FIELDS) + if interface_out_pkts is not None: interface['out-pkts'] = int(interface_out_pkts) + + OUT_ERRORS_FIELDS = ('out-errors', 'openconfig-interface:out-errors', 'oci:out-errors') + interface_out_errors = dict_get_first(json_counters, OUT_ERRORS_FIELDS) + if interface_out_errors is not None: interface['out-errors'] = int(interface_out_errors) + + OUT_DISCARDS_FIELDS = ('out-discards', 'openconfig-interface:out-discards', 'oci:out-discards') + interface_out_discards = dict_get_first(json_counters, OUT_DISCARDS_FIELDS) + if interface_out_discards is not None: interface['out-discards'] = int(interface_out_discards) + + #LOGGER.info('[parse_counters] interface = {:s}'.format(str(interface))) + + if len(interface) == 0: continue + response.append(('/interface[{:s}]'.format(interface['name']), interface)) + + return response diff --git a/src/device/service/drivers/gnmi_openconfig/handlers/InterfaceCounter.py b/src/device/service/drivers/gnmi_openconfig/handlers/InterfaceCounter.py new file mode 100644 index 0000000000000000000000000000000000000000..a45dc9e7f972445691143df15d6d56d079384fc4 --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/handlers/InterfaceCounter.py @@ -0,0 +1,80 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 json, logging +from typing import Any, Dict, List, Tuple +from ._Handler import _Handler +from .Tools import dict_get_first + +LOGGER = logging.getLogger(__name__) + +class InterfaceCounterHandler(_Handler): + def get_resource_key(self) -> str: return '/interface/counters' + def get_path(self) -> str: return '/interfaces/interface/state/counters' + + def parse(self, json_data : Dict) -> List[Tuple[str, Dict[str, Any]]]: + LOGGER.info('[parse] json_data = {:s}'.format(json.dumps(json_data))) + json_interface_list : List[Dict] = json_data.get('interface', []) + + response = [] + for json_interface in json_interface_list: + LOGGER.info('[parse] json_interface = {:s}'.format(json.dumps(json_interface))) + + interface = {} + + NAME_FIELDS = ('name', 'openconfig-interface:name', 'oci:name') + interface_name = dict_get_first(json_interface, NAME_FIELDS) + if interface_name is None: continue + interface['name'] = interface_name + + STATE_FIELDS = ('state', 'openconfig-interface:state', 'oci:state') + json_state = dict_get_first(json_interface, STATE_FIELDS, default={}) + + COUNTERS_FIELDS = ('counters', 'openconfig-interface:counters', 'oci:counters') + json_counters = dict_get_first(json_state, COUNTERS_FIELDS, default={}) + + IN_PKTS_FIELDS = ('in-pkts', 'openconfig-interface:in-pkts', 'oci:in-pkts') + interface_in_pkts = dict_get_first(json_counters, IN_PKTS_FIELDS) + if interface_in_pkts is not None: interface['in-pkts'] = int(interface_in_pkts) + + IN_OCTETS_FIELDS = ('in-octets', 'openconfig-interface:in-octets', 'oci:in-octets') + interface_in_octets = dict_get_first(json_counters, IN_OCTETS_FIELDS) + if interface_in_octets is not None: interface['in-octets'] = int(interface_in_octets) + + IN_ERRORS_FIELDS = ('in-errors', 'openconfig-interface:in-errors', 'oci:in-errors') + interface_in_errors = dict_get_first(json_counters, IN_ERRORS_FIELDS) + if interface_in_errors is not None: interface['in-errors'] = int(interface_in_errors) + + OUT_OCTETS_FIELDS = ('out-octets', 'openconfig-interface:out-octets', 'oci:out-octets') + interface_out_octets = dict_get_first(json_counters, OUT_OCTETS_FIELDS) + if interface_out_octets is not None: interface['out-octets'] = int(interface_out_octets) + + OUT_PKTS_FIELDS = ('out-pkts', 'openconfig-interface:out-pkts', 'oci:out-pkts') + interface_out_pkts = dict_get_first(json_counters, OUT_PKTS_FIELDS) + if interface_out_pkts is not None: interface['out-pkts'] = int(interface_out_pkts) + + OUT_ERRORS_FIELDS = ('out-errors', 'openconfig-interface:out-errors', 'oci:out-errors') + interface_out_errors = dict_get_first(json_counters, OUT_ERRORS_FIELDS) + if interface_out_errors is not None: interface['out-errors'] = int(interface_out_errors) + + OUT_DISCARDS_FIELDS = ('out-discards', 'openconfig-interface:out-discards', 'oci:out-discards') + interface_out_discards = dict_get_first(json_counters, OUT_DISCARDS_FIELDS) + if interface_out_discards is not None: interface['out-discards'] = int(interface_out_discards) + + #LOGGER.info('[parse] interface = {:s}'.format(str(interface))) + + if len(interface) == 0: continue + response.append(('/interface[{:s}]'.format(interface['name']), interface)) + + return response diff --git a/src/device/service/drivers/gnmi_openconfig/handlers/NetworkInstance.py b/src/device/service/drivers/gnmi_openconfig/handlers/NetworkInstance.py new file mode 100644 index 0000000000000000000000000000000000000000..aed821a06fa7fcafe96a21ad5f5fa06be2902038 --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/handlers/NetworkInstance.py @@ -0,0 +1,62 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 json, logging +from typing import Any, Dict, List, Tuple +from ._Handler import _Handler + +LOGGER = logging.getLogger(__name__) + +class NetworkInstanceHandler(_Handler): + def get_resource_key(self) -> str: return '/network_instance' + def get_path(self) -> str: return '/network-instances/network-instance' + + def compose(self, resource_key : str, resource_value : Dict, delete : bool = False) -> Tuple[str, str]: + ni_name = str(resource_value['name']) # test-svc + + if delete: + PATH_TMPL = '/network-instances/network-instance[name={:s}]' + str_path = PATH_TMPL.format(ni_name) + str_data = json.dumps({}) + return str_path, str_data + + ni_type = str(resource_value['type']) # L3VRF / L2VSI / ... + + # not works: [FailedPrecondition] unsupported identifier 'DIRECTLY_CONNECTED' + #protocols = [self._compose_directly_connected()] + + MAP_OC_NI_TYPE = { + 'L3VRF': 'openconfig-network-instance-types:L3VRF', + } + ni_type = MAP_OC_NI_TYPE.get(ni_type, ni_type) + + str_path = '/network-instances/network-instance[name={:s}]'.format(ni_name) + str_data = json.dumps({ + 'name': ni_name, + 'config': {'name': ni_name, 'type': ni_type}, + #'protocols': {'protocol': protocols}, + }) + return str_path, str_data + + def _compose_directly_connected(self, name=None, enabled=True) -> Dict: + identifier = 'DIRECTLY_CONNECTED' + if name is None: name = 'DIRECTLY_CONNECTED' + return { + 'identifier': identifier, 'name': name, + 'config': {'identifier': identifier, 'name': name, 'enabled': enabled}, + } + + def parse(self, json_data : Dict) -> List[Tuple[str, Dict[str, Any]]]: + response = [] + return response diff --git a/src/device/service/drivers/gnmi_openconfig/handlers/NetworkInstanceInterface.py b/src/device/service/drivers/gnmi_openconfig/handlers/NetworkInstanceInterface.py new file mode 100644 index 0000000000000000000000000000000000000000..205373fca870ea7338a3c9c043c60306b535c1c0 --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/handlers/NetworkInstanceInterface.py @@ -0,0 +1,46 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 json, logging +from typing import Any, Dict, List, Tuple +from ._Handler import _Handler + +LOGGER = logging.getLogger(__name__) + +class NetworkInstanceInterfaceHandler(_Handler): + def get_resource_key(self) -> str: return '/network_instance/interface' + def get_path(self) -> str: return '/network-instances/network-instance/interfaces' + + def compose(self, resource_key : str, resource_value : Dict, delete : bool = False) -> Tuple[str, str]: + ni_name = str(resource_value['name' ]) # test-svc + if_name = str(resource_value['if_name' ]) # ethernet-1/1 + sif_index = int(resource_value['sif_index']) # 0 + if_id = '{:s}.{:d}'.format(if_name, sif_index) + + if delete: + PATH_TMPL = '/network-instances/network-instance[name={:s}]/interfaces/interface[id={:s}]' + str_path = PATH_TMPL.format(ni_name, if_id) + str_data = json.dumps({}) + return str_path, str_data + + str_path = '/network-instances/network-instance[name={:s}]/interfaces/interface[id={:s}]'.format(ni_name, if_id) + str_data = json.dumps({ + 'id': if_id, + 'config': {'id': if_id, 'interface': if_name, 'subinterface': sif_index}, + }) + return str_path, str_data + + def parse(self, json_data : Dict) -> List[Tuple[str, Dict[str, Any]]]: + response = [] + return response diff --git a/src/device/service/drivers/gnmi_openconfig/handlers/NetworkInstanceStaticRoute.py b/src/device/service/drivers/gnmi_openconfig/handlers/NetworkInstanceStaticRoute.py new file mode 100644 index 0000000000000000000000000000000000000000..9d75e9ac66e023c8f7be44d892cb6eec647761eb --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/handlers/NetworkInstanceStaticRoute.py @@ -0,0 +1,61 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 json, logging +from typing import Any, Dict, List, Tuple +from ._Handler import _Handler + +LOGGER = logging.getLogger(__name__) + +class NetworkInstanceStaticRouteHandler(_Handler): + def get_resource_key(self) -> str: return '/network_instance/static_route' + def get_path(self) -> str: return '/network-instances/network-instance/static_route' + + def compose(self, resource_key : str, resource_value : Dict, delete : bool = False) -> Tuple[str, str]: + ni_name = str(resource_value['name' ]) # test-svc + prefix = str(resource_value['prefix' ]) # '172.0.1.0/24' + + identifier = 'STATIC' + name = 'static' + if delete: + PATH_TMPL = '/network-instances/network-instance[name={:s}]/protocols' + PATH_TMPL += '/protocol[identifier={:s}][name={:s}]/static-routes/static[prefix={:s}]' + str_path = PATH_TMPL.format(ni_name, identifier, name, prefix) + str_data = json.dumps({}) + return str_path, str_data + + next_hop = str(resource_value['next_hop' ]) # '172.0.0.1' + next_hop_index = int(resource_value.get('next_hop_index', 0)) # 0 + + PATH_TMPL = '/network-instances/network-instance[name={:s}]/protocols/protocol[identifier={:s}][name={:s}]' + str_path = PATH_TMPL.format(ni_name, identifier, name) + str_data = json.dumps({ + 'identifier': identifier, 'name': name, + 'config': {'identifier': identifier, 'name': name, 'enabled': True}, + 'static_routes': {'static': [{ + 'prefix': prefix, + 'config': {'prefix': prefix}, + 'next_hops': { + 'next-hop': [{ + 'index': next_hop_index, + 'config': {'index': next_hop_index, 'next_hop': next_hop} + }] + } + }]} + }) + return str_path, str_data + + def parse(self, json_data : Dict) -> List[Tuple[str, Dict[str, Any]]]: + response = [] + return response diff --git a/src/device/service/drivers/gnmi_openconfig/handlers/Tools.py b/src/device/service/drivers/gnmi_openconfig/handlers/Tools.py new file mode 100644 index 0000000000000000000000000000000000000000..30343ac28a46a0c1d24bcb66d07fa03fa377f9fa --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/handlers/Tools.py @@ -0,0 +1,30 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 re +from typing import Any, Dict, Iterable + +RE_REMOVE_FILTERS = re.compile(r'\[[^\]]+\]') +RE_REMOVE_NAMESPACES = re.compile(r'\/[a-zA-Z0-9\_\-]+:') + +def get_schema(resource_key : str): + resource_key = RE_REMOVE_FILTERS.sub('', resource_key) + resource_key = RE_REMOVE_NAMESPACES.sub('/', resource_key) + return resource_key + +def dict_get_first(d : Dict, field_names : Iterable[str], default=None) -> Any: + for field_name in field_names: + if field_name not in d: continue + return d[field_name] + return default diff --git a/src/device/service/drivers/gnmi_openconfig/handlers/_Handler.py b/src/device/service/drivers/gnmi_openconfig/handlers/_Handler.py new file mode 100644 index 0000000000000000000000000000000000000000..d20c77b1165decce7ea07243beb782a6b749734b --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/handlers/_Handler.py @@ -0,0 +1,32 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 Any, Dict, List, Tuple + +class _Handler: + def get_resource_key(self) -> str: + # Retrieve the TeraFlowSDN resource_key path schema used to point this handler + raise NotImplementedError() + + def get_path(self) -> str: + # Retrieve the OpenConfig path schema used to interrogate the device + raise NotImplementedError() + + def compose(self, resource_key : str, resource_value : Dict, delete : bool = False) -> Tuple[str, str]: + # Compose a Set/Delete message based on the resource_key/resource_value fields, and the delete flag + raise NotImplementedError() + + def parse(self, json_data : Dict) -> List[Tuple[str, Dict[str, Any]]]: + # Parse a Reply from the device and return a list of resource_key/resource_value pairs + raise NotImplementedError() diff --git a/src/device/service/drivers/gnmi_openconfig/handlers/__init__.py b/src/device/service/drivers/gnmi_openconfig/handlers/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..39cd7c66ad5e8c16e89192ad0f2ffb7c43ae6c50 --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/handlers/__init__.py @@ -0,0 +1,103 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 typing import Dict, List, Optional, Tuple, Union +from device.service.driver_api._Driver import RESOURCE_ENDPOINTS, RESOURCE_INTERFACES, RESOURCE_NETWORK_INSTANCES +from ._Handler import _Handler +from .Component import ComponentHandler +from .Interface import InterfaceHandler +from .InterfaceCounter import InterfaceCounterHandler +from .NetworkInstance import NetworkInstanceHandler +from .NetworkInstanceInterface import NetworkInstanceInterfaceHandler +from .NetworkInstanceStaticRoute import NetworkInstanceStaticRouteHandler +from .Tools import get_schema + +LOGGER = logging.getLogger(__name__) + +comph = ComponentHandler() +ifaceh = InterfaceHandler() +ifctrh = InterfaceCounterHandler() +nih = NetworkInstanceHandler() +niifh = NetworkInstanceInterfaceHandler() +nisrh = NetworkInstanceStaticRouteHandler() + +ALL_RESOURCE_KEYS = [ + RESOURCE_ENDPOINTS, + RESOURCE_INTERFACES, + RESOURCE_NETWORK_INSTANCES, +] + +RESOURCE_KEY_MAPPER = { + RESOURCE_ENDPOINTS : comph.get_resource_key(), + RESOURCE_INTERFACES : ifaceh.get_resource_key(), + RESOURCE_NETWORK_INSTANCES : nih.get_resource_key(), +} + +PATH_MAPPER = { + '/components' : comph.get_path(), + '/interfaces' : ifaceh.get_path(), + '/network-instances' : nih.get_path(), +} + +RESOURCE_KEY_TO_HANDLER = { + comph.get_resource_key() : comph, + ifaceh.get_resource_key() : ifaceh, + ifctrh.get_resource_key() : ifctrh, + nih.get_resource_key() : nih, + niifh.get_resource_key() : niifh, + nisrh.get_resource_key() : nisrh, +} + +PATH_TO_HANDLER = { + comph.get_path() : comph, + ifaceh.get_path() : ifaceh, + ifctrh.get_path() : ifctrh, + nih.get_path() : nih, + niifh.get_path() : niifh, + nisrh.get_path() : nisrh, +} + +def get_handler( + resource_key : Optional[str] = None, path : Optional[str] = None, raise_if_not_found=True +) -> Optional[_Handler]: + if (resource_key is None) == (path is None): + MSG = 'Exactly one of resource_key({:s}) or path({:s}) must be specified' + raise Exception(MSG.format(str(resource_key), str(path))) # pylint: disable=broad-exception-raised + if resource_key is not None: + resource_key_schema = get_schema(resource_key) + resource_key_schema = RESOURCE_KEY_MAPPER.get(resource_key_schema, resource_key_schema) + handler = RESOURCE_KEY_TO_HANDLER.get(resource_key_schema) + if handler is None and raise_if_not_found: + MSG = 'Handler not found: resource_key={:s} resource_key_schema={:s}' + # pylint: disable=broad-exception-raised + raise Exception(MSG.format(str(resource_key), str(resource_key_schema))) + elif path is not None: + path_schema = get_schema(path) + path_schema = PATH_MAPPER.get(path_schema, path_schema) + handler = PATH_TO_HANDLER.get(path_schema) + if handler is None and raise_if_not_found: + MSG = 'Handler not found: resource_key={:s} resource_key_schema={:s}' + # pylint: disable=broad-exception-raised + raise Exception(MSG.format(str(resource_key), str(resource_key_schema))) + return handler + +def get_path(resource_key : str) -> str: + return get_handler(resource_key=resource_key).get_path() + +def parse(str_path : str, value : Union[Dict, List]): + return get_handler(path=str_path).parse(value) + +def compose(resource_key : str, resource_value : Union[Dict, List], delete : bool = False) -> Tuple[str, str]: + return get_handler(resource_key=resource_key).compose(resource_key, resource_value, delete=delete) diff --git a/src/device/service/drivers/gnmi_openconfig/handlers/old_bgp_handler.txt b/src/device/service/drivers/gnmi_openconfig/handlers/old_bgp_handler.txt new file mode 100644 index 0000000000000000000000000000000000000000..595a19788bce7ff0990346ef249ad3ce71f55efa --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/handlers/old_bgp_handler.txt @@ -0,0 +1,138 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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. + + +# WARNING: this handler is work in progress. Use with care! + +import logging, json +from typing import Any, Dict, List, Tuple + +LOGGER = logging.getLogger(__name__) + +class NetworkInstanceHandler: + def get_resource_key(self) -> str: return '/network_instance' + def get_path(self) -> str: return '/network-instances/network-instance' + + def compose_set(self, resource_key : str, resource_value : Dict) -> Tuple[str, str]: + ni_name = str(resource_value['name']) # test-svc + ni_type = str(resource_value['type']) # L3VRF / + + if_name = str (resource_value['name' ]) # ethernet-1/1 + if_enabled = bool(resource_value.get('enabled' , True)) # True/False + sif_index = int (resource_value.get('sub_if_index' , 0 )) # 0 + sif_enabled = bool(resource_value.get('sub_if_enabled' , True)) # True/False + sif_ipv4_enabled = bool(resource_value.get('sub_if_ipv4_enabled', True)) # True/False + sif_ipv4_address = str (resource_value['sub_if_ipv4_address' ]) # 172.16.0.1 + sif_ipv4_prefix = int (resource_value['sub_if_ipv4_prefix' ]) # 24 + + str_path = '/interfaces/interface[name={:s}]'.format(if_name) + str_data = json.dumps({ + "name": if_name, + "config": {"name": if_name, "enabled": if_enabled}, + "subinterfaces": { + "subinterface": { + "index": sif_index, + "config": {"index": sif_index, "enabled": sif_enabled}, + "ipv4": { + "config": {"enabled": sif_ipv4_enabled}, + "addresses": { + "address": { + "ip": sif_ipv4_address, + "config": {"ip": sif_ipv4_address, "prefix_length": sif_ipv4_prefix}, + } + } + } + } + } + }) + return str_path, str_data + + + #oc_ni = openconfig_network_instance() + #ni = oc_ni.network_instances.network_instance.add(name=ni_name) + #ni.config.name = ni_name + + #ni_desc = resource_value.get('description') + #if ni_desc is not None: ni.config.description = ni_desc + + #if ni_type == 'L3VRF': + # ni.config.type = 'L3VRF' + # #ni_router_id = resource_value.get('router_id') + # #if ni_router_id is not None: ni.config.router_id = ni_router_id + + # proto_bgp = ni.protocols.protocol.add(identifier='BGP', name=ni_name) + # proto_bgp.config.identifier = 'BGP' + # proto_bgp.config.name = ni_name + # proto_bgp.config.enabled = True + # proto_bgp.bgp.global_.config.as_ = 65000 + # proto_bgp.bgp.global_.config.router_id = '172.0.0.1' + + # #ni.config.route_distinguisher = resource_value['route_distinguisher'] + #elif ni_type == 'L3VRF': + # pass + #else: + # raise NotImplementedError() + + #str_path = '/network-instances/network-instance[name={:s}]'.format(ni_name) + #str_data = pybindJSON.dumps(ni, mode='default') + + #str_path = '/network-instances/network-instance[name={:s}]/protocols/protocol[identifier=BGP][name=BGP]'.format(ni_name) + #str_data = json.dumps({ + # "identifier": "BGP", + # "name": "BGP", + # "config": {"identifier": "BGP", "name": "BGP", "enabled": True}, + # "bgp": {"global": {"config": {"as": 65000, "router-id": "5.5.5.5"}}} + #}) + + str_path = '/network-instances/network-instance[name=test-svc]' + str_data = json.dumps({ + "name": "test-svc", + "config": { + "name": "test-svc", + "type": "openconfig-network-instance-types:L3VRF" + }, + "protocols": { + "protocol": [ + { + "identifier": "DIRECTLY_CONNECTED", + "name": "DIRECTLY-CONNECTED", + "config": {"identifier": "DIRECTLY_CONNECTED", "name": "DIRECTLY-CONNECTED", "enabled": True}, + }, + { + "identifier": "STATIC", + "name": "static", + "config": {"identifier": "STATIC", "name": "static", "enabled": True}, + "static_routes": { + "static": [ + { + "prefix": "172.0.1.0/24", + "config": {"prefix": "172.0.1.0/24"}, + "next_hops": { + "next-hop": [{"index": 0, "config": {"index": 0, "next_hop": "172.0.0.1"}}] + } + } + ] + } + } + ] + }, + }) + + + #str_path = '/network-instances/network-instance[name={:s}]/protocols/protocol[identifier=DIRECTLY_CONNECTED][name=DIR]'.format(ni_name) + #str_data = json.dumps({ + # "identifier": "DIRECTLY_CONNECTED", + # "name": "DIR", + # "config": {"identifier": "DIRECTLY_CONNECTED", "name": "DIR", "enabled": True}, + #}) diff --git a/src/device/service/drivers/gnmi_openconfig/tools/Capabilities.py b/src/device/service/drivers/gnmi_openconfig/tools/Capabilities.py new file mode 100644 index 0000000000000000000000000000000000000000..b90bf3db887874d3c9015336cc105b3429c8e64e --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/tools/Capabilities.py @@ -0,0 +1,36 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 Optional, Set, Union +from common.tools.grpc.Tools import grpc_message_to_json +from ..gnmi.gnmi_pb2 import CapabilityRequest # pylint: disable=no-name-in-module +from ..gnmi.gnmi_pb2_grpc import gNMIStub + +def get_supported_encodings( + stub : gNMIStub, username : str, password : str, timeout : Optional[int] = None +) -> Set[Union[str, int]]: + metadata = [('username', username), ('password', password)] + req = CapabilityRequest() + reply = stub.Capabilities(req, metadata=metadata, timeout=timeout) + + data = grpc_message_to_json(reply) + supported_encodings = { + supported_encoding + for supported_encoding in data.get('supported_encodings', []) + if isinstance(supported_encoding, str) + } + if len(supported_encodings) == 0: + # pylint: disable=broad-exception-raised + raise Exception('No supported encodings found') + return supported_encodings diff --git a/src/device/service/drivers/gnmi_openconfig/tools/Channel.py b/src/device/service/drivers/gnmi_openconfig/tools/Channel.py new file mode 100644 index 0000000000000000000000000000000000000000..264dd032166117873702643e17acb344b408b194 --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/tools/Channel.py @@ -0,0 +1,34 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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, ssl + +def get_grpc_channel(address : str, port : int, use_tls : bool, logger : logging.Logger) -> grpc.Channel: + endpoint = str(address) + ':' + str(port) + logger.info('Connecting gNMI {:s}...'.format(endpoint)) + if use_tls: + logger.debug('Getting server certificate...') + str_server_certificate = ssl.get_server_certificate((str(address), int(port))) + bytes_server_certificate = str_server_certificate.encode('UTF-8') + logger.debug('Using secure SSL channel...') + credentials = grpc.ssl_channel_credentials( + root_certificates=bytes_server_certificate, private_key=None, certificate_chain=None) + options = [ + #('grpc.ssl_target_name_override', options.altName,) + ] + channel = grpc.secure_channel(endpoint, credentials, options) + else: + logger.debug('Using insecure channel...') + channel = grpc.insecure_channel(endpoint) + return channel diff --git a/src/device/service/drivers/gnmi_openconfig/tools/Path.py b/src/device/service/drivers/gnmi_openconfig/tools/Path.py new file mode 100644 index 0000000000000000000000000000000000000000..40ab28dc6bbaf8a65b667804dfe9285f36864e29 --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/tools/Path.py @@ -0,0 +1,98 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 re +from typing import List +from ..gnmi.gnmi_pb2 import Path, PathElem + +RE_PATH_SPLIT = re.compile(r'/(?=(?:[^\[\]]|\[[^\[\]]+\])*$)') +RE_PATH_KEYS = re.compile(r'\[(.*?)\]') + +def path_from_string(path='/'): + if not path: return Path(elem=[]) + + if path[0] == '/': + if path[-1] == '/': + path_list = RE_PATH_SPLIT.split(path)[1:-1] + else: + path_list = RE_PATH_SPLIT.split(path)[1:] + else: + if path[-1] == '/': + path_list = RE_PATH_SPLIT.split(path)[:-1] + else: + path_list = RE_PATH_SPLIT.split(path) + + path = [] + for elem in path_list: + elem_name = elem.split('[', 1)[0] + elem_keys = RE_PATH_KEYS.findall(elem) + dict_keys = dict(x.split('=', 1) for x in elem_keys) + path.append(PathElem(name=elem_name, key=dict_keys)) + + return Path(elem=path) + +def path_to_string(path : Path) -> str: + path_parts = list() + for elem in path.elem: + kv_list = list() + for key in elem.key: + value = elem.key[key] + kv = '{:s}={:s}'.format(key, value) + kv_list.append(kv) + + path_part_name = elem.name + if len(kv_list) == 0: + path_parts.append(path_part_name) + else: + str_kv = ', '.join(kv_list) + path_part = '{:s}[{:s}]'.format(path_part_name, str_kv) + path_parts.append(path_part) + + str_path = '/{:s}'.format('/'.join(path_parts)) + return str_path + +def parse_xpath(xpath : str) -> str: + xpath = xpath.replace('//', '/') + xpath = xpath.replace('oci:interface[', 'interface[') + xpath = xpath.replace('/oci', '/openconfig-interfaces') + xpath = re.sub(r"\[oci:name='(.*?)'\]", r"[name=\1]", xpath) + # Eliminar el contador del final + xpath = '/'.join(xpath.split('/')[:-1]) + '/' + return xpath + +def split_resource_key(path): + pattern = r'/state/counters/(.*)' + match = re.search(pattern, path) + if match is None: return None + return match.group(1) + +def dict_to_xpath(d: dict) -> str: + xpath = '/' + for item in d['elem']: + name = item.get('name') + if name == 'interface': + key = item.get('key') + interface_name = key.get('name') + xpath += f"/oci:interface[oci:name='{interface_name}']" + else: + xpath += f"/{name}" + xpath = xpath.replace('openconfig-interfaces', 'oci') + return xpath + +def compose_path(base_path : str, path_filters : List[str] = []): + new_path = '' if base_path is None else str(base_path) + for path_filter in path_filters: + if path_filter == '': continue + new_path = '{:s}[{:s}]'.format(new_path, path_filter) + return new_path diff --git a/src/device/service/drivers/gnmi_openconfig/tools/Subscriptions.py b/src/device/service/drivers/gnmi_openconfig/tools/Subscriptions.py new file mode 100644 index 0000000000000000000000000000000000000000..18b6445ae31c00495c4f3a84922c9c8d4198b3f7 --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/tools/Subscriptions.py @@ -0,0 +1,47 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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. + +# Collection of samples through NetConf is very slow and each request collects all the data. +# Populate a cache periodically (when first interface is interrogated). +# Evict data after some seconds, when data is considered as outdated + +import anytree +from typing import Any, List +from device.service.driver_api.AnyTreeTools import TreeNode, get_subnode, set_subnode_value + +class Subscriptions: + def __init__(self) -> None: + self.__resolver = anytree.Resolver(pathattr='name') + self.__subscriptions = TreeNode('.') + + def add( + self, resource_path : List[str], sampling_duration : float, sampling_interval : float, value : Any + ) -> None: + subscription_path = resource_path + ['{:.3f}:{:.3f}'.format(sampling_duration, sampling_interval)] + set_subnode_value(self.__resolver, self.__subscriptions, subscription_path, value) + + def get( + self, resource_path : List[str], sampling_duration : float, sampling_interval : float + ) -> TreeNode: + subscription_path = resource_path + ['{:.3f}:{:.3f}'.format(sampling_duration, sampling_interval)] + value = get_subnode(self.__resolver, self.__subscriptions, subscription_path) + return value + + def delete( + self, reference : TreeNode + ) -> None: + parent : TreeNode = reference.parent + children = list(parent.children) + children.remove(reference) + parent.children = tuple(children) diff --git a/src/device/service/drivers/gnmi_openconfig/tools/Value.py b/src/device/service/drivers/gnmi_openconfig/tools/Value.py new file mode 100644 index 0000000000000000000000000000000000000000..4797930a17360d8a780e99ea9ac05c0e3a1f7abc --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/tools/Value.py @@ -0,0 +1,52 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 base64, json +from typing import Any +from ..gnmi.gnmi_pb2 import TypedValue + +def decode_value(value : TypedValue) -> Any: + encoding = value.WhichOneof('value') + if encoding == 'json_val': + value = value.json_val + #mdl, cls = self._classes[className] + #obj = json.loads(strObj) + #if isinstance(obj, (list,)): + # obj = map(lambda n: pybindJSON.loads(n, mdl, cls.__name__), obj) + # data = map(lambda n: json.loads(pybindJSON.dumps(n, mode='default')), obj) + #else: + # obj = pybindJSON.loads(obj, mdl, cls.__name__) + # data = json.loads(pybindJSON.dumps(obj, mode='default')) + raise NotImplementedError() + #return value + elif encoding == 'json_ietf_val': + value : str = value.json_ietf_val + try: + return json.loads(value) + except json.decoder.JSONDecodeError: + # Assume is Base64-encoded + b_b64_value = value.encode('UTF-8') + b_value = base64.b64decode(b_b64_value, validate=True) + value = b_value.decode('UTF-8') + return json.loads(value) + else: + MSG = 'Unsupported Encoding({:s}) in Value({:s})' + # pylint: disable=broad-exception-raised + raise Exception(MSG.format(str(encoding), str(value))) + +def value_exists(value) -> bool: + if value is None: return False + if isinstance(value, Exception): return False + if issubclass(type(value), Exception): return False + return True diff --git a/src/device/service/drivers/gnmi_openconfig/tools/__init__.py b/src/device/service/drivers/gnmi_openconfig/tools/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..1549d9811aa5d1c193a44ad45d0d7773236c0612 --- /dev/null +++ b/src/device/service/drivers/gnmi_openconfig/tools/__init__.py @@ -0,0 +1,14 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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/device/service/drivers/openconfig/OpenConfigDriver.py b/src/device/service/drivers/openconfig/OpenConfigDriver.py index ac67c4ab0d314adb3ce2af0aaffeda18e67334fc..b34efbc8fbcc8e4a340e8c2282268b9f0246fddc 100644 --- a/src/device/service/drivers/openconfig/OpenConfigDriver.py +++ b/src/device/service/drivers/openconfig/OpenConfigDriver.py @@ -12,6 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import json import anytree, copy, logging, pytz, queue, re, threading #import lxml.etree as ET from datetime import datetime, timedelta @@ -28,7 +29,7 @@ from device.service.driver_api.Exceptions import UnsupportedResourceKeyException from device.service.driver_api._Driver import _Driver from device.service.driver_api.AnyTreeTools import TreeNode, get_subnode, set_subnode_value #dump_subtree #from .Tools import xml_pretty_print, xml_to_dict, xml_to_file -from .templates import ALL_RESOURCE_KEYS, EMPTY_CONFIG, compose_config, get_filter, parse +from .templates import ALL_RESOURCE_KEYS, EMPTY_CONFIG, compose_config, get_filter, parse, cli_compose_config from .RetryDecorator import retry DEBUG_MODE = False @@ -58,18 +59,20 @@ class NetconfSessionHandler: self.__connected = threading.Event() self.__address = address self.__port = int(port) - self.__username = settings.get('username') - self.__password = settings.get('password') - self.__vendor = settings.get('vendor') - self.__key_filename = settings.get('key_filename') - self.__hostkey_verify = settings.get('hostkey_verify', True) - self.__look_for_keys = settings.get('look_for_keys', True) - self.__allow_agent = settings.get('allow_agent', True) - self.__force_running = settings.get('force_running', False) - self.__commit_per_rule = settings.get('commit_per_rule', False) - self.__device_params = settings.get('device_params', {}) - self.__manager_params = settings.get('manager_params', {}) - self.__nc_params = settings.get('nc_params', {}) + self.__username = settings.get('username') + self.__password = settings.get('password') + self.__vendor = settings.get('vendor') + self.__version = settings.get('version', "1") + self.__key_filename = settings.get('key_filename') + self.__hostkey_verify = settings.get('hostkey_verify', True) + self.__look_for_keys = settings.get('look_for_keys', True) + self.__allow_agent = settings.get('allow_agent', True) + self.__force_running = settings.get('force_running', False) + self.__commit_per_rule = settings.get('commit_per_rule', False) + self.__device_params = settings.get('device_params', {}) + self.__manager_params = settings.get('manager_params', {}) + self.__nc_params = settings.get('nc_params', {}) + self.__message_renderer = settings.get('message_renderer','jinja') self.__manager : Manager = None self.__candidate_supported = False @@ -96,6 +99,12 @@ class NetconfSessionHandler: @property def vendor(self): return self.__vendor + + @property + def version(self): return self.__version + + @property + def message_renderer(self): return self.__message_renderer @RETRY_DECORATOR def get(self, filter=None, with_defaults=None): # pylint: disable=redefined-builtin @@ -192,47 +201,57 @@ def do_sampling( except: # pylint: disable=bare-except logger.exception('Error retrieving samples') -def edit_config( +def edit_config( # edit the configuration of openconfig devices netconf_handler : NetconfSessionHandler, logger : logging.Logger, resources : List[Tuple[str, Any]], delete=False, commit_per_rule=False, target='running', default_operation='merge', test_option=None, error_option=None, format='xml' # pylint: disable=redefined-builtin ): str_method = 'DeleteConfig' if delete else 'SetConfig' - #logger.debug('[{:s}] resources = {:s}'.format(str_method, str(resources))) - results = [None for _ in resources] - for i,resource in enumerate(resources): - str_resource_name = 'resources[#{:d}]'.format(i) - try: - logger.debug('[{:s}] resource = {:s}'.format(str_method, str(resource))) - chk_type(str_resource_name, resource, (list, tuple)) - chk_length(str_resource_name, resource, min_length=2, max_length=2) - resource_key,resource_value = resource - chk_string(str_resource_name + '.key', resource_key, allow_empty=False) - str_config_message = compose_config( - resource_key, resource_value, delete=delete, vendor=netconf_handler.vendor) - if str_config_message is None: raise UnsupportedResourceKeyException(resource_key) - logger.debug('[{:s}] str_config_message[{:d}] = {:s}'.format( - str_method, len(str_config_message), str(str_config_message))) - netconf_handler.edit_config( - config=str_config_message, target=target, default_operation=default_operation, - test_option=test_option, error_option=error_option, format=format) - if commit_per_rule: + results = [] + if "L2VSI" in resources[0][1] and netconf_handler.vendor == "CISCO": + #Configure by CLI + logger.warning("CLI Configuration") + cli_compose_config(resources, delete=delete, host= netconf_handler._NetconfSessionHandler__address, user=netconf_handler._NetconfSessionHandler__username, passw=netconf_handler._NetconfSessionHandler__password) + for i,resource in enumerate(resources): + results.append(True) + else: + for i,resource in enumerate(resources): + str_resource_name = 'resources[#{:d}]'.format(i) + try: + logger.debug('[{:s}] resource = {:s}'.format(str_method, str(resource))) + chk_type(str_resource_name, resource, (list, tuple)) + chk_length(str_resource_name, resource, min_length=2, max_length=2) + resource_key,resource_value = resource + chk_string(str_resource_name + '.key', resource_key, allow_empty=False) + str_config_messages = compose_config( # get template for configuration + resource_key, resource_value, delete=delete, vendor=netconf_handler.vendor, message_renderer=netconf_handler.message_renderer) + for str_config_message in str_config_messages: # configuration of the received templates + if str_config_message is None: raise UnsupportedResourceKeyException(resource_key) + logger.debug('[{:s}] str_config_message[{:d}] = {:s}'.format( + str_method, len(str_config_message), str(str_config_message))) + netconf_handler.edit_config( # configure the device + config=str_config_message, target=target, default_operation=default_operation, + test_option=test_option, error_option=error_option, format=format) + if commit_per_rule: + netconf_handler.commit() # configuration commit + + #results[i] = True + results.append(True) + except Exception as e: # pylint: disable=broad-except + str_operation = 'preparing' if target == 'candidate' else ('deleting' if delete else 'setting') + msg = '[{:s}] Exception {:s} {:s}: {:s}' + logger.exception(msg.format(str_method, str_operation, str_resource_name, str(resource))) + #results[i] = e # if validation fails, store the exception + results.append(e) + + if not commit_per_rule: + try: netconf_handler.commit() - results[i] = True - except Exception as e: # pylint: disable=broad-except - str_operation = 'preparing' if target == 'candidate' else ('deleting' if delete else 'setting') - msg = '[{:s}] Exception {:s} {:s}: {:s}' - logger.exception(msg.format(str_method, str_operation, str_resource_name, str(resource))) - results[i] = e # if validation fails, store the exception - - if not commit_per_rule: - try: - netconf_handler.commit() - except Exception as e: # pylint: disable=broad-except - msg = '[{:s}] Exception committing: {:s}' - str_operation = 'preparing' if target == 'candidate' else ('deleting' if delete else 'setting') - logger.exception(msg.format(str_method, str_operation, str(resources))) - results = [e for _ in resources] # if commit fails, set exception in each resource + except Exception as e: # pylint: disable=broad-except + msg = '[{:s}] Exception committing: {:s}' + str_operation = 'preparing' if target == 'candidate' else ('deleting' if delete else 'setting') + logger.exception(msg.format(str_method, str_operation, str(resources))) + results = [e for _ in resources] # if commit fails, set exception in each resource return results DRIVER_NAME = 'openconfig' diff --git a/src/device/service/drivers/openconfig/templates/ACL/ACL_multivendor.py b/src/device/service/drivers/openconfig/templates/ACL/ACL_multivendor.py new file mode 100755 index 0000000000000000000000000000000000000000..91d05d3d18f1b19374a38f9149dc7bd6b7c518b6 --- /dev/null +++ b/src/device/service/drivers/openconfig/templates/ACL/ACL_multivendor.py @@ -0,0 +1,321 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 yattag import Doc, indent + +RULE_TYPE_MAPPING = { + 'ACLRULETYPE_UNDEFINED': 'ACL_UNDEFINED', + 'ACLRULETYPE_IPV4' : 'ACL_IPV4', + 'ACLRULETYPE_IPV6' : 'ACL_IPV6', + 'ACLRULETYPE_L2' : 'ACL_L2', + 'ACLRULETYPE_MPLS' : 'ACL_MPLS', + 'ACLRULETYPE_MIXED' : 'ACL_MIXED', +} + +FORWARDING_ACTION_MAPPING = { + 'ACLFORWARDINGACTION_UNDEFINED': 'UNDEFINED', + 'ACLFORWARDINGACTION_DROP' : 'DROP', + 'ACLFORWARDINGACTION_ACCEPT' : 'ACCEPT', + 'ACLFORWARDINGACTION_REJECT' : 'REJECT', +} + +LOG_ACTION_MAPPING = { + 'ACLLOGACTION_UNDEFINED': 'UNDEFINED', + 'ACLLOGACTION_NOLOG' : 'LOG_NONE', + 'ACLLOGACTION_SYSLOG' : 'LOG_SYSLOG', +} + +def acl_set_mng(data,vendor, delete): + doc, tag, text = Doc().tagtext() + + Acl_data = data["rule_set"] + Acl_name = Acl_data['name'] + Acl_type = RULE_TYPE_MAPPING[Acl_data['type']] + Acl_desc = Acl_data['description'] + Acl_entries = Acl_data['entries'] + with tag('acl', xmlns="http://openconfig.net/yang/acl"): + if delete: + with tag('acl-sets' ,'xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" nc:operation="delete"'): + with tag('acl-set'): + with tag('name'):text(Acl_name) + with tag('type'):text(Acl_type) + with tag('acl-entries'): + for entry in Acl_entries: + ID = entry['sequence_id'] + desc = entry['description'] + match = entry['match'] + action = entry['action'] + with tag('acl-entry'): + with tag('sequence-id'):text(ID) + else: + with tag('acl-sets'): + with tag('acl-set'): + with tag('name'):text(Acl_name) + with tag('type'):text(Acl_type) + with tag('config'): + with tag('name'): text(Acl_name) + with tag('type'): text(Acl_type) + with tag('description'):text(Acl_desc) + with tag('acl-entries'): + for entry in Acl_entries: + ID = entry['sequence_id'] + desc = entry['description'] + match = entry['match'] + action = entry['action'] + with tag('acl-entry'): + with tag('sequence-id'):text(ID) + with tag('config'): + with tag('sequence-id'): text(ID) + with tag('description'): text(desc) + # Configuration per type + if "L2" in Acl_type: + with tag('l2'): + with tag('config'): + for key, value in match.items(): + if "src_address" in key and len(value) != 0: + with tag('source-mac'):text(value) + elif "dst_address" in key and len(value) != 0: + with tag('destination-mac'):text(value) + elif "IPV4" in Acl_type: + with tag('ipv4'): + with tag('config'): + for key, value in match.items(): + if "src_address" in key and len(value) != 0: + with tag('source-address'):text(value) + elif "dst_address" in key and len(value) != 0: + with tag('destination-address'):text(value) + elif "protocol" in key : + with tag('protocol'):text(value) + elif "hop_limit" in key : + with tag('hop-limit'):text(value) + elif "dscp" in key : + with tag('dscp'):text(value) + with tag('transport'): + with tag('config'): + for key, value in match.items(): + if "src_port" in key : + with tag('source-port'):text(value) + elif "dst_port" in key : + with tag('destination-port'):text(value) + elif "tcp_flags" in key : + with tag('tcp-flags'):text(value) + elif "IPV6" in Acl_type: + with tag('ipv6'): + with tag('config'): + for key, value in match.items(): + if "src_address" in key and len(value) != 0: + with tag('source-address'):text(value) + elif "dst_address" in key and len(value) != 0: + with tag('destination-address'):text(value) + elif "protocol" in key : + with tag('protocol'):text(value) + elif "hop_limit" in key : + with tag('hop-limit'):text(value) + elif "dscp" in key : + with tag('dscp'):text(value) + with tag('actions'): + with tag('config'): + for key, value in action.items(): + if "forward_action" in key : + with tag('forwarding-action'):text(FORWARDING_ACTION_MAPPING[value]) + elif "log_action" in key : + with tag('log-action'):text(LOG_ACTION_MAPPING[value]) + result = indent( + doc.getvalue(), + indentation = ' '*2, + newline = '\r\n' + ) + return result + + +def acl_interface(data,vendor, delete): + doc, tag, text = Doc().tagtext() + + ID = data['endpoint_id']['endpoint_uuid']['uuid'] + Acl_data = data["rule_set"] + Acl_name = Acl_data['name'] + Acl_type = RULE_TYPE_MAPPING[Acl_data['type']] + + with tag('acl', xmlns="http://openconfig.net/yang/acl"): + with tag('interfaces'): + with tag('interface'): + with tag('id'):text(ID) + with tag('config'): + with tag('id'):text(ID) + with tag('interface-ref'): + with tag('config'): + with tag('interface'):text(ID) + if vendor == 'ADVA': + with tag('subinterface'): text(0) + else: + with tag('subinterface'): text('subinterface') + with tag('ingress-acl-sets'): + with tag('ingress-acl-set'): + with tag('set-name'):text(Acl_name) + with tag('type'):text(Acl_type) + with tag('config'): + with tag('set-name'):text(Acl_name) + with tag('type'):text(Acl_type) + result = indent( + doc.getvalue(), + indentation = ' '*2, + newline = '\r\n' + ) + return result + + +def acl_mgmt(parameters,vendor,delete): + acl = [] + acl.append(acl_set_mng( parameters,vendor,delete)) + acl.append(acl_interface(parameters,vendor,delete)) + return acl + +# TESTING +''' +data = {'endpoint_id':{'device_id': {'device_uuid': {'uuid': 'R155'}},'endpoint_uuid':{'uuid':'eth-1/0/21.999'}}, + 'rule_set':{'name':"ACL_L4",'type':1,'description':'acl ipv4','entries':[{'sequence_id': 1, 'description': 'IPv4_ACL', 'match': {'dst_address': '172.16.4.4', 'dscp': 0, 'protocol': 6, 'src_address': '172.16.5.5', 'src_port': 0, 'dst_port': 0, 'start_mpls_label': 0, 'end_mpls_label': 0}, 'action': {'forward_action': 1, 'log_action': 1}}, + {'sequence_id': 2, 'description': 'L2_ACL', 'match': {'dst_address': '', 'dscp': 0, 'protocol': 0, 'src_address': '', 'src_port': 52, 'dst_port': 950, 'start_mpls_label': 0, 'end_mpls_label': 0}, 'action': {'forward_action': 1, 'log_action': 1}}]}} + +print('\t\tACL') +print(acl_set_mng(data, False)) +print('\t\tACL') +print(acl_set_mng(data, True)) + +print('\n\n\t\tInterfaz') +print(acl_interface(data,'ADVA', False)) +print('\n\n\t\tInterfaz') +print(acl_interface(data,'ADVA', True)) + +''' +''' +OLD - VERSION + +from .openconfig_acl import openconfig_acl +from pyangbind.lib.serialise import pybindIETFXMLEncoder +from common.tools.grpc.Tools import grpc_message_to_json +import logging +def acl_mgmt(parameters,vendor): # acl templates management + acl = [] + data = grpc_message_to_json(parameters,use_integers_for_enums=True) # acl rule parameters management + acl.append(acl_set_mgmt(data,vendor)) # acl_set template + acl.append(acl_interface(data,vendor)) # acl interface template + return acl + +def acl_set_mgmt(parameters,vendor): + type = ["ACL_UNDEFINED", "ACL_IPV4","ACL_IPV6","ACL_L2","ACL_MPLS","ACL_MIXED"] + f_action = ["UNDEFINED", "DROP","ACCEPT","REJECT"] + l_action = ["UNDEFINED", "LOG_NONE","LOG_SYSLOG"] + + Acl_data = parameters["rule_set"] + Acl_name = Acl_data['name'] + Acl_type = type[Acl_data['type']] + Acl_desc = Acl_data['description'] + Acl_entries = Acl_data['entries'] + + # Create an instance of the YANG model + acl_instance = openconfig_acl() + + # Access the entry container + acl_set = acl_instance.acl.acl_sets.acl_set.add(name = Acl_name, type=Acl_type) + acl_set.config.name = Acl_name + acl_set.config.type = Acl_type + acl_set.config.description = Acl_desc + LOGGER = logging.getLogger(__name__) + + LOGGER.warning("VALORES DE ENTRIES",Acl_entries) + + for entry in Acl_entries: + ID = entry['sequence_id'] + desc = entry['description'] + match = entry['match'] + action = entry['action'] + + acl_entrie = acl_set.acl_entries.acl_entry.add(ID) + acl_entrie.config.sequence_id = ID + acl_entrie.config.description= desc + + # Configuration per type + if "L2" in Acl_type: + for key, value in match.items(): + if "src_address" in key and len(value) != 0: acl_entrie.l2.config.source_mac = value + elif "dst_address" in key and len(value) != 0: acl_entrie.l2.config.destination_mac = value + + elif "IPV4" in Acl_type: + for key, value in match.items(): + if "src_address" in key and len(value) != 0: acl_entrie.ipv4.config.source_address = value + elif "dst_address" in key and len(value) != 0: acl_entrie.ipv4.config.destination_address = value + elif "protocol" in key : acl_entrie.ipv4.config.protocol = value + elif "hop_limit" in key : acl_entrie.ipv4.config.hop_limit = value + elif "dscp" in key : acl_entrie.ipv4.config.dscp = value + + for key, value in match.items(): + if "src_port" in key : acl_entrie.transport.config.source_port = value + elif "dst_port" in key : acl_entrie.transport.config.destination_port = value + elif "tcp_flags" in key : acl_entrie.transport.config.tcp_flags = value + + elif "IPV6" in Acl_type: + for key, value in match.items(): + if "src_address" in key and len(value) != 0: acl_entrie.ipv6.config.source_address = value + elif "dst_address" in key and len(value) != 0: acl_entrie.ipv6.config.destination_address = value + elif "protocol" in key : acl_entrie.ipv6.config.protocol = value + elif "hop_limit" in key : acl_entrie.ipv6.config.hop_limit = value + elif "dscp" in key : acl_entrie.ipv6.config.dscp = value + + for key, value in action.items(): + if "forward_action" in key : acl_entrie.actions.config.forwarding_action = f_action[value] + elif "log_action" in key : acl_entrie.actions.config.log_action = l_action[value] + + # Dump the entire instance as RFC 7950 XML + acl_set = pybindIETFXMLEncoder.serialise(acl_instance) + acl_set = acl_set.replace('<openconfig-acl xmlns="http://openconfig.net/yang/acl">',"") + acl_set = acl_set.replace('<acl>','<acl xmlns="http://openconfig.net/yang/acl">') + acl_set = acl_set.replace('</openconfig-acl>','') + + return(acl_set) + +def acl_interface(parameters,vendor): + type = ["ACL_UNDEFINED", "ACL_IPV4","ACL_IPV6","ACL_L2","ACL_MPLS","ACL_MIXED"] + ID = parameters['endpoint_id']['endpoint_uuid']['uuid'] + Acl_data = parameters["rule_set"] + Acl_name = Acl_data['name'] + Acl_type = type[Acl_data['type']] + + # Create an instance of the YANG model + acl_instance = openconfig_acl() + + # Access the entry container + interface = acl_instance.acl.interfaces.interface.add(id = ID) + + #Config - Interface + interface.config.id = ID + + #If the Interface parameter is defined [OPTIONAL-PARAMETER] + interface.interface_ref.config.interface = ID # Interface parameter + + #TODO: add subinterface management + if vendor == "ADVA" : interface.interface_ref.config.subinterface = '0' # Subinterface parameter + elif vendor == "Juniper": interface.interface_ref.config.subinterface = '0' + else: interface.interface_ref.config.subinterface = Acl_data['subinterface'] + # Configuration ingress type + ingress= interface.ingress_acl_sets.ingress_acl_set.add(set_name = Acl_name, type = Acl_type) + ingress.config.set_name = Acl_name + ingress.config.type = Acl_type + + # Dump the entire instance as RFC 7950 XML + acl_set = pybindIETFXMLEncoder.serialise(acl_instance) + acl_set = acl_set.replace('<openconfig-acl xmlns="http://openconfig.net/yang/acl">',"") + acl_set = acl_set.replace('<acl>','<acl xmlns="http://openconfig.net/yang/acl">') + acl_set = acl_set.replace('</openconfig-acl>','') + return(acl_set) +''' diff --git a/src/device/service/drivers/openconfig/templates/ACL/__init__.py b/src/device/service/drivers/openconfig/templates/ACL/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..1549d9811aa5d1c193a44ad45d0d7773236c0612 --- /dev/null +++ b/src/device/service/drivers/openconfig/templates/ACL/__init__.py @@ -0,0 +1,14 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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/device/service/drivers/openconfig/templates/ACL/openconfig_acl.py b/src/device/service/drivers/openconfig/templates/ACL/openconfig_acl.py new file mode 100755 index 0000000000000000000000000000000000000000..2006faf400a48d7a430ae0258fd70aa52f4eb961 --- /dev/null +++ b/src/device/service/drivers/openconfig/templates/ACL/openconfig_acl.py @@ -0,0 +1,9903 @@ +# -*- coding: utf-8 -*- +from operator import attrgetter +from pyangbind.lib.yangtypes import RestrictedPrecisionDecimalType +from pyangbind.lib.yangtypes import RestrictedClassType +from pyangbind.lib.yangtypes import TypedListType +from pyangbind.lib.yangtypes import YANGBool +from pyangbind.lib.yangtypes import YANGListType +from pyangbind.lib.yangtypes import YANGDynClass +from pyangbind.lib.yangtypes import ReferenceType +from pyangbind.lib.base import PybindBase +from collections import OrderedDict +from decimal import Decimal +from bitarray import bitarray +import six + +# PY3 support of some PY2 keywords (needs improved) +if six.PY3: + import builtins as __builtin__ + long = int +elif six.PY2: + import builtins as __builtin__ +class yc_state_openconfig_acl__acl_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Global operational state data for ACLs + """ + __slots__ = ('_path_helper', '_extmethods', '__counter_capability',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__counter_capability = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'INTERFACE_ONLY': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:INTERFACE_ONLY': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'AGGREGATE_ONLY': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:AGGREGATE_ONLY': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'INTERFACE_AGGREGATE': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:INTERFACE_AGGREGATE': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), is_leaf=True, yang_name="counter-capability", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'state'] + + def _get_counter_capability(self): + """ + Getter method for counter_capability, mapped from YANG variable /acl/state/counter_capability (identityref) + + YANG Description: System reported indication of how ACL counters are reported +by the target + """ + return self.__counter_capability + + def _set_counter_capability(self, v, load=False): + """ + Setter method for counter_capability, mapped from YANG variable /acl/state/counter_capability (identityref) + If this variable is read-only (config: false) in the + source YANG file, then _set_counter_capability is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_counter_capability() directly. + + YANG Description: System reported indication of how ACL counters are reported +by the target + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'INTERFACE_ONLY': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:INTERFACE_ONLY': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'AGGREGATE_ONLY': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:AGGREGATE_ONLY': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'INTERFACE_AGGREGATE': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:INTERFACE_AGGREGATE': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), is_leaf=True, yang_name="counter-capability", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """counter_capability must be of a type compatible with identityref""", + 'defined-type': "openconfig-acl:identityref", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'INTERFACE_ONLY': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:INTERFACE_ONLY': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'AGGREGATE_ONLY': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:AGGREGATE_ONLY': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'INTERFACE_AGGREGATE': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:INTERFACE_AGGREGATE': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), is_leaf=True, yang_name="counter-capability", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=False)""", + }) + + self.__counter_capability = t + if hasattr(self, '_set'): + self._set() + + def _unset_counter_capability(self): + self.__counter_capability = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'INTERFACE_ONLY': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:INTERFACE_ONLY': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'AGGREGATE_ONLY': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:AGGREGATE_ONLY': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'INTERFACE_AGGREGATE': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:INTERFACE_AGGREGATE': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), is_leaf=True, yang_name="counter-capability", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=False) + + counter_capability = __builtin__.property(_get_counter_capability) + + + _pyangbind_elements = OrderedDict([('counter_capability', counter_capability), ]) + + +class yc_config_openconfig_acl__acl_acl_sets_acl_set_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Access list config + """ + __slots__ = ('_path_helper', '_extmethods', '__name','__type','__description',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='string', is_config=True) + self.__type = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ACL_IPV4': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_IPV4': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_IPV6': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_IPV6': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_L2': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_L2': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_MIXED': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_MIXED': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_MPLS': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_MPLS': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=True) + self.__description = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='string', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'config'] + + def _get_name(self): + """ + Getter method for name, mapped from YANG variable /acl/acl_sets/acl_set/config/name (string) + + YANG Description: The name of the access-list set + """ + return self.__name + + def _set_name(self, v, load=False): + """ + Setter method for name, mapped from YANG variable /acl/acl_sets/acl_set/config/name (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_name() directly. + + YANG Description: The name of the access-list set + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='string', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """name must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='string', is_config=True)""", + }) + + self.__name = t + if hasattr(self, '_set'): + self._set() + + def _unset_name(self): + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='string', is_config=True) + + + def _get_type(self): + """ + Getter method for type, mapped from YANG variable /acl/acl_sets/acl_set/config/type (identityref) + + YANG Description: The type determines the fields allowed in the ACL entries +belonging to the ACL set (e.g., IPv4, IPv6, etc.) + """ + return self.__type + + def _set_type(self, v, load=False): + """ + Setter method for type, mapped from YANG variable /acl/acl_sets/acl_set/config/type (identityref) + If this variable is read-only (config: false) in the + source YANG file, then _set_type is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_type() directly. + + YANG Description: The type determines the fields allowed in the ACL entries +belonging to the ACL set (e.g., IPv4, IPv6, etc.) + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ACL_IPV4': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_IPV4': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_IPV6': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_IPV6': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_L2': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_L2': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_MIXED': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_MIXED': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_MPLS': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_MPLS': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """type must be of a type compatible with identityref""", + 'defined-type': "openconfig-acl:identityref", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ACL_IPV4': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_IPV4': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_IPV6': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_IPV6': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_L2': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_L2': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_MIXED': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_MIXED': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_MPLS': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_MPLS': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=True)""", + }) + + self.__type = t + if hasattr(self, '_set'): + self._set() + + def _unset_type(self): + self.__type = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ACL_IPV4': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_IPV4': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_IPV6': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_IPV6': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_L2': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_L2': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_MIXED': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_MIXED': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_MPLS': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_MPLS': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=True) + + + def _get_description(self): + """ + Getter method for description, mapped from YANG variable /acl/acl_sets/acl_set/config/description (string) + + YANG Description: Description, or comment, for the ACL set + """ + return self.__description + + def _set_description(self, v, load=False): + """ + Setter method for description, mapped from YANG variable /acl/acl_sets/acl_set/config/description (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_description is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_description() directly. + + YANG Description: Description, or comment, for the ACL set + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='string', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """description must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='string', is_config=True)""", + }) + + self.__description = t + if hasattr(self, '_set'): + self._set() + + def _unset_description(self): + self.__description = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='string', is_config=True) + + name = __builtin__.property(_get_name, _set_name) + type = __builtin__.property(_get_type, _set_type) + description = __builtin__.property(_get_description, _set_description) + + + _pyangbind_elements = OrderedDict([('name', name), ('type', type), ('description', description), ]) + + +class yc_state_openconfig_acl__acl_acl_sets_acl_set_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Access list state information + """ + __slots__ = ('_path_helper', '_extmethods', '__name','__type','__description',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='string', is_config=False) + self.__type = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ACL_IPV4': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_IPV4': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_IPV6': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_IPV6': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_L2': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_L2': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_MIXED': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_MIXED': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_MPLS': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_MPLS': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=False) + self.__description = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='string', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'state'] + + def _get_name(self): + """ + Getter method for name, mapped from YANG variable /acl/acl_sets/acl_set/state/name (string) + + YANG Description: The name of the access-list set + """ + return self.__name + + def _set_name(self, v, load=False): + """ + Setter method for name, mapped from YANG variable /acl/acl_sets/acl_set/state/name (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_name() directly. + + YANG Description: The name of the access-list set + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='string', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """name must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='string', is_config=False)""", + }) + + self.__name = t + if hasattr(self, '_set'): + self._set() + + def _unset_name(self): + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='string', is_config=False) + + + def _get_type(self): + """ + Getter method for type, mapped from YANG variable /acl/acl_sets/acl_set/state/type (identityref) + + YANG Description: The type determines the fields allowed in the ACL entries +belonging to the ACL set (e.g., IPv4, IPv6, etc.) + """ + return self.__type + + def _set_type(self, v, load=False): + """ + Setter method for type, mapped from YANG variable /acl/acl_sets/acl_set/state/type (identityref) + If this variable is read-only (config: false) in the + source YANG file, then _set_type is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_type() directly. + + YANG Description: The type determines the fields allowed in the ACL entries +belonging to the ACL set (e.g., IPv4, IPv6, etc.) + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ACL_IPV4': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_IPV4': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_IPV6': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_IPV6': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_L2': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_L2': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_MIXED': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_MIXED': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_MPLS': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_MPLS': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """type must be of a type compatible with identityref""", + 'defined-type': "openconfig-acl:identityref", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ACL_IPV4': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_IPV4': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_IPV6': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_IPV6': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_L2': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_L2': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_MIXED': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_MIXED': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_MPLS': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_MPLS': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=False)""", + }) + + self.__type = t + if hasattr(self, '_set'): + self._set() + + def _unset_type(self): + self.__type = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ACL_IPV4': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_IPV4': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_IPV6': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_IPV6': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_L2': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_L2': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_MIXED': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_MIXED': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'ACL_MPLS': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACL_MPLS': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=False) + + + def _get_description(self): + """ + Getter method for description, mapped from YANG variable /acl/acl_sets/acl_set/state/description (string) + + YANG Description: Description, or comment, for the ACL set + """ + return self.__description + + def _set_description(self, v, load=False): + """ + Setter method for description, mapped from YANG variable /acl/acl_sets/acl_set/state/description (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_description is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_description() directly. + + YANG Description: Description, or comment, for the ACL set + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='string', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """description must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='string', is_config=False)""", + }) + + self.__description = t + if hasattr(self, '_set'): + self._set() + + def _unset_description(self): + self.__description = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='string', is_config=False) + + name = __builtin__.property(_get_name) + type = __builtin__.property(_get_type) + description = __builtin__.property(_get_description) + + + _pyangbind_elements = OrderedDict([('name', name), ('type', type), ('description', description), ]) + + +class yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Access list entries config + """ + __slots__ = ('_path_helper', '_extmethods', '__sequence_id','__description',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__sequence_id = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint32', is_config=True) + self.__description = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='string', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry', 'config'] + + def _get_sequence_id(self): + """ + Getter method for sequence_id, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/config/sequence_id (uint32) + + YANG Description: The sequence id determines the order in which ACL entries +are applied. The sequence id must be unique for each entry +in an ACL set. Target devices should apply the ACL entry +rules in ascending order determined by sequence id (low to +high), rather than the relying only on order in the list. + """ + return self.__sequence_id + + def _set_sequence_id(self, v, load=False): + """ + Setter method for sequence_id, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/config/sequence_id (uint32) + If this variable is read-only (config: false) in the + source YANG file, then _set_sequence_id is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_sequence_id() directly. + + YANG Description: The sequence id determines the order in which ACL entries +are applied. The sequence id must be unique for each entry +in an ACL set. Target devices should apply the ACL entry +rules in ascending order determined by sequence id (low to +high), rather than the relying only on order in the list. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint32', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """sequence_id must be of a type compatible with uint32""", + 'defined-type': "uint32", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint32', is_config=True)""", + }) + + self.__sequence_id = t + if hasattr(self, '_set'): + self._set() + + def _unset_sequence_id(self): + self.__sequence_id = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint32', is_config=True) + + + def _get_description(self): + """ + Getter method for description, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/config/description (string) + + YANG Description: A user-defined description, or comment, for this Access List +Entry. + """ + return self.__description + + def _set_description(self, v, load=False): + """ + Setter method for description, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/config/description (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_description is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_description() directly. + + YANG Description: A user-defined description, or comment, for this Access List +Entry. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='string', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """description must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='string', is_config=True)""", + }) + + self.__description = t + if hasattr(self, '_set'): + self._set() + + def _unset_description(self): + self.__description = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='string', is_config=True) + + sequence_id = __builtin__.property(_get_sequence_id, _set_sequence_id) + description = __builtin__.property(_get_description, _set_description) + + + _pyangbind_elements = OrderedDict([('sequence_id', sequence_id), ('description', description), ]) + + +class yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: State information for ACL entries + """ + __slots__ = ('_path_helper', '_extmethods', '__sequence_id','__description','__matched_packets','__matched_octets',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__sequence_id = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint32', is_config=False) + self.__description = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='string', is_config=False) + self.__matched_packets = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="matched-packets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:counter64', is_config=False) + self.__matched_octets = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="matched-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:counter64', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry', 'state'] + + def _get_sequence_id(self): + """ + Getter method for sequence_id, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/state/sequence_id (uint32) + + YANG Description: The sequence id determines the order in which ACL entries +are applied. The sequence id must be unique for each entry +in an ACL set. Target devices should apply the ACL entry +rules in ascending order determined by sequence id (low to +high), rather than the relying only on order in the list. + """ + return self.__sequence_id + + def _set_sequence_id(self, v, load=False): + """ + Setter method for sequence_id, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/state/sequence_id (uint32) + If this variable is read-only (config: false) in the + source YANG file, then _set_sequence_id is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_sequence_id() directly. + + YANG Description: The sequence id determines the order in which ACL entries +are applied. The sequence id must be unique for each entry +in an ACL set. Target devices should apply the ACL entry +rules in ascending order determined by sequence id (low to +high), rather than the relying only on order in the list. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint32', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """sequence_id must be of a type compatible with uint32""", + 'defined-type': "uint32", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint32', is_config=False)""", + }) + + self.__sequence_id = t + if hasattr(self, '_set'): + self._set() + + def _unset_sequence_id(self): + self.__sequence_id = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint32', is_config=False) + + + def _get_description(self): + """ + Getter method for description, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/state/description (string) + + YANG Description: A user-defined description, or comment, for this Access List +Entry. + """ + return self.__description + + def _set_description(self, v, load=False): + """ + Setter method for description, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/state/description (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_description is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_description() directly. + + YANG Description: A user-defined description, or comment, for this Access List +Entry. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='string', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """description must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='string', is_config=False)""", + }) + + self.__description = t + if hasattr(self, '_set'): + self._set() + + def _unset_description(self): + self.__description = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='string', is_config=False) + + + def _get_matched_packets(self): + """ + Getter method for matched_packets, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/state/matched_packets (oc-yang:counter64) + + YANG Description: Count of the number of packets matching the current ACL +entry. + +An implementation should provide this counter on a +per-interface per-ACL-entry if possible. + +If an implementation only supports ACL counters per entry +(i.e., not broken out per interface), then the value +should be equal to the aggregate count across all interfaces. + +An implementation that provides counters per entry per +interface is not required to also provide an aggregate count, +e.g., per entry -- the user is expected to be able implement +the required aggregation if such a count is needed. + """ + return self.__matched_packets + + def _set_matched_packets(self, v, load=False): + """ + Setter method for matched_packets, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/state/matched_packets (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_matched_packets is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_matched_packets() directly. + + YANG Description: Count of the number of packets matching the current ACL +entry. + +An implementation should provide this counter on a +per-interface per-ACL-entry if possible. + +If an implementation only supports ACL counters per entry +(i.e., not broken out per interface), then the value +should be equal to the aggregate count across all interfaces. + +An implementation that provides counters per entry per +interface is not required to also provide an aggregate count, +e.g., per entry -- the user is expected to be able implement +the required aggregation if such a count is needed. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="matched-packets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """matched_packets must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="matched-packets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__matched_packets = t + if hasattr(self, '_set'): + self._set() + + def _unset_matched_packets(self): + self.__matched_packets = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="matched-packets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:counter64', is_config=False) + + + def _get_matched_octets(self): + """ + Getter method for matched_octets, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/state/matched_octets (oc-yang:counter64) + + YANG Description: Count of the number of octets (bytes) matching the current +ACL entry. + +An implementation should provide this counter on a +per-interface per-ACL-entry if possible. + +If an implementation only supports ACL counters per entry +(i.e., not broken out per interface), then the value +should be equal to the aggregate count across all interfaces. + +An implementation that provides counters per entry per +interface is not required to also provide an aggregate count, +e.g., per entry -- the user is expected to be able implement +the required aggregation if such a count is needed. + """ + return self.__matched_octets + + def _set_matched_octets(self, v, load=False): + """ + Setter method for matched_octets, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/state/matched_octets (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_matched_octets is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_matched_octets() directly. + + YANG Description: Count of the number of octets (bytes) matching the current +ACL entry. + +An implementation should provide this counter on a +per-interface per-ACL-entry if possible. + +If an implementation only supports ACL counters per entry +(i.e., not broken out per interface), then the value +should be equal to the aggregate count across all interfaces. + +An implementation that provides counters per entry per +interface is not required to also provide an aggregate count, +e.g., per entry -- the user is expected to be able implement +the required aggregation if such a count is needed. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="matched-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """matched_octets must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="matched-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__matched_octets = t + if hasattr(self, '_set'): + self._set() + + def _unset_matched_octets(self): + self.__matched_octets = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="matched-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:counter64', is_config=False) + + sequence_id = __builtin__.property(_get_sequence_id) + description = __builtin__.property(_get_description) + matched_packets = __builtin__.property(_get_matched_packets) + matched_octets = __builtin__.property(_get_matched_octets) + + + _pyangbind_elements = OrderedDict([('sequence_id', sequence_id), ('description', description), ('matched_packets', matched_packets), ('matched_octets', matched_octets), ]) + + +class yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_l2_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry/l2/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configuration data + """ + __slots__ = ('_path_helper', '_extmethods', '__source_mac','__source_mac_mask','__destination_mac','__destination_mac_mask','__ethertype',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__source_mac = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="source-mac", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=True) + self.__source_mac_mask = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="source-mac-mask", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=True) + self.__destination_mac = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="destination-mac", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=True) + self.__destination_mac_mask = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="destination-mac-mask", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=True) + self.__ethertype = YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), restriction_dict={'range': ['1536..65535']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ETHERTYPE_IPV4': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_IPV4': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_ARP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_ARP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_VLAN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_VLAN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_IPV6': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_IPV6': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_MPLS': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_MPLS': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_LLDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_LLDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_ROCE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_ROCE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},),], is_leaf=True, yang_name="ethertype", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:ethertype-type', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry', 'l2', 'config'] + + def _get_source_mac(self): + """ + Getter method for source_mac, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2/config/source_mac (oc-yang:mac-address) + + YANG Description: Source IEEE 802 MAC address. + """ + return self.__source_mac + + def _set_source_mac(self, v, load=False): + """ + Setter method for source_mac, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2/config/source_mac (oc-yang:mac-address) + If this variable is read-only (config: false) in the + source YANG file, then _set_source_mac is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_source_mac() directly. + + YANG Description: Source IEEE 802 MAC address. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="source-mac", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """source_mac must be of a type compatible with oc-yang:mac-address""", + 'defined-type': "oc-yang:mac-address", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="source-mac", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=True)""", + }) + + self.__source_mac = t + if hasattr(self, '_set'): + self._set() + + def _unset_source_mac(self): + self.__source_mac = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="source-mac", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=True) + + + def _get_source_mac_mask(self): + """ + Getter method for source_mac_mask, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2/config/source_mac_mask (oc-yang:mac-address) + + YANG Description: Source IEEE 802 MAC address mask. + """ + return self.__source_mac_mask + + def _set_source_mac_mask(self, v, load=False): + """ + Setter method for source_mac_mask, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2/config/source_mac_mask (oc-yang:mac-address) + If this variable is read-only (config: false) in the + source YANG file, then _set_source_mac_mask is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_source_mac_mask() directly. + + YANG Description: Source IEEE 802 MAC address mask. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="source-mac-mask", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """source_mac_mask must be of a type compatible with oc-yang:mac-address""", + 'defined-type': "oc-yang:mac-address", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="source-mac-mask", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=True)""", + }) + + self.__source_mac_mask = t + if hasattr(self, '_set'): + self._set() + + def _unset_source_mac_mask(self): + self.__source_mac_mask = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="source-mac-mask", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=True) + + + def _get_destination_mac(self): + """ + Getter method for destination_mac, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2/config/destination_mac (oc-yang:mac-address) + + YANG Description: Destination IEEE 802 MAC address. + """ + return self.__destination_mac + + def _set_destination_mac(self, v, load=False): + """ + Setter method for destination_mac, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2/config/destination_mac (oc-yang:mac-address) + If this variable is read-only (config: false) in the + source YANG file, then _set_destination_mac is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_destination_mac() directly. + + YANG Description: Destination IEEE 802 MAC address. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="destination-mac", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """destination_mac must be of a type compatible with oc-yang:mac-address""", + 'defined-type': "oc-yang:mac-address", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="destination-mac", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=True)""", + }) + + self.__destination_mac = t + if hasattr(self, '_set'): + self._set() + + def _unset_destination_mac(self): + self.__destination_mac = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="destination-mac", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=True) + + + def _get_destination_mac_mask(self): + """ + Getter method for destination_mac_mask, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2/config/destination_mac_mask (oc-yang:mac-address) + + YANG Description: Destination IEEE 802 MAC address mask. + """ + return self.__destination_mac_mask + + def _set_destination_mac_mask(self, v, load=False): + """ + Setter method for destination_mac_mask, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2/config/destination_mac_mask (oc-yang:mac-address) + If this variable is read-only (config: false) in the + source YANG file, then _set_destination_mac_mask is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_destination_mac_mask() directly. + + YANG Description: Destination IEEE 802 MAC address mask. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="destination-mac-mask", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """destination_mac_mask must be of a type compatible with oc-yang:mac-address""", + 'defined-type': "oc-yang:mac-address", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="destination-mac-mask", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=True)""", + }) + + self.__destination_mac_mask = t + if hasattr(self, '_set'): + self._set() + + def _unset_destination_mac_mask(self): + self.__destination_mac_mask = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="destination-mac-mask", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=True) + + + def _get_ethertype(self): + """ + Getter method for ethertype, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2/config/ethertype (oc-pkt-match-types:ethertype-type) + + YANG Description: Ethertype field to match in Ethernet packets + """ + return self.__ethertype + + def _set_ethertype(self, v, load=False): + """ + Setter method for ethertype, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2/config/ethertype (oc-pkt-match-types:ethertype-type) + If this variable is read-only (config: false) in the + source YANG file, then _set_ethertype is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_ethertype() directly. + + YANG Description: Ethertype field to match in Ethernet packets + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=[RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), restriction_dict={'range': ['1536..65535']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ETHERTYPE_IPV4': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_IPV4': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_ARP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_ARP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_VLAN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_VLAN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_IPV6': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_IPV6': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_MPLS': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_MPLS': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_LLDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_LLDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_ROCE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_ROCE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},),], is_leaf=True, yang_name="ethertype", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:ethertype-type', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """ethertype must be of a type compatible with oc-pkt-match-types:ethertype-type""", + 'defined-type': "oc-pkt-match-types:ethertype-type", + 'generated-type': """YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), restriction_dict={'range': ['1536..65535']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ETHERTYPE_IPV4': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_IPV4': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_ARP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_ARP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_VLAN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_VLAN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_IPV6': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_IPV6': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_MPLS': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_MPLS': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_LLDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_LLDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_ROCE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_ROCE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},),], is_leaf=True, yang_name="ethertype", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:ethertype-type', is_config=True)""", + }) + + self.__ethertype = t + if hasattr(self, '_set'): + self._set() + + def _unset_ethertype(self): + self.__ethertype = YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), restriction_dict={'range': ['1536..65535']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ETHERTYPE_IPV4': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_IPV4': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_ARP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_ARP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_VLAN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_VLAN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_IPV6': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_IPV6': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_MPLS': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_MPLS': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_LLDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_LLDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_ROCE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_ROCE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},),], is_leaf=True, yang_name="ethertype", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:ethertype-type', is_config=True) + + source_mac = __builtin__.property(_get_source_mac, _set_source_mac) + source_mac_mask = __builtin__.property(_get_source_mac_mask, _set_source_mac_mask) + destination_mac = __builtin__.property(_get_destination_mac, _set_destination_mac) + destination_mac_mask = __builtin__.property(_get_destination_mac_mask, _set_destination_mac_mask) + ethertype = __builtin__.property(_get_ethertype, _set_ethertype) + + + _pyangbind_elements = OrderedDict([('source_mac', source_mac), ('source_mac_mask', source_mac_mask), ('destination_mac', destination_mac), ('destination_mac_mask', destination_mac_mask), ('ethertype', ethertype), ]) + + +class yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_l2_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry/l2/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: State Information. + """ + __slots__ = ('_path_helper', '_extmethods', '__source_mac','__source_mac_mask','__destination_mac','__destination_mac_mask','__ethertype',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__source_mac = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="source-mac", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=False) + self.__source_mac_mask = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="source-mac-mask", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=False) + self.__destination_mac = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="destination-mac", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=False) + self.__destination_mac_mask = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="destination-mac-mask", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=False) + self.__ethertype = YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), restriction_dict={'range': ['1536..65535']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ETHERTYPE_IPV4': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_IPV4': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_ARP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_ARP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_VLAN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_VLAN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_IPV6': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_IPV6': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_MPLS': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_MPLS': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_LLDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_LLDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_ROCE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_ROCE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},),], is_leaf=True, yang_name="ethertype", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:ethertype-type', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry', 'l2', 'state'] + + def _get_source_mac(self): + """ + Getter method for source_mac, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2/state/source_mac (oc-yang:mac-address) + + YANG Description: Source IEEE 802 MAC address. + """ + return self.__source_mac + + def _set_source_mac(self, v, load=False): + """ + Setter method for source_mac, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2/state/source_mac (oc-yang:mac-address) + If this variable is read-only (config: false) in the + source YANG file, then _set_source_mac is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_source_mac() directly. + + YANG Description: Source IEEE 802 MAC address. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="source-mac", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """source_mac must be of a type compatible with oc-yang:mac-address""", + 'defined-type': "oc-yang:mac-address", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="source-mac", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=False)""", + }) + + self.__source_mac = t + if hasattr(self, '_set'): + self._set() + + def _unset_source_mac(self): + self.__source_mac = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="source-mac", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=False) + + + def _get_source_mac_mask(self): + """ + Getter method for source_mac_mask, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2/state/source_mac_mask (oc-yang:mac-address) + + YANG Description: Source IEEE 802 MAC address mask. + """ + return self.__source_mac_mask + + def _set_source_mac_mask(self, v, load=False): + """ + Setter method for source_mac_mask, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2/state/source_mac_mask (oc-yang:mac-address) + If this variable is read-only (config: false) in the + source YANG file, then _set_source_mac_mask is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_source_mac_mask() directly. + + YANG Description: Source IEEE 802 MAC address mask. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="source-mac-mask", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """source_mac_mask must be of a type compatible with oc-yang:mac-address""", + 'defined-type': "oc-yang:mac-address", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="source-mac-mask", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=False)""", + }) + + self.__source_mac_mask = t + if hasattr(self, '_set'): + self._set() + + def _unset_source_mac_mask(self): + self.__source_mac_mask = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="source-mac-mask", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=False) + + + def _get_destination_mac(self): + """ + Getter method for destination_mac, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2/state/destination_mac (oc-yang:mac-address) + + YANG Description: Destination IEEE 802 MAC address. + """ + return self.__destination_mac + + def _set_destination_mac(self, v, load=False): + """ + Setter method for destination_mac, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2/state/destination_mac (oc-yang:mac-address) + If this variable is read-only (config: false) in the + source YANG file, then _set_destination_mac is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_destination_mac() directly. + + YANG Description: Destination IEEE 802 MAC address. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="destination-mac", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """destination_mac must be of a type compatible with oc-yang:mac-address""", + 'defined-type': "oc-yang:mac-address", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="destination-mac", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=False)""", + }) + + self.__destination_mac = t + if hasattr(self, '_set'): + self._set() + + def _unset_destination_mac(self): + self.__destination_mac = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="destination-mac", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=False) + + + def _get_destination_mac_mask(self): + """ + Getter method for destination_mac_mask, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2/state/destination_mac_mask (oc-yang:mac-address) + + YANG Description: Destination IEEE 802 MAC address mask. + """ + return self.__destination_mac_mask + + def _set_destination_mac_mask(self, v, load=False): + """ + Setter method for destination_mac_mask, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2/state/destination_mac_mask (oc-yang:mac-address) + If this variable is read-only (config: false) in the + source YANG file, then _set_destination_mac_mask is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_destination_mac_mask() directly. + + YANG Description: Destination IEEE 802 MAC address mask. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="destination-mac-mask", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """destination_mac_mask must be of a type compatible with oc-yang:mac-address""", + 'defined-type': "oc-yang:mac-address", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="destination-mac-mask", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=False)""", + }) + + self.__destination_mac_mask = t + if hasattr(self, '_set'): + self._set() + + def _unset_destination_mac_mask(self): + self.__destination_mac_mask = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'}), is_leaf=True, yang_name="destination-mac-mask", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:mac-address', is_config=False) + + + def _get_ethertype(self): + """ + Getter method for ethertype, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2/state/ethertype (oc-pkt-match-types:ethertype-type) + + YANG Description: Ethertype field to match in Ethernet packets + """ + return self.__ethertype + + def _set_ethertype(self, v, load=False): + """ + Setter method for ethertype, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2/state/ethertype (oc-pkt-match-types:ethertype-type) + If this variable is read-only (config: false) in the + source YANG file, then _set_ethertype is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_ethertype() directly. + + YANG Description: Ethertype field to match in Ethernet packets + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=[RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), restriction_dict={'range': ['1536..65535']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ETHERTYPE_IPV4': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_IPV4': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_ARP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_ARP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_VLAN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_VLAN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_IPV6': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_IPV6': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_MPLS': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_MPLS': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_LLDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_LLDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_ROCE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_ROCE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},),], is_leaf=True, yang_name="ethertype", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:ethertype-type', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """ethertype must be of a type compatible with oc-pkt-match-types:ethertype-type""", + 'defined-type': "oc-pkt-match-types:ethertype-type", + 'generated-type': """YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), restriction_dict={'range': ['1536..65535']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ETHERTYPE_IPV4': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_IPV4': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_ARP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_ARP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_VLAN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_VLAN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_IPV6': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_IPV6': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_MPLS': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_MPLS': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_LLDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_LLDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_ROCE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_ROCE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},),], is_leaf=True, yang_name="ethertype", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:ethertype-type', is_config=False)""", + }) + + self.__ethertype = t + if hasattr(self, '_set'): + self._set() + + def _unset_ethertype(self): + self.__ethertype = YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), restriction_dict={'range': ['1536..65535']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ETHERTYPE_IPV4': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_IPV4': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_ARP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_ARP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_VLAN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_VLAN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_IPV6': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_IPV6': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_MPLS': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_MPLS': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_LLDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_LLDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'ETHERTYPE_ROCE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:ETHERTYPE_ROCE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},),], is_leaf=True, yang_name="ethertype", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:ethertype-type', is_config=False) + + source_mac = __builtin__.property(_get_source_mac) + source_mac_mask = __builtin__.property(_get_source_mac_mask) + destination_mac = __builtin__.property(_get_destination_mac) + destination_mac_mask = __builtin__.property(_get_destination_mac_mask) + ethertype = __builtin__.property(_get_ethertype) + + + _pyangbind_elements = OrderedDict([('source_mac', source_mac), ('source_mac_mask', source_mac_mask), ('destination_mac', destination_mac), ('destination_mac_mask', destination_mac_mask), ('ethertype', ethertype), ]) + + +class yc_l2_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_l2(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry/l2. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Ethernet header fields + """ + __slots__ = ('_path_helper', '_extmethods', '__config','__state',) + + _yang_name = 'l2' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_l2_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_l2_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry', 'l2'] + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2/config (container) + + YANG Description: Configuration data + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configuration data + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_l2_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_l2_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_l2_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2/state (container) + + YANG Description: State Information. + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: State Information. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_l2_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_l2_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_l2_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + + + _pyangbind_elements = OrderedDict([('config', config), ('state', state), ]) + + +class yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv4_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry/ipv4/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configuration data for IPv4 match fields + """ + __slots__ = ('_path_helper', '_extmethods', '__source_address','__source_address_prefix_set','__destination_address','__destination_address_prefix_set','__dscp','__dscp_set','__protocol','__hop_limit',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__source_address = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}/([0-9]|[12][0-9]|3[0-2])'}), is_leaf=True, yang_name="source-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv4-prefix', is_config=True) + self.__source_address_prefix_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="source-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + self.__destination_address = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}/([0-9]|[12][0-9]|3[0-2])'}), is_leaf=True, yang_name="destination-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv4-prefix', is_config=True) + self.__destination_address_prefix_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="destination-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + self.__dscp = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']}), is_leaf=True, yang_name="dscp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=True) + self.__dscp_set = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']})), is_leaf=False, yang_name="dscp-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=True) + self.__protocol = YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..254']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},),], is_leaf=True, yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:ip-protocol-type', is_config=True) + self.__hop_limit = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..255']}), is_leaf=True, yang_name="hop-limit", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint8', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry', 'ipv4', 'config'] + + def _get_source_address(self): + """ + Getter method for source_address, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/config/source_address (oc-inet:ipv4-prefix) + + YANG Description: Source IPv4 address prefix. + """ + return self.__source_address + + def _set_source_address(self, v, load=False): + """ + Setter method for source_address, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/config/source_address (oc-inet:ipv4-prefix) + If this variable is read-only (config: false) in the + source YANG file, then _set_source_address is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_source_address() directly. + + YANG Description: Source IPv4 address prefix. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}/([0-9]|[12][0-9]|3[0-2])'}), is_leaf=True, yang_name="source-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv4-prefix', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """source_address must be of a type compatible with oc-inet:ipv4-prefix""", + 'defined-type': "oc-inet:ipv4-prefix", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}/([0-9]|[12][0-9]|3[0-2])'}), is_leaf=True, yang_name="source-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv4-prefix', is_config=True)""", + }) + + self.__source_address = t + if hasattr(self, '_set'): + self._set() + + def _unset_source_address(self): + self.__source_address = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}/([0-9]|[12][0-9]|3[0-2])'}), is_leaf=True, yang_name="source-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv4-prefix', is_config=True) + + + def _get_source_address_prefix_set(self): + """ + Getter method for source_address_prefix_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/config/source_address_prefix_set (leafref) + + YANG Description: Reference to a IPv4 address prefix Set +to match the source address + """ + return self.__source_address_prefix_set + + def _set_source_address_prefix_set(self, v, load=False): + """ + Setter method for source_address_prefix_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/config/source_address_prefix_set (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_source_address_prefix_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_source_address_prefix_set() directly. + + YANG Description: Reference to a IPv4 address prefix Set +to match the source address + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="source-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """source_address_prefix_set must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="source-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True)""", + }) + + self.__source_address_prefix_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_source_address_prefix_set(self): + self.__source_address_prefix_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="source-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + + def _get_destination_address(self): + """ + Getter method for destination_address, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/config/destination_address (oc-inet:ipv4-prefix) + + YANG Description: Destination IPv4 address prefix. + """ + return self.__destination_address + + def _set_destination_address(self, v, load=False): + """ + Setter method for destination_address, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/config/destination_address (oc-inet:ipv4-prefix) + If this variable is read-only (config: false) in the + source YANG file, then _set_destination_address is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_destination_address() directly. + + YANG Description: Destination IPv4 address prefix. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}/([0-9]|[12][0-9]|3[0-2])'}), is_leaf=True, yang_name="destination-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv4-prefix', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """destination_address must be of a type compatible with oc-inet:ipv4-prefix""", + 'defined-type': "oc-inet:ipv4-prefix", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}/([0-9]|[12][0-9]|3[0-2])'}), is_leaf=True, yang_name="destination-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv4-prefix', is_config=True)""", + }) + + self.__destination_address = t + if hasattr(self, '_set'): + self._set() + + def _unset_destination_address(self): + self.__destination_address = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}/([0-9]|[12][0-9]|3[0-2])'}), is_leaf=True, yang_name="destination-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv4-prefix', is_config=True) + + + def _get_destination_address_prefix_set(self): + """ + Getter method for destination_address_prefix_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/config/destination_address_prefix_set (leafref) + + YANG Description: Reference to a IPv4 address prefix set +to match the destination address + """ + return self.__destination_address_prefix_set + + def _set_destination_address_prefix_set(self, v, load=False): + """ + Setter method for destination_address_prefix_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/config/destination_address_prefix_set (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_destination_address_prefix_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_destination_address_prefix_set() directly. + + YANG Description: Reference to a IPv4 address prefix set +to match the destination address + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="destination-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """destination_address_prefix_set must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="destination-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True)""", + }) + + self.__destination_address_prefix_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_destination_address_prefix_set(self): + self.__destination_address_prefix_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="destination-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + + def _get_dscp(self): + """ + Getter method for dscp, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/config/dscp (oc-inet:dscp) + + YANG Description: Value of diffserv codepoint. + """ + return self.__dscp + + def _set_dscp(self, v, load=False): + """ + Setter method for dscp, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/config/dscp (oc-inet:dscp) + If this variable is read-only (config: false) in the + source YANG file, then _set_dscp is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_dscp() directly. + + YANG Description: Value of diffserv codepoint. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']}), is_leaf=True, yang_name="dscp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """dscp must be of a type compatible with oc-inet:dscp""", + 'defined-type': "oc-inet:dscp", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']}), is_leaf=True, yang_name="dscp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=True)""", + }) + + self.__dscp = t + if hasattr(self, '_set'): + self._set() + + def _unset_dscp(self): + self.__dscp = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']}), is_leaf=True, yang_name="dscp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=True) + + + def _get_dscp_set(self): + """ + Getter method for dscp_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/config/dscp_set (oc-inet:dscp) + + YANG Description: A list of DSCP values to be matched for incoming packets. AN OR match should +be performed, such that a packet must match one of the values defined in this +list. If the field is left empty then any DSCP value matches unless the 'dscp' +leaf is specified. It is not valid to specify both 'dscp' and 'dscp-set together.' + """ + return self.__dscp_set + + def _set_dscp_set(self, v, load=False): + """ + Setter method for dscp_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/config/dscp_set (oc-inet:dscp) + If this variable is read-only (config: false) in the + source YANG file, then _set_dscp_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_dscp_set() directly. + + YANG Description: A list of DSCP values to be matched for incoming packets. AN OR match should +be performed, such that a packet must match one of the values defined in this +list. If the field is left empty then any DSCP value matches unless the 'dscp' +leaf is specified. It is not valid to specify both 'dscp' and 'dscp-set together.' + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']})), is_leaf=False, yang_name="dscp-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """dscp_set must be of a type compatible with oc-inet:dscp""", + 'defined-type': "oc-inet:dscp", + 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']})), is_leaf=False, yang_name="dscp-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=True)""", + }) + + self.__dscp_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_dscp_set(self): + self.__dscp_set = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']})), is_leaf=False, yang_name="dscp-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=True) + + + def _get_protocol(self): + """ + Getter method for protocol, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/config/protocol (oc-pkt-match-types:ip-protocol-type) + + YANG Description: The protocol carried in the IP packet, expressed either +as its IP protocol number, or by a defined identity. + """ + return self.__protocol + + def _set_protocol(self, v, load=False): + """ + Setter method for protocol, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/config/protocol (oc-pkt-match-types:ip-protocol-type) + If this variable is read-only (config: false) in the + source YANG file, then _set_protocol is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_protocol() directly. + + YANG Description: The protocol carried in the IP packet, expressed either +as its IP protocol number, or by a defined identity. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=[RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..254']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},),], is_leaf=True, yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:ip-protocol-type', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """protocol must be of a type compatible with oc-pkt-match-types:ip-protocol-type""", + 'defined-type': "oc-pkt-match-types:ip-protocol-type", + 'generated-type': """YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..254']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},),], is_leaf=True, yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:ip-protocol-type', is_config=True)""", + }) + + self.__protocol = t + if hasattr(self, '_set'): + self._set() + + def _unset_protocol(self): + self.__protocol = YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..254']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},),], is_leaf=True, yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:ip-protocol-type', is_config=True) + + + def _get_hop_limit(self): + """ + Getter method for hop_limit, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/config/hop_limit (uint8) + + YANG Description: The IP packet's hop limit -- known as TTL (in hops) in +IPv4 packets, and hop limit in IPv6 + """ + return self.__hop_limit + + def _set_hop_limit(self, v, load=False): + """ + Setter method for hop_limit, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/config/hop_limit (uint8) + If this variable is read-only (config: false) in the + source YANG file, then _set_hop_limit is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_hop_limit() directly. + + YANG Description: The IP packet's hop limit -- known as TTL (in hops) in +IPv4 packets, and hop limit in IPv6 + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..255']}), is_leaf=True, yang_name="hop-limit", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint8', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """hop_limit must be of a type compatible with uint8""", + 'defined-type': "uint8", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..255']}), is_leaf=True, yang_name="hop-limit", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint8', is_config=True)""", + }) + + self.__hop_limit = t + if hasattr(self, '_set'): + self._set() + + def _unset_hop_limit(self): + self.__hop_limit = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..255']}), is_leaf=True, yang_name="hop-limit", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint8', is_config=True) + + source_address = __builtin__.property(_get_source_address, _set_source_address) + source_address_prefix_set = __builtin__.property(_get_source_address_prefix_set, _set_source_address_prefix_set) + destination_address = __builtin__.property(_get_destination_address, _set_destination_address) + destination_address_prefix_set = __builtin__.property(_get_destination_address_prefix_set, _set_destination_address_prefix_set) + dscp = __builtin__.property(_get_dscp, _set_dscp) + dscp_set = __builtin__.property(_get_dscp_set, _set_dscp_set) + protocol = __builtin__.property(_get_protocol, _set_protocol) + hop_limit = __builtin__.property(_get_hop_limit, _set_hop_limit) + + + _pyangbind_elements = OrderedDict([('source_address', source_address), ('source_address_prefix_set', source_address_prefix_set), ('destination_address', destination_address), ('destination_address_prefix_set', destination_address_prefix_set), ('dscp', dscp), ('dscp_set', dscp_set), ('protocol', protocol), ('hop_limit', hop_limit), ]) + + +class yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv4_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry/ipv4/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: State information for IPv4 match fields + """ + __slots__ = ('_path_helper', '_extmethods', '__source_address','__source_address_prefix_set','__destination_address','__destination_address_prefix_set','__dscp','__dscp_set','__protocol','__hop_limit',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__source_address = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}/([0-9]|[12][0-9]|3[0-2])'}), is_leaf=True, yang_name="source-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv4-prefix', is_config=False) + self.__source_address_prefix_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="source-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + self.__destination_address = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}/([0-9]|[12][0-9]|3[0-2])'}), is_leaf=True, yang_name="destination-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv4-prefix', is_config=False) + self.__destination_address_prefix_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="destination-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + self.__dscp = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']}), is_leaf=True, yang_name="dscp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=False) + self.__dscp_set = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']})), is_leaf=False, yang_name="dscp-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=False) + self.__protocol = YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..254']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},),], is_leaf=True, yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:ip-protocol-type', is_config=False) + self.__hop_limit = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..255']}), is_leaf=True, yang_name="hop-limit", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint8', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry', 'ipv4', 'state'] + + def _get_source_address(self): + """ + Getter method for source_address, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/state/source_address (oc-inet:ipv4-prefix) + + YANG Description: Source IPv4 address prefix. + """ + return self.__source_address + + def _set_source_address(self, v, load=False): + """ + Setter method for source_address, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/state/source_address (oc-inet:ipv4-prefix) + If this variable is read-only (config: false) in the + source YANG file, then _set_source_address is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_source_address() directly. + + YANG Description: Source IPv4 address prefix. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}/([0-9]|[12][0-9]|3[0-2])'}), is_leaf=True, yang_name="source-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv4-prefix', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """source_address must be of a type compatible with oc-inet:ipv4-prefix""", + 'defined-type': "oc-inet:ipv4-prefix", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}/([0-9]|[12][0-9]|3[0-2])'}), is_leaf=True, yang_name="source-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv4-prefix', is_config=False)""", + }) + + self.__source_address = t + if hasattr(self, '_set'): + self._set() + + def _unset_source_address(self): + self.__source_address = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}/([0-9]|[12][0-9]|3[0-2])'}), is_leaf=True, yang_name="source-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv4-prefix', is_config=False) + + + def _get_source_address_prefix_set(self): + """ + Getter method for source_address_prefix_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/state/source_address_prefix_set (leafref) + + YANG Description: Reference to a IPv4 address prefix Set +to match the source address + """ + return self.__source_address_prefix_set + + def _set_source_address_prefix_set(self, v, load=False): + """ + Setter method for source_address_prefix_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/state/source_address_prefix_set (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_source_address_prefix_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_source_address_prefix_set() directly. + + YANG Description: Reference to a IPv4 address prefix Set +to match the source address + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="source-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """source_address_prefix_set must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="source-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False)""", + }) + + self.__source_address_prefix_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_source_address_prefix_set(self): + self.__source_address_prefix_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="source-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + + + def _get_destination_address(self): + """ + Getter method for destination_address, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/state/destination_address (oc-inet:ipv4-prefix) + + YANG Description: Destination IPv4 address prefix. + """ + return self.__destination_address + + def _set_destination_address(self, v, load=False): + """ + Setter method for destination_address, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/state/destination_address (oc-inet:ipv4-prefix) + If this variable is read-only (config: false) in the + source YANG file, then _set_destination_address is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_destination_address() directly. + + YANG Description: Destination IPv4 address prefix. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}/([0-9]|[12][0-9]|3[0-2])'}), is_leaf=True, yang_name="destination-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv4-prefix', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """destination_address must be of a type compatible with oc-inet:ipv4-prefix""", + 'defined-type': "oc-inet:ipv4-prefix", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}/([0-9]|[12][0-9]|3[0-2])'}), is_leaf=True, yang_name="destination-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv4-prefix', is_config=False)""", + }) + + self.__destination_address = t + if hasattr(self, '_set'): + self._set() + + def _unset_destination_address(self): + self.__destination_address = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}/([0-9]|[12][0-9]|3[0-2])'}), is_leaf=True, yang_name="destination-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv4-prefix', is_config=False) + + + def _get_destination_address_prefix_set(self): + """ + Getter method for destination_address_prefix_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/state/destination_address_prefix_set (leafref) + + YANG Description: Reference to a IPv4 address prefix set +to match the destination address + """ + return self.__destination_address_prefix_set + + def _set_destination_address_prefix_set(self, v, load=False): + """ + Setter method for destination_address_prefix_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/state/destination_address_prefix_set (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_destination_address_prefix_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_destination_address_prefix_set() directly. + + YANG Description: Reference to a IPv4 address prefix set +to match the destination address + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="destination-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """destination_address_prefix_set must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="destination-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False)""", + }) + + self.__destination_address_prefix_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_destination_address_prefix_set(self): + self.__destination_address_prefix_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="destination-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + + + def _get_dscp(self): + """ + Getter method for dscp, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/state/dscp (oc-inet:dscp) + + YANG Description: Value of diffserv codepoint. + """ + return self.__dscp + + def _set_dscp(self, v, load=False): + """ + Setter method for dscp, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/state/dscp (oc-inet:dscp) + If this variable is read-only (config: false) in the + source YANG file, then _set_dscp is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_dscp() directly. + + YANG Description: Value of diffserv codepoint. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']}), is_leaf=True, yang_name="dscp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """dscp must be of a type compatible with oc-inet:dscp""", + 'defined-type': "oc-inet:dscp", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']}), is_leaf=True, yang_name="dscp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=False)""", + }) + + self.__dscp = t + if hasattr(self, '_set'): + self._set() + + def _unset_dscp(self): + self.__dscp = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']}), is_leaf=True, yang_name="dscp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=False) + + + def _get_dscp_set(self): + """ + Getter method for dscp_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/state/dscp_set (oc-inet:dscp) + + YANG Description: A list of DSCP values to be matched for incoming packets. AN OR match should +be performed, such that a packet must match one of the values defined in this +list. If the field is left empty then any DSCP value matches unless the 'dscp' +leaf is specified. It is not valid to specify both 'dscp' and 'dscp-set together.' + """ + return self.__dscp_set + + def _set_dscp_set(self, v, load=False): + """ + Setter method for dscp_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/state/dscp_set (oc-inet:dscp) + If this variable is read-only (config: false) in the + source YANG file, then _set_dscp_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_dscp_set() directly. + + YANG Description: A list of DSCP values to be matched for incoming packets. AN OR match should +be performed, such that a packet must match one of the values defined in this +list. If the field is left empty then any DSCP value matches unless the 'dscp' +leaf is specified. It is not valid to specify both 'dscp' and 'dscp-set together.' + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']})), is_leaf=False, yang_name="dscp-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """dscp_set must be of a type compatible with oc-inet:dscp""", + 'defined-type': "oc-inet:dscp", + 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']})), is_leaf=False, yang_name="dscp-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=False)""", + }) + + self.__dscp_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_dscp_set(self): + self.__dscp_set = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']})), is_leaf=False, yang_name="dscp-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=False) + + + def _get_protocol(self): + """ + Getter method for protocol, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/state/protocol (oc-pkt-match-types:ip-protocol-type) + + YANG Description: The protocol carried in the IP packet, expressed either +as its IP protocol number, or by a defined identity. + """ + return self.__protocol + + def _set_protocol(self, v, load=False): + """ + Setter method for protocol, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/state/protocol (oc-pkt-match-types:ip-protocol-type) + If this variable is read-only (config: false) in the + source YANG file, then _set_protocol is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_protocol() directly. + + YANG Description: The protocol carried in the IP packet, expressed either +as its IP protocol number, or by a defined identity. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=[RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..254']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},),], is_leaf=True, yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:ip-protocol-type', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """protocol must be of a type compatible with oc-pkt-match-types:ip-protocol-type""", + 'defined-type': "oc-pkt-match-types:ip-protocol-type", + 'generated-type': """YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..254']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},),], is_leaf=True, yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:ip-protocol-type', is_config=False)""", + }) + + self.__protocol = t + if hasattr(self, '_set'): + self._set() + + def _unset_protocol(self): + self.__protocol = YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..254']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},),], is_leaf=True, yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:ip-protocol-type', is_config=False) + + + def _get_hop_limit(self): + """ + Getter method for hop_limit, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/state/hop_limit (uint8) + + YANG Description: The IP packet's hop limit -- known as TTL (in hops) in +IPv4 packets, and hop limit in IPv6 + """ + return self.__hop_limit + + def _set_hop_limit(self, v, load=False): + """ + Setter method for hop_limit, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/state/hop_limit (uint8) + If this variable is read-only (config: false) in the + source YANG file, then _set_hop_limit is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_hop_limit() directly. + + YANG Description: The IP packet's hop limit -- known as TTL (in hops) in +IPv4 packets, and hop limit in IPv6 + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..255']}), is_leaf=True, yang_name="hop-limit", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint8', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """hop_limit must be of a type compatible with uint8""", + 'defined-type': "uint8", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..255']}), is_leaf=True, yang_name="hop-limit", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint8', is_config=False)""", + }) + + self.__hop_limit = t + if hasattr(self, '_set'): + self._set() + + def _unset_hop_limit(self): + self.__hop_limit = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..255']}), is_leaf=True, yang_name="hop-limit", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint8', is_config=False) + + source_address = __builtin__.property(_get_source_address) + source_address_prefix_set = __builtin__.property(_get_source_address_prefix_set) + destination_address = __builtin__.property(_get_destination_address) + destination_address_prefix_set = __builtin__.property(_get_destination_address_prefix_set) + dscp = __builtin__.property(_get_dscp) + dscp_set = __builtin__.property(_get_dscp_set) + protocol = __builtin__.property(_get_protocol) + hop_limit = __builtin__.property(_get_hop_limit) + + + _pyangbind_elements = OrderedDict([('source_address', source_address), ('source_address_prefix_set', source_address_prefix_set), ('destination_address', destination_address), ('destination_address_prefix_set', destination_address_prefix_set), ('dscp', dscp), ('dscp_set', dscp_set), ('protocol', protocol), ('hop_limit', hop_limit), ]) + + +class yc_ipv4_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv4(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry/ipv4. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Top level container for IPv4 match field data + """ + __slots__ = ('_path_helper', '_extmethods', '__config','__state',) + + _yang_name = 'ipv4' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv4_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv4_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry', 'ipv4'] + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/config (container) + + YANG Description: Configuration data for IPv4 match fields + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configuration data for IPv4 match fields + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv4_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv4_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv4_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/state (container) + + YANG Description: State information for IPv4 match fields + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: State information for IPv4 match fields + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv4_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv4_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv4_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + + + _pyangbind_elements = OrderedDict([('config', config), ('state', state), ]) + + +class yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_mpls_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry/mpls/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configuration parameters relating to fields within +the MPLS header. + """ + __slots__ = ('_path_helper', '_extmethods', '__traffic_class','__start_label_value','__end_label_value','__ttl_value',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__traffic_class = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..7']}), is_leaf=True, yang_name="traffic-class", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-mpls:mpls-tc', is_config=True) + self.__start_label_value = YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['16..1048575']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IPV4_EXPLICIT_NULL': {'value': 0}, 'ROUTER_ALERT': {'value': 1}, 'IPV6_EXPLICIT_NULL': {'value': 2}, 'IMPLICIT_NULL': {'value': 3}, 'ENTROPY_LABEL_INDICATOR': {'value': 7}, 'NO_LABEL': {}},),], is_leaf=True, yang_name="start-label-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-mpls:mpls-label', is_config=True) + self.__end_label_value = YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['16..1048575']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IPV4_EXPLICIT_NULL': {'value': 0}, 'ROUTER_ALERT': {'value': 1}, 'IPV6_EXPLICIT_NULL': {'value': 2}, 'IMPLICIT_NULL': {'value': 3}, 'ENTROPY_LABEL_INDICATOR': {'value': 7}, 'NO_LABEL': {}},),], is_leaf=True, yang_name="end-label-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-mpls:mpls-label', is_config=True) + self.__ttl_value = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), is_leaf=True, yang_name="ttl-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint8', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry', 'mpls', 'config'] + + def _get_traffic_class(self): + """ + Getter method for traffic_class, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/mpls/config/traffic_class (oc-mpls:mpls-tc) + + YANG Description: The value of the MPLS traffic class (TC) bits, +formerly known as the EXP bits. + """ + return self.__traffic_class + + def _set_traffic_class(self, v, load=False): + """ + Setter method for traffic_class, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/mpls/config/traffic_class (oc-mpls:mpls-tc) + If this variable is read-only (config: false) in the + source YANG file, then _set_traffic_class is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_traffic_class() directly. + + YANG Description: The value of the MPLS traffic class (TC) bits, +formerly known as the EXP bits. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..7']}), is_leaf=True, yang_name="traffic-class", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-mpls:mpls-tc', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """traffic_class must be of a type compatible with oc-mpls:mpls-tc""", + 'defined-type': "oc-mpls:mpls-tc", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..7']}), is_leaf=True, yang_name="traffic-class", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-mpls:mpls-tc', is_config=True)""", + }) + + self.__traffic_class = t + if hasattr(self, '_set'): + self._set() + + def _unset_traffic_class(self): + self.__traffic_class = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..7']}), is_leaf=True, yang_name="traffic-class", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-mpls:mpls-tc', is_config=True) + + + def _get_start_label_value(self): + """ + Getter method for start_label_value, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/mpls/config/start_label_value (oc-mpls:mpls-label) + + YANG Description: Match MPLS label value on the MPLS header. +The usage of this field indicated the upper +range value in the top of the stack. +The range that is used is inclusive. The match that +is done for a particular received pkt_label is: +start-label-value <= pkt_label <= end-label-value. +The 20-bit label value in an MPLS label +stack as specified in RFC 3032. +This label value does not include the +encodings of Traffic Class and TTL. + """ + return self.__start_label_value + + def _set_start_label_value(self, v, load=False): + """ + Setter method for start_label_value, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/mpls/config/start_label_value (oc-mpls:mpls-label) + If this variable is read-only (config: false) in the + source YANG file, then _set_start_label_value is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_start_label_value() directly. + + YANG Description: Match MPLS label value on the MPLS header. +The usage of this field indicated the upper +range value in the top of the stack. +The range that is used is inclusive. The match that +is done for a particular received pkt_label is: +start-label-value <= pkt_label <= end-label-value. +The 20-bit label value in an MPLS label +stack as specified in RFC 3032. +This label value does not include the +encodings of Traffic Class and TTL. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=[RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['16..1048575']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IPV4_EXPLICIT_NULL': {'value': 0}, 'ROUTER_ALERT': {'value': 1}, 'IPV6_EXPLICIT_NULL': {'value': 2}, 'IMPLICIT_NULL': {'value': 3}, 'ENTROPY_LABEL_INDICATOR': {'value': 7}, 'NO_LABEL': {}},),], is_leaf=True, yang_name="start-label-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-mpls:mpls-label', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """start_label_value must be of a type compatible with oc-mpls:mpls-label""", + 'defined-type': "oc-mpls:mpls-label", + 'generated-type': """YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['16..1048575']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IPV4_EXPLICIT_NULL': {'value': 0}, 'ROUTER_ALERT': {'value': 1}, 'IPV6_EXPLICIT_NULL': {'value': 2}, 'IMPLICIT_NULL': {'value': 3}, 'ENTROPY_LABEL_INDICATOR': {'value': 7}, 'NO_LABEL': {}},),], is_leaf=True, yang_name="start-label-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-mpls:mpls-label', is_config=True)""", + }) + + self.__start_label_value = t + if hasattr(self, '_set'): + self._set() + + def _unset_start_label_value(self): + self.__start_label_value = YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['16..1048575']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IPV4_EXPLICIT_NULL': {'value': 0}, 'ROUTER_ALERT': {'value': 1}, 'IPV6_EXPLICIT_NULL': {'value': 2}, 'IMPLICIT_NULL': {'value': 3}, 'ENTROPY_LABEL_INDICATOR': {'value': 7}, 'NO_LABEL': {}},),], is_leaf=True, yang_name="start-label-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-mpls:mpls-label', is_config=True) + + + def _get_end_label_value(self): + """ + Getter method for end_label_value, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/mpls/config/end_label_value (oc-mpls:mpls-label) + + YANG Description: Match MPLS label value on the MPLS header. +The usage of this field indicated the upper +range value in the top of the stack. +The range that is used is inclusive. The match that +is done for a particular received pkt_label is: +start-label-value <= pkt_label <= end-label-value. +The 20-bit label value in an MPLS label +stack as specified in RFC 3032. +This label value does not include the +encodings of Traffic Class and TTL. + """ + return self.__end_label_value + + def _set_end_label_value(self, v, load=False): + """ + Setter method for end_label_value, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/mpls/config/end_label_value (oc-mpls:mpls-label) + If this variable is read-only (config: false) in the + source YANG file, then _set_end_label_value is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_end_label_value() directly. + + YANG Description: Match MPLS label value on the MPLS header. +The usage of this field indicated the upper +range value in the top of the stack. +The range that is used is inclusive. The match that +is done for a particular received pkt_label is: +start-label-value <= pkt_label <= end-label-value. +The 20-bit label value in an MPLS label +stack as specified in RFC 3032. +This label value does not include the +encodings of Traffic Class and TTL. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=[RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['16..1048575']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IPV4_EXPLICIT_NULL': {'value': 0}, 'ROUTER_ALERT': {'value': 1}, 'IPV6_EXPLICIT_NULL': {'value': 2}, 'IMPLICIT_NULL': {'value': 3}, 'ENTROPY_LABEL_INDICATOR': {'value': 7}, 'NO_LABEL': {}},),], is_leaf=True, yang_name="end-label-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-mpls:mpls-label', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """end_label_value must be of a type compatible with oc-mpls:mpls-label""", + 'defined-type': "oc-mpls:mpls-label", + 'generated-type': """YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['16..1048575']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IPV4_EXPLICIT_NULL': {'value': 0}, 'ROUTER_ALERT': {'value': 1}, 'IPV6_EXPLICIT_NULL': {'value': 2}, 'IMPLICIT_NULL': {'value': 3}, 'ENTROPY_LABEL_INDICATOR': {'value': 7}, 'NO_LABEL': {}},),], is_leaf=True, yang_name="end-label-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-mpls:mpls-label', is_config=True)""", + }) + + self.__end_label_value = t + if hasattr(self, '_set'): + self._set() + + def _unset_end_label_value(self): + self.__end_label_value = YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['16..1048575']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IPV4_EXPLICIT_NULL': {'value': 0}, 'ROUTER_ALERT': {'value': 1}, 'IPV6_EXPLICIT_NULL': {'value': 2}, 'IMPLICIT_NULL': {'value': 3}, 'ENTROPY_LABEL_INDICATOR': {'value': 7}, 'NO_LABEL': {}},),], is_leaf=True, yang_name="end-label-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-mpls:mpls-label', is_config=True) + + + def _get_ttl_value(self): + """ + Getter method for ttl_value, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/mpls/config/ttl_value (uint8) + + YANG Description: Time-to-live MPLS packet value match. + """ + return self.__ttl_value + + def _set_ttl_value(self, v, load=False): + """ + Setter method for ttl_value, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/mpls/config/ttl_value (uint8) + If this variable is read-only (config: false) in the + source YANG file, then _set_ttl_value is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_ttl_value() directly. + + YANG Description: Time-to-live MPLS packet value match. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), is_leaf=True, yang_name="ttl-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint8', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """ttl_value must be of a type compatible with uint8""", + 'defined-type': "uint8", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), is_leaf=True, yang_name="ttl-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint8', is_config=True)""", + }) + + self.__ttl_value = t + if hasattr(self, '_set'): + self._set() + + def _unset_ttl_value(self): + self.__ttl_value = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), is_leaf=True, yang_name="ttl-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint8', is_config=True) + + traffic_class = __builtin__.property(_get_traffic_class, _set_traffic_class) + start_label_value = __builtin__.property(_get_start_label_value, _set_start_label_value) + end_label_value = __builtin__.property(_get_end_label_value, _set_end_label_value) + ttl_value = __builtin__.property(_get_ttl_value, _set_ttl_value) + + + _pyangbind_elements = OrderedDict([('traffic_class', traffic_class), ('start_label_value', start_label_value), ('end_label_value', end_label_value), ('ttl_value', ttl_value), ]) + + +class yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_mpls_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry/mpls/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state parameters relating to fields +within the MPLS header + """ + __slots__ = ('_path_helper', '_extmethods', '__traffic_class','__start_label_value','__end_label_value','__ttl_value',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__traffic_class = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..7']}), is_leaf=True, yang_name="traffic-class", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-mpls:mpls-tc', is_config=False) + self.__start_label_value = YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['16..1048575']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IPV4_EXPLICIT_NULL': {'value': 0}, 'ROUTER_ALERT': {'value': 1}, 'IPV6_EXPLICIT_NULL': {'value': 2}, 'IMPLICIT_NULL': {'value': 3}, 'ENTROPY_LABEL_INDICATOR': {'value': 7}, 'NO_LABEL': {}},),], is_leaf=True, yang_name="start-label-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-mpls:mpls-label', is_config=False) + self.__end_label_value = YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['16..1048575']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IPV4_EXPLICIT_NULL': {'value': 0}, 'ROUTER_ALERT': {'value': 1}, 'IPV6_EXPLICIT_NULL': {'value': 2}, 'IMPLICIT_NULL': {'value': 3}, 'ENTROPY_LABEL_INDICATOR': {'value': 7}, 'NO_LABEL': {}},),], is_leaf=True, yang_name="end-label-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-mpls:mpls-label', is_config=False) + self.__ttl_value = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), is_leaf=True, yang_name="ttl-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint8', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry', 'mpls', 'state'] + + def _get_traffic_class(self): + """ + Getter method for traffic_class, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/mpls/state/traffic_class (oc-mpls:mpls-tc) + + YANG Description: The value of the MPLS traffic class (TC) bits, +formerly known as the EXP bits. + """ + return self.__traffic_class + + def _set_traffic_class(self, v, load=False): + """ + Setter method for traffic_class, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/mpls/state/traffic_class (oc-mpls:mpls-tc) + If this variable is read-only (config: false) in the + source YANG file, then _set_traffic_class is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_traffic_class() directly. + + YANG Description: The value of the MPLS traffic class (TC) bits, +formerly known as the EXP bits. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..7']}), is_leaf=True, yang_name="traffic-class", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-mpls:mpls-tc', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """traffic_class must be of a type compatible with oc-mpls:mpls-tc""", + 'defined-type': "oc-mpls:mpls-tc", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..7']}), is_leaf=True, yang_name="traffic-class", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-mpls:mpls-tc', is_config=False)""", + }) + + self.__traffic_class = t + if hasattr(self, '_set'): + self._set() + + def _unset_traffic_class(self): + self.__traffic_class = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..7']}), is_leaf=True, yang_name="traffic-class", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-mpls:mpls-tc', is_config=False) + + + def _get_start_label_value(self): + """ + Getter method for start_label_value, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/mpls/state/start_label_value (oc-mpls:mpls-label) + + YANG Description: Match MPLS label value on the MPLS header. +The usage of this field indicated the upper +range value in the top of the stack. +The range that is used is inclusive. The match that +is done for a particular received pkt_label is: +start-label-value <= pkt_label <= end-label-value. +The 20-bit label value in an MPLS label +stack as specified in RFC 3032. +This label value does not include the +encodings of Traffic Class and TTL. + """ + return self.__start_label_value + + def _set_start_label_value(self, v, load=False): + """ + Setter method for start_label_value, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/mpls/state/start_label_value (oc-mpls:mpls-label) + If this variable is read-only (config: false) in the + source YANG file, then _set_start_label_value is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_start_label_value() directly. + + YANG Description: Match MPLS label value on the MPLS header. +The usage of this field indicated the upper +range value in the top of the stack. +The range that is used is inclusive. The match that +is done for a particular received pkt_label is: +start-label-value <= pkt_label <= end-label-value. +The 20-bit label value in an MPLS label +stack as specified in RFC 3032. +This label value does not include the +encodings of Traffic Class and TTL. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=[RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['16..1048575']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IPV4_EXPLICIT_NULL': {'value': 0}, 'ROUTER_ALERT': {'value': 1}, 'IPV6_EXPLICIT_NULL': {'value': 2}, 'IMPLICIT_NULL': {'value': 3}, 'ENTROPY_LABEL_INDICATOR': {'value': 7}, 'NO_LABEL': {}},),], is_leaf=True, yang_name="start-label-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-mpls:mpls-label', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """start_label_value must be of a type compatible with oc-mpls:mpls-label""", + 'defined-type': "oc-mpls:mpls-label", + 'generated-type': """YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['16..1048575']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IPV4_EXPLICIT_NULL': {'value': 0}, 'ROUTER_ALERT': {'value': 1}, 'IPV6_EXPLICIT_NULL': {'value': 2}, 'IMPLICIT_NULL': {'value': 3}, 'ENTROPY_LABEL_INDICATOR': {'value': 7}, 'NO_LABEL': {}},),], is_leaf=True, yang_name="start-label-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-mpls:mpls-label', is_config=False)""", + }) + + self.__start_label_value = t + if hasattr(self, '_set'): + self._set() + + def _unset_start_label_value(self): + self.__start_label_value = YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['16..1048575']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IPV4_EXPLICIT_NULL': {'value': 0}, 'ROUTER_ALERT': {'value': 1}, 'IPV6_EXPLICIT_NULL': {'value': 2}, 'IMPLICIT_NULL': {'value': 3}, 'ENTROPY_LABEL_INDICATOR': {'value': 7}, 'NO_LABEL': {}},),], is_leaf=True, yang_name="start-label-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-mpls:mpls-label', is_config=False) + + + def _get_end_label_value(self): + """ + Getter method for end_label_value, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/mpls/state/end_label_value (oc-mpls:mpls-label) + + YANG Description: Match MPLS label value on the MPLS header. +The usage of this field indicated the upper +range value in the top of the stack. +The range that is used is inclusive. The match that +is done for a particular received pkt_label is: +start-label-value <= pkt_label <= end-label-value. +The 20-bit label value in an MPLS label +stack as specified in RFC 3032. +This label value does not include the +encodings of Traffic Class and TTL. + """ + return self.__end_label_value + + def _set_end_label_value(self, v, load=False): + """ + Setter method for end_label_value, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/mpls/state/end_label_value (oc-mpls:mpls-label) + If this variable is read-only (config: false) in the + source YANG file, then _set_end_label_value is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_end_label_value() directly. + + YANG Description: Match MPLS label value on the MPLS header. +The usage of this field indicated the upper +range value in the top of the stack. +The range that is used is inclusive. The match that +is done for a particular received pkt_label is: +start-label-value <= pkt_label <= end-label-value. +The 20-bit label value in an MPLS label +stack as specified in RFC 3032. +This label value does not include the +encodings of Traffic Class and TTL. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=[RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['16..1048575']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IPV4_EXPLICIT_NULL': {'value': 0}, 'ROUTER_ALERT': {'value': 1}, 'IPV6_EXPLICIT_NULL': {'value': 2}, 'IMPLICIT_NULL': {'value': 3}, 'ENTROPY_LABEL_INDICATOR': {'value': 7}, 'NO_LABEL': {}},),], is_leaf=True, yang_name="end-label-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-mpls:mpls-label', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """end_label_value must be of a type compatible with oc-mpls:mpls-label""", + 'defined-type': "oc-mpls:mpls-label", + 'generated-type': """YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['16..1048575']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IPV4_EXPLICIT_NULL': {'value': 0}, 'ROUTER_ALERT': {'value': 1}, 'IPV6_EXPLICIT_NULL': {'value': 2}, 'IMPLICIT_NULL': {'value': 3}, 'ENTROPY_LABEL_INDICATOR': {'value': 7}, 'NO_LABEL': {}},),], is_leaf=True, yang_name="end-label-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-mpls:mpls-label', is_config=False)""", + }) + + self.__end_label_value = t + if hasattr(self, '_set'): + self._set() + + def _unset_end_label_value(self): + self.__end_label_value = YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['16..1048575']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IPV4_EXPLICIT_NULL': {'value': 0}, 'ROUTER_ALERT': {'value': 1}, 'IPV6_EXPLICIT_NULL': {'value': 2}, 'IMPLICIT_NULL': {'value': 3}, 'ENTROPY_LABEL_INDICATOR': {'value': 7}, 'NO_LABEL': {}},),], is_leaf=True, yang_name="end-label-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-mpls:mpls-label', is_config=False) + + + def _get_ttl_value(self): + """ + Getter method for ttl_value, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/mpls/state/ttl_value (uint8) + + YANG Description: Time-to-live MPLS packet value match. + """ + return self.__ttl_value + + def _set_ttl_value(self, v, load=False): + """ + Setter method for ttl_value, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/mpls/state/ttl_value (uint8) + If this variable is read-only (config: false) in the + source YANG file, then _set_ttl_value is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_ttl_value() directly. + + YANG Description: Time-to-live MPLS packet value match. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), is_leaf=True, yang_name="ttl-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint8', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """ttl_value must be of a type compatible with uint8""", + 'defined-type': "uint8", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), is_leaf=True, yang_name="ttl-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint8', is_config=False)""", + }) + + self.__ttl_value = t + if hasattr(self, '_set'): + self._set() + + def _unset_ttl_value(self): + self.__ttl_value = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), is_leaf=True, yang_name="ttl-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint8', is_config=False) + + traffic_class = __builtin__.property(_get_traffic_class) + start_label_value = __builtin__.property(_get_start_label_value) + end_label_value = __builtin__.property(_get_end_label_value) + ttl_value = __builtin__.property(_get_ttl_value) + + + _pyangbind_elements = OrderedDict([('traffic_class', traffic_class), ('start_label_value', start_label_value), ('end_label_value', end_label_value), ('ttl_value', ttl_value), ]) + + +class yc_mpls_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_mpls(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry/mpls. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: MPLS header fields + """ + __slots__ = ('_path_helper', '_extmethods', '__config','__state',) + + _yang_name = 'mpls' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_mpls_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_mpls_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry', 'mpls'] + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/mpls/config (container) + + YANG Description: Configuration parameters relating to fields within +the MPLS header. + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/mpls/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configuration parameters relating to fields within +the MPLS header. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_mpls_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_mpls_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_mpls_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/mpls/state (container) + + YANG Description: Operational state parameters relating to fields +within the MPLS header + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/mpls/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state parameters relating to fields +within the MPLS header + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_mpls_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_mpls_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_mpls_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + + + _pyangbind_elements = OrderedDict([('config', config), ('state', state), ]) + + +class yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv6_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry/ipv6/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configuration data for IPv6 match fields + """ + __slots__ = ('_path_helper', '_extmethods', '__source_address','__source_address_prefix_set','__source_flow_label','__destination_address','__destination_address_prefix_set','__destination_flow_label','__dscp','__dscp_set','__protocol','__hop_limit',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__source_address = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])'}), is_leaf=True, yang_name="source-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-prefix', is_config=True) + self.__source_address_prefix_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="source-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + self.__source_flow_label = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['0..1048575']}), is_leaf=True, yang_name="source-flow-label", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-flow-label', is_config=True) + self.__destination_address = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])'}), is_leaf=True, yang_name="destination-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-prefix', is_config=True) + self.__destination_address_prefix_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="destination-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + self.__destination_flow_label = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['0..1048575']}), is_leaf=True, yang_name="destination-flow-label", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-flow-label', is_config=True) + self.__dscp = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']}), is_leaf=True, yang_name="dscp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=True) + self.__dscp_set = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']})), is_leaf=False, yang_name="dscp-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=True) + self.__protocol = YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..254']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},),], is_leaf=True, yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:ip-protocol-type', is_config=True) + self.__hop_limit = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..255']}), is_leaf=True, yang_name="hop-limit", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint8', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry', 'ipv6', 'config'] + + def _get_source_address(self): + """ + Getter method for source_address, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/config/source_address (oc-inet:ipv6-prefix) + + YANG Description: Source IPv6 address prefix. + """ + return self.__source_address + + def _set_source_address(self, v, load=False): + """ + Setter method for source_address, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/config/source_address (oc-inet:ipv6-prefix) + If this variable is read-only (config: false) in the + source YANG file, then _set_source_address is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_source_address() directly. + + YANG Description: Source IPv6 address prefix. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])'}), is_leaf=True, yang_name="source-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-prefix', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """source_address must be of a type compatible with oc-inet:ipv6-prefix""", + 'defined-type': "oc-inet:ipv6-prefix", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])'}), is_leaf=True, yang_name="source-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-prefix', is_config=True)""", + }) + + self.__source_address = t + if hasattr(self, '_set'): + self._set() + + def _unset_source_address(self): + self.__source_address = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])'}), is_leaf=True, yang_name="source-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-prefix', is_config=True) + + + def _get_source_address_prefix_set(self): + """ + Getter method for source_address_prefix_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/config/source_address_prefix_set (leafref) + + YANG Description: Reference to a IPv6 address prefix set +to match the source address + """ + return self.__source_address_prefix_set + + def _set_source_address_prefix_set(self, v, load=False): + """ + Setter method for source_address_prefix_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/config/source_address_prefix_set (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_source_address_prefix_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_source_address_prefix_set() directly. + + YANG Description: Reference to a IPv6 address prefix set +to match the source address + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="source-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """source_address_prefix_set must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="source-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True)""", + }) + + self.__source_address_prefix_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_source_address_prefix_set(self): + self.__source_address_prefix_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="source-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + + def _get_source_flow_label(self): + """ + Getter method for source_flow_label, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/config/source_flow_label (oc-inet:ipv6-flow-label) + + YANG Description: Source IPv6 Flow label. + """ + return self.__source_flow_label + + def _set_source_flow_label(self, v, load=False): + """ + Setter method for source_flow_label, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/config/source_flow_label (oc-inet:ipv6-flow-label) + If this variable is read-only (config: false) in the + source YANG file, then _set_source_flow_label is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_source_flow_label() directly. + + YANG Description: Source IPv6 Flow label. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['0..1048575']}), is_leaf=True, yang_name="source-flow-label", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-flow-label', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """source_flow_label must be of a type compatible with oc-inet:ipv6-flow-label""", + 'defined-type': "oc-inet:ipv6-flow-label", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['0..1048575']}), is_leaf=True, yang_name="source-flow-label", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-flow-label', is_config=True)""", + }) + + self.__source_flow_label = t + if hasattr(self, '_set'): + self._set() + + def _unset_source_flow_label(self): + self.__source_flow_label = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['0..1048575']}), is_leaf=True, yang_name="source-flow-label", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-flow-label', is_config=True) + + + def _get_destination_address(self): + """ + Getter method for destination_address, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/config/destination_address (oc-inet:ipv6-prefix) + + YANG Description: Destination IPv6 address prefix. + """ + return self.__destination_address + + def _set_destination_address(self, v, load=False): + """ + Setter method for destination_address, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/config/destination_address (oc-inet:ipv6-prefix) + If this variable is read-only (config: false) in the + source YANG file, then _set_destination_address is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_destination_address() directly. + + YANG Description: Destination IPv6 address prefix. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])'}), is_leaf=True, yang_name="destination-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-prefix', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """destination_address must be of a type compatible with oc-inet:ipv6-prefix""", + 'defined-type': "oc-inet:ipv6-prefix", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])'}), is_leaf=True, yang_name="destination-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-prefix', is_config=True)""", + }) + + self.__destination_address = t + if hasattr(self, '_set'): + self._set() + + def _unset_destination_address(self): + self.__destination_address = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])'}), is_leaf=True, yang_name="destination-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-prefix', is_config=True) + + + def _get_destination_address_prefix_set(self): + """ + Getter method for destination_address_prefix_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/config/destination_address_prefix_set (leafref) + + YANG Description: Reference to a IPv6 address prefix set +to match the destination address + """ + return self.__destination_address_prefix_set + + def _set_destination_address_prefix_set(self, v, load=False): + """ + Setter method for destination_address_prefix_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/config/destination_address_prefix_set (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_destination_address_prefix_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_destination_address_prefix_set() directly. + + YANG Description: Reference to a IPv6 address prefix set +to match the destination address + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="destination-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """destination_address_prefix_set must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="destination-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True)""", + }) + + self.__destination_address_prefix_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_destination_address_prefix_set(self): + self.__destination_address_prefix_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="destination-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + + def _get_destination_flow_label(self): + """ + Getter method for destination_flow_label, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/config/destination_flow_label (oc-inet:ipv6-flow-label) + + YANG Description: Destination IPv6 Flow label. + """ + return self.__destination_flow_label + + def _set_destination_flow_label(self, v, load=False): + """ + Setter method for destination_flow_label, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/config/destination_flow_label (oc-inet:ipv6-flow-label) + If this variable is read-only (config: false) in the + source YANG file, then _set_destination_flow_label is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_destination_flow_label() directly. + + YANG Description: Destination IPv6 Flow label. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['0..1048575']}), is_leaf=True, yang_name="destination-flow-label", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-flow-label', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """destination_flow_label must be of a type compatible with oc-inet:ipv6-flow-label""", + 'defined-type': "oc-inet:ipv6-flow-label", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['0..1048575']}), is_leaf=True, yang_name="destination-flow-label", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-flow-label', is_config=True)""", + }) + + self.__destination_flow_label = t + if hasattr(self, '_set'): + self._set() + + def _unset_destination_flow_label(self): + self.__destination_flow_label = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['0..1048575']}), is_leaf=True, yang_name="destination-flow-label", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-flow-label', is_config=True) + + + def _get_dscp(self): + """ + Getter method for dscp, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/config/dscp (oc-inet:dscp) + + YANG Description: Value of diffserv codepoint. + """ + return self.__dscp + + def _set_dscp(self, v, load=False): + """ + Setter method for dscp, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/config/dscp (oc-inet:dscp) + If this variable is read-only (config: false) in the + source YANG file, then _set_dscp is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_dscp() directly. + + YANG Description: Value of diffserv codepoint. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']}), is_leaf=True, yang_name="dscp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """dscp must be of a type compatible with oc-inet:dscp""", + 'defined-type': "oc-inet:dscp", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']}), is_leaf=True, yang_name="dscp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=True)""", + }) + + self.__dscp = t + if hasattr(self, '_set'): + self._set() + + def _unset_dscp(self): + self.__dscp = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']}), is_leaf=True, yang_name="dscp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=True) + + + def _get_dscp_set(self): + """ + Getter method for dscp_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/config/dscp_set (oc-inet:dscp) + + YANG Description: A list of DSCP values to be matched for incoming packets. AN OR match should +be performed, such that a packet must match one of the values defined in this +list. If the field is left empty then any DSCP value matches unless the 'dscp' +leaf is specified. It is not valid to specify both 'dscp' and 'dscp-set together.' + """ + return self.__dscp_set + + def _set_dscp_set(self, v, load=False): + """ + Setter method for dscp_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/config/dscp_set (oc-inet:dscp) + If this variable is read-only (config: false) in the + source YANG file, then _set_dscp_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_dscp_set() directly. + + YANG Description: A list of DSCP values to be matched for incoming packets. AN OR match should +be performed, such that a packet must match one of the values defined in this +list. If the field is left empty then any DSCP value matches unless the 'dscp' +leaf is specified. It is not valid to specify both 'dscp' and 'dscp-set together.' + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']})), is_leaf=False, yang_name="dscp-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """dscp_set must be of a type compatible with oc-inet:dscp""", + 'defined-type': "oc-inet:dscp", + 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']})), is_leaf=False, yang_name="dscp-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=True)""", + }) + + self.__dscp_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_dscp_set(self): + self.__dscp_set = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']})), is_leaf=False, yang_name="dscp-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=True) + + + def _get_protocol(self): + """ + Getter method for protocol, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/config/protocol (oc-pkt-match-types:ip-protocol-type) + + YANG Description: The protocol carried in the IP packet, expressed either +as its IP protocol number, or by a defined identity. + """ + return self.__protocol + + def _set_protocol(self, v, load=False): + """ + Setter method for protocol, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/config/protocol (oc-pkt-match-types:ip-protocol-type) + If this variable is read-only (config: false) in the + source YANG file, then _set_protocol is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_protocol() directly. + + YANG Description: The protocol carried in the IP packet, expressed either +as its IP protocol number, or by a defined identity. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=[RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..254']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},),], is_leaf=True, yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:ip-protocol-type', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """protocol must be of a type compatible with oc-pkt-match-types:ip-protocol-type""", + 'defined-type': "oc-pkt-match-types:ip-protocol-type", + 'generated-type': """YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..254']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},),], is_leaf=True, yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:ip-protocol-type', is_config=True)""", + }) + + self.__protocol = t + if hasattr(self, '_set'): + self._set() + + def _unset_protocol(self): + self.__protocol = YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..254']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},),], is_leaf=True, yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:ip-protocol-type', is_config=True) + + + def _get_hop_limit(self): + """ + Getter method for hop_limit, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/config/hop_limit (uint8) + + YANG Description: The IP packet's hop limit -- known as TTL (in hops) in +IPv4 packets, and hop limit in IPv6 + """ + return self.__hop_limit + + def _set_hop_limit(self, v, load=False): + """ + Setter method for hop_limit, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/config/hop_limit (uint8) + If this variable is read-only (config: false) in the + source YANG file, then _set_hop_limit is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_hop_limit() directly. + + YANG Description: The IP packet's hop limit -- known as TTL (in hops) in +IPv4 packets, and hop limit in IPv6 + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..255']}), is_leaf=True, yang_name="hop-limit", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint8', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """hop_limit must be of a type compatible with uint8""", + 'defined-type': "uint8", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..255']}), is_leaf=True, yang_name="hop-limit", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint8', is_config=True)""", + }) + + self.__hop_limit = t + if hasattr(self, '_set'): + self._set() + + def _unset_hop_limit(self): + self.__hop_limit = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..255']}), is_leaf=True, yang_name="hop-limit", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint8', is_config=True) + + source_address = __builtin__.property(_get_source_address, _set_source_address) + source_address_prefix_set = __builtin__.property(_get_source_address_prefix_set, _set_source_address_prefix_set) + source_flow_label = __builtin__.property(_get_source_flow_label, _set_source_flow_label) + destination_address = __builtin__.property(_get_destination_address, _set_destination_address) + destination_address_prefix_set = __builtin__.property(_get_destination_address_prefix_set, _set_destination_address_prefix_set) + destination_flow_label = __builtin__.property(_get_destination_flow_label, _set_destination_flow_label) + dscp = __builtin__.property(_get_dscp, _set_dscp) + dscp_set = __builtin__.property(_get_dscp_set, _set_dscp_set) + protocol = __builtin__.property(_get_protocol, _set_protocol) + hop_limit = __builtin__.property(_get_hop_limit, _set_hop_limit) + + + _pyangbind_elements = OrderedDict([('source_address', source_address), ('source_address_prefix_set', source_address_prefix_set), ('source_flow_label', source_flow_label), ('destination_address', destination_address), ('destination_address_prefix_set', destination_address_prefix_set), ('destination_flow_label', destination_flow_label), ('dscp', dscp), ('dscp_set', dscp_set), ('protocol', protocol), ('hop_limit', hop_limit), ]) + + +class yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv6_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry/ipv6/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state data for IPv6 match fields + """ + __slots__ = ('_path_helper', '_extmethods', '__source_address','__source_address_prefix_set','__source_flow_label','__destination_address','__destination_address_prefix_set','__destination_flow_label','__dscp','__dscp_set','__protocol','__hop_limit',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__source_address = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])'}), is_leaf=True, yang_name="source-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-prefix', is_config=False) + self.__source_address_prefix_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="source-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + self.__source_flow_label = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['0..1048575']}), is_leaf=True, yang_name="source-flow-label", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-flow-label', is_config=False) + self.__destination_address = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])'}), is_leaf=True, yang_name="destination-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-prefix', is_config=False) + self.__destination_address_prefix_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="destination-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + self.__destination_flow_label = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['0..1048575']}), is_leaf=True, yang_name="destination-flow-label", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-flow-label', is_config=False) + self.__dscp = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']}), is_leaf=True, yang_name="dscp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=False) + self.__dscp_set = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']})), is_leaf=False, yang_name="dscp-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=False) + self.__protocol = YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..254']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},),], is_leaf=True, yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:ip-protocol-type', is_config=False) + self.__hop_limit = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..255']}), is_leaf=True, yang_name="hop-limit", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint8', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry', 'ipv6', 'state'] + + def _get_source_address(self): + """ + Getter method for source_address, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/state/source_address (oc-inet:ipv6-prefix) + + YANG Description: Source IPv6 address prefix. + """ + return self.__source_address + + def _set_source_address(self, v, load=False): + """ + Setter method for source_address, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/state/source_address (oc-inet:ipv6-prefix) + If this variable is read-only (config: false) in the + source YANG file, then _set_source_address is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_source_address() directly. + + YANG Description: Source IPv6 address prefix. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])'}), is_leaf=True, yang_name="source-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-prefix', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """source_address must be of a type compatible with oc-inet:ipv6-prefix""", + 'defined-type': "oc-inet:ipv6-prefix", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])'}), is_leaf=True, yang_name="source-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-prefix', is_config=False)""", + }) + + self.__source_address = t + if hasattr(self, '_set'): + self._set() + + def _unset_source_address(self): + self.__source_address = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])'}), is_leaf=True, yang_name="source-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-prefix', is_config=False) + + + def _get_source_address_prefix_set(self): + """ + Getter method for source_address_prefix_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/state/source_address_prefix_set (leafref) + + YANG Description: Reference to a IPv6 address prefix set +to match the source address + """ + return self.__source_address_prefix_set + + def _set_source_address_prefix_set(self, v, load=False): + """ + Setter method for source_address_prefix_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/state/source_address_prefix_set (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_source_address_prefix_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_source_address_prefix_set() directly. + + YANG Description: Reference to a IPv6 address prefix set +to match the source address + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="source-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """source_address_prefix_set must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="source-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False)""", + }) + + self.__source_address_prefix_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_source_address_prefix_set(self): + self.__source_address_prefix_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="source-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + + + def _get_source_flow_label(self): + """ + Getter method for source_flow_label, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/state/source_flow_label (oc-inet:ipv6-flow-label) + + YANG Description: Source IPv6 Flow label. + """ + return self.__source_flow_label + + def _set_source_flow_label(self, v, load=False): + """ + Setter method for source_flow_label, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/state/source_flow_label (oc-inet:ipv6-flow-label) + If this variable is read-only (config: false) in the + source YANG file, then _set_source_flow_label is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_source_flow_label() directly. + + YANG Description: Source IPv6 Flow label. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['0..1048575']}), is_leaf=True, yang_name="source-flow-label", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-flow-label', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """source_flow_label must be of a type compatible with oc-inet:ipv6-flow-label""", + 'defined-type': "oc-inet:ipv6-flow-label", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['0..1048575']}), is_leaf=True, yang_name="source-flow-label", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-flow-label', is_config=False)""", + }) + + self.__source_flow_label = t + if hasattr(self, '_set'): + self._set() + + def _unset_source_flow_label(self): + self.__source_flow_label = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['0..1048575']}), is_leaf=True, yang_name="source-flow-label", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-flow-label', is_config=False) + + + def _get_destination_address(self): + """ + Getter method for destination_address, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/state/destination_address (oc-inet:ipv6-prefix) + + YANG Description: Destination IPv6 address prefix. + """ + return self.__destination_address + + def _set_destination_address(self, v, load=False): + """ + Setter method for destination_address, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/state/destination_address (oc-inet:ipv6-prefix) + If this variable is read-only (config: false) in the + source YANG file, then _set_destination_address is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_destination_address() directly. + + YANG Description: Destination IPv6 address prefix. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])'}), is_leaf=True, yang_name="destination-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-prefix', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """destination_address must be of a type compatible with oc-inet:ipv6-prefix""", + 'defined-type': "oc-inet:ipv6-prefix", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])'}), is_leaf=True, yang_name="destination-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-prefix', is_config=False)""", + }) + + self.__destination_address = t + if hasattr(self, '_set'): + self._set() + + def _unset_destination_address(self): + self.__destination_address = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])'}), is_leaf=True, yang_name="destination-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-prefix', is_config=False) + + + def _get_destination_address_prefix_set(self): + """ + Getter method for destination_address_prefix_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/state/destination_address_prefix_set (leafref) + + YANG Description: Reference to a IPv6 address prefix set +to match the destination address + """ + return self.__destination_address_prefix_set + + def _set_destination_address_prefix_set(self, v, load=False): + """ + Setter method for destination_address_prefix_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/state/destination_address_prefix_set (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_destination_address_prefix_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_destination_address_prefix_set() directly. + + YANG Description: Reference to a IPv6 address prefix set +to match the destination address + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="destination-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """destination_address_prefix_set must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="destination-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False)""", + }) + + self.__destination_address_prefix_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_destination_address_prefix_set(self): + self.__destination_address_prefix_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="destination-address-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + + + def _get_destination_flow_label(self): + """ + Getter method for destination_flow_label, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/state/destination_flow_label (oc-inet:ipv6-flow-label) + + YANG Description: Destination IPv6 Flow label. + """ + return self.__destination_flow_label + + def _set_destination_flow_label(self, v, load=False): + """ + Setter method for destination_flow_label, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/state/destination_flow_label (oc-inet:ipv6-flow-label) + If this variable is read-only (config: false) in the + source YANG file, then _set_destination_flow_label is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_destination_flow_label() directly. + + YANG Description: Destination IPv6 Flow label. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['0..1048575']}), is_leaf=True, yang_name="destination-flow-label", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-flow-label', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """destination_flow_label must be of a type compatible with oc-inet:ipv6-flow-label""", + 'defined-type': "oc-inet:ipv6-flow-label", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['0..1048575']}), is_leaf=True, yang_name="destination-flow-label", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-flow-label', is_config=False)""", + }) + + self.__destination_flow_label = t + if hasattr(self, '_set'): + self._set() + + def _unset_destination_flow_label(self): + self.__destination_flow_label = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['0..1048575']}), is_leaf=True, yang_name="destination-flow-label", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:ipv6-flow-label', is_config=False) + + + def _get_dscp(self): + """ + Getter method for dscp, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/state/dscp (oc-inet:dscp) + + YANG Description: Value of diffserv codepoint. + """ + return self.__dscp + + def _set_dscp(self, v, load=False): + """ + Setter method for dscp, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/state/dscp (oc-inet:dscp) + If this variable is read-only (config: false) in the + source YANG file, then _set_dscp is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_dscp() directly. + + YANG Description: Value of diffserv codepoint. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']}), is_leaf=True, yang_name="dscp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """dscp must be of a type compatible with oc-inet:dscp""", + 'defined-type': "oc-inet:dscp", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']}), is_leaf=True, yang_name="dscp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=False)""", + }) + + self.__dscp = t + if hasattr(self, '_set'): + self._set() + + def _unset_dscp(self): + self.__dscp = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']}), is_leaf=True, yang_name="dscp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=False) + + + def _get_dscp_set(self): + """ + Getter method for dscp_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/state/dscp_set (oc-inet:dscp) + + YANG Description: A list of DSCP values to be matched for incoming packets. AN OR match should +be performed, such that a packet must match one of the values defined in this +list. If the field is left empty then any DSCP value matches unless the 'dscp' +leaf is specified. It is not valid to specify both 'dscp' and 'dscp-set together.' + """ + return self.__dscp_set + + def _set_dscp_set(self, v, load=False): + """ + Setter method for dscp_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/state/dscp_set (oc-inet:dscp) + If this variable is read-only (config: false) in the + source YANG file, then _set_dscp_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_dscp_set() directly. + + YANG Description: A list of DSCP values to be matched for incoming packets. AN OR match should +be performed, such that a packet must match one of the values defined in this +list. If the field is left empty then any DSCP value matches unless the 'dscp' +leaf is specified. It is not valid to specify both 'dscp' and 'dscp-set together.' + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']})), is_leaf=False, yang_name="dscp-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """dscp_set must be of a type compatible with oc-inet:dscp""", + 'defined-type': "oc-inet:dscp", + 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']})), is_leaf=False, yang_name="dscp-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=False)""", + }) + + self.__dscp_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_dscp_set(self): + self.__dscp_set = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..63']})), is_leaf=False, yang_name="dscp-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-inet:dscp', is_config=False) + + + def _get_protocol(self): + """ + Getter method for protocol, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/state/protocol (oc-pkt-match-types:ip-protocol-type) + + YANG Description: The protocol carried in the IP packet, expressed either +as its IP protocol number, or by a defined identity. + """ + return self.__protocol + + def _set_protocol(self, v, load=False): + """ + Setter method for protocol, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/state/protocol (oc-pkt-match-types:ip-protocol-type) + If this variable is read-only (config: false) in the + source YANG file, then _set_protocol is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_protocol() directly. + + YANG Description: The protocol carried in the IP packet, expressed either +as its IP protocol number, or by a defined identity. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=[RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..254']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},),], is_leaf=True, yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:ip-protocol-type', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """protocol must be of a type compatible with oc-pkt-match-types:ip-protocol-type""", + 'defined-type': "oc-pkt-match-types:ip-protocol-type", + 'generated-type': """YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..254']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},),], is_leaf=True, yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:ip-protocol-type', is_config=False)""", + }) + + self.__protocol = t + if hasattr(self, '_set'): + self._set() + + def _unset_protocol(self): + self.__protocol = YANGDynClass(base=[RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..254']}),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_TCP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_UDP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_ICMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IGMP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_PIM': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_RSVP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_GRE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_AUTH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_L2TP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:IP_IN_IP': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},),], is_leaf=True, yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:ip-protocol-type', is_config=False) + + + def _get_hop_limit(self): + """ + Getter method for hop_limit, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/state/hop_limit (uint8) + + YANG Description: The IP packet's hop limit -- known as TTL (in hops) in +IPv4 packets, and hop limit in IPv6 + """ + return self.__hop_limit + + def _set_hop_limit(self, v, load=False): + """ + Setter method for hop_limit, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/state/hop_limit (uint8) + If this variable is read-only (config: false) in the + source YANG file, then _set_hop_limit is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_hop_limit() directly. + + YANG Description: The IP packet's hop limit -- known as TTL (in hops) in +IPv4 packets, and hop limit in IPv6 + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..255']}), is_leaf=True, yang_name="hop-limit", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint8', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """hop_limit must be of a type compatible with uint8""", + 'defined-type': "uint8", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..255']}), is_leaf=True, yang_name="hop-limit", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint8', is_config=False)""", + }) + + self.__hop_limit = t + if hasattr(self, '_set'): + self._set() + + def _unset_hop_limit(self): + self.__hop_limit = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), restriction_dict={'range': ['0..255']}), is_leaf=True, yang_name="hop-limit", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='uint8', is_config=False) + + source_address = __builtin__.property(_get_source_address) + source_address_prefix_set = __builtin__.property(_get_source_address_prefix_set) + source_flow_label = __builtin__.property(_get_source_flow_label) + destination_address = __builtin__.property(_get_destination_address) + destination_address_prefix_set = __builtin__.property(_get_destination_address_prefix_set) + destination_flow_label = __builtin__.property(_get_destination_flow_label) + dscp = __builtin__.property(_get_dscp) + dscp_set = __builtin__.property(_get_dscp_set) + protocol = __builtin__.property(_get_protocol) + hop_limit = __builtin__.property(_get_hop_limit) + + + _pyangbind_elements = OrderedDict([('source_address', source_address), ('source_address_prefix_set', source_address_prefix_set), ('source_flow_label', source_flow_label), ('destination_address', destination_address), ('destination_address_prefix_set', destination_address_prefix_set), ('destination_flow_label', destination_flow_label), ('dscp', dscp), ('dscp_set', dscp_set), ('protocol', protocol), ('hop_limit', hop_limit), ]) + + +class yc_ipv6_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv6(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry/ipv6. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Top-level container for IPv6 match field data + """ + __slots__ = ('_path_helper', '_extmethods', '__config','__state',) + + _yang_name = 'ipv6' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv6_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv6_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry', 'ipv6'] + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/config (container) + + YANG Description: Configuration data for IPv6 match fields + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configuration data for IPv6 match fields + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv6_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv6_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv6_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/state (container) + + YANG Description: Operational state data for IPv6 match fields + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state data for IPv6 match fields + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv6_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv6_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv6_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + + + _pyangbind_elements = OrderedDict([('config', config), ('state', state), ]) + + +class yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_transport_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry/transport/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configuration data + """ + __slots__ = ('_path_helper', '_extmethods', '__source_port','__source_port_set','__destination_port','__destination_port_set','__tcp_flags',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__source_port = YANGDynClass(base=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.\\.(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])'}),RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}},),], is_leaf=True, yang_name="source-port", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:port-num-range', is_config=True) + self.__source_port_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="source-port-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + self.__destination_port = YANGDynClass(base=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.\\.(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])'}),RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}},),], is_leaf=True, yang_name="destination-port", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:port-num-range', is_config=True) + self.__destination_port_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="destination-port-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + self.__tcp_flags = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'TCP_SYN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_SYN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_FIN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_FIN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_RST': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_RST': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_PSH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_PSH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_ACK': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_ACK': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_URG': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_URG': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_ECE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_ECE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_CWR': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_CWR': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},)), is_leaf=False, yang_name="tcp-flags", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry', 'transport', 'config'] + + def _get_source_port(self): + """ + Getter method for source_port, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport/config/source_port (oc-pkt-match-types:port-num-range) + + YANG Description: Source port or range + """ + return self.__source_port + + def _set_source_port(self, v, load=False): + """ + Setter method for source_port, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport/config/source_port (oc-pkt-match-types:port-num-range) + If this variable is read-only (config: false) in the + source YANG file, then _set_source_port is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_source_port() directly. + + YANG Description: Source port or range + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.\\.(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])'}),RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}},),], is_leaf=True, yang_name="source-port", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:port-num-range', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """source_port must be of a type compatible with oc-pkt-match-types:port-num-range""", + 'defined-type': "oc-pkt-match-types:port-num-range", + 'generated-type': """YANGDynClass(base=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.\\.(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])'}),RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}},),], is_leaf=True, yang_name="source-port", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:port-num-range', is_config=True)""", + }) + + self.__source_port = t + if hasattr(self, '_set'): + self._set() + + def _unset_source_port(self): + self.__source_port = YANGDynClass(base=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.\\.(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])'}),RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}},),], is_leaf=True, yang_name="source-port", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:port-num-range', is_config=True) + + + def _get_source_port_set(self): + """ + Getter method for source_port_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport/config/source_port_set (leafref) + + YANG Description: Reference to a port set +to match the source port + """ + return self.__source_port_set + + def _set_source_port_set(self, v, load=False): + """ + Setter method for source_port_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport/config/source_port_set (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_source_port_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_source_port_set() directly. + + YANG Description: Reference to a port set +to match the source port + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="source-port-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """source_port_set must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="source-port-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True)""", + }) + + self.__source_port_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_source_port_set(self): + self.__source_port_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="source-port-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + + def _get_destination_port(self): + """ + Getter method for destination_port, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport/config/destination_port (oc-pkt-match-types:port-num-range) + + YANG Description: Destination port or range + """ + return self.__destination_port + + def _set_destination_port(self, v, load=False): + """ + Setter method for destination_port, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport/config/destination_port (oc-pkt-match-types:port-num-range) + If this variable is read-only (config: false) in the + source YANG file, then _set_destination_port is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_destination_port() directly. + + YANG Description: Destination port or range + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.\\.(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])'}),RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}},),], is_leaf=True, yang_name="destination-port", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:port-num-range', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """destination_port must be of a type compatible with oc-pkt-match-types:port-num-range""", + 'defined-type': "oc-pkt-match-types:port-num-range", + 'generated-type': """YANGDynClass(base=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.\\.(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])'}),RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}},),], is_leaf=True, yang_name="destination-port", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:port-num-range', is_config=True)""", + }) + + self.__destination_port = t + if hasattr(self, '_set'): + self._set() + + def _unset_destination_port(self): + self.__destination_port = YANGDynClass(base=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.\\.(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])'}),RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}},),], is_leaf=True, yang_name="destination-port", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:port-num-range', is_config=True) + + + def _get_destination_port_set(self): + """ + Getter method for destination_port_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport/config/destination_port_set (leafref) + + YANG Description: Reference to a port set +to match the destination port + """ + return self.__destination_port_set + + def _set_destination_port_set(self, v, load=False): + """ + Setter method for destination_port_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport/config/destination_port_set (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_destination_port_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_destination_port_set() directly. + + YANG Description: Reference to a port set +to match the destination port + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="destination-port-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """destination_port_set must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="destination-port-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True)""", + }) + + self.__destination_port_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_destination_port_set(self): + self.__destination_port_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="destination-port-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + + def _get_tcp_flags(self): + """ + Getter method for tcp_flags, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport/config/tcp_flags (identityref) + + YANG Description: List of TCP flags to match + """ + return self.__tcp_flags + + def _set_tcp_flags(self, v, load=False): + """ + Setter method for tcp_flags, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport/config/tcp_flags (identityref) + If this variable is read-only (config: false) in the + source YANG file, then _set_tcp_flags is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_tcp_flags() directly. + + YANG Description: List of TCP flags to match + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'TCP_SYN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_SYN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_FIN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_FIN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_RST': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_RST': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_PSH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_PSH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_ACK': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_ACK': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_URG': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_URG': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_ECE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_ECE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_CWR': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_CWR': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},)), is_leaf=False, yang_name="tcp-flags", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """tcp_flags must be of a type compatible with identityref""", + 'defined-type': "openconfig-acl:identityref", + 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'TCP_SYN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_SYN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_FIN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_FIN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_RST': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_RST': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_PSH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_PSH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_ACK': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_ACK': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_URG': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_URG': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_ECE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_ECE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_CWR': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_CWR': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},)), is_leaf=False, yang_name="tcp-flags", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=True)""", + }) + + self.__tcp_flags = t + if hasattr(self, '_set'): + self._set() + + def _unset_tcp_flags(self): + self.__tcp_flags = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'TCP_SYN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_SYN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_FIN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_FIN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_RST': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_RST': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_PSH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_PSH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_ACK': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_ACK': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_URG': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_URG': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_ECE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_ECE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_CWR': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_CWR': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},)), is_leaf=False, yang_name="tcp-flags", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=True) + + source_port = __builtin__.property(_get_source_port, _set_source_port) + source_port_set = __builtin__.property(_get_source_port_set, _set_source_port_set) + destination_port = __builtin__.property(_get_destination_port, _set_destination_port) + destination_port_set = __builtin__.property(_get_destination_port_set, _set_destination_port_set) + tcp_flags = __builtin__.property(_get_tcp_flags, _set_tcp_flags) + + + _pyangbind_elements = OrderedDict([('source_port', source_port), ('source_port_set', source_port_set), ('destination_port', destination_port), ('destination_port_set', destination_port_set), ('tcp_flags', tcp_flags), ]) + + +class yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_transport_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry/transport/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: State data + """ + __slots__ = ('_path_helper', '_extmethods', '__source_port','__source_port_set','__destination_port','__destination_port_set','__tcp_flags',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__source_port = YANGDynClass(base=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.\\.(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])'}),RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}},),], is_leaf=True, yang_name="source-port", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:port-num-range', is_config=False) + self.__source_port_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="source-port-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + self.__destination_port = YANGDynClass(base=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.\\.(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])'}),RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}},),], is_leaf=True, yang_name="destination-port", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:port-num-range', is_config=False) + self.__destination_port_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="destination-port-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + self.__tcp_flags = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'TCP_SYN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_SYN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_FIN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_FIN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_RST': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_RST': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_PSH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_PSH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_ACK': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_ACK': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_URG': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_URG': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_ECE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_ECE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_CWR': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_CWR': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},)), is_leaf=False, yang_name="tcp-flags", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry', 'transport', 'state'] + + def _get_source_port(self): + """ + Getter method for source_port, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport/state/source_port (oc-pkt-match-types:port-num-range) + + YANG Description: Source port or range + """ + return self.__source_port + + def _set_source_port(self, v, load=False): + """ + Setter method for source_port, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport/state/source_port (oc-pkt-match-types:port-num-range) + If this variable is read-only (config: false) in the + source YANG file, then _set_source_port is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_source_port() directly. + + YANG Description: Source port or range + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.\\.(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])'}),RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}},),], is_leaf=True, yang_name="source-port", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:port-num-range', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """source_port must be of a type compatible with oc-pkt-match-types:port-num-range""", + 'defined-type': "oc-pkt-match-types:port-num-range", + 'generated-type': """YANGDynClass(base=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.\\.(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])'}),RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}},),], is_leaf=True, yang_name="source-port", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:port-num-range', is_config=False)""", + }) + + self.__source_port = t + if hasattr(self, '_set'): + self._set() + + def _unset_source_port(self): + self.__source_port = YANGDynClass(base=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.\\.(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])'}),RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}},),], is_leaf=True, yang_name="source-port", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:port-num-range', is_config=False) + + + def _get_source_port_set(self): + """ + Getter method for source_port_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport/state/source_port_set (leafref) + + YANG Description: Reference to a port set +to match the source port + """ + return self.__source_port_set + + def _set_source_port_set(self, v, load=False): + """ + Setter method for source_port_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport/state/source_port_set (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_source_port_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_source_port_set() directly. + + YANG Description: Reference to a port set +to match the source port + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="source-port-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """source_port_set must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="source-port-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False)""", + }) + + self.__source_port_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_source_port_set(self): + self.__source_port_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="source-port-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + + + def _get_destination_port(self): + """ + Getter method for destination_port, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport/state/destination_port (oc-pkt-match-types:port-num-range) + + YANG Description: Destination port or range + """ + return self.__destination_port + + def _set_destination_port(self, v, load=False): + """ + Setter method for destination_port, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport/state/destination_port (oc-pkt-match-types:port-num-range) + If this variable is read-only (config: false) in the + source YANG file, then _set_destination_port is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_destination_port() directly. + + YANG Description: Destination port or range + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.\\.(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])'}),RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}},),], is_leaf=True, yang_name="destination-port", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:port-num-range', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """destination_port must be of a type compatible with oc-pkt-match-types:port-num-range""", + 'defined-type': "oc-pkt-match-types:port-num-range", + 'generated-type': """YANGDynClass(base=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.\\.(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])'}),RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}},),], is_leaf=True, yang_name="destination-port", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:port-num-range', is_config=False)""", + }) + + self.__destination_port = t + if hasattr(self, '_set'): + self._set() + + def _unset_destination_port(self): + self.__destination_port = YANGDynClass(base=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.\\.(0{0,4}[0-9]|0{0,3}[1-9][0-9]|0{0,2}[1-9][0-9]{2}|0?[1-9][0-9]{3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])'}),RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16),RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}},),], is_leaf=True, yang_name="destination-port", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-pkt-match-types:port-num-range', is_config=False) + + + def _get_destination_port_set(self): + """ + Getter method for destination_port_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport/state/destination_port_set (leafref) + + YANG Description: Reference to a port set +to match the destination port + """ + return self.__destination_port_set + + def _set_destination_port_set(self, v, load=False): + """ + Setter method for destination_port_set, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport/state/destination_port_set (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_destination_port_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_destination_port_set() directly. + + YANG Description: Reference to a port set +to match the destination port + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="destination-port-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """destination_port_set must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="destination-port-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False)""", + }) + + self.__destination_port_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_destination_port_set(self): + self.__destination_port_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="destination-port-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + + + def _get_tcp_flags(self): + """ + Getter method for tcp_flags, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport/state/tcp_flags (identityref) + + YANG Description: List of TCP flags to match + """ + return self.__tcp_flags + + def _set_tcp_flags(self, v, load=False): + """ + Setter method for tcp_flags, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport/state/tcp_flags (identityref) + If this variable is read-only (config: false) in the + source YANG file, then _set_tcp_flags is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_tcp_flags() directly. + + YANG Description: List of TCP flags to match + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'TCP_SYN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_SYN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_FIN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_FIN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_RST': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_RST': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_PSH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_PSH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_ACK': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_ACK': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_URG': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_URG': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_ECE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_ECE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_CWR': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_CWR': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},)), is_leaf=False, yang_name="tcp-flags", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """tcp_flags must be of a type compatible with identityref""", + 'defined-type': "openconfig-acl:identityref", + 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'TCP_SYN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_SYN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_FIN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_FIN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_RST': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_RST': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_PSH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_PSH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_ACK': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_ACK': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_URG': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_URG': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_ECE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_ECE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_CWR': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_CWR': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},)), is_leaf=False, yang_name="tcp-flags", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=False)""", + }) + + self.__tcp_flags = t + if hasattr(self, '_set'): + self._set() + + def _unset_tcp_flags(self): + self.__tcp_flags = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'TCP_SYN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_SYN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_FIN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_FIN': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_RST': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_RST': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_PSH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_PSH': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_ACK': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_ACK': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_URG': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_URG': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_ECE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_ECE': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'TCP_CWR': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}, 'oc-pkt-match-types:TCP_CWR': {'@module': 'openconfig-packet-match-types', '@namespace': 'http://openconfig.net/yang/packet-match-types'}},)), is_leaf=False, yang_name="tcp-flags", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=False) + + source_port = __builtin__.property(_get_source_port) + source_port_set = __builtin__.property(_get_source_port_set) + destination_port = __builtin__.property(_get_destination_port) + destination_port_set = __builtin__.property(_get_destination_port_set) + tcp_flags = __builtin__.property(_get_tcp_flags) + + + _pyangbind_elements = OrderedDict([('source_port', source_port), ('source_port_set', source_port_set), ('destination_port', destination_port), ('destination_port_set', destination_port_set), ('tcp_flags', tcp_flags), ]) + + +class yc_transport_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_transport(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry/transport. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Transport fields container + """ + __slots__ = ('_path_helper', '_extmethods', '__config','__state',) + + _yang_name = 'transport' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_transport_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_transport_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry', 'transport'] + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport/config (container) + + YANG Description: Configuration data + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configuration data + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_transport_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_transport_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_transport_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport/state (container) + + YANG Description: State data + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: State data + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_transport_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_transport_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_transport_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + + + _pyangbind_elements = OrderedDict([('config', config), ('state', state), ]) + + +class yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_input_interface_interface_ref_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry/input-interface/interface-ref/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configured reference to interface / subinterface + """ + __slots__ = ('_path_helper', '_extmethods', '__interface','__subinterface',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__interface = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + self.__subinterface = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry', 'input-interface', 'interface-ref', 'config'] + + def _get_interface(self): + """ + Getter method for interface, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/input_interface/interface_ref/config/interface (leafref) + + YANG Description: Reference to a base interface. If a reference to a +subinterface is required, this leaf must be specified +to indicate the base interface. + """ + return self.__interface + + def _set_interface(self, v, load=False): + """ + Setter method for interface, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/input_interface/interface_ref/config/interface (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_interface is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_interface() directly. + + YANG Description: Reference to a base interface. If a reference to a +subinterface is required, this leaf must be specified +to indicate the base interface. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """interface must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True)""", + }) + + self.__interface = t + if hasattr(self, '_set'): + self._set() + + def _unset_interface(self): + self.__interface = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + + def _get_subinterface(self): + """ + Getter method for subinterface, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/input_interface/interface_ref/config/subinterface (leafref) + + YANG Description: Reference to a subinterface -- this requires the base +interface to be specified using the interface leaf in +this container. If only a reference to a base interface +is requuired, this leaf should not be set. + """ + return self.__subinterface + + def _set_subinterface(self, v, load=False): + """ + Setter method for subinterface, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/input_interface/interface_ref/config/subinterface (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_subinterface is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_subinterface() directly. + + YANG Description: Reference to a subinterface -- this requires the base +interface to be specified using the interface leaf in +this container. If only a reference to a base interface +is requuired, this leaf should not be set. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """subinterface must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True)""", + }) + + self.__subinterface = t + if hasattr(self, '_set'): + self._set() + + def _unset_subinterface(self): + self.__subinterface = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + interface = __builtin__.property(_get_interface, _set_interface) + subinterface = __builtin__.property(_get_subinterface, _set_subinterface) + + + _pyangbind_elements = OrderedDict([('interface', interface), ('subinterface', subinterface), ]) + + +class yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_input_interface_interface_ref_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry/input-interface/interface-ref/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state for interface-ref + """ + __slots__ = ('_path_helper', '_extmethods', '__interface','__subinterface',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__interface = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + self.__subinterface = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry', 'input-interface', 'interface-ref', 'state'] + + def _get_interface(self): + """ + Getter method for interface, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/input_interface/interface_ref/state/interface (leafref) + + YANG Description: Reference to a base interface. If a reference to a +subinterface is required, this leaf must be specified +to indicate the base interface. + """ + return self.__interface + + def _set_interface(self, v, load=False): + """ + Setter method for interface, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/input_interface/interface_ref/state/interface (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_interface is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_interface() directly. + + YANG Description: Reference to a base interface. If a reference to a +subinterface is required, this leaf must be specified +to indicate the base interface. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """interface must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False)""", + }) + + self.__interface = t + if hasattr(self, '_set'): + self._set() + + def _unset_interface(self): + self.__interface = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + + + def _get_subinterface(self): + """ + Getter method for subinterface, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/input_interface/interface_ref/state/subinterface (leafref) + + YANG Description: Reference to a subinterface -- this requires the base +interface to be specified using the interface leaf in +this container. If only a reference to a base interface +is requuired, this leaf should not be set. + """ + return self.__subinterface + + def _set_subinterface(self, v, load=False): + """ + Setter method for subinterface, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/input_interface/interface_ref/state/subinterface (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_subinterface is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_subinterface() directly. + + YANG Description: Reference to a subinterface -- this requires the base +interface to be specified using the interface leaf in +this container. If only a reference to a base interface +is requuired, this leaf should not be set. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """subinterface must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False)""", + }) + + self.__subinterface = t + if hasattr(self, '_set'): + self._set() + + def _unset_subinterface(self): + self.__subinterface = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + + interface = __builtin__.property(_get_interface) + subinterface = __builtin__.property(_get_subinterface) + + + _pyangbind_elements = OrderedDict([('interface', interface), ('subinterface', subinterface), ]) + + +class yc_interface_ref_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_input_interface_interface_ref(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry/input-interface/interface-ref. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Reference to an interface or subinterface + """ + __slots__ = ('_path_helper', '_extmethods', '__config','__state',) + + _yang_name = 'interface-ref' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_input_interface_interface_ref_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_input_interface_interface_ref_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry', 'input-interface', 'interface-ref'] + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/input_interface/interface_ref/config (container) + + YANG Description: Configured reference to interface / subinterface + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/input_interface/interface_ref/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configured reference to interface / subinterface + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_input_interface_interface_ref_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_input_interface_interface_ref_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_input_interface_interface_ref_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/input_interface/interface_ref/state (container) + + YANG Description: Operational state for interface-ref + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/input_interface/interface_ref/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state for interface-ref + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_input_interface_interface_ref_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_input_interface_interface_ref_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_input_interface_interface_ref_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + + + _pyangbind_elements = OrderedDict([('config', config), ('state', state), ]) + + +class yc_input_interface_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_input_interface(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry/input-interface. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Input interface container + """ + __slots__ = ('_path_helper', '_extmethods', '__interface_ref',) + + _yang_name = 'input-interface' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__interface_ref = YANGDynClass(base=yc_interface_ref_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_input_interface_interface_ref, is_container='container', yang_name="interface-ref", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry', 'input-interface'] + + def _get_interface_ref(self): + """ + Getter method for interface_ref, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/input_interface/interface_ref (container) + + YANG Description: Reference to an interface or subinterface + """ + return self.__interface_ref + + def _set_interface_ref(self, v, load=False): + """ + Setter method for interface_ref, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/input_interface/interface_ref (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_interface_ref is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_interface_ref() directly. + + YANG Description: Reference to an interface or subinterface + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_interface_ref_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_input_interface_interface_ref, is_container='container', yang_name="interface-ref", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """interface_ref must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_interface_ref_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_input_interface_interface_ref, is_container='container', yang_name="interface-ref", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__interface_ref = t + if hasattr(self, '_set'): + self._set() + + def _unset_interface_ref(self): + self.__interface_ref = YANGDynClass(base=yc_interface_ref_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_input_interface_interface_ref, is_container='container', yang_name="interface-ref", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + interface_ref = __builtin__.property(_get_interface_ref, _set_interface_ref) + + + _pyangbind_elements = OrderedDict([('interface_ref', interface_ref), ]) + + +class yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_actions_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry/actions/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Config data for ACL actions + """ + __slots__ = ('_path_helper', '_extmethods', '__forwarding_action','__log_action',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__forwarding_action = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ACCEPT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACCEPT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'DROP': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:DROP': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'REJECT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:REJECT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), is_leaf=True, yang_name="forwarding-action", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=True) + self.__log_action = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'LOG_SYSLOG': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:LOG_SYSLOG': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'LOG_NONE': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:LOG_NONE': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), default=six.text_type("LOG_NONE"), is_leaf=True, yang_name="log-action", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry', 'actions', 'config'] + + def _get_forwarding_action(self): + """ + Getter method for forwarding_action, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/actions/config/forwarding_action (identityref) + + YANG Description: Specifies the forwarding action. One forwarding action +must be specified for each ACL entry + """ + return self.__forwarding_action + + def _set_forwarding_action(self, v, load=False): + """ + Setter method for forwarding_action, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/actions/config/forwarding_action (identityref) + If this variable is read-only (config: false) in the + source YANG file, then _set_forwarding_action is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_forwarding_action() directly. + + YANG Description: Specifies the forwarding action. One forwarding action +must be specified for each ACL entry + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ACCEPT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACCEPT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'DROP': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:DROP': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'REJECT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:REJECT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), is_leaf=True, yang_name="forwarding-action", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """forwarding_action must be of a type compatible with identityref""", + 'defined-type': "openconfig-acl:identityref", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ACCEPT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACCEPT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'DROP': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:DROP': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'REJECT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:REJECT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), is_leaf=True, yang_name="forwarding-action", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=True)""", + }) + + self.__forwarding_action = t + if hasattr(self, '_set'): + self._set() + + def _unset_forwarding_action(self): + self.__forwarding_action = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ACCEPT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACCEPT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'DROP': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:DROP': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'REJECT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:REJECT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), is_leaf=True, yang_name="forwarding-action", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=True) + + + def _get_log_action(self): + """ + Getter method for log_action, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/actions/config/log_action (identityref) + + YANG Description: Specifies the log action and destination for +matched packets. The default is not to log the +packet. + """ + return self.__log_action + + def _set_log_action(self, v, load=False): + """ + Setter method for log_action, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/actions/config/log_action (identityref) + If this variable is read-only (config: false) in the + source YANG file, then _set_log_action is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_log_action() directly. + + YANG Description: Specifies the log action and destination for +matched packets. The default is not to log the +packet. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'LOG_SYSLOG': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:LOG_SYSLOG': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'LOG_NONE': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:LOG_NONE': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), default=six.text_type("LOG_NONE"), is_leaf=True, yang_name="log-action", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """log_action must be of a type compatible with identityref""", + 'defined-type': "openconfig-acl:identityref", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'LOG_SYSLOG': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:LOG_SYSLOG': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'LOG_NONE': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:LOG_NONE': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), default=six.text_type("LOG_NONE"), is_leaf=True, yang_name="log-action", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=True)""", + }) + + self.__log_action = t + if hasattr(self, '_set'): + self._set() + + def _unset_log_action(self): + self.__log_action = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'LOG_SYSLOG': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:LOG_SYSLOG': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'LOG_NONE': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:LOG_NONE': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), default=six.text_type("LOG_NONE"), is_leaf=True, yang_name="log-action", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=True) + + forwarding_action = __builtin__.property(_get_forwarding_action, _set_forwarding_action) + log_action = __builtin__.property(_get_log_action, _set_log_action) + + + _pyangbind_elements = OrderedDict([('forwarding_action', forwarding_action), ('log_action', log_action), ]) + + +class yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_actions_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry/actions/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: State information for ACL actions + """ + __slots__ = ('_path_helper', '_extmethods', '__forwarding_action','__log_action',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__forwarding_action = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ACCEPT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACCEPT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'DROP': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:DROP': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'REJECT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:REJECT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), is_leaf=True, yang_name="forwarding-action", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=False) + self.__log_action = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'LOG_SYSLOG': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:LOG_SYSLOG': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'LOG_NONE': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:LOG_NONE': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), default=six.text_type("LOG_NONE"), is_leaf=True, yang_name="log-action", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry', 'actions', 'state'] + + def _get_forwarding_action(self): + """ + Getter method for forwarding_action, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/actions/state/forwarding_action (identityref) + + YANG Description: Specifies the forwarding action. One forwarding action +must be specified for each ACL entry + """ + return self.__forwarding_action + + def _set_forwarding_action(self, v, load=False): + """ + Setter method for forwarding_action, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/actions/state/forwarding_action (identityref) + If this variable is read-only (config: false) in the + source YANG file, then _set_forwarding_action is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_forwarding_action() directly. + + YANG Description: Specifies the forwarding action. One forwarding action +must be specified for each ACL entry + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ACCEPT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACCEPT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'DROP': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:DROP': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'REJECT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:REJECT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), is_leaf=True, yang_name="forwarding-action", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """forwarding_action must be of a type compatible with identityref""", + 'defined-type': "openconfig-acl:identityref", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ACCEPT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACCEPT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'DROP': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:DROP': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'REJECT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:REJECT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), is_leaf=True, yang_name="forwarding-action", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=False)""", + }) + + self.__forwarding_action = t + if hasattr(self, '_set'): + self._set() + + def _unset_forwarding_action(self): + self.__forwarding_action = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ACCEPT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:ACCEPT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'DROP': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:DROP': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'REJECT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:REJECT': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), is_leaf=True, yang_name="forwarding-action", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=False) + + + def _get_log_action(self): + """ + Getter method for log_action, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/actions/state/log_action (identityref) + + YANG Description: Specifies the log action and destination for +matched packets. The default is not to log the +packet. + """ + return self.__log_action + + def _set_log_action(self, v, load=False): + """ + Setter method for log_action, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/actions/state/log_action (identityref) + If this variable is read-only (config: false) in the + source YANG file, then _set_log_action is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_log_action() directly. + + YANG Description: Specifies the log action and destination for +matched packets. The default is not to log the +packet. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'LOG_SYSLOG': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:LOG_SYSLOG': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'LOG_NONE': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:LOG_NONE': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), default=six.text_type("LOG_NONE"), is_leaf=True, yang_name="log-action", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """log_action must be of a type compatible with identityref""", + 'defined-type': "openconfig-acl:identityref", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'LOG_SYSLOG': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:LOG_SYSLOG': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'LOG_NONE': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:LOG_NONE': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), default=six.text_type("LOG_NONE"), is_leaf=True, yang_name="log-action", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=False)""", + }) + + self.__log_action = t + if hasattr(self, '_set'): + self._set() + + def _unset_log_action(self): + self.__log_action = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'LOG_SYSLOG': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:LOG_SYSLOG': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'LOG_NONE': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}, 'oc-acl:LOG_NONE': {'@module': 'openconfig-acl', '@namespace': 'http://openconfig.net/yang/acl'}},), default=six.text_type("LOG_NONE"), is_leaf=True, yang_name="log-action", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='identityref', is_config=False) + + forwarding_action = __builtin__.property(_get_forwarding_action) + log_action = __builtin__.property(_get_log_action) + + + _pyangbind_elements = OrderedDict([('forwarding_action', forwarding_action), ('log_action', log_action), ]) + + +class yc_actions_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_actions(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry/actions. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Enclosing container for list of ACL actions associated +with an entry + """ + __slots__ = ('_path_helper', '_extmethods', '__config','__state',) + + _yang_name = 'actions' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_actions_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_actions_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry', 'actions'] + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/actions/config (container) + + YANG Description: Config data for ACL actions + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/actions/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Config data for ACL actions + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_actions_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_actions_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_actions_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/actions/state (container) + + YANG Description: State information for ACL actions + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/actions/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: State information for ACL actions + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_actions_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_actions_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_actions_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + + + _pyangbind_elements = OrderedDict([('config', config), ('state', state), ]) + + +class yc_acl_entry_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries/acl-entry. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: List of ACL entries comprising an ACL set + """ + __slots__ = ('_path_helper', '_extmethods', '__sequence_id','__config','__state','__l2','__ipv4','__mpls','__ipv6','__transport','__input_interface','__actions',) + + _yang_name = 'acl-entry' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__sequence_id = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__l2 = YANGDynClass(base=yc_l2_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_l2, is_container='container', yang_name="l2", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__ipv4 = YANGDynClass(base=yc_ipv4_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv4, is_container='container', yang_name="ipv4", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__mpls = YANGDynClass(base=yc_mpls_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_mpls, is_container='container', yang_name="mpls", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__ipv6 = YANGDynClass(base=yc_ipv6_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv6, is_container='container', yang_name="ipv6", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__transport = YANGDynClass(base=yc_transport_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_transport, is_container='container', yang_name="transport", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__input_interface = YANGDynClass(base=yc_input_interface_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_input_interface, is_container='container', yang_name="input-interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__actions = YANGDynClass(base=yc_actions_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_actions, is_container='container', yang_name="actions", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries', 'acl-entry'] + + def _get_sequence_id(self): + """ + Getter method for sequence_id, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/sequence_id (leafref) + + YANG Description: references the list key + """ + return self.__sequence_id + + def _set_sequence_id(self, v, load=False): + """ + Setter method for sequence_id, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/sequence_id (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_sequence_id is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_sequence_id() directly. + + YANG Description: references the list key + """ + parent = getattr(self, "_parent", None) + if parent is not None and load is False: + raise AttributeError("Cannot set keys directly when" + + " within an instantiated list") + + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """sequence_id must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True)""", + }) + + self.__sequence_id = t + if hasattr(self, '_set'): + self._set() + + def _unset_sequence_id(self): + self.__sequence_id = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/config (container) + + YANG Description: Access list entries config + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Access list entries config + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/state (container) + + YANG Description: State information for ACL entries + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: State information for ACL entries + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_l2(self): + """ + Getter method for l2, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2 (container) + + YANG Description: Ethernet header fields + """ + return self.__l2 + + def _set_l2(self, v, load=False): + """ + Setter method for l2, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/l2 (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_l2 is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_l2() directly. + + YANG Description: Ethernet header fields + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_l2_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_l2, is_container='container', yang_name="l2", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """l2 must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_l2_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_l2, is_container='container', yang_name="l2", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__l2 = t + if hasattr(self, '_set'): + self._set() + + def _unset_l2(self): + self.__l2 = YANGDynClass(base=yc_l2_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_l2, is_container='container', yang_name="l2", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_ipv4(self): + """ + Getter method for ipv4, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4 (container) + + YANG Description: Top level container for IPv4 match field data + """ + return self.__ipv4 + + def _set_ipv4(self, v, load=False): + """ + Setter method for ipv4, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv4 (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_ipv4 is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_ipv4() directly. + + YANG Description: Top level container for IPv4 match field data + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_ipv4_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv4, is_container='container', yang_name="ipv4", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """ipv4 must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_ipv4_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv4, is_container='container', yang_name="ipv4", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__ipv4 = t + if hasattr(self, '_set'): + self._set() + + def _unset_ipv4(self): + self.__ipv4 = YANGDynClass(base=yc_ipv4_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv4, is_container='container', yang_name="ipv4", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_mpls(self): + """ + Getter method for mpls, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/mpls (container) + + YANG Description: MPLS header fields + """ + return self.__mpls + + def _set_mpls(self, v, load=False): + """ + Setter method for mpls, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/mpls (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_mpls is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_mpls() directly. + + YANG Description: MPLS header fields + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_mpls_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_mpls, is_container='container', yang_name="mpls", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """mpls must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_mpls_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_mpls, is_container='container', yang_name="mpls", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__mpls = t + if hasattr(self, '_set'): + self._set() + + def _unset_mpls(self): + self.__mpls = YANGDynClass(base=yc_mpls_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_mpls, is_container='container', yang_name="mpls", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_ipv6(self): + """ + Getter method for ipv6, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6 (container) + + YANG Description: Top-level container for IPv6 match field data + """ + return self.__ipv6 + + def _set_ipv6(self, v, load=False): + """ + Setter method for ipv6, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/ipv6 (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_ipv6 is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_ipv6() directly. + + YANG Description: Top-level container for IPv6 match field data + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_ipv6_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv6, is_container='container', yang_name="ipv6", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """ipv6 must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_ipv6_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv6, is_container='container', yang_name="ipv6", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__ipv6 = t + if hasattr(self, '_set'): + self._set() + + def _unset_ipv6(self): + self.__ipv6 = YANGDynClass(base=yc_ipv6_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_ipv6, is_container='container', yang_name="ipv6", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_transport(self): + """ + Getter method for transport, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport (container) + + YANG Description: Transport fields container + """ + return self.__transport + + def _set_transport(self, v, load=False): + """ + Setter method for transport, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/transport (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_transport is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_transport() directly. + + YANG Description: Transport fields container + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_transport_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_transport, is_container='container', yang_name="transport", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """transport must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_transport_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_transport, is_container='container', yang_name="transport", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__transport = t + if hasattr(self, '_set'): + self._set() + + def _unset_transport(self): + self.__transport = YANGDynClass(base=yc_transport_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_transport, is_container='container', yang_name="transport", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_input_interface(self): + """ + Getter method for input_interface, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/input_interface (container) + + YANG Description: Input interface container + """ + return self.__input_interface + + def _set_input_interface(self, v, load=False): + """ + Setter method for input_interface, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/input_interface (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_input_interface is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_input_interface() directly. + + YANG Description: Input interface container + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_input_interface_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_input_interface, is_container='container', yang_name="input-interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """input_interface must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_input_interface_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_input_interface, is_container='container', yang_name="input-interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__input_interface = t + if hasattr(self, '_set'): + self._set() + + def _unset_input_interface(self): + self.__input_interface = YANGDynClass(base=yc_input_interface_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_input_interface, is_container='container', yang_name="input-interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_actions(self): + """ + Getter method for actions, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/actions (container) + + YANG Description: Enclosing container for list of ACL actions associated +with an entry + """ + return self.__actions + + def _set_actions(self, v, load=False): + """ + Setter method for actions, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry/actions (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_actions is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_actions() directly. + + YANG Description: Enclosing container for list of ACL actions associated +with an entry + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_actions_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_actions, is_container='container', yang_name="actions", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """actions must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_actions_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_actions, is_container='container', yang_name="actions", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__actions = t + if hasattr(self, '_set'): + self._set() + + def _unset_actions(self): + self.__actions = YANGDynClass(base=yc_actions_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry_actions, is_container='container', yang_name="actions", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + sequence_id = __builtin__.property(_get_sequence_id, _set_sequence_id) + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + l2 = __builtin__.property(_get_l2, _set_l2) + ipv4 = __builtin__.property(_get_ipv4, _set_ipv4) + mpls = __builtin__.property(_get_mpls, _set_mpls) + ipv6 = __builtin__.property(_get_ipv6, _set_ipv6) + transport = __builtin__.property(_get_transport, _set_transport) + input_interface = __builtin__.property(_get_input_interface, _set_input_interface) + actions = __builtin__.property(_get_actions, _set_actions) + + + _pyangbind_elements = OrderedDict([('sequence_id', sequence_id), ('config', config), ('state', state), ('l2', l2), ('ipv4', ipv4), ('mpls', mpls), ('ipv6', ipv6), ('transport', transport), ('input_interface', input_interface), ('actions', actions), ]) + + +class yc_acl_entries_openconfig_acl__acl_acl_sets_acl_set_acl_entries(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set/acl-entries. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Access list entries container + """ + __slots__ = ('_path_helper', '_extmethods', '__acl_entry',) + + _yang_name = 'acl-entries' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__acl_entry = YANGDynClass(base=YANGListType("sequence_id",yc_acl_entry_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry, yang_name="acl-entry", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='sequence-id', extensions=None), is_container='list', yang_name="acl-entry", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set', 'acl-entries'] + + def _get_acl_entry(self): + """ + Getter method for acl_entry, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry (list) + + YANG Description: List of ACL entries comprising an ACL set + """ + return self.__acl_entry + + def _set_acl_entry(self, v, load=False): + """ + Setter method for acl_entry, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries/acl_entry (list) + If this variable is read-only (config: false) in the + source YANG file, then _set_acl_entry is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_acl_entry() directly. + + YANG Description: List of ACL entries comprising an ACL set + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGListType("sequence_id",yc_acl_entry_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry, yang_name="acl-entry", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='sequence-id', extensions=None), is_container='list', yang_name="acl-entry", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """acl_entry must be of a type compatible with list""", + 'defined-type': "list", + 'generated-type': """YANGDynClass(base=YANGListType("sequence_id",yc_acl_entry_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry, yang_name="acl-entry", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='sequence-id', extensions=None), is_container='list', yang_name="acl-entry", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=True)""", + }) + + self.__acl_entry = t + if hasattr(self, '_set'): + self._set() + + def _unset_acl_entry(self): + self.__acl_entry = YANGDynClass(base=YANGListType("sequence_id",yc_acl_entry_openconfig_acl__acl_acl_sets_acl_set_acl_entries_acl_entry, yang_name="acl-entry", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='sequence-id', extensions=None), is_container='list', yang_name="acl-entry", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=True) + + acl_entry = __builtin__.property(_get_acl_entry, _set_acl_entry) + + + _pyangbind_elements = OrderedDict([('acl_entry', acl_entry), ]) + + +class yc_acl_set_openconfig_acl__acl_acl_sets_acl_set(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets/acl-set. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: List of ACL sets, each comprising of a list of ACL +entries + """ + __slots__ = ('_path_helper', '_extmethods', '__name','__type','__config','__state','__acl_entries',) + + _yang_name = 'acl-set' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + self.__type = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__acl_entries = YANGDynClass(base=yc_acl_entries_openconfig_acl__acl_acl_sets_acl_set_acl_entries, is_container='container', yang_name="acl-entries", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets', 'acl-set'] + + def _get_name(self): + """ + Getter method for name, mapped from YANG variable /acl/acl_sets/acl_set/name (leafref) + + YANG Description: Reference to the name list key + """ + return self.__name + + def _set_name(self, v, load=False): + """ + Setter method for name, mapped from YANG variable /acl/acl_sets/acl_set/name (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_name() directly. + + YANG Description: Reference to the name list key + """ + parent = getattr(self, "_parent", None) + if parent is not None and load is False: + raise AttributeError("Cannot set keys directly when" + + " within an instantiated list") + + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """name must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True)""", + }) + + self.__name = t + if hasattr(self, '_set'): + self._set() + + def _unset_name(self): + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + + def _get_type(self): + """ + Getter method for type, mapped from YANG variable /acl/acl_sets/acl_set/type (leafref) + + YANG Description: Reference to the type list key + """ + return self.__type + + def _set_type(self, v, load=False): + """ + Setter method for type, mapped from YANG variable /acl/acl_sets/acl_set/type (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_type is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_type() directly. + + YANG Description: Reference to the type list key + """ + parent = getattr(self, "_parent", None) + if parent is not None and load is False: + raise AttributeError("Cannot set keys directly when" + + " within an instantiated list") + + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """type must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True)""", + }) + + self.__type = t + if hasattr(self, '_set'): + self._set() + + def _unset_type(self): + self.__type = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /acl/acl_sets/acl_set/config (container) + + YANG Description: Access list config + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /acl/acl_sets/acl_set/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Access list config + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_acl__acl_acl_sets_acl_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_acl_sets_acl_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /acl/acl_sets/acl_set/state (container) + + YANG Description: Access list state information + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /acl/acl_sets/acl_set/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Access list state information + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_acl__acl_acl_sets_acl_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_acl_sets_acl_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_acl_entries(self): + """ + Getter method for acl_entries, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries (container) + + YANG Description: Access list entries container + """ + return self.__acl_entries + + def _set_acl_entries(self, v, load=False): + """ + Setter method for acl_entries, mapped from YANG variable /acl/acl_sets/acl_set/acl_entries (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_acl_entries is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_acl_entries() directly. + + YANG Description: Access list entries container + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_acl_entries_openconfig_acl__acl_acl_sets_acl_set_acl_entries, is_container='container', yang_name="acl-entries", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """acl_entries must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_acl_entries_openconfig_acl__acl_acl_sets_acl_set_acl_entries, is_container='container', yang_name="acl-entries", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__acl_entries = t + if hasattr(self, '_set'): + self._set() + + def _unset_acl_entries(self): + self.__acl_entries = YANGDynClass(base=yc_acl_entries_openconfig_acl__acl_acl_sets_acl_set_acl_entries, is_container='container', yang_name="acl-entries", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + name = __builtin__.property(_get_name, _set_name) + type = __builtin__.property(_get_type, _set_type) + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + acl_entries = __builtin__.property(_get_acl_entries, _set_acl_entries) + + + _pyangbind_elements = OrderedDict([('name', name), ('type', type), ('config', config), ('state', state), ('acl_entries', acl_entries), ]) + + +class yc_acl_sets_openconfig_acl__acl_acl_sets(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/acl-sets. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Access list entries variables enclosing container + """ + __slots__ = ('_path_helper', '_extmethods', '__acl_set',) + + _yang_name = 'acl-sets' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__acl_set = YANGDynClass(base=YANGListType("name type",yc_acl_set_openconfig_acl__acl_acl_sets_acl_set, yang_name="acl-set", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name type', extensions=None), is_container='list', yang_name="acl-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'acl-sets'] + + def _get_acl_set(self): + """ + Getter method for acl_set, mapped from YANG variable /acl/acl_sets/acl_set (list) + + YANG Description: List of ACL sets, each comprising of a list of ACL +entries + """ + return self.__acl_set + + def _set_acl_set(self, v, load=False): + """ + Setter method for acl_set, mapped from YANG variable /acl/acl_sets/acl_set (list) + If this variable is read-only (config: false) in the + source YANG file, then _set_acl_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_acl_set() directly. + + YANG Description: List of ACL sets, each comprising of a list of ACL +entries + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGListType("name type",yc_acl_set_openconfig_acl__acl_acl_sets_acl_set, yang_name="acl-set", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name type', extensions=None), is_container='list', yang_name="acl-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """acl_set must be of a type compatible with list""", + 'defined-type': "list", + 'generated-type': """YANGDynClass(base=YANGListType("name type",yc_acl_set_openconfig_acl__acl_acl_sets_acl_set, yang_name="acl-set", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name type', extensions=None), is_container='list', yang_name="acl-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=True)""", + }) + + self.__acl_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_acl_set(self): + self.__acl_set = YANGDynClass(base=YANGListType("name type",yc_acl_set_openconfig_acl__acl_acl_sets_acl_set, yang_name="acl-set", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name type', extensions=None), is_container='list', yang_name="acl-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=True) + + acl_set = __builtin__.property(_get_acl_set, _set_acl_set) + + + _pyangbind_elements = OrderedDict([('acl_set', acl_set), ]) + + +class yc_config_openconfig_acl__acl_interfaces_interface_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/interfaces/interface/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configuration for ACL per-interface data + """ + __slots__ = ('_path_helper', '_extmethods', '__id',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__id = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-if:interface-id', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'interfaces', 'interface', 'config'] + + def _get_id(self): + """ + Getter method for id, mapped from YANG variable /acl/interfaces/interface/config/id (oc-if:interface-id) + + YANG Description: User-defined identifier for the interface -- a common +convention could be '<if name>.<subif index>' + """ + return self.__id + + def _set_id(self, v, load=False): + """ + Setter method for id, mapped from YANG variable /acl/interfaces/interface/config/id (oc-if:interface-id) + If this variable is read-only (config: false) in the + source YANG file, then _set_id is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_id() directly. + + YANG Description: User-defined identifier for the interface -- a common +convention could be '<if name>.<subif index>' + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-if:interface-id', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """id must be of a type compatible with oc-if:interface-id""", + 'defined-type': "oc-if:interface-id", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-if:interface-id', is_config=True)""", + }) + + self.__id = t + if hasattr(self, '_set'): + self._set() + + def _unset_id(self): + self.__id = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-if:interface-id', is_config=True) + + id = __builtin__.property(_get_id, _set_id) + + + _pyangbind_elements = OrderedDict([('id', id), ]) + + +class yc_state_openconfig_acl__acl_interfaces_interface_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/interfaces/interface/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state for ACL per-interface data + """ + __slots__ = ('_path_helper', '_extmethods', '__id',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__id = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-if:interface-id', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'interfaces', 'interface', 'state'] + + def _get_id(self): + """ + Getter method for id, mapped from YANG variable /acl/interfaces/interface/state/id (oc-if:interface-id) + + YANG Description: User-defined identifier for the interface -- a common +convention could be '<if name>.<subif index>' + """ + return self.__id + + def _set_id(self, v, load=False): + """ + Setter method for id, mapped from YANG variable /acl/interfaces/interface/state/id (oc-if:interface-id) + If this variable is read-only (config: false) in the + source YANG file, then _set_id is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_id() directly. + + YANG Description: User-defined identifier for the interface -- a common +convention could be '<if name>.<subif index>' + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-if:interface-id', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """id must be of a type compatible with oc-if:interface-id""", + 'defined-type': "oc-if:interface-id", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-if:interface-id', is_config=False)""", + }) + + self.__id = t + if hasattr(self, '_set'): + self._set() + + def _unset_id(self): + self.__id = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-if:interface-id', is_config=False) + + id = __builtin__.property(_get_id) + + + _pyangbind_elements = OrderedDict([('id', id), ]) + + +class yc_config_openconfig_acl__acl_interfaces_interface_interface_ref_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/interfaces/interface/interface-ref/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configured reference to interface / subinterface + """ + __slots__ = ('_path_helper', '_extmethods', '__interface','__subinterface',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__interface = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + self.__subinterface = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'interfaces', 'interface', 'interface-ref', 'config'] + + def _get_interface(self): + """ + Getter method for interface, mapped from YANG variable /acl/interfaces/interface/interface_ref/config/interface (leafref) + + YANG Description: Reference to a base interface. If a reference to a +subinterface is required, this leaf must be specified +to indicate the base interface. + """ + return self.__interface + + def _set_interface(self, v, load=False): + """ + Setter method for interface, mapped from YANG variable /acl/interfaces/interface/interface_ref/config/interface (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_interface is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_interface() directly. + + YANG Description: Reference to a base interface. If a reference to a +subinterface is required, this leaf must be specified +to indicate the base interface. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """interface must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True)""", + }) + + self.__interface = t + if hasattr(self, '_set'): + self._set() + + def _unset_interface(self): + self.__interface = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + + def _get_subinterface(self): + """ + Getter method for subinterface, mapped from YANG variable /acl/interfaces/interface/interface_ref/config/subinterface (leafref) + + YANG Description: Reference to a subinterface -- this requires the base +interface to be specified using the interface leaf in +this container. If only a reference to a base interface +is requuired, this leaf should not be set. + """ + return self.__subinterface + + def _set_subinterface(self, v, load=False): + """ + Setter method for subinterface, mapped from YANG variable /acl/interfaces/interface/interface_ref/config/subinterface (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_subinterface is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_subinterface() directly. + + YANG Description: Reference to a subinterface -- this requires the base +interface to be specified using the interface leaf in +this container. If only a reference to a base interface +is requuired, this leaf should not be set. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """subinterface must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True)""", + }) + + self.__subinterface = t + if hasattr(self, '_set'): + self._set() + + def _unset_subinterface(self): + self.__subinterface = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + interface = __builtin__.property(_get_interface, _set_interface) + subinterface = __builtin__.property(_get_subinterface, _set_subinterface) + + + _pyangbind_elements = OrderedDict([('interface', interface), ('subinterface', subinterface), ]) + + +class yc_state_openconfig_acl__acl_interfaces_interface_interface_ref_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/interfaces/interface/interface-ref/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state for interface-ref + """ + __slots__ = ('_path_helper', '_extmethods', '__interface','__subinterface',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__interface = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + self.__subinterface = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'interfaces', 'interface', 'interface-ref', 'state'] + + def _get_interface(self): + """ + Getter method for interface, mapped from YANG variable /acl/interfaces/interface/interface_ref/state/interface (leafref) + + YANG Description: Reference to a base interface. If a reference to a +subinterface is required, this leaf must be specified +to indicate the base interface. + """ + return self.__interface + + def _set_interface(self, v, load=False): + """ + Setter method for interface, mapped from YANG variable /acl/interfaces/interface/interface_ref/state/interface (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_interface is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_interface() directly. + + YANG Description: Reference to a base interface. If a reference to a +subinterface is required, this leaf must be specified +to indicate the base interface. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """interface must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False)""", + }) + + self.__interface = t + if hasattr(self, '_set'): + self._set() + + def _unset_interface(self): + self.__interface = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + + + def _get_subinterface(self): + """ + Getter method for subinterface, mapped from YANG variable /acl/interfaces/interface/interface_ref/state/subinterface (leafref) + + YANG Description: Reference to a subinterface -- this requires the base +interface to be specified using the interface leaf in +this container. If only a reference to a base interface +is requuired, this leaf should not be set. + """ + return self.__subinterface + + def _set_subinterface(self, v, load=False): + """ + Setter method for subinterface, mapped from YANG variable /acl/interfaces/interface/interface_ref/state/subinterface (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_subinterface is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_subinterface() directly. + + YANG Description: Reference to a subinterface -- this requires the base +interface to be specified using the interface leaf in +this container. If only a reference to a base interface +is requuired, this leaf should not be set. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """subinterface must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False)""", + }) + + self.__subinterface = t + if hasattr(self, '_set'): + self._set() + + def _unset_subinterface(self): + self.__subinterface = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + + interface = __builtin__.property(_get_interface) + subinterface = __builtin__.property(_get_subinterface) + + + _pyangbind_elements = OrderedDict([('interface', interface), ('subinterface', subinterface), ]) + + +class yc_interface_ref_openconfig_acl__acl_interfaces_interface_interface_ref(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/interfaces/interface/interface-ref. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Reference to an interface or subinterface + """ + __slots__ = ('_path_helper', '_extmethods', '__config','__state',) + + _yang_name = 'interface-ref' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_interfaces_interface_interface_ref_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_interfaces_interface_interface_ref_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'interfaces', 'interface', 'interface-ref'] + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /acl/interfaces/interface/interface_ref/config (container) + + YANG Description: Configured reference to interface / subinterface + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /acl/interfaces/interface/interface_ref/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configured reference to interface / subinterface + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_acl__acl_interfaces_interface_interface_ref_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_acl__acl_interfaces_interface_interface_ref_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_interfaces_interface_interface_ref_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /acl/interfaces/interface/interface_ref/state (container) + + YANG Description: Operational state for interface-ref + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /acl/interfaces/interface/interface_ref/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state for interface-ref + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_acl__acl_interfaces_interface_interface_ref_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_acl__acl_interfaces_interface_interface_ref_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_interfaces_interface_interface_ref_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + + + _pyangbind_elements = OrderedDict([('config', config), ('state', state), ]) + + +class yc_config_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/interfaces/interface/ingress-acl-sets/ingress-acl-set/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configuration data + """ + __slots__ = ('_path_helper', '_extmethods', '__set_name','__type',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__set_name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="set-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + self.__type = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'interfaces', 'interface', 'ingress-acl-sets', 'ingress-acl-set', 'config'] + + def _get_set_name(self): + """ + Getter method for set_name, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/config/set_name (leafref) + + YANG Description: Reference to the ACL set name applied on ingress + """ + return self.__set_name + + def _set_set_name(self, v, load=False): + """ + Setter method for set_name, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/config/set_name (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_set_name() directly. + + YANG Description: Reference to the ACL set name applied on ingress + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="set-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """set_name must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="set-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True)""", + }) + + self.__set_name = t + if hasattr(self, '_set'): + self._set() + + def _unset_set_name(self): + self.__set_name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="set-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + + def _get_type(self): + """ + Getter method for type, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/config/type (leafref) + + YANG Description: Reference to the ACL set type applied on ingress + """ + return self.__type + + def _set_type(self, v, load=False): + """ + Setter method for type, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/config/type (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_type is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_type() directly. + + YANG Description: Reference to the ACL set type applied on ingress + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """type must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True)""", + }) + + self.__type = t + if hasattr(self, '_set'): + self._set() + + def _unset_type(self): + self.__type = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + set_name = __builtin__.property(_get_set_name, _set_set_name) + type = __builtin__.property(_get_type, _set_type) + + + _pyangbind_elements = OrderedDict([('set_name', set_name), ('type', type), ]) + + +class yc_state_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/interfaces/interface/ingress-acl-sets/ingress-acl-set/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state data for interface ingress ACLs + """ + __slots__ = ('_path_helper', '_extmethods', '__set_name','__type',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__set_name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="set-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + self.__type = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'interfaces', 'interface', 'ingress-acl-sets', 'ingress-acl-set', 'state'] + + def _get_set_name(self): + """ + Getter method for set_name, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/state/set_name (leafref) + + YANG Description: Reference to the ACL set name applied on ingress + """ + return self.__set_name + + def _set_set_name(self, v, load=False): + """ + Setter method for set_name, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/state/set_name (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_set_name() directly. + + YANG Description: Reference to the ACL set name applied on ingress + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="set-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """set_name must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="set-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False)""", + }) + + self.__set_name = t + if hasattr(self, '_set'): + self._set() + + def _unset_set_name(self): + self.__set_name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="set-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + + + def _get_type(self): + """ + Getter method for type, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/state/type (leafref) + + YANG Description: Reference to the ACL set type applied on ingress + """ + return self.__type + + def _set_type(self, v, load=False): + """ + Setter method for type, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/state/type (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_type is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_type() directly. + + YANG Description: Reference to the ACL set type applied on ingress + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """type must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False)""", + }) + + self.__type = t + if hasattr(self, '_set'): + self._set() + + def _unset_type(self): + self.__type = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + + set_name = __builtin__.property(_get_set_name) + type = __builtin__.property(_get_type) + + + _pyangbind_elements = OrderedDict([('set_name', set_name), ('type', type), ]) + + +class yc_state_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_acl_entries_acl_entry_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/interfaces/interface/ingress-acl-sets/ingress-acl-set/acl-entries/acl-entry/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state data for per-interface ACL entries + """ + __slots__ = ('_path_helper', '_extmethods', '__sequence_id','__matched_packets','__matched_octets',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__sequence_id = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + self.__matched_packets = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="matched-packets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:counter64', is_config=False) + self.__matched_octets = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="matched-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:counter64', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'interfaces', 'interface', 'ingress-acl-sets', 'ingress-acl-set', 'acl-entries', 'acl-entry', 'state'] + + def _get_sequence_id(self): + """ + Getter method for sequence_id, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/acl_entries/acl_entry/state/sequence_id (leafref) + + YANG Description: Reference to an entry in the ACL set applied to an +interface + """ + return self.__sequence_id + + def _set_sequence_id(self, v, load=False): + """ + Setter method for sequence_id, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/acl_entries/acl_entry/state/sequence_id (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_sequence_id is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_sequence_id() directly. + + YANG Description: Reference to an entry in the ACL set applied to an +interface + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """sequence_id must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False)""", + }) + + self.__sequence_id = t + if hasattr(self, '_set'): + self._set() + + def _unset_sequence_id(self): + self.__sequence_id = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + + + def _get_matched_packets(self): + """ + Getter method for matched_packets, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/acl_entries/acl_entry/state/matched_packets (oc-yang:counter64) + + YANG Description: Count of the number of packets matching the current ACL +entry. + +An implementation should provide this counter on a +per-interface per-ACL-entry if possible. + +If an implementation only supports ACL counters per entry +(i.e., not broken out per interface), then the value +should be equal to the aggregate count across all interfaces. + +An implementation that provides counters per entry per +interface is not required to also provide an aggregate count, +e.g., per entry -- the user is expected to be able implement +the required aggregation if such a count is needed. + """ + return self.__matched_packets + + def _set_matched_packets(self, v, load=False): + """ + Setter method for matched_packets, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/acl_entries/acl_entry/state/matched_packets (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_matched_packets is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_matched_packets() directly. + + YANG Description: Count of the number of packets matching the current ACL +entry. + +An implementation should provide this counter on a +per-interface per-ACL-entry if possible. + +If an implementation only supports ACL counters per entry +(i.e., not broken out per interface), then the value +should be equal to the aggregate count across all interfaces. + +An implementation that provides counters per entry per +interface is not required to also provide an aggregate count, +e.g., per entry -- the user is expected to be able implement +the required aggregation if such a count is needed. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="matched-packets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """matched_packets must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="matched-packets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__matched_packets = t + if hasattr(self, '_set'): + self._set() + + def _unset_matched_packets(self): + self.__matched_packets = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="matched-packets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:counter64', is_config=False) + + + def _get_matched_octets(self): + """ + Getter method for matched_octets, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/acl_entries/acl_entry/state/matched_octets (oc-yang:counter64) + + YANG Description: Count of the number of octets (bytes) matching the current +ACL entry. + +An implementation should provide this counter on a +per-interface per-ACL-entry if possible. + +If an implementation only supports ACL counters per entry +(i.e., not broken out per interface), then the value +should be equal to the aggregate count across all interfaces. + +An implementation that provides counters per entry per +interface is not required to also provide an aggregate count, +e.g., per entry -- the user is expected to be able implement +the required aggregation if such a count is needed. + """ + return self.__matched_octets + + def _set_matched_octets(self, v, load=False): + """ + Setter method for matched_octets, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/acl_entries/acl_entry/state/matched_octets (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_matched_octets is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_matched_octets() directly. + + YANG Description: Count of the number of octets (bytes) matching the current +ACL entry. + +An implementation should provide this counter on a +per-interface per-ACL-entry if possible. + +If an implementation only supports ACL counters per entry +(i.e., not broken out per interface), then the value +should be equal to the aggregate count across all interfaces. + +An implementation that provides counters per entry per +interface is not required to also provide an aggregate count, +e.g., per entry -- the user is expected to be able implement +the required aggregation if such a count is needed. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="matched-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """matched_octets must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="matched-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__matched_octets = t + if hasattr(self, '_set'): + self._set() + + def _unset_matched_octets(self): + self.__matched_octets = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="matched-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:counter64', is_config=False) + + sequence_id = __builtin__.property(_get_sequence_id) + matched_packets = __builtin__.property(_get_matched_packets) + matched_octets = __builtin__.property(_get_matched_octets) + + + _pyangbind_elements = OrderedDict([('sequence_id', sequence_id), ('matched_packets', matched_packets), ('matched_octets', matched_octets), ]) + + +class yc_acl_entry_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_acl_entries_acl_entry(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/interfaces/interface/ingress-acl-sets/ingress-acl-set/acl-entries/acl-entry. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: List of ACL entries assigned to an interface + """ + __slots__ = ('_path_helper', '_extmethods', '__sequence_id','__state',) + + _yang_name = 'acl-entry' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__sequence_id = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_acl_entries_acl_entry_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'interfaces', 'interface', 'ingress-acl-sets', 'ingress-acl-set', 'acl-entries', 'acl-entry'] + + def _get_sequence_id(self): + """ + Getter method for sequence_id, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/acl_entries/acl_entry/sequence_id (leafref) + + YANG Description: Reference to per-interface acl entry key + """ + return self.__sequence_id + + def _set_sequence_id(self, v, load=False): + """ + Setter method for sequence_id, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/acl_entries/acl_entry/sequence_id (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_sequence_id is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_sequence_id() directly. + + YANG Description: Reference to per-interface acl entry key + """ + parent = getattr(self, "_parent", None) + if parent is not None and load is False: + raise AttributeError("Cannot set keys directly when" + + " within an instantiated list") + + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """sequence_id must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False)""", + }) + + self.__sequence_id = t + if hasattr(self, '_set'): + self._set() + + def _unset_sequence_id(self): + self.__sequence_id = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/acl_entries/acl_entry/state (container) + + YANG Description: Operational state data for per-interface ACL entries + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/acl_entries/acl_entry/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state data for per-interface ACL entries + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_acl_entries_acl_entry_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_acl_entries_acl_entry_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=False)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_acl_entries_acl_entry_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=False) + + sequence_id = __builtin__.property(_get_sequence_id) + state = __builtin__.property(_get_state) + + + _pyangbind_elements = OrderedDict([('sequence_id', sequence_id), ('state', state), ]) + + +class yc_acl_entries_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_acl_entries(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/interfaces/interface/ingress-acl-sets/ingress-acl-set/acl-entries. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Enclosing container for list of references to ACLs + """ + __slots__ = ('_path_helper', '_extmethods', '__acl_entry',) + + _yang_name = 'acl-entries' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__acl_entry = YANGDynClass(base=YANGListType("sequence_id",yc_acl_entry_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_acl_entries_acl_entry, yang_name="acl-entry", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='sequence-id', extensions=None), is_container='list', yang_name="acl-entry", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'interfaces', 'interface', 'ingress-acl-sets', 'ingress-acl-set', 'acl-entries'] + + def _get_acl_entry(self): + """ + Getter method for acl_entry, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/acl_entries/acl_entry (list) + + YANG Description: List of ACL entries assigned to an interface + """ + return self.__acl_entry + + def _set_acl_entry(self, v, load=False): + """ + Setter method for acl_entry, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/acl_entries/acl_entry (list) + If this variable is read-only (config: false) in the + source YANG file, then _set_acl_entry is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_acl_entry() directly. + + YANG Description: List of ACL entries assigned to an interface + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGListType("sequence_id",yc_acl_entry_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_acl_entries_acl_entry, yang_name="acl-entry", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='sequence-id', extensions=None), is_container='list', yang_name="acl-entry", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """acl_entry must be of a type compatible with list""", + 'defined-type': "list", + 'generated-type': """YANGDynClass(base=YANGListType("sequence_id",yc_acl_entry_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_acl_entries_acl_entry, yang_name="acl-entry", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='sequence-id', extensions=None), is_container='list', yang_name="acl-entry", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=False)""", + }) + + self.__acl_entry = t + if hasattr(self, '_set'): + self._set() + + def _unset_acl_entry(self): + self.__acl_entry = YANGDynClass(base=YANGListType("sequence_id",yc_acl_entry_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_acl_entries_acl_entry, yang_name="acl-entry", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='sequence-id', extensions=None), is_container='list', yang_name="acl-entry", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=False) + + acl_entry = __builtin__.property(_get_acl_entry) + + + _pyangbind_elements = OrderedDict([('acl_entry', acl_entry), ]) + + +class yc_ingress_acl_set_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/interfaces/interface/ingress-acl-sets/ingress-acl-set. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: List of ingress ACLs on the interface + """ + __slots__ = ('_path_helper', '_extmethods', '__set_name','__type','__config','__state','__acl_entries',) + + _yang_name = 'ingress-acl-set' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__set_name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="set-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + self.__type = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__acl_entries = YANGDynClass(base=yc_acl_entries_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_acl_entries, is_container='container', yang_name="acl-entries", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'interfaces', 'interface', 'ingress-acl-sets', 'ingress-acl-set'] + + def _get_set_name(self): + """ + Getter method for set_name, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/set_name (leafref) + + YANG Description: Reference to set name list key + """ + return self.__set_name + + def _set_set_name(self, v, load=False): + """ + Setter method for set_name, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/set_name (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_set_name() directly. + + YANG Description: Reference to set name list key + """ + parent = getattr(self, "_parent", None) + if parent is not None and load is False: + raise AttributeError("Cannot set keys directly when" + + " within an instantiated list") + + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="set-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """set_name must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="set-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True)""", + }) + + self.__set_name = t + if hasattr(self, '_set'): + self._set() + + def _unset_set_name(self): + self.__set_name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="set-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + + def _get_type(self): + """ + Getter method for type, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/type (leafref) + + YANG Description: Reference to type list key + """ + return self.__type + + def _set_type(self, v, load=False): + """ + Setter method for type, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/type (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_type is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_type() directly. + + YANG Description: Reference to type list key + """ + parent = getattr(self, "_parent", None) + if parent is not None and load is False: + raise AttributeError("Cannot set keys directly when" + + " within an instantiated list") + + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """type must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True)""", + }) + + self.__type = t + if hasattr(self, '_set'): + self._set() + + def _unset_type(self): + self.__type = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/config (container) + + YANG Description: Configuration data + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configuration data + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/state (container) + + YANG Description: Operational state data for interface ingress ACLs + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state data for interface ingress ACLs + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_acl_entries(self): + """ + Getter method for acl_entries, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/acl_entries (container) + + YANG Description: Enclosing container for list of references to ACLs + """ + return self.__acl_entries + + def _set_acl_entries(self, v, load=False): + """ + Setter method for acl_entries, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set/acl_entries (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_acl_entries is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_acl_entries() directly. + + YANG Description: Enclosing container for list of references to ACLs + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_acl_entries_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_acl_entries, is_container='container', yang_name="acl-entries", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """acl_entries must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_acl_entries_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_acl_entries, is_container='container', yang_name="acl-entries", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__acl_entries = t + if hasattr(self, '_set'): + self._set() + + def _unset_acl_entries(self): + self.__acl_entries = YANGDynClass(base=yc_acl_entries_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set_acl_entries, is_container='container', yang_name="acl-entries", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + set_name = __builtin__.property(_get_set_name, _set_set_name) + type = __builtin__.property(_get_type, _set_type) + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + acl_entries = __builtin__.property(_get_acl_entries, _set_acl_entries) + + + _pyangbind_elements = OrderedDict([('set_name', set_name), ('type', type), ('config', config), ('state', state), ('acl_entries', acl_entries), ]) + + +class yc_ingress_acl_sets_openconfig_acl__acl_interfaces_interface_ingress_acl_sets(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/interfaces/interface/ingress-acl-sets. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Enclosing container the list of ingress ACLs on the +interface + """ + __slots__ = ('_path_helper', '_extmethods', '__ingress_acl_set',) + + _yang_name = 'ingress-acl-sets' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__ingress_acl_set = YANGDynClass(base=YANGListType("set_name type",yc_ingress_acl_set_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set, yang_name="ingress-acl-set", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='set-name type', extensions=None), is_container='list', yang_name="ingress-acl-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'interfaces', 'interface', 'ingress-acl-sets'] + + def _get_ingress_acl_set(self): + """ + Getter method for ingress_acl_set, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set (list) + + YANG Description: List of ingress ACLs on the interface + """ + return self.__ingress_acl_set + + def _set_ingress_acl_set(self, v, load=False): + """ + Setter method for ingress_acl_set, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets/ingress_acl_set (list) + If this variable is read-only (config: false) in the + source YANG file, then _set_ingress_acl_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_ingress_acl_set() directly. + + YANG Description: List of ingress ACLs on the interface + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGListType("set_name type",yc_ingress_acl_set_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set, yang_name="ingress-acl-set", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='set-name type', extensions=None), is_container='list', yang_name="ingress-acl-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """ingress_acl_set must be of a type compatible with list""", + 'defined-type': "list", + 'generated-type': """YANGDynClass(base=YANGListType("set_name type",yc_ingress_acl_set_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set, yang_name="ingress-acl-set", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='set-name type', extensions=None), is_container='list', yang_name="ingress-acl-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=True)""", + }) + + self.__ingress_acl_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_ingress_acl_set(self): + self.__ingress_acl_set = YANGDynClass(base=YANGListType("set_name type",yc_ingress_acl_set_openconfig_acl__acl_interfaces_interface_ingress_acl_sets_ingress_acl_set, yang_name="ingress-acl-set", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='set-name type', extensions=None), is_container='list', yang_name="ingress-acl-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=True) + + ingress_acl_set = __builtin__.property(_get_ingress_acl_set, _set_ingress_acl_set) + + + _pyangbind_elements = OrderedDict([('ingress_acl_set', ingress_acl_set), ]) + + +class yc_config_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/interfaces/interface/egress-acl-sets/egress-acl-set/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configuration data + """ + __slots__ = ('_path_helper', '_extmethods', '__set_name','__type',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__set_name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="set-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + self.__type = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'interfaces', 'interface', 'egress-acl-sets', 'egress-acl-set', 'config'] + + def _get_set_name(self): + """ + Getter method for set_name, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/config/set_name (leafref) + + YANG Description: Reference to the ACL set name applied on egress + """ + return self.__set_name + + def _set_set_name(self, v, load=False): + """ + Setter method for set_name, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/config/set_name (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_set_name() directly. + + YANG Description: Reference to the ACL set name applied on egress + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="set-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """set_name must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="set-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True)""", + }) + + self.__set_name = t + if hasattr(self, '_set'): + self._set() + + def _unset_set_name(self): + self.__set_name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="set-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + + def _get_type(self): + """ + Getter method for type, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/config/type (leafref) + + YANG Description: Reference to the ACL set type applied on egress. + """ + return self.__type + + def _set_type(self, v, load=False): + """ + Setter method for type, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/config/type (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_type is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_type() directly. + + YANG Description: Reference to the ACL set type applied on egress. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """type must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True)""", + }) + + self.__type = t + if hasattr(self, '_set'): + self._set() + + def _unset_type(self): + self.__type = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + set_name = __builtin__.property(_get_set_name, _set_set_name) + type = __builtin__.property(_get_type, _set_type) + + + _pyangbind_elements = OrderedDict([('set_name', set_name), ('type', type), ]) + + +class yc_state_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/interfaces/interface/egress-acl-sets/egress-acl-set/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state data for interface egress ACLs + """ + __slots__ = ('_path_helper', '_extmethods', '__set_name','__type',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__set_name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="set-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + self.__type = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'interfaces', 'interface', 'egress-acl-sets', 'egress-acl-set', 'state'] + + def _get_set_name(self): + """ + Getter method for set_name, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/state/set_name (leafref) + + YANG Description: Reference to the ACL set name applied on egress + """ + return self.__set_name + + def _set_set_name(self, v, load=False): + """ + Setter method for set_name, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/state/set_name (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_set_name() directly. + + YANG Description: Reference to the ACL set name applied on egress + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="set-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """set_name must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="set-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False)""", + }) + + self.__set_name = t + if hasattr(self, '_set'): + self._set() + + def _unset_set_name(self): + self.__set_name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="set-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + + + def _get_type(self): + """ + Getter method for type, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/state/type (leafref) + + YANG Description: Reference to the ACL set type applied on egress. + """ + return self.__type + + def _set_type(self, v, load=False): + """ + Setter method for type, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/state/type (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_type is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_type() directly. + + YANG Description: Reference to the ACL set type applied on egress. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """type must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False)""", + }) + + self.__type = t + if hasattr(self, '_set'): + self._set() + + def _unset_type(self): + self.__type = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + + set_name = __builtin__.property(_get_set_name) + type = __builtin__.property(_get_type) + + + _pyangbind_elements = OrderedDict([('set_name', set_name), ('type', type), ]) + + +class yc_state_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_acl_entries_acl_entry_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/interfaces/interface/egress-acl-sets/egress-acl-set/acl-entries/acl-entry/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state data for per-interface ACL entries + """ + __slots__ = ('_path_helper', '_extmethods', '__sequence_id','__matched_packets','__matched_octets',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__sequence_id = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + self.__matched_packets = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="matched-packets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:counter64', is_config=False) + self.__matched_octets = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="matched-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:counter64', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'interfaces', 'interface', 'egress-acl-sets', 'egress-acl-set', 'acl-entries', 'acl-entry', 'state'] + + def _get_sequence_id(self): + """ + Getter method for sequence_id, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/acl_entries/acl_entry/state/sequence_id (leafref) + + YANG Description: Reference to an entry in the ACL set applied to an +interface + """ + return self.__sequence_id + + def _set_sequence_id(self, v, load=False): + """ + Setter method for sequence_id, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/acl_entries/acl_entry/state/sequence_id (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_sequence_id is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_sequence_id() directly. + + YANG Description: Reference to an entry in the ACL set applied to an +interface + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """sequence_id must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False)""", + }) + + self.__sequence_id = t + if hasattr(self, '_set'): + self._set() + + def _unset_sequence_id(self): + self.__sequence_id = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + + + def _get_matched_packets(self): + """ + Getter method for matched_packets, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/acl_entries/acl_entry/state/matched_packets (oc-yang:counter64) + + YANG Description: Count of the number of packets matching the current ACL +entry. + +An implementation should provide this counter on a +per-interface per-ACL-entry if possible. + +If an implementation only supports ACL counters per entry +(i.e., not broken out per interface), then the value +should be equal to the aggregate count across all interfaces. + +An implementation that provides counters per entry per +interface is not required to also provide an aggregate count, +e.g., per entry -- the user is expected to be able implement +the required aggregation if such a count is needed. + """ + return self.__matched_packets + + def _set_matched_packets(self, v, load=False): + """ + Setter method for matched_packets, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/acl_entries/acl_entry/state/matched_packets (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_matched_packets is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_matched_packets() directly. + + YANG Description: Count of the number of packets matching the current ACL +entry. + +An implementation should provide this counter on a +per-interface per-ACL-entry if possible. + +If an implementation only supports ACL counters per entry +(i.e., not broken out per interface), then the value +should be equal to the aggregate count across all interfaces. + +An implementation that provides counters per entry per +interface is not required to also provide an aggregate count, +e.g., per entry -- the user is expected to be able implement +the required aggregation if such a count is needed. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="matched-packets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """matched_packets must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="matched-packets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__matched_packets = t + if hasattr(self, '_set'): + self._set() + + def _unset_matched_packets(self): + self.__matched_packets = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="matched-packets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:counter64', is_config=False) + + + def _get_matched_octets(self): + """ + Getter method for matched_octets, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/acl_entries/acl_entry/state/matched_octets (oc-yang:counter64) + + YANG Description: Count of the number of octets (bytes) matching the current +ACL entry. + +An implementation should provide this counter on a +per-interface per-ACL-entry if possible. + +If an implementation only supports ACL counters per entry +(i.e., not broken out per interface), then the value +should be equal to the aggregate count across all interfaces. + +An implementation that provides counters per entry per +interface is not required to also provide an aggregate count, +e.g., per entry -- the user is expected to be able implement +the required aggregation if such a count is needed. + """ + return self.__matched_octets + + def _set_matched_octets(self, v, load=False): + """ + Setter method for matched_octets, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/acl_entries/acl_entry/state/matched_octets (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_matched_octets is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_matched_octets() directly. + + YANG Description: Count of the number of octets (bytes) matching the current +ACL entry. + +An implementation should provide this counter on a +per-interface per-ACL-entry if possible. + +If an implementation only supports ACL counters per entry +(i.e., not broken out per interface), then the value +should be equal to the aggregate count across all interfaces. + +An implementation that provides counters per entry per +interface is not required to also provide an aggregate count, +e.g., per entry -- the user is expected to be able implement +the required aggregation if such a count is needed. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="matched-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """matched_octets must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="matched-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__matched_octets = t + if hasattr(self, '_set'): + self._set() + + def _unset_matched_octets(self): + self.__matched_octets = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="matched-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='oc-yang:counter64', is_config=False) + + sequence_id = __builtin__.property(_get_sequence_id) + matched_packets = __builtin__.property(_get_matched_packets) + matched_octets = __builtin__.property(_get_matched_octets) + + + _pyangbind_elements = OrderedDict([('sequence_id', sequence_id), ('matched_packets', matched_packets), ('matched_octets', matched_octets), ]) + + +class yc_acl_entry_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_acl_entries_acl_entry(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/interfaces/interface/egress-acl-sets/egress-acl-set/acl-entries/acl-entry. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: List of ACL entries assigned to an interface + """ + __slots__ = ('_path_helper', '_extmethods', '__sequence_id','__state',) + + _yang_name = 'acl-entry' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__sequence_id = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_acl_entries_acl_entry_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'interfaces', 'interface', 'egress-acl-sets', 'egress-acl-set', 'acl-entries', 'acl-entry'] + + def _get_sequence_id(self): + """ + Getter method for sequence_id, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/acl_entries/acl_entry/sequence_id (leafref) + + YANG Description: Reference to per-interface acl entry key + """ + return self.__sequence_id + + def _set_sequence_id(self, v, load=False): + """ + Setter method for sequence_id, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/acl_entries/acl_entry/sequence_id (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_sequence_id is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_sequence_id() directly. + + YANG Description: Reference to per-interface acl entry key + """ + parent = getattr(self, "_parent", None) + if parent is not None and load is False: + raise AttributeError("Cannot set keys directly when" + + " within an instantiated list") + + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """sequence_id must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False)""", + }) + + self.__sequence_id = t + if hasattr(self, '_set'): + self._set() + + def _unset_sequence_id(self): + self.__sequence_id = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="sequence-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=False) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/acl_entries/acl_entry/state (container) + + YANG Description: Operational state data for per-interface ACL entries + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/acl_entries/acl_entry/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state data for per-interface ACL entries + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_acl_entries_acl_entry_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_acl_entries_acl_entry_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=False)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_acl_entries_acl_entry_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=False) + + sequence_id = __builtin__.property(_get_sequence_id) + state = __builtin__.property(_get_state) + + + _pyangbind_elements = OrderedDict([('sequence_id', sequence_id), ('state', state), ]) + + +class yc_acl_entries_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_acl_entries(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/interfaces/interface/egress-acl-sets/egress-acl-set/acl-entries. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Enclosing container for list of references to ACLs + """ + __slots__ = ('_path_helper', '_extmethods', '__acl_entry',) + + _yang_name = 'acl-entries' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__acl_entry = YANGDynClass(base=YANGListType("sequence_id",yc_acl_entry_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_acl_entries_acl_entry, yang_name="acl-entry", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='sequence-id', extensions=None), is_container='list', yang_name="acl-entry", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'interfaces', 'interface', 'egress-acl-sets', 'egress-acl-set', 'acl-entries'] + + def _get_acl_entry(self): + """ + Getter method for acl_entry, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/acl_entries/acl_entry (list) + + YANG Description: List of ACL entries assigned to an interface + """ + return self.__acl_entry + + def _set_acl_entry(self, v, load=False): + """ + Setter method for acl_entry, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/acl_entries/acl_entry (list) + If this variable is read-only (config: false) in the + source YANG file, then _set_acl_entry is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_acl_entry() directly. + + YANG Description: List of ACL entries assigned to an interface + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGListType("sequence_id",yc_acl_entry_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_acl_entries_acl_entry, yang_name="acl-entry", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='sequence-id', extensions=None), is_container='list', yang_name="acl-entry", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """acl_entry must be of a type compatible with list""", + 'defined-type': "list", + 'generated-type': """YANGDynClass(base=YANGListType("sequence_id",yc_acl_entry_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_acl_entries_acl_entry, yang_name="acl-entry", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='sequence-id', extensions=None), is_container='list', yang_name="acl-entry", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=False)""", + }) + + self.__acl_entry = t + if hasattr(self, '_set'): + self._set() + + def _unset_acl_entry(self): + self.__acl_entry = YANGDynClass(base=YANGListType("sequence_id",yc_acl_entry_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_acl_entries_acl_entry, yang_name="acl-entry", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='sequence-id', extensions=None), is_container='list', yang_name="acl-entry", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=False) + + acl_entry = __builtin__.property(_get_acl_entry) + + + _pyangbind_elements = OrderedDict([('acl_entry', acl_entry), ]) + + +class yc_egress_acl_set_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/interfaces/interface/egress-acl-sets/egress-acl-set. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: List of egress ACLs on the interface + """ + __slots__ = ('_path_helper', '_extmethods', '__set_name','__type','__config','__state','__acl_entries',) + + _yang_name = 'egress-acl-set' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__set_name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="set-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + self.__type = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__acl_entries = YANGDynClass(base=yc_acl_entries_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_acl_entries, is_container='container', yang_name="acl-entries", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'interfaces', 'interface', 'egress-acl-sets', 'egress-acl-set'] + + def _get_set_name(self): + """ + Getter method for set_name, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/set_name (leafref) + + YANG Description: Reference to set name list key + """ + return self.__set_name + + def _set_set_name(self, v, load=False): + """ + Setter method for set_name, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/set_name (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_set_name() directly. + + YANG Description: Reference to set name list key + """ + parent = getattr(self, "_parent", None) + if parent is not None and load is False: + raise AttributeError("Cannot set keys directly when" + + " within an instantiated list") + + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="set-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """set_name must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="set-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True)""", + }) + + self.__set_name = t + if hasattr(self, '_set'): + self._set() + + def _unset_set_name(self): + self.__set_name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="set-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + + def _get_type(self): + """ + Getter method for type, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/type (leafref) + + YANG Description: Reference to type list key + """ + return self.__type + + def _set_type(self, v, load=False): + """ + Setter method for type, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/type (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_type is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_type() directly. + + YANG Description: Reference to type list key + """ + parent = getattr(self, "_parent", None) + if parent is not None and load is False: + raise AttributeError("Cannot set keys directly when" + + " within an instantiated list") + + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """type must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True)""", + }) + + self.__type = t + if hasattr(self, '_set'): + self._set() + + def _unset_type(self): + self.__type = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/config (container) + + YANG Description: Configuration data + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configuration data + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/state (container) + + YANG Description: Operational state data for interface egress ACLs + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state data for interface egress ACLs + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_acl_entries(self): + """ + Getter method for acl_entries, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/acl_entries (container) + + YANG Description: Enclosing container for list of references to ACLs + """ + return self.__acl_entries + + def _set_acl_entries(self, v, load=False): + """ + Setter method for acl_entries, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set/acl_entries (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_acl_entries is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_acl_entries() directly. + + YANG Description: Enclosing container for list of references to ACLs + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_acl_entries_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_acl_entries, is_container='container', yang_name="acl-entries", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """acl_entries must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_acl_entries_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_acl_entries, is_container='container', yang_name="acl-entries", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__acl_entries = t + if hasattr(self, '_set'): + self._set() + + def _unset_acl_entries(self): + self.__acl_entries = YANGDynClass(base=yc_acl_entries_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set_acl_entries, is_container='container', yang_name="acl-entries", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + set_name = __builtin__.property(_get_set_name, _set_set_name) + type = __builtin__.property(_get_type, _set_type) + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + acl_entries = __builtin__.property(_get_acl_entries, _set_acl_entries) + + + _pyangbind_elements = OrderedDict([('set_name', set_name), ('type', type), ('config', config), ('state', state), ('acl_entries', acl_entries), ]) + + +class yc_egress_acl_sets_openconfig_acl__acl_interfaces_interface_egress_acl_sets(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/interfaces/interface/egress-acl-sets. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Enclosing container the list of egress ACLs on the +interface + """ + __slots__ = ('_path_helper', '_extmethods', '__egress_acl_set',) + + _yang_name = 'egress-acl-sets' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__egress_acl_set = YANGDynClass(base=YANGListType("set_name type",yc_egress_acl_set_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set, yang_name="egress-acl-set", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='set-name type', extensions=None), is_container='list', yang_name="egress-acl-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'interfaces', 'interface', 'egress-acl-sets'] + + def _get_egress_acl_set(self): + """ + Getter method for egress_acl_set, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set (list) + + YANG Description: List of egress ACLs on the interface + """ + return self.__egress_acl_set + + def _set_egress_acl_set(self, v, load=False): + """ + Setter method for egress_acl_set, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets/egress_acl_set (list) + If this variable is read-only (config: false) in the + source YANG file, then _set_egress_acl_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_egress_acl_set() directly. + + YANG Description: List of egress ACLs on the interface + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGListType("set_name type",yc_egress_acl_set_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set, yang_name="egress-acl-set", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='set-name type', extensions=None), is_container='list', yang_name="egress-acl-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """egress_acl_set must be of a type compatible with list""", + 'defined-type': "list", + 'generated-type': """YANGDynClass(base=YANGListType("set_name type",yc_egress_acl_set_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set, yang_name="egress-acl-set", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='set-name type', extensions=None), is_container='list', yang_name="egress-acl-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=True)""", + }) + + self.__egress_acl_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_egress_acl_set(self): + self.__egress_acl_set = YANGDynClass(base=YANGListType("set_name type",yc_egress_acl_set_openconfig_acl__acl_interfaces_interface_egress_acl_sets_egress_acl_set, yang_name="egress-acl-set", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='set-name type', extensions=None), is_container='list', yang_name="egress-acl-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=True) + + egress_acl_set = __builtin__.property(_get_egress_acl_set, _set_egress_acl_set) + + + _pyangbind_elements = OrderedDict([('egress_acl_set', egress_acl_set), ]) + + +class yc_interface_openconfig_acl__acl_interfaces_interface(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/interfaces/interface. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: List of interfaces on which ACLs are set + """ + __slots__ = ('_path_helper', '_extmethods', '__id','__config','__state','__interface_ref','__ingress_acl_sets','__egress_acl_sets',) + + _yang_name = 'interface' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__id = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_interfaces_interface_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_interfaces_interface_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__interface_ref = YANGDynClass(base=yc_interface_ref_openconfig_acl__acl_interfaces_interface_interface_ref, is_container='container', yang_name="interface-ref", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__ingress_acl_sets = YANGDynClass(base=yc_ingress_acl_sets_openconfig_acl__acl_interfaces_interface_ingress_acl_sets, is_container='container', yang_name="ingress-acl-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__egress_acl_sets = YANGDynClass(base=yc_egress_acl_sets_openconfig_acl__acl_interfaces_interface_egress_acl_sets, is_container='container', yang_name="egress-acl-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'interfaces', 'interface'] + + def _get_id(self): + """ + Getter method for id, mapped from YANG variable /acl/interfaces/interface/id (leafref) + + YANG Description: Reference to the interface id list key + """ + return self.__id + + def _set_id(self, v, load=False): + """ + Setter method for id, mapped from YANG variable /acl/interfaces/interface/id (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_id is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_id() directly. + + YANG Description: Reference to the interface id list key + """ + parent = getattr(self, "_parent", None) + if parent is not None and load is False: + raise AttributeError("Cannot set keys directly when" + + " within an instantiated list") + + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """id must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True)""", + }) + + self.__id = t + if hasattr(self, '_set'): + self._set() + + def _unset_id(self): + self.__id = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='leafref', is_config=True) + + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /acl/interfaces/interface/config (container) + + YANG Description: Configuration for ACL per-interface data + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /acl/interfaces/interface/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configuration for ACL per-interface data + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_acl__acl_interfaces_interface_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_acl__acl_interfaces_interface_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_acl__acl_interfaces_interface_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /acl/interfaces/interface/state (container) + + YANG Description: Operational state for ACL per-interface data + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /acl/interfaces/interface/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state for ACL per-interface data + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_acl__acl_interfaces_interface_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_acl__acl_interfaces_interface_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_interfaces_interface_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_interface_ref(self): + """ + Getter method for interface_ref, mapped from YANG variable /acl/interfaces/interface/interface_ref (container) + + YANG Description: Reference to an interface or subinterface + """ + return self.__interface_ref + + def _set_interface_ref(self, v, load=False): + """ + Setter method for interface_ref, mapped from YANG variable /acl/interfaces/interface/interface_ref (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_interface_ref is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_interface_ref() directly. + + YANG Description: Reference to an interface or subinterface + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_interface_ref_openconfig_acl__acl_interfaces_interface_interface_ref, is_container='container', yang_name="interface-ref", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """interface_ref must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_interface_ref_openconfig_acl__acl_interfaces_interface_interface_ref, is_container='container', yang_name="interface-ref", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__interface_ref = t + if hasattr(self, '_set'): + self._set() + + def _unset_interface_ref(self): + self.__interface_ref = YANGDynClass(base=yc_interface_ref_openconfig_acl__acl_interfaces_interface_interface_ref, is_container='container', yang_name="interface-ref", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_ingress_acl_sets(self): + """ + Getter method for ingress_acl_sets, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets (container) + + YANG Description: Enclosing container the list of ingress ACLs on the +interface + """ + return self.__ingress_acl_sets + + def _set_ingress_acl_sets(self, v, load=False): + """ + Setter method for ingress_acl_sets, mapped from YANG variable /acl/interfaces/interface/ingress_acl_sets (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_ingress_acl_sets is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_ingress_acl_sets() directly. + + YANG Description: Enclosing container the list of ingress ACLs on the +interface + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_ingress_acl_sets_openconfig_acl__acl_interfaces_interface_ingress_acl_sets, is_container='container', yang_name="ingress-acl-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """ingress_acl_sets must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_ingress_acl_sets_openconfig_acl__acl_interfaces_interface_ingress_acl_sets, is_container='container', yang_name="ingress-acl-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__ingress_acl_sets = t + if hasattr(self, '_set'): + self._set() + + def _unset_ingress_acl_sets(self): + self.__ingress_acl_sets = YANGDynClass(base=yc_ingress_acl_sets_openconfig_acl__acl_interfaces_interface_ingress_acl_sets, is_container='container', yang_name="ingress-acl-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_egress_acl_sets(self): + """ + Getter method for egress_acl_sets, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets (container) + + YANG Description: Enclosing container the list of egress ACLs on the +interface + """ + return self.__egress_acl_sets + + def _set_egress_acl_sets(self, v, load=False): + """ + Setter method for egress_acl_sets, mapped from YANG variable /acl/interfaces/interface/egress_acl_sets (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_egress_acl_sets is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_egress_acl_sets() directly. + + YANG Description: Enclosing container the list of egress ACLs on the +interface + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_egress_acl_sets_openconfig_acl__acl_interfaces_interface_egress_acl_sets, is_container='container', yang_name="egress-acl-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """egress_acl_sets must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_egress_acl_sets_openconfig_acl__acl_interfaces_interface_egress_acl_sets, is_container='container', yang_name="egress-acl-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__egress_acl_sets = t + if hasattr(self, '_set'): + self._set() + + def _unset_egress_acl_sets(self): + self.__egress_acl_sets = YANGDynClass(base=yc_egress_acl_sets_openconfig_acl__acl_interfaces_interface_egress_acl_sets, is_container='container', yang_name="egress-acl-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + id = __builtin__.property(_get_id, _set_id) + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + interface_ref = __builtin__.property(_get_interface_ref, _set_interface_ref) + ingress_acl_sets = __builtin__.property(_get_ingress_acl_sets, _set_ingress_acl_sets) + egress_acl_sets = __builtin__.property(_get_egress_acl_sets, _set_egress_acl_sets) + + + _pyangbind_elements = OrderedDict([('id', id), ('config', config), ('state', state), ('interface_ref', interface_ref), ('ingress_acl_sets', ingress_acl_sets), ('egress_acl_sets', egress_acl_sets), ]) + + +class yc_interfaces_openconfig_acl__acl_interfaces(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl/interfaces. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Enclosing container for the list of interfaces on which +ACLs are set + """ + __slots__ = ('_path_helper', '_extmethods', '__interface',) + + _yang_name = 'interfaces' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__interface = YANGDynClass(base=YANGListType("id",yc_interface_openconfig_acl__acl_interfaces_interface, yang_name="interface", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl', 'interfaces'] + + def _get_interface(self): + """ + Getter method for interface, mapped from YANG variable /acl/interfaces/interface (list) + + YANG Description: List of interfaces on which ACLs are set + """ + return self.__interface + + def _set_interface(self, v, load=False): + """ + Setter method for interface, mapped from YANG variable /acl/interfaces/interface (list) + If this variable is read-only (config: false) in the + source YANG file, then _set_interface is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_interface() directly. + + YANG Description: List of interfaces on which ACLs are set + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGListType("id",yc_interface_openconfig_acl__acl_interfaces_interface, yang_name="interface", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """interface must be of a type compatible with list""", + 'defined-type': "list", + 'generated-type': """YANGDynClass(base=YANGListType("id",yc_interface_openconfig_acl__acl_interfaces_interface, yang_name="interface", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=True)""", + }) + + self.__interface = t + if hasattr(self, '_set'): + self._set() + + def _unset_interface(self): + self.__interface = YANGDynClass(base=YANGListType("id",yc_interface_openconfig_acl__acl_interfaces_interface, yang_name="interface", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='list', is_config=True) + + interface = __builtin__.property(_get_interface, _set_interface) + + + _pyangbind_elements = OrderedDict([('interface', interface), ]) + + +class yc_acl_openconfig_acl__acl(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /acl. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Top level enclosing container for ACL model config +and operational state data + """ + __slots__ = ('_path_helper', '_extmethods', '__state','__acl_sets','__interfaces',) + + _yang_name = 'acl' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__acl_sets = YANGDynClass(base=yc_acl_sets_openconfig_acl__acl_acl_sets, is_container='container', yang_name="acl-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + self.__interfaces = YANGDynClass(base=yc_interfaces_openconfig_acl__acl_interfaces, is_container='container', yang_name="interfaces", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['acl'] + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /acl/state (container) + + YANG Description: Global operational state data for ACLs + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /acl/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Global operational state data for ACLs + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_acl__acl_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_acl__acl_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_acl__acl_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_acl_sets(self): + """ + Getter method for acl_sets, mapped from YANG variable /acl/acl_sets (container) + + YANG Description: Access list entries variables enclosing container + """ + return self.__acl_sets + + def _set_acl_sets(self, v, load=False): + """ + Setter method for acl_sets, mapped from YANG variable /acl/acl_sets (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_acl_sets is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_acl_sets() directly. + + YANG Description: Access list entries variables enclosing container + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_acl_sets_openconfig_acl__acl_acl_sets, is_container='container', yang_name="acl-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """acl_sets must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_acl_sets_openconfig_acl__acl_acl_sets, is_container='container', yang_name="acl-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__acl_sets = t + if hasattr(self, '_set'): + self._set() + + def _unset_acl_sets(self): + self.__acl_sets = YANGDynClass(base=yc_acl_sets_openconfig_acl__acl_acl_sets, is_container='container', yang_name="acl-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + + def _get_interfaces(self): + """ + Getter method for interfaces, mapped from YANG variable /acl/interfaces (container) + + YANG Description: Enclosing container for the list of interfaces on which +ACLs are set + """ + return self.__interfaces + + def _set_interfaces(self, v, load=False): + """ + Setter method for interfaces, mapped from YANG variable /acl/interfaces (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_interfaces is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_interfaces() directly. + + YANG Description: Enclosing container for the list of interfaces on which +ACLs are set + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_interfaces_openconfig_acl__acl_interfaces, is_container='container', yang_name="interfaces", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """interfaces must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_interfaces_openconfig_acl__acl_interfaces, is_container='container', yang_name="interfaces", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__interfaces = t + if hasattr(self, '_set'): + self._set() + + def _unset_interfaces(self): + self.__interfaces = YANGDynClass(base=yc_interfaces_openconfig_acl__acl_interfaces, is_container='container', yang_name="interfaces", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + state = __builtin__.property(_get_state, _set_state) + acl_sets = __builtin__.property(_get_acl_sets, _set_acl_sets) + interfaces = __builtin__.property(_get_interfaces, _set_interfaces) + + + _pyangbind_elements = OrderedDict([('state', state), ('acl_sets', acl_sets), ('interfaces', interfaces), ]) + + +class openconfig_acl(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-acl - based on the path /openconfig-acl. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: This module defines configuration and operational state +data for network access control lists (i.e., filters, rules, +etc.). ACLs are organized into ACL sets, with each set +containing one or more ACL entries. ACL sets are identified +by a unique name, while each entry within a set is assigned +a sequence-id that determines the order in which the ACL +rules are applied to a packet. Note that ACLs are evaluated +in ascending order based on the sequence-id (low to high). + +Individual ACL rules specify match criteria based on fields in +the packet, along with an action that defines how matching +packets should be handled. Entries have a type that indicates +the type of match criteria, e.g., MAC layer, IPv4, IPv6, etc. + """ + __slots__ = ('_path_helper', '_extmethods', '__acl',) + + _yang_name = 'openconfig-acl' + _yang_namespace = 'http://openconfig.net/yang/acl' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__acl = YANGDynClass(base=yc_acl_openconfig_acl__acl, is_container='container', yang_name="acl", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return [] + + def _get_acl(self): + """ + Getter method for acl, mapped from YANG variable /acl (container) + + YANG Description: Top level enclosing container for ACL model config +and operational state data + """ + return self.__acl + + def _set_acl(self, v, load=False): + """ + Setter method for acl, mapped from YANG variable /acl (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_acl is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_acl() directly. + + YANG Description: Top level enclosing container for ACL model config +and operational state data + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_acl_openconfig_acl__acl, is_container='container', yang_name="acl", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """acl must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_acl_openconfig_acl__acl, is_container='container', yang_name="acl", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True)""", + }) + + self.__acl = t + if hasattr(self, '_set'): + self._set() + + def _unset_acl(self): + self.__acl = YANGDynClass(base=yc_acl_openconfig_acl__acl, is_container='container', yang_name="acl", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/acl', defining_module='openconfig-acl', yang_type='container', is_config=True) + + acl = __builtin__.property(_get_acl, _set_acl) + + + _pyangbind_elements = OrderedDict([('acl', acl), ]) + + diff --git a/src/device/service/drivers/openconfig/templates/EndPoints.py b/src/device/service/drivers/openconfig/templates/EndPoints.py index f16f0ffcd09a07f6c109328b1c5f0ee101af545a..0e86af7af012131561388b15377c831ce5ad1959 100644 --- a/src/device/service/drivers/openconfig/templates/EndPoints.py +++ b/src/device/service/drivers/openconfig/templates/EndPoints.py @@ -31,7 +31,7 @@ def parse(xml_data : ET.Element) -> List[Tuple[str, Dict[str, Any]]]: component_type = xml_component.find('ocp:state/ocp:type', namespaces=NAMESPACES) if component_type is None or component_type.text is None: continue component_type = component_type.text - if component_type not in {'PORT', 'oc-platform-types:PORT'}: continue + if component_type not in {'PORT', 'oc-platform-types:PORT', 'idx:PORT'}: continue LOGGER.info('PORT xml_component = {:s}'.format(str(ET.tostring(xml_component)))) diff --git a/src/device/service/drivers/openconfig/templates/Interfaces.py b/src/device/service/drivers/openconfig/templates/Interfaces.py index a2f6f931a5c144df690f8d1ab9360f9e04b7eca7..3855db17b45505d4131089b2b9abd995fa221419 100644 --- a/src/device/service/drivers/openconfig/templates/Interfaces.py +++ b/src/device/service/drivers/openconfig/templates/Interfaces.py @@ -13,9 +13,9 @@ # limitations under the License. import logging, lxml.etree as ET -from typing import Any, Dict, List, Tuple +from typing import Any, Dict, List, Tuple from .Namespace import NAMESPACES -from .Tools import add_value_from_collection, add_value_from_tag +from .Tools import add_value_from_tag LOGGER = logging.getLogger(__name__) @@ -37,11 +37,18 @@ def parse(xml_data : ET.Element) -> List[Tuple[str, Dict[str, Any]]]: #interface_type = xml_interface.find('oci:config/oci:type', namespaces=NAMESPACES) #add_value_from_tag(interface, 'type', interface_type) - interface_type = xml_interface.find('oci:config/oci:type', namespaces=NAMESPACES) - if interface_type is None: - interface_type = xml_interface.find('oci:state/oci:type', namespaces=NAMESPACES) - if interface_type is None: continue - interface_type.text = interface_type.text.replace('ianaift:','') + if xml_interface.find('oci:config/oci:type', namespaces=NAMESPACES) is not None: + interface_type = xml_interface.find('oci:config/oci:type', namespaces=NAMESPACES) + elif xml_interface.find('oci:state/oci:type', namespaces=NAMESPACES) is not None: + interface_type = xml_interface.find('oci:state/oci:type', namespaces=NAMESPACES) + else: + interface_type = '' + + # Get the type of interface according to the vendor's type + if 'ianaift:' in interface_type.text: + interface_type.text = interface_type.text.replace('ianaift:', '') #ADVA + elif 'idx'in interface_type.text: + interface_type.text = interface_type.text.replace('idx:', '') #CISCO add_value_from_tag(interface, 'type', interface_type) interface_mtu = xml_interface.find('oci:config/oci:mtu', namespaces=NAMESPACES) diff --git a/src/device/service/drivers/openconfig/templates/NetworkInstances.py b/src/device/service/drivers/openconfig/templates/NetworkInstances.py index a5ba0de23612b69ef5e3d33fa1a89573c7c63e97..c00995b3aa4060363113f5743e2687ca6d1e7fd9 100644 --- a/src/device/service/drivers/openconfig/templates/NetworkInstances.py +++ b/src/device/service/drivers/openconfig/templates/NetworkInstances.py @@ -41,10 +41,24 @@ def parse(xml_data : ET.Element) -> List[Tuple[str, Dict[str, Any]]]: if ni_name is None or ni_name.text is None: continue add_value_from_tag(network_instance, 'name', ni_name) + ''' ni_type = xml_network_instance.find('ocni:config/ocni:type', namespaces=NAMESPACES) ni_type.text = ni_type.text.replace('oc-ni-types:','') add_value_from_tag(network_instance, 'type', ni_type) - + ''' + + if xml_network_instance.find('ocni:config/ocni:type', namespaces=NAMESPACES) is not None: + ni_type = xml_network_instance.find('ocni:config/ocni:type', namespaces=NAMESPACES) + elif xml_network_instance.find('oci:state/oci:type', namespaces=NAMESPACES) is not None: + ni_type = xml_network_instance.find('oci:state/oci:type', namespaces=NAMESPACES) + else: + continue + if 'oc-ni-types:' in ni_type.text: + ni_type.text = ni_type.text.replace('oc-ni-types:', '') #ADVA + elif 'idx'in ni_type.text: + ni_type.text = ni_type.text.replace('idx:', '') #CISCO + add_value_from_tag(network_instance, 'type', ni_type) + ni_router_id = xml_network_instance.find('ocni:config/ocni:router-id', namespaces=NAMESPACES) add_value_from_tag(network_instance, 'router_id', ni_router_id) diff --git a/src/device/service/drivers/openconfig/templates/RoutingPolicy.py b/src/device/service/drivers/openconfig/templates/RoutingPolicy.py index 1c2efa6122b617243de26b009b0c890fad80cf19..acafa021824f94f929e849117824e8120974d0b1 100644 --- a/src/device/service/drivers/openconfig/templates/RoutingPolicy.py +++ b/src/device/service/drivers/openconfig/templates/RoutingPolicy.py @@ -45,7 +45,8 @@ def parse(xml_data : ET.Element) -> List[Tuple[str, Dict[str, Any]]]: for xml_statement in xml_policy_definition.xpath(XPATH_PD_STATEMENTS, namespaces=NAMESPACES): statement_name = xml_statement.find('ocrp:name', namespaces=NAMESPACES) - add_value_from_tag(policy_definition, 'statement_name', statement_name) + if len(statement_name) != 0: #FIX: In case there is a route policy defined without a statement name + add_value_from_tag(policy_definition, 'statement_name', statement_name) for xml_condition in xml_statement.xpath(XPATH_PD_ST_CONDITIONS, namespaces=NAMESPACES): ext_community_set_name = xml_condition.find('ocbp:config/ocbp:ext-community-set', namespaces=NAMESPACES) @@ -58,9 +59,10 @@ def parse(xml_data : ET.Element) -> List[Tuple[str, Dict[str, Any]]]: policy_result = xml_action.find('ocbp:config/ocbp:policy-result', namespaces=NAMESPACES) add_value_from_tag(policy_definition, 'policy_result', policy_result) - resource_key = '/routing_policy/policy_definition[{:s}]/statement[{:s}]'.format( - policy_definition['policy_name'], policy_definition['statement_name']) - response.append((resource_key, copy.deepcopy(policy_definition))) + if len(statement_name) != 0: #FIX: In case there is a route policy defined without a statement name + resource_key = '/routing_policy/policy_definition[{:s}]/statement[{:s}]'.format( + policy_definition['policy_name'], policy_definition['statement_name']) + response.append((resource_key, copy.deepcopy(policy_definition))) for xml_bgp_ext_community_set in xml_data.xpath(XPATH_BGP_EXT_COMMUN_SET, namespaces=NAMESPACES): #LOGGER.info('xml_bgp_ext_community_set = {:s}'.format(str(ET.tostring(xml_bgp_ext_community_set)))) diff --git a/src/device/service/drivers/openconfig/templates/Tools.py b/src/device/service/drivers/openconfig/templates/Tools.py index 67d267b7d8c0b773f818052e01c3f2720f071902..79bebef5179b3464c33ce7fa0663b0cd35a51fc0 100644 --- a/src/device/service/drivers/openconfig/templates/Tools.py +++ b/src/device/service/drivers/openconfig/templates/Tools.py @@ -12,8 +12,13 @@ # See the License for the specific language governing permissions and # limitations under the License. +import json import lxml.etree as ET -from typing import Collection, Dict +from typing import Collection, Dict, Any +from .ACL.ACL_multivendor import acl_mgmt +from .VPN.Network_instance_multivendor import create_NI, associate_virtual_circuit, associate_RP_to_NI, add_protocol_NI, create_table_conns, associate_If_to_NI +from .VPN.Interfaces_multivendor import create_If_SubIf +from .VPN.Routing_policy import create_rp_def, create_rp_statement def add_value_from_tag(target : Dict, field_name: str, field_value : ET.Element, cast=None) -> None: if field_value is None or field_value.text is None: return @@ -24,3 +29,61 @@ def add_value_from_tag(target : Dict, field_name: str, field_value : ET.Element, def add_value_from_collection(target : Dict, field_name: str, field_value : Collection) -> None: if field_value is None or len(field_value) == 0: return target[field_name] = field_value + +""" +# Method Name: generate_templates + +# Parameters: + - resource_key: [str] Variable to identify the rule to be executed. + - resource_value: [str] Variable with the configuration parameters of the rule to be executed. + - delete: [bool] Variable to identify whether to create or delete the rule. + - vendor: [str] Variable to identify the vendor of the equipment to be configured. + +# Functionality: + This method generates the template to configure the equipment using pyangbind. + To generate the template the following steps are performed: + 1) Get the first parameter of the variable "resource_key" to identify the main path of the rule. + 2) Search for the specific configuration path + 3) Call the method with the configuration parameters (resource_data variable). + +# Return: + [dict] Set of templates generated according to the configuration rule +""" +def generate_templates(resource_key: str, resource_value: str, delete: bool,vendor:str) -> str: # template management to be configured + + result_templates = [] + list_resource_key = resource_key.split("/") # the rule resource key management + if "network_instance" in list_resource_key[1]: # network instance rules management + data: Dict[str, Any] = json.loads(resource_value) + #data['DEL'] = delete + if "connection_point" in resource_key: + result_templates.append(associate_virtual_circuit(data)) + elif "inter_instance_policies" in resource_key: + result_templates.append(associate_RP_to_NI(data)) + elif "protocols" in resource_key: + if vendor == "ADVA": result_templates.append(add_protocol_NI(data, vendor, delete)) + elif "table_connections" in resource_key: + result_templates.append(create_table_conns(data, delete)) + elif "interface" in resource_key: + result_templates.append(associate_If_to_NI(data,delete)) + else: + result_templates.append(create_NI(data,vendor,delete)) + + if "interface" in list_resource_key[1]: # interface rules management + data: Dict[str, Any] = json.loads(resource_value) + #data['DEL'] = delete + if "subinterface" in resource_key: + result_templates.append(create_If_SubIf(data, vendor, delete)) + + elif "routing_policy" in list_resource_key[1]: # routing policy rules management + data: Dict[str, Any] = json.loads(resource_value) + #data['DEL'] = delete + if "bgp_defined_set" in resource_key: + result_templates.append(create_rp_def(data, delete)) + else: + result_templates.append(create_rp_statement(data, delete)) + else: + if "acl_ruleset" in resource_key: # acl rules management + result_templates.extend(acl_mgmt(resource_value,vendor, delete)) + + return result_templates \ No newline at end of file diff --git a/src/device/service/drivers/openconfig/templates/VPN/Interfaces_multivendor.py b/src/device/service/drivers/openconfig/templates/VPN/Interfaces_multivendor.py new file mode 100644 index 0000000000000000000000000000000000000000..d6f72ee6556fd5ca5dc08c5349a41e0db736bd4d --- /dev/null +++ b/src/device/service/drivers/openconfig/templates/VPN/Interfaces_multivendor.py @@ -0,0 +1,246 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 yattag import Doc, indent +""" +# Method Name: create_If_SubIf + +# Parameters: + - Interface_name: [str] Variable to set the name of the Interface that will be configured. [Mandatory parameter in all cases]. + - DEL: [bool] Variable that determines if the template will be for creating (DEL = False) or for deleting (DEL = True) a configuration [Mandatory parameter in all cases]. + - Interface_type: [str] Variable that specifies the type of interface, can take the value "l2vlan" or "l3ipvlan" [Only mandatory if DEL = False]. + - SubInterface_Index: [int] Variable to set the index of the subinterface.[Only mandatory if DEL = False]. + - Description: [str] Variable for adding a description to the Interface [Only mandatory if DEL = False]. + +# Functionality: + This method generates the template of an Interface with subinterface, used both for L2 and L3 VPNs. + This template will be generated for configuring a device, making use of pyangbind. + To generate the template the following steps are performed: + 1) Checks if the DEL variable is true (Template for deleting a existent Interface or) or false (Template for creating a new Interface with Subinterface). + 2) Create the template correspondent in each case, assigning the correspondent parameters with their value. + 3) Make the correspondent replaces for the unssuported configurations by pyangbind. + +# Return: + [str] The newly generated template according to the specified parameters. +""" +def create_If_SubIf(data,vendor, DEL): + doc, tag, text = Doc().tagtext() + + with tag('interfaces', xmlns="http://openconfig.net/yang/interfaces"): + if DEL == True: + with tag('interface' ,'xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" nc:operation="delete"'): + with tag('name'):text(data['name']) + else: + with tag('interface'): + with tag('name'):text(data['name']) + with tag('config'): + with tag('name'):text(data['name']) + with tag('type', 'xmlns:ianaift="urn:ietf:params:xml:ns:yang:iana-if-type"'):text('ianaift:',data['type']) + if 'description' in data: + with tag('description'):text(data['description']) + if 'mtu' in data: + with tag('mtu'):text(data['mtu']) + with tag('enabled'):text('true') + with tag('subinterfaces'): + with tag('subinterface'): + if vendor == 'ADVA': + with tag('index'): text('0') + with tag('config'): + with tag('index'): text('0') + if vendor == 'ADVA' and not 'vlan_id'in data: + with tag('untagged-allowed', 'xmlns="http://www.advaoptical.com/cim/adva-dnos-oc-interfaces"'):text('true') + with tag('vlan', xmlns="http://openconfig.net/yang/vlan"): + with tag('match'): + with tag('single-tagged'): + with tag('config'): + with tag('vlan-id'):text(data['vlan_id']) + if "l3ipvlan" in data['type']: + with tag('ipv4', xmlns="http://openconfig.net/yang/interfaces/ip"): + with tag('addresses'): + with tag('address'): + with tag('ip'):text(data['address_ip']) + with tag('config'): + with tag('ip'):text(data['address_ip']) + with tag('prefix-length'):text(data['address_prefix']) + result = indent( + doc.getvalue(), + indentation = ' '*2, + newline = '\r\n' + ) + return result + +#TESTING +''' +data = {'name' : 'eth-1/0/22.222', + 'type' : 'l3ipvlan', + 'mtu' : '3000', + 'index' : '0', + 'description' : 'Interfaz con subinterfaz', + 'vlan_id' : '222', + 'address_ip' : '172.16.55.55', + 'address_prefix': '24'} + +print('\n\t\tINTERFAZ - Create') +print(create_If_SubIf(data,'ADVA', False)) +print('\n\t\tINTERFAZ - Delete') +print(create_If_SubIf(data,'ADVA', True)) +''' + + +''' +from .openconfig_interfaces import openconfig_interfaces +from pyangbind.lib.serialise import pybindIETFXMLEncoder + +""" +# Method Name: set_vlan + +# Parameters: + - vendor: [str] Variable to set the name of the vendor of the device to be configured. Depending on the vendor, the generated template may vary. + - vlan_id: [int] Variable to set the value of the parameter "vlan id". +# Functionality: + This is an auxiliary method that helps in the creation of the Interface template. This method generates the correspondent configuration of the vlan for the interface. + The method first checks if the parameters vendor and vlan_id are defined. If the vendor is ADVA and vlan_id = 0, an special configuration line is created. + Based on the values of the given parameters, the method generates the vlan configuration string. + +# Return: + [str] The method returns the generated vlan configuration string, that can be later used in the generation of the Interface template. +""" +def set_vlan(OptionalParams): #[L2/L3] Sets a VLANID and a VENDOR that will be requested for executing the following methods + verify = str(OptionalParams) #Verify transforms the received parameters into a string format for later making verifications and modifications + + #If the Vendor parameter is defined [OPTIONAL-PARAMETER] + if verify.find('vendor')>0: + Vendor = OptionalParams['vendor'] + + #If the VlanID parameter is defined [OPTIONAL-PARAMETER] + if verify.find('vlan_id')>0: + VlanID = OptionalParams['vlan_id'] + if VlanID == 0 and "ADVA" in Vendor: vlan = ' <untagged-allowed xmlns="http://www.advaoptical.com/cim/adva-dnos-oc-interfaces">true</untagged-allowed></config> \n </config>\n </subinterface>' + elif VlanID != 0: vlan = '</config>\n <vlan xmlns="http://openconfig.net/yang/vlan"> \n\t <match> \n\t <single-tagged> \n \t\t<config>\n \t\t <vlan-id>'+str(VlanID)+'</vlan-id> \n \t\t</config> \n \t </single-tagged> \n \t </match> \n \t </vlan> \n </subinterface>' + else: vlan = '</subinterface>\n </config>' + else: vlan = '</subinterface>\n </config>' + return vlan + +""" +# Method Name: set_ip + +# Parameters: + - address_ip: [str] Variable that sets the value of the ip address. + - address_prefix: [int] Variable that specifies the prefix of the given ip address. +# Functionality: + This is an auxiliary method that helps in the creation of the Interface template. This method generates the correspondent configuration of the ip address for the interface. + The method first checks if the parameter address_ip is defined. If it is defined, then it creates the configuration string that will be used later in the Interface template. + +# Return: + [str] The method returns the generated ip configuration string, that can be later used in the generation of the Interface template. +""" +def set_ip(OptionalParams): #[L3] Sets a IPAddress that will be requested for executing the following L3VPN methods + verify = str(OptionalParams) # Verify transforms the received parameters into a string format for later making verifications and modifications + + #If the Address_ip parameter is defined [OPTIONAL-PARAMETER] + if verify.find('address_ip')>0: + IP = OptionalParams['address_ip'] + Prefix = OptionalParams['address_prefix'] + address = ' <ipv4 xmlns="http://openconfig.net/yang/interfaces/ip"> \n\t <addresses> \n\t <address> \n \t\t<ip>'+IP+'</ip> \n \t\t<config>\n \t\t <ip>'+IP+'</ip> \n \t\t <prefix-length>'+str(Prefix)+'</prefix-length> \n \t\t</config> \n \t </address> \n \t </addresses> \n \t </ipv4> \n \t</subinterface>' + else: + address ='</subinterface>' + return address + +""" +# Method Name: create_If_SubIf + +# Parameters: + - Interface_name: [str] Variable to set the name of the Interface that will be configured. [Mandatory parameter in all cases]. + - DEL: [bool] Variable that determines if the template will be for creating (DEL = False) or for deleting (DEL = True) a configuration [Mandatory parameter in all cases]. + - Interface_type: [str] Variable that specifies the type of interface, can take the value "l2vlan" or "l3ipvlan" [Only mandatory if DEL = False]. + - SubInterface_Index: [int] Variable to set the index of the subinterface.[Only mandatory if DEL = False]. + - Description: [str] Variable for adding a description to the Interface [Only mandatory if DEL = False]. + +# Functionality: + This method generates the template of an Interface with subinterface, used both for L2 and L3 VPNs. + This template will be generated for configuring a device, making use of pyangbind. + To generate the template the following steps are performed: + 1) Checks if the DEL variable is true (Template for deleting a existent Interface or) or false (Template for creating a new Interface with Subinterface). + 2) Create the template correspondent in each case, assigning the correspondent parameters with their value. + 3) Make the correspondent replaces for the unssuported configurations by pyangbind. + +# Return: + [str] The newly generated template according to the specified parameters. +""" +def create_If_SubIf(parameters): #[L2/L3] Creates a Interface with a Subinterface as described in /interface[{:s}]/subinterface[{:d}] + Interface_name = parameters['name'] + DEL = parameters['DEL'] # If the parameters DEL is set to "TRUE" that will mean that is for making a DELETE, ELSE is for creating + verify = str(parameters) # Verify transforms the received parameters into a string format for later making verifications and modifications + + #Create an instance of the YANG model + InterfaceInstance = openconfig_interfaces() + + if DEL==True: #DELETE OPERATION + # Access the entry container + InterfaceInstance_set = InterfaceInstance.interfaces.interface.add(name = Interface_name) + + # Dump the entire instance as RFC 7950 XML + InterfaceInstance_set = pybindIETFXMLEncoder.serialise(InterfaceInstance) + + #Replace for setting the "Delete" Operation + InterfaceInstance_set = InterfaceInstance_set.replace('<interface>','<interface xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" nc:operation="delete">') + + #Generic Replaces + InterfaceInstance_set = InterfaceInstance_set.replace('<openconfig-interfaces xmlns="http://openconfig.net/yang/interfaces">',"") + InterfaceInstance_set = InterfaceInstance_set.replace('<interfaces>','<interfaces xmlns="http://openconfig.net/yang/interfaces">') + InterfaceInstance_set = InterfaceInstance_set.replace('</openconfig-interfaces>','') + + else: #MERGE OPERATION + Interface_type = parameters['type'] + SubInterface_Index = parameters["index"] + + #Access the entry container + InterfaceInstance_set = InterfaceInstance.interfaces.interface.add(name = Interface_name) + InterfaceInstance_set.config.name = Interface_name + InterfaceInstance_set.config.enabled = True + + #SubIntefaces-Config + SubInterfaceInstance = InterfaceInstance_set.subinterfaces.subinterface.add(index = SubInterface_Index) + SubInterfaceInstance.config.index = SubInterface_Index + + #If the description parameter is defined [OPTIONAL-PARAMETER] + if verify.find('description')>0: + Description = parameters['description'] + if len(Description) != 0: SubInterfaceInstance.config.description = Description #If description parameter has a value + + #If the MTU parameter is defined [OPTIONAL-PARAMETER] + if verify.find('mtu')>0: + MTU = parameters['mtu'] + if MTU != 0: InterfaceInstance_set.config.mtu = MTU #If MTU parameter has a value + + #Dump the entire instance as RFC 750 XML + InterfaceInstance_set = pybindIETFXMLEncoder.serialise(InterfaceInstance) + + #Replaces for adding the Interface Type + InterfaceInstance_set = InterfaceInstance_set.replace('</config>\n <subinterfaces>',' <type xmlns:ianaift="urn:ietf:params:xml:ns:yang:iana-if-type">ianaift:'+Interface_type+'</type>\n </config>\n <subinterfaces>') + vlan = set_vlan(parameters) + InterfaceInstance_set = InterfaceInstance_set.replace('</config>\n </subinterface>',vlan) + + if "l3ipvlan" in Interface_type: + ip = set_ip(parameters) + InterfaceInstance_set = InterfaceInstance_set.replace('</subinterface>',ip) + + #Generic Replaces + InterfaceInstance_set = InterfaceInstance_set.replace('<openconfig-interfaces xmlns="http://openconfig.net/yang/interfaces">',"") + InterfaceInstance_set = InterfaceInstance_set.replace('<interfaces>','<interfaces xmlns="http://openconfig.net/yang/interfaces">') + InterfaceInstance_set = InterfaceInstance_set.replace('</openconfig-interfaces>','') + + return (InterfaceInstance_set) + +''' diff --git a/src/device/service/drivers/openconfig/templates/VPN/Network_instance_multivendor.py b/src/device/service/drivers/openconfig/templates/VPN/Network_instance_multivendor.py new file mode 100644 index 0000000000000000000000000000000000000000..c4d494ea61a307fbb5a53780f4ab37af2e7091a4 --- /dev/null +++ b/src/device/service/drivers/openconfig/templates/VPN/Network_instance_multivendor.py @@ -0,0 +1,839 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 yattag import Doc, indent + +""" +# Method Name: create_network_instance + +# Parameters: + - NetInstance_name: [str] Variable to set the name of the Network Instance . [Mandatory parameter in all cases]. + - DEL: [bool]Variable that determines if the template will be for creating (DEL = False) or for deleting (DEL = True) a configuration [Mandatory parameter in all cases]. + - NetInstance_type: [str] Variable that sets the type of the Network Instance, it can take the value L2VSI for L2VPN or L3VRF for L3VPN . + - NetInstance_description [int] Variable for adding a description to the Network Instance . + - NetInstance_MTU [str] Variable that sets the value of the MTU for the network instance. [L2VPN] + - NetInstance_Route_disting [str] Variable to set the route distinguisher value . [L3VPN] + +# Functionality: + This method generates the template for creating a Network Instance. This template will be generated for being configured in a device, making use of pyangbind. + To generate the template the following steps are performed: + 1) Checks if the DEL variable is true (Template for deleting a existent Network Instance) or false (Template for creating a new Network Instance). + 2) Create the template correspondent in each case, assigning the correspondent parameters with their value. + 3) Make the correspondent replaces for the unssuported configurations by pyangbind. + +# Return: + [str] The newly generated template according to the specified parameters. +""" +def create_NI(parameters,vendor,DEL): + doc, tag, text = Doc().tagtext() + + with tag('network-instances',xmlns="http://openconfig.net/yang/network-instance"): + if DEL == True: + with tag('network-instance' ,'xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" nc:operation="delete"'): + with tag('name'):text(parameters['name']) + else: + with tag('network-instance'): + with tag('name'):text(parameters['name']) + if "L2VSI" in parameters['type']: + with tag('config'): + with tag('name'):text(parameters['name']) + if vendor == "ADVA": + with tag('type', 'xmlns:oc-ni-types="http://openconfig.net/yang/network-instance-types"'):text('oc-ni-types:',parameters['type']) + with tag('mtu'):text('1500') + if vendor == "ADVA": + with tag('fdb'): + with tag('config'): + with tag('mac-learning') :text('true') + with tag('mac-aging-time') :text('300') + with tag('maximum-entries'):text('1000') + with tag('encapsulation'): + with tag('config'): + with tag('encapsulation-type', 'xmlns:oc-ni-types="http://openconfig.net/yang/network-instance-types"') :text('oc-ni-types:', 'MPLS') + + elif "L3VRF" in parameters['type']: + with tag('config'): + with tag('name'):text(parameters['name']) + if vendor == "ADVA": + with tag('type', 'xmlns:oc-ni-types="http://openconfig.net/yang/network-instance-types"'):text('oc-ni-types:',parameters['type']) + with tag('route-distinguisher'):text(parameters['route_distinguisher']) + if vendor == "ADVA": + with tag('encapsulation'): + with tag('config'): + with tag('encapsulation-type', 'xmlns:oc-ni-types="http://openconfig.net/yang/network-instance-types"') :text('oc-ni-types:MPLS') + with tag('label-allocation-mode','xmlns:oc-ni-types="http://openconfig.net/yang/network-instance-types"'):text('oc-ni-types:INSTANCE_LABEL') + + result = indent( + doc.getvalue(), + indentation = ' '*2, + newline = '\r\n' + ) + return result + +""" +# Method Name: add_protocol_NI [Only for L3-VPN] + +# Parameters: + - NetInstance_name: [str] Variable that specifies the name of Network Instance that is going to be used. + - DEL: [bool]Variable that determines if the template will be for creating (DEL = False) or for deleting (DEL = True) a configuration [Mandatory parameter in all cases]. + - Protocol_name: [str] Variable that sets the type of protocol that is going to be added to the NI. It can be STATIC, DIRECTLY_CONNECTED or BGP. + - Identifier: [str] Variable that sets the identifier of the protocol that will be added to the NI. It can be STATIC, DIRECTLY_CONNECTED or BGP. + - AS: [int] Variable that specifies the AS (Autonomous System) parameter. To be defined only in case the protocol used is BGP + - Router_ID: [int] Variable that specifies the identifier of the router to be configured. To be defined only in case the protocol used is BGP + +# Functionality: + This method generates the template that associates a routing protocol with a Network instance. + This template will be generated for being configured in a device, making use of pyangbind. + To generate the template the following steps are performed: + 1) Checks if the DEL variable is true (Template for deleting a routing policy defined set) or false (Template for creating a routing policy defined set). + 2) Create the template correspondent in each case, assigning the correspondent parameters with their value. + 3) Make the correspondent replaces for the unssuported configurations by pyangbind. + +# Return: + [str] The newly generated template according to the specified parameters. +""" +def add_protocol_NI(parameters,vendor, DEL): + doc, tag, text = Doc().tagtext() + + with tag('network-instances',xmlns="http://openconfig.net/yang/network-instance"): + if DEL == True: + with tag('network-instance'): + with tag('name'):text(parameters['name']) + with tag('protocols'): + with tag('protocol','xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" nc:operation="delete"'): + with tag('identifier', 'xmlns:oc-pol-types="http://openconfig.net/yang/policy-types"'):text('oc-pol-types:',parameters['identifier']) + with tag('name') :text(parameters['protocol_name']) + else: + with tag('network-instance'): + with tag('name'):text(parameters['name']) + with tag('protocols'): + with tag('protocol'): + with tag('identifier', 'xmlns:oc-pol-types="http://openconfig.net/yang/policy-types"'):text('oc-pol-types:',parameters['identifier']) + with tag('name') :text(parameters['protocol_name']) + with tag('config'): + with tag('identifier', 'xmlns:oc-pol-types="http://openconfig.net/yang/policy-types"'):text('oc-pol-types:',parameters['identifier']) + with tag('name') :text(parameters['protocol_name']) + if "BGP" in parameters['identifier']: + with tag('bgp'): + with tag('global'): + with tag('config'): + with tag('as') :text(parameters['as']) + if "router-id" in parameters: + with tag('router-id'):text(parameters['router-id']) + if vendor == "ADVA": + with tag('tables'): + with tag('table'): + with tag('protocol', 'xmlns:oc-pol-types="http://openconfig.net/yang/policy-types"'):text('oc-pol-types:',parameters['identifier']) + with tag('address-family', 'xmlns:oc-types="http://openconfig.net/yang/openconfig-types"'):text('oc-types:IPV4') + with tag('config'): + with tag('protocol', 'xmlns:oc-pol-types="http://openconfig.net/yang/policy-types"'):text('oc-pol-types:',parameters['identifier']) + with tag('address-family', 'xmlns:oc-types="http://openconfig.net/yang/openconfig-types"'):text('oc-types:IPV4') + + result = indent( + doc.getvalue(), + indentation = ' '*2, + newline = '\r\n' + ) + return result + +""" +# Method Name: associate_If_to_NI + +# Parameters: + - NetInstance_name: [str] Variable that specifies the name of Network Instance that is going to be used. + - NetInstance_ID: [str] Variable to set the ID of the Interface that is going to be associated to the Network Instance. + - NetInstance_Interface: [str] Variable that specifies the name of the Interface that is going to be associated to the Network Instance. + - NetInstance_SubInterface: [int] Variable that specifies the index of the subinterface that is going to be associated to the Network Instance. + +# Functionality: + This method generates the template for associating an Interface to an existent Network Instance. This template will be generated for being configured in a device, making use of pyangbind. + To generate the template the following steps are performed: + 1) Create the template correspondent in each case, assigning the correspondent parameters with their value. + 2) Make the correspondent replaces for the unssuported configurations by pyangbind. + +# Return: + [str] The newly generated template according to the specified parameters. +""" +def associate_If_to_NI(parameters, DEL): + doc, tag, text = Doc().tagtext() + + with tag('network-instances',xmlns="http://openconfig.net/yang/network-instance"): + if DEL == True: + with tag('network-instance'): + with tag('name'):text(parameters['name']) + with tag('interfaces'): + with tag('interface','xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" nc:operation="delete"'): + with tag('id'):text(parameters['id']) + else: + with tag('network-instance'): + with tag('name'):text(parameters['name']) + with tag('interfaces'): + with tag('interface'): + with tag('id'):text(parameters['id']) + with tag('config'): + with tag('id') :text(parameters['id']) + with tag('interface') :text(parameters['interface']) + with tag('subinterface'):text(parameters['subinterface']) + + result = indent( + doc.getvalue(), + indentation = ' '*2, + newline = '\r\n' + ) + return result + +""" +# Method Name: associate_virtual_circuit [Only for L2-VPN] + +# Parameters: + - NetInstance_name: [str] Variable that specifies the name of Network Instance that is going to be used. + - ConnectionPoint_ID: [str] Variable that defines the Identifier of the Connection Point of within the Network Instance . + - VirtualCircuit_ID: [int] Variable that sets the Identifier of the Virtual Circuit (VC_ID). + - RemoteSystem: [str] Variable to specify the remote system (device) in which the virtual circuit is created. It should be an IP address. + +# Functionality: + This method will generate the template to associate a virtual circuit, used for L2VPN, with a Network Instance. + This template will be generated for being configured in a device, making use of pyangbind. + To generate the template the following steps are performed: + 1) Checks if the DEL variable is true (Template for deleting a Virtual Circuit from the NI) or false (Template for associating a Virtual Circuit to the NI). + 2) Create the template correspondent in each case, assigning the correspondent parameters with their value. + 3) Make the correspondent replaces for the unssuported configurations by pyangbind. + +# Return: + [str] The newly generated template according to the specified parameters. +""" +def associate_virtual_circuit(parameters): + + doc, tag, text = Doc().tagtext() + + with tag('network-instances',xmlns="http://openconfig.net/yang/network-instance"): + with tag('network-instance'): + with tag('name'):text(parameters['name']) + with tag('connection-points'): + with tag('connection-point'): + with tag('connection-point-id'):text(parameters['connection_point']) + with tag('config'): + with tag('connection-point-id'):text(parameters['connection_point']) + with tag('endpoints'): + with tag('endpoint'): + with tag('endpoint-id'):text(parameters['connection_point']) + with tag('config'): + with tag('endpoint-id'):text(parameters['connection_point']) + with tag('precedence'):text('1') + with tag('type', 'xmlns:oc-ni-types="http://openconfig.net/yang/network-instance-types"'):text('oc-ni-types:REMOTE') + with tag('remote'): + with tag('config'): + with tag('virtual-circuit-identifier'):text(parameters['VC_ID']) + with tag('remote-system'):text(parameters['remote_system']) + + result = indent( + doc.getvalue(), + indentation = ' '*2, + newline = '\r\n' + ) + return result + +""" +# Method Name: associate_RP_to_NI [Only for L3-VPN] + +# Parameters: + - NetInstance_name: [str] Variable that specifies the name of Network Instance that is going to be used. + - Import_policy: [str] Variable that specifies the name of the Import Routing Policy to be set. + - Export_policy: [str] Variable that specifies the name of the Export Routing Policy to be set. + +# Functionality: + This method generates the template to associate a Routing Policy (Import or Export) to an existent Network Instance. + This template will be generated for being configured in a device, making use of pyangbind. + To generate the template the following steps are performed: + 1) Checks if the DEL variable is true (Template for deleting a RP from a Network Instance) or false (Template for associating a RP to a Network Instance). + 2) Create the template correspondent in each case, assigning the correspondent parameters with their value. + 3) Make the correspondent replaces for the unssuported configurations by pyangbind. + +# Return: + [str] The newly generated template according to the specified parameters. +""" +def associate_RP_to_NI(parameters): + doc, tag, text = Doc().tagtext() + with tag('network-instances',xmlns="http://openconfig.net/yang/network-instance"): + with tag('network-instance'): + with tag('name'):text(parameters['name']) + with tag('inter-instance-policies'): + with tag('apply-policy'): + with tag('config'): + if'import_policy' in parameters : + with tag('import-policy'):text(parameters['import_policy']) + elif 'export_policy' in parameters: + with tag('export-policy'):text(parameters['export_policy']) + result = indent( + doc.getvalue(), + indentation = ' '*2, + newline = '\r\n' + ) + return result + +""" +# Method Name: create_table_conns [Only for L3-VPN] + +# Parameters: + - NetInstance_name: [str] Variable that specifies the name of Network Instance that is going to be used. + - DEL: [bool] Variable that determines if the template will be for creating (DEL = False) or for deleting (DEL = True) a configuration [Mandatory parameter in all cases]. + - SourceProtocol: [str] Variable to specify the protocol used in the Source for the table connection. + - DestProtocol [str] Variable to specify the protocol used in the Destination for the table connection.. + - AddrFamily [str] Variable to specify the Address Family that is going to be used for the table connection. It can take the value 'IPV4'or 'IPV6' + - Def_ImportPolicy [str] Variable to specify a Routing Policy, that will be used as Default for the table connections. + +# Functionality: + This method generates the template for creating (or deleting) a table connection. + This template will be generated for being configured in a device, making use of pyangbind. + To generate the template the following steps are performed: + 1) Checks if the DEL variable is true (Template for deleting a table connection) or false (Template for creating a table connection). + 2) Create the template correspondent in each case, assigning the correspondent parameters with their value. + 3) Make the correspondent replaces for the unssuported configurations by pyangbind. + +# Return: + [str] The newly generated template according to the specified parameters. +""" +def create_table_conns(parameters,DEL): + + doc, tag, text = Doc().tagtext() + + with tag('network-instances',xmlns="http://openconfig.net/yang/network-instance"): + with tag('network-instance'): + with tag('name'):text(parameters['name']) + if DEL == True: + with tag('table-connections'): + with tag('table-connection','xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" nc:operation="delete"'): + with tag('src-protocol','xmlns:oc-pol-types="http://openconfig.net/yang/policy-types"'): text('oc-pol-types:',parameters['src_protocol']) + with tag('dst-protocol','xmlns:oc-pol-types="http://openconfig.net/yang/policy-types"'): text('oc-pol-types:',parameters['dst_protocol']) + with tag('address-family', 'xmlns:oc-types="http://openconfig.net/yang/openconfig-types"'):text('oc-types:',parameters['dst_protocol']) + else: + with tag('table-connections'): + with tag('table-connection'): + with tag('src-protocol','xmlns:oc-pol-types="http://openconfig.net/yang/policy-types"'): text('oc-pol-types:',parameters['src_protocol']) + with tag('dst-protocol','xmlns:oc-pol-types="http://openconfig.net/yang/policy-types"'): text('oc-pol-types:',parameters['dst_protocol']) + with tag('address-family', 'xmlns:oc-types="http://openconfig.net/yang/openconfig-types"'):text('oc-types:',parameters['address_family']) + with tag('config'): + with tag('src-protocol','xmlns:oc-pol-types="http://openconfig.net/yang/policy-types"'): text('oc-pol-types:',parameters['src_protocol']) + with tag('dst-protocol','xmlns:oc-pol-types="http://openconfig.net/yang/policy-types"'): text('oc-pol-types:',parameters['dst_protocol']) + with tag('address-family', 'xmlns:oc-types="http://openconfig.net/yang/openconfig-types"'):text('oc-types:',parameters['address_family']) + if len(parameters['default_import_policy']) != 0: + with tag('default-import-policy'):text(parameters['default_import_policy']) + result = indent( + doc.getvalue(), + indentation = ' '*2, + newline = '\r\n' + ) + return result + +#TESTING +''' +parameters1 = {'name' : 'TEST DE VPN', + 'description ': 'Test VPN ', + 'type' : 'L3VRF', + 'route_distinguisher': '65000:101'} + +parameters2 = {'name' : 'TEST DE VPN', + 'protocol_name' : 'BGP', + 'identifier' : 'BGP', + 'as' : '65000', + 'router-id' :'5.5.5.5'} + +parameters2_1 = {'name' : 'TEST DE VPN', + 'protocol_name' : 'STATIC', + 'identifier' : 'STATIC', + 'as' : '', + 'router-id' :''} +parameters3 = {'name' : 'TEST DE VPN', + 'id' : 'eth-1/0/23.123', + 'interface' : 'eth-1/0/23.123', + 'subinterface' : '0'} + +parameters4 = {'name' : 'TEST DE VPN', + 'connection_point' : 'VC-1', + 'VC_ID' : '100', + 'remote_system' : '5.5.5.1'} + +parameters5a = {'name' : 'TEST DE VPN', + 'import_policy' : 'srv_101_a'} + +parameters5b = {'name' : 'TEST DE VPN', + 'export_policy' : 'srv_101_a'} + +parameters6 = {'name' : 'TEST DE VPN', + 'src_protocol' : 'STATIC', + 'dst_protocol' : 'BGP', + 'address_family' : 'IPV4', + 'default_import_policy':'ACCEPT_ROUTE'} + +operation = False + +#STEP 1 +print('\t\tNetwork Instance - CREATE') +print(create_NI(parameters1,'ADVA',False)) +print('\n') +print('\t\tNetwork Instance - DELETE') +print(create_NI(parameters1,'ADVA',True)) + +#STEP 2 option A +print('\n\n') +print('\t\tProtocol - ADD') +print(add_protocol_NI(parameters2,'ADVA',False)) +print('\n\n') +print('\t\tProtocol - DELETE') +print(add_protocol_NI(parameters2,'ADVA',True)) + +#STEP 2 option B +print('\n\n') +print('\t\tProtocol - ADD') +print(add_protocol_NI(parameters2_1,'ADVA',False)) +print('\n\n') +print('\t\tProtocol - DELETE') +print(add_protocol_NI(parameters2_1,'ADVA',True)) + +#STEP 3 +print('\n\n') +print('\t\tInterface - ADD') +print(associate_If_to_NI(parameters3,False)) +print('\n\n') +print('\t\tInterface - DELETE') +print(associate_If_to_NI(parameters3,True)) + +#STEP 4 +print('\n\n') +print('\t\tADD Virtual Circuit') +print(associate_virtual_circuit(parameters4)) + +#STEP 5 option A +print('\n\n') +print('\t\tAssociate RP to NI') +print(associate_RP_to_NI(parameters5a)) + +#STEP 5 option B +print('\n\n') +print('\t\tAssociate RP to NI') +print(associate_RP_to_NI(parameters5b)) + +#STEP 6 +print('\n\n') +print('\t\tTables Connections - ADD') +print(create_table_conns(parameters6,False)) +print('\n\n') +print('\t\tTables Connections - DELETE') +print(create_table_conns(parameters6,True)) +''' + + +''' +from .openconfig_network_instance import openconfig_network_instance +from pyangbind.lib.serialise import pybindIETFXMLEncoder + +""" +# Method Name: create_network_instance + +# Parameters: + - NetInstance_name: [str] Variable to set the name of the Network Instance . [Mandatory parameter in all cases]. + - DEL: [bool]Variable that determines if the template will be for creating (DEL = False) or for deleting (DEL = True) a configuration [Mandatory parameter in all cases]. + - NetInstance_type: [str] Variable that sets the type of the Network Instance, it can take the value L2VSI for L2VPN or L3VRF for L3VPN . + - NetInstance_description [int] Variable for adding a description to the Network Instance . + - NetInstance_MTU [str] Variable that sets the value of the MTU for the network instance. [L2VPN] + - NetInstance_Route_disting [str] Variable to set the route distinguisher value . [L3VPN] + +# Functionality: + This method generates the template for creating a Network Instance. This template will be generated for being configured in a device, making use of pyangbind. + To generate the template the following steps are performed: + 1) Checks if the DEL variable is true (Template for deleting a existent Network Instance) or false (Template for creating a new Network Instance). + 2) Create the template correspondent in each case, assigning the correspondent parameters with their value. + 3) Make the correspondent replaces for the unssuported configurations by pyangbind. + +# Return: + [str] The newly generated template according to the specified parameters. +""" +def create_network_instance(parameters,vendor): #[L2/L3] Creates a Network Instance as described in: /network_instance[{:s}] + NetInstance_name = parameters['name'] #Retrieves the Name parameter of the NetInstance + DEL = parameters['DEL'] #If the parameter DEL is set to "TRUE" that will mean that is for making a DELETE, ELSE is for creating + verify = str(parameters) #Verify transforms the received parameters into a string format for later making verifications and modifications + + #Create an instance of the YANG model + Network_Instance = openconfig_network_instance() + + if DEL == True: #DELETE OPERATION + #Access the entry container + NetInstance_set = Network_Instance.network_instances.network_instance.add(name = NetInstance_name) + + #Dump the entire instance as RFC 750 XML + NetInstance_set = pybindIETFXMLEncoder.serialise(Network_Instance) + #Generic Replaces + NetInstance_set = NetInstance_set.replace('<openconfig-network-instance xmlns="http://openconfig.net/yang/network-instance">',"") + NetInstance_set = NetInstance_set.replace('<network-instances>','<network-instances xmlns="http://openconfig.net/yang/network-instance">') + NetInstance_set = NetInstance_set.replace('<network-instance>','<network-instance xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" nc:operation="delete">') + NetInstance_set = NetInstance_set.replace('</openconfig-network-instance>','') + + else: #MERGE OPERATION + NetInstance_type = parameters['type'] #Retrieves the Type parameter of the NetInstance + + #Access the entry container + NetInstance_set = Network_Instance.network_instances.network_instance.add(name = NetInstance_name) + NetInstance_set.config.name = NetInstance_name + if vendor == 'ADVA': NetInstance_set.config.type = NetInstance_type + NetInstance_encapsulation = NetInstance_set.encapsulation.config + + #If the description parameter is defined [OPTIONAL-PARAMETER] + if verify.find('description')>0: + NetInstance_description = parameters['description'] + if len(NetInstance_description) != 0: NetInstance_set.config.description = NetInstance_description #If description parameter has a value + + #Configuration for L2VSI + if "L2VSI" in NetInstance_type: + if verify.find('mtu')>0: #If the MTU parameter is defined with a value + NetInstance_MTU = parameters['mtu'] + else: + NetInstance_MTU = 1500 #Fixed value of MTU parameter [Obligatory for L2VSI] + #Encapsulation + NetInstance_encapsulation.encapsulation_type = "MPLS" + #fdb + NetInstance_fdb = NetInstance_set.fdb.config + NetInstance_fdb.mac_learning = True + NetInstance_fdb.maximum_entries = 1000 + NetInstance_fdb.mac_aging_time = 300 + #Dump the entire instance as RFC 750 XML + NetInstance_set = pybindIETFXMLEncoder.serialise(Network_Instance) + #Specific Replace [Addition of the enabled and MTU variables] + NetInstance_set = NetInstance_set.replace('</type>','</type>\n <mtu>'+str(NetInstance_MTU)+'</mtu>\n <enabled>true</enabled>') + + #Configuration for L3VRF + elif "L3VRF" in NetInstance_type: + NetInstance_Route_disting = parameters['route_distinguisher'] #Retrieves the Route-Distinguisher parameter [Obligatory for L3VRF] + NetInstance_set.config.route_distinguisher = NetInstance_Route_disting + + #If the router-id parameter is defined [OPTIONAL-PARAMETER] + #if verify.find('router_id')>0: + #NetInstance_Router_ID = parameters['router_id'] + #if len(NetInstance_Router_ID) != 0: NetInstance_set.config.router_id = NetInstance_Router_ID #If router-id parameter has a value + + #Encapsulation + if vendor == 'ADVA': + NetInstance_encapsulation.encapsulation_type = "MPLS" + NetInstance_encapsulation.label_allocation_mode = "INSTANCE_LABEL" + #Dump the entire instance as RFC 750 XML + NetInstance_set = pybindIETFXMLEncoder.serialise(Network_Instance) + #Specific Replace [Addition of the enabled] + NetInstance_set = NetInstance_set.replace('</route-distinguisher>','</route-distinguisher>\n <enabled>true</enabled>') + + #Generic Replaces + NetInstance_set = NetInstance_set.replace('<openconfig-network-instance xmlns="http://openconfig.net/yang/network-instance">',"") + NetInstance_set = NetInstance_set.replace('<network-instances>','<network-instances xmlns="http://openconfig.net/yang/network-instance">') + NetInstance_set = NetInstance_set.replace('</openconfig-network-instance>','') + + return (NetInstance_set) + +""" +# Method Name: associate_If_to_NI + +# Parameters: + - NetInstance_name: [str] Variable that specifies the name of Network Instance that is going to be used. + - NetInstance_ID: [str] Variable to set the ID of the Interface that is going to be associated to the Network Instance. + - NetInstance_Interface: [str] Variable that specifies the name of the Interface that is going to be associated to the Network Instance. + - NetInstance_SubInterface: [int] Variable that specifies the index of the subinterface that is going to be associated to the Network Instance. + +# Functionality: + This method generates the template for associating an Interface to an existent Network Instance. This template will be generated for being configured in a device, making use of pyangbind. + To generate the template the following steps are performed: + 1) Create the template correspondent in each case, assigning the correspondent parameters with their value. + 2) Make the correspondent replaces for the unssuported configurations by pyangbind. + +# Return: + [str] The newly generated template according to the specified parameters. +""" +def associate_If_to_NI(parameters): #[L2/L3] Associates an Interface to a Network Instance as described in: /network_instance[{:s}]/interface[{:s}] + NetInstance_name = parameters['name'] + NetInstance_ID = parameters['id'] + NetInstance_Interface = parameters['interface'] + NetInstance_SubInterface = parameters['subinterface'] + + #Create an instance of the YANG model + Network_Instance = openconfig_network_instance() + + #Access the entry container + NetInstance_set = Network_Instance.network_instances.network_instance.add(name = NetInstance_name) + NetInstance_interface = NetInstance_set.interfaces.interface.add(id = NetInstance_ID) + NetInstance_interface.config.id = NetInstance_ID + NetInstance_interface.config.interface = NetInstance_Interface + NetInstance_interface.config.subinterface = NetInstance_SubInterface + + #Dump the entire instance as RFC 750 XML + NetInstance_set = pybindIETFXMLEncoder.serialise(Network_Instance) + #Generic Replaces + NetInstance_set = NetInstance_set.replace('<openconfig-network-instance xmlns="http://openconfig.net/yang/network-instance">',"") + NetInstance_set = NetInstance_set.replace('<network-instances>','<network-instances xmlns="http://openconfig.net/yang/network-instance">') + NetInstance_set = NetInstance_set.replace('</openconfig-network-instance>','') + return (NetInstance_set) + +""" +# Method Name: add_protocol_NI [Only for L3-VPN] + +# Parameters: + - NetInstance_name: [str] Variable that specifies the name of Network Instance that is going to be used. + - DEL: [bool]Variable that determines if the template will be for creating (DEL = False) or for deleting (DEL = True) a configuration [Mandatory parameter in all cases]. + - Protocol_name: [str] Variable that sets the type of protocol that is going to be added to the NI. It can be STATIC, DIRECTLY_CONNECTED or BGP. + - Identifier: [str] Variable that sets the identifier of the protocol that will be added to the NI. It can be STATIC, DIRECTLY_CONNECTED or BGP. + - AS: [int] Variable that specifies the AS (Autonomous System) parameter. To be defined only in case the protocol used is BGP + - Router_ID: [int] Variable that specifies the identifier of the router to be configured. To be defined only in case the protocol used is BGP + +# Functionality: + This method generates the template that associates a routing protocol with a Network instance. + This template will be generated for being configured in a device, making use of pyangbind. + To generate the template the following steps are performed: + 1) Checks if the DEL variable is true (Template for deleting a routing policy defined set) or false (Template for creating a routing policy defined set). + 2) Create the template correspondent in each case, assigning the correspondent parameters with their value. + 3) Make the correspondent replaces for the unssuported configurations by pyangbind. + +# Return: + [str] The newly generated template according to the specified parameters. +""" +def add_protocol_NI(parameters): #[L3] Adds a Protocol to a Network Instance as described in: /network_instance[{:s}]/protocols + NetInstance_name = parameters['name'] + Protocol_name = parameters['protocol_name'] #Protocol can be [STATIC], [DIRECTLY_CONNECTED] or [BGP] + Identifier = parameters['identifier'] #Identifier can be [STATIC], [DIRECTLY_CONNECTED] or [BGP] + DEL = parameters['DEL'] #If the parameter DEL is set to "TRUE" that will mean that is for making a DELETE, ELSE is for creating + + if DEL == True: #DELETE OPERATION + #Create an instance of the YANG model + Network_Instance = openconfig_network_instance() + + #Access the entry container + NetInstance_set = Network_Instance.network_instances.network_instance.add(name = NetInstance_name) + NetInstance_protocol = NetInstance_set.protocols.protocol.add(name = Protocol_name, identifier = Identifier) + + #Dump the entire instance as RFC 750 XML + NetInstance_set = pybindIETFXMLEncoder.serialise(Network_Instance) + #Delete Replace + NetInstance_set = NetInstance_set.replace('<protocol>','<protocol xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" nc:operation="delete">') + #Generic Replaces + NetInstance_set = NetInstance_set.replace('<openconfig-network-instance xmlns="http://openconfig.net/yang/network-instance">',"") + NetInstance_set = NetInstance_set.replace('<network-instances>','<network-instances xmlns="http://openconfig.net/yang/network-instance">') + NetInstance_set = NetInstance_set.replace('</openconfig-network-instance>','') + + else: #MERGE OPERATION + #Create an instance of the YANG model + Network_Instance = openconfig_network_instance() + + #Access the entry container + NetInstance_set = Network_Instance.network_instances.network_instance.add(name = NetInstance_name) + NetInstance_protocol = NetInstance_set.protocols.protocol.add(name = Protocol_name, identifier = Identifier) + NetInstance_protocol.config.name = Protocol_name + NetInstance_protocol.config.identifier = Identifier + if Identifier in 'BGP': + AS = parameters['as'] + Router_ID = parameters['router_id'] + + NetInstance_protocol.bgp.global_.config.as_=AS + NetInstance_protocol.bgp.global_.config.router_id=Router_ID + + #Configuration of Table + NetInstance_tables = NetInstance_set.tables.table.add(protocol = Protocol_name, address_family = "IPV4") #What about IPV6? + NetInstance_tables.config.protocol = Protocol_name + NetInstance_tables.config.address_family = "IPV4" + + #Dump the entire instance as RFC 750 XML + NetInstance_set = pybindIETFXMLEncoder.serialise(Network_Instance) + # Specific Replaces + NetInstance_set = NetInstance_set.replace('<table>\n <protocol>'+Identifier+'</protocol>','<table> \n\t <protocol xmlns:oc-pol-types="http://openconfig.net/yang/policy-types">oc-pol-types:'+Identifier+'</protocol>') + NetInstance_set = NetInstance_set.replace('<config>\n <protocol>'+Identifier+'</protocol>','<config> \n\t <protocol xmlns:oc-pol-types="http://openconfig.net/yang/policy-types">oc-pol-types:'+Identifier+'</protocol>') + NetInstance_set = NetInstance_set.replace('<address-family>IPV4</address-family>','<address-family xmlns:oc-types="http://openconfig.net/yang/openconfig-types">oc-types:'+"IPV4"+'</address-family>') + NetInstance_set = NetInstance_set.replace('<identifier>'+Identifier+'</identifier>','<identifier xmlns:oc-pol-types="http://openconfig.net/yang/policy-types">oc-pol-types:'+Identifier+'</identifier>') + #Generic Replaces + NetInstance_set = NetInstance_set.replace('<openconfig-network-instance xmlns="http://openconfig.net/yang/network-instance">',"") + NetInstance_set = NetInstance_set.replace('<network-instances>','<network-instances xmlns="http://openconfig.net/yang/network-instance">') + NetInstance_set = NetInstance_set.replace('</openconfig-network-instance>','') + + return (NetInstance_set) + +""" +# Method Name: associate_virtual_circuit [Only for L2-VPN] + +# Parameters: + - NetInstance_name: [str] Variable that specifies the name of Network Instance that is going to be used. + - ConnectionPoint_ID: [str] Variable that defines the Identifier of the Connection Point of within the Network Instance . + - VirtualCircuit_ID: [int] Variable that sets the Identifier of the Virtual Circuit (VC_ID). + - RemoteSystem: [str] Variable to specify the remote system (device) in which the virtual circuit is created. It should be an IP address. + +# Functionality: + This method will generate the template to associate a virtual circuit, used for L2VPN, with a Network Instance. + This template will be generated for being configured in a device, making use of pyangbind. + To generate the template the following steps are performed: + 1) Checks if the DEL variable is true (Template for deleting a Virtual Circuit from the NI) or false (Template for associating a Virtual Circuit to the NI). + 2) Create the template correspondent in each case, assigning the correspondent parameters with their value. + 3) Make the correspondent replaces for the unssuported configurations by pyangbind. + +# Return: + [str] The newly generated template according to the specified parameters. +""" +def associate_virtual_circuit(parameters): #[L2] Associates a Virtual Circuit as described in: /network_instance[{:s}]/connection_point[VC-1] + NetInstance_name = parameters['name'] + ConnectionPoint_ID = parameters['connection_point'] + VirtualCircuit_ID = parameters['VC_ID'] + RemoteSystem = parameters['remote_system'] + + #Create an instance of the YANG model + Network_Instance = openconfig_network_instance() + + #Access the entry container + NetInstance_set = Network_Instance.network_instances.network_instance.add(name = NetInstance_name) + ConnectionPoint_set = NetInstance_set.connection_points.connection_point.add(connection_point_id = ConnectionPoint_ID) + ConnectionPoint_set.config.connection_point_id = ConnectionPoint_ID + Endpoint_set = ConnectionPoint_set.endpoints.endpoint.add(endpoint_id = ConnectionPoint_ID) + Endpoint_set.config.endpoint_id = ConnectionPoint_ID + Endpoint_set.config.precedence = 1 + Endpoint_set.config.type = "REMOTE" + Endpoint_set.remote.config.remote_system = RemoteSystem + Endpoint_set.remote.config.virtual_circuit_identifier = VirtualCircuit_ID + + #Dump the entire instance as RFC 750 XML + NetInstance_set = pybindIETFXMLEncoder.serialise(Network_Instance) + NetInstance_set = NetInstance_set.replace('<openconfig-network-instance xmlns="http://openconfig.net/yang/network-instance">',"") + NetInstance_set = NetInstance_set.replace('<network-instances>','<network-instances xmlns="http://openconfig.net/yang/network-instance">') + NetInstance_set = NetInstance_set.replace('</openconfig-network-instance>','') + return (NetInstance_set) + +""" +# Method Name: associate_RP_to_NI [Only for L3-VPN] + +# Parameters: + - NetInstance_name: [str] Variable that specifies the name of Network Instance that is going to be used. + - Import_policy: [str] Variable that specifies the name of the Import Routing Policy to be set. + - Export_policy: [str] Variable that specifies the name of the Export Routing Policy to be set. + +# Functionality: + This method generates the template to associate a Routing Policy (Import or Export) to an existent Network Instance. + This template will be generated for being configured in a device, making use of pyangbind. + To generate the template the following steps are performed: + 1) Checks if the DEL variable is true (Template for deleting a RP from a Network Instance) or false (Template for associating a RP to a Network Instance). + 2) Create the template correspondent in each case, assigning the correspondent parameters with their value. + 3) Make the correspondent replaces for the unssuported configurations by pyangbind. + +# Return: + [str] The newly generated template according to the specified parameters. +""" +def associate_RP_to_NI(parameters): #[L3] Associates a Routing Policy to a Network Instance as described in: /network_instance[{:s}]/inter_instance_policies[{:s}] + NetInstance_name = parameters['name'] + verify = str(parameters) #Verify transforms the received parameters into a string format for later making verifications and modifications + + #Create an instance of the YANG model + Network_Instance = openconfig_network_instance() + + #Access the entry container + NetInstance_set = Network_Instance.network_instances.network_instance.add(name = NetInstance_name) + Inter_instance = NetInstance_set.inter_instance_policies.apply_policy.config + + #If a Import policy is defined + if verify.find('import_policy')>0: + Import = parameters['import_policy'] + if len(Import) != 0: Inter_instance.import_policy = Import #If the import_policy parameter has a value + + #If a Export Policy is defined + if verify.find('export_policy')>0: + Export = parameters['export_policy'] + if len(Export) != 0: Inter_instance.export_policy = Export #If the export_policy parameter has a value + + #Dump the entire instance as RFC 750 XML + NetInstance_set = pybindIETFXMLEncoder.serialise(Network_Instance) + #Generic Replaces + NetInstance_set = NetInstance_set.replace('<openconfig-network-instance xmlns="http://openconfig.net/yang/network-instance">',"") + NetInstance_set = NetInstance_set.replace('<network-instances>','<network-instances xmlns="http://openconfig.net/yang/network-instance">') + NetInstance_set = NetInstance_set.replace('</openconfig-network-instance>','') + return (NetInstance_set) + +""" +# Method Name: create_table_conns [Only for L3-VPN] + +# Parameters: + - NetInstance_name: [str] Variable that specifies the name of Network Instance that is going to be used. + - DEL: [bool] Variable that determines if the template will be for creating (DEL = False) or for deleting (DEL = True) a configuration [Mandatory parameter in all cases]. + - SourceProtocol: [str] Variable to specify the protocol used in the Source for the table connection. + - DestProtocol [str] Variable to specify the protocol used in the Destination for the table connection.. + - AddrFamily [str] Variable to specify the Address Family that is going to be used for the table connection. It can take the value 'IPV4'or 'IPV6' + - Def_ImportPolicy [str] Variable to specify a Routing Policy, that will be used as Default for the table connections. + +# Functionality: + This method generates the template for creating (or deleting) a table connection. + This template will be generated for being configured in a device, making use of pyangbind. + To generate the template the following steps are performed: + 1) Checks if the DEL variable is true (Template for deleting a table connection) or false (Template for creating a table connection). + 2) Create the template correspondent in each case, assigning the correspondent parameters with their value. + 3) Make the correspondent replaces for the unssuported configurations by pyangbind. + +# Return: + [str] The newly generated template according to the specified parameters. +""" +def create_table_conns(parameters): #[L3] Creates Table Connections as described in: /network_instance[{:s}]/table_connections + NetInstance_name = parameters['name'] + SourceProtocol = parameters['src_protocol'] + DestProtocol = parameters['dst_protocol'] + AddrFamily = parameters['address_family'] + DEL = parameters['DEL'] #If the parameter DEL is set to "TRUE" that will mean that is for making a DELETE, ELSE is for creating + + #Create an instance of the YANG model + Network_Instance = openconfig_network_instance() + + if DEL == True: #DELETE OPERATION + #Access the entry container + NetInstance_set = Network_Instance.network_instances.network_instance.add(name = NetInstance_name) + + #Configuration of Table-Connections + Set_TableConns = NetInstance_set.table_connections.table_connection.add(src_protocol = SourceProtocol, dst_protocol = DestProtocol, address_family = AddrFamily) + + #Dump the entire instance as RFC 750 XML + NetInstance_set = pybindIETFXMLEncoder.serialise(Network_Instance) + + #Specific Replaces + NetInstance_set = NetInstance_set.replace('<src-protocol>'+SourceProtocol+'</src-protocol>','<src-protocol xmlns:oc-pol-types="http://openconfig.net/yang/policy-types">oc-pol-types:'+SourceProtocol+'</src-protocol>') + NetInstance_set = NetInstance_set.replace('<dst-protocol>'+DestProtocol+'</dst-protocol>','<dst-protocol xmlns:oc-pol-types="http://openconfig.net/yang/policy-types">oc-pol-types:'+DestProtocol+'</dst-protocol>') + NetInstance_set = NetInstance_set.replace('<address-family>'+AddrFamily+'</address-family>','<address-family xmlns:oc-types="http://openconfig.net/yang/openconfig-types">oc-types:'+AddrFamily+'</address-family>') + #Generic Replaces + NetInstance_set = NetInstance_set.replace('<openconfig-network-instance xmlns="http://openconfig.net/yang/network-instance">',"") + NetInstance_set = NetInstance_set.replace('<network-instances>','<network-instances xmlns="http://openconfig.net/yang/network-instance">') + NetInstance_set = NetInstance_set.replace('<table-connection>','<table-connection xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" nc:operation="delete">') + NetInstance_set = NetInstance_set.replace('</openconfig-network-instance>','') + + else: #MERGE OPERATION + verify = str(parameters) #Verify transforms the received parameters into a string format for later making verifications and modifications + + #Access the entry container + NetInstance_set = Network_Instance.network_instances.network_instance.add(name = NetInstance_name) + + #Configuration of Table-Connections + Set_TableConns = NetInstance_set.table_connections.table_connection.add(src_protocol = "", dst_protocol = "", address_family = "") + + Set_TableConns.config.src_protocol = "" + Set_TableConns.config.dst_protocol = "" + Set_TableConns.config.address_family = "" + + # Default Import Policy (If is defined) + if verify.find('default_import_policy')>0: + Def_ImportPolicy = parameters['default_import_policy'] + if len(Def_ImportPolicy) != 0: Set_TableConns.config.default_import_policy = Def_ImportPolicy #If the default_import_policy parameter has a value + + #Dump the entire instance as RFC 750 XML + NetInstance_set = pybindIETFXMLEncoder.serialise(Network_Instance) + + #Specific Replaces + NetInstance_set = NetInstance_set.replace('<src-protocol></src-protocol>','<src-protocol xmlns:oc-pol-types="http://openconfig.net/yang/policy-types">oc-pol-types:'+SourceProtocol+'</src-protocol>') + NetInstance_set = NetInstance_set.replace('<dst-protocol></dst-protocol>','<dst-protocol xmlns:oc-pol-types="http://openconfig.net/yang/policy-types">oc-pol-types:'+DestProtocol+'</dst-protocol>') + NetInstance_set = NetInstance_set.replace('<address-family></address-family>','<address-family xmlns:oc-types="http://openconfig.net/yang/openconfig-types">oc-types:'+AddrFamily+'</address-family>') + #Generic Replaces + NetInstance_set = NetInstance_set.replace('<openconfig-network-instance xmlns="http://openconfig.net/yang/network-instance">',"") + NetInstance_set = NetInstance_set.replace('<network-instances>','<network-instances xmlns="http://openconfig.net/yang/network-instance">') + NetInstance_set = NetInstance_set.replace('</openconfig-network-instance>','') + + return (NetInstance_set) +''' \ No newline at end of file diff --git a/src/device/service/drivers/openconfig/templates/VPN/Routing_policy.py b/src/device/service/drivers/openconfig/templates/VPN/Routing_policy.py new file mode 100644 index 0000000000000000000000000000000000000000..54e6c1c013fe0b0c84af0483def8dc944b4568a8 --- /dev/null +++ b/src/device/service/drivers/openconfig/templates/VPN/Routing_policy.py @@ -0,0 +1,274 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 yattag import Doc, indent +""" +# Method Name: create_rp_statement + +# Parameters: + - Policy_Name: [str] Variable that determines the name of the Routing Policy [Mandatory parameter in all cases]. + - DEL: [bool] Variable that determines if the template will be for creating (DEL = False) or for deleting (DEL = True) a configuration [Mandatory parameter in all cases]. + - Statement_Name: [str] Variable that determines the name of the Routing Policy Statement, which is a unique statement within the policy [Only mandatory if DEL = False]. + - Policy_Result: [str] Variable to set if the policy is for accepting (ACCEPT ROUTE) or rejecting (REJECT ROUTE). [Only mandatory if DEL = False]. + - ExtCommSetName: [str] Variable to set the name of the extended community set in the context of BGP policy conditions. [Only mandatory if DEL = False]. + +# Functionality: + This method generates the template of a routing policy statement to configure in a device, making use of pyangbind. + To generate the template the following steps are performed: + 1) Checks if the DEL variable is true (Template for deleting a policy statement) or false (Template for creating a policy statement). + 2) Create the template correspondent in each case, assigning the correspondent parameters with their value. + 3) Make the correspondent replaces for the unssuported configurations by pyangbind. + +# Return: + [str] The newly generated template according to the specified parameters. +""" +def create_rp_statement(data, DEL): + doc, tag, text = Doc().tagtext() + + RP_policy_name = data['policy_name'] + RP_statement_name = data['statement_name'] + RP_policy_result = data['policy_result'] + RP_ext_comm_set_name = data['ext_community_set_name'] + + + with tag('routing-policy', xmlns="http://openconfig.net/yang/routing-policy"): + if DEL == True: + with tag('policy-definitions'): + with tag('policy-definition' ,'xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" nc:operation="delete"'): + with tag('name'):text(RP_policy_name) + else: + with tag('policy-definitions'): + with tag('policy-definition'): + with tag('name'):text(RP_policy_name) + with tag('config'): + with tag('name'):text(RP_policy_name) + with tag('statements'): + with tag('statement'): + with tag('name'):text(RP_statement_name) + with tag('config'): + with tag('name'):text(RP_statement_name) + with tag('conditions'): + with tag('config'): + with tag('install-protocol-eq', **{'xmlns:openconfig-policy-types': 'http://openconfig.net/yang/policy-types'}):text('openconfig-policy-types:DIRECTLY_CONNECTED') + with tag('bgp-conditions', xmlns="http://openconfig.net/yang/bgp-policy"): + with tag('config'): + with tag('ext-community-set'):text(RP_ext_comm_set_name) + with tag('actions'): + with tag('config'): + with tag('policy-result'):text(RP_policy_result) + result = indent( + doc.getvalue(), + indentation = ' '*2, + newline = '\r\n' + ) + return result + +""" +# Method Name: create_rp_def + +# Parameters: + - ExtCommSetName: [str] Variable to set the name of the extended community set in the context of BGP policy conditions. [Mandatory parameter in all cases]. + - DEL: [bool] Variable that determines if the template will be for creating (DEL = False) or for deleting (DEL = True) a configuration [Mandatory parameter in all cases]. + - ExtCommMember: [str] Variable that represents an individual member or value within an Extended Community [Only mandatory if DEL = False]. + +# Functionality: + This method generates the template of a routing policy defined sets, which are objects defined and used within a routing policy statement. + This template will be generated for being configured in a device, making use of pyangbind. + To generate the template the following steps are performed: + 1) Checks if the DEL variable is true (Template for deleting a routing policy defined set) or false (Template for creating a routing policy defined set). + 2) Create the template correspondent in each case, assigning the correspondent parameters with their value. + 3) Make the correspondent replaces for the unssuported configurations by pyangbind. + +# Return: + [str] The newly generated template according to the specified parameters. +""" +def create_rp_def(data, DEL): + doc, tag, text = Doc().tagtext() + + RP_ext_comm_set_name = data['ext_community_set_name'] + RP_ext_comm_member = data['ext_community_member'] + + with tag('routing-policy', xmlns="http://openconfig.net/yang/routing-policy"): + if DEL == True: + with tag('defined-sets'): + with tag('bgp-defined-sets', xmlns="http://openconfig.net/yang/bgp-policy"): + with tag('ext-community-sets'): + with tag('ext-community-set' ,'xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" nc:operation="delete"'): + with tag('ext-community-set-name'):text(RP_ext_comm_set_name) + else: + with tag('defined-sets'): + with tag('bgp-defined-sets', xmlns="http://openconfig.net/yang/bgp-policy"): + with tag('ext-community-sets'): + with tag('ext-community-set'): + with tag('ext-community-set-name'):text(RP_ext_comm_set_name) + with tag('config'): + with tag('ext-community-set-name'):text(RP_ext_comm_set_name) + with tag('ext-community-member'):text(RP_ext_comm_member) + result = indent( + doc.getvalue(), + indentation = ' '*2, + newline = '\r\n' + ) + return result + +#TESTING +''' +data_1 = {"ext_community_set_name" : "set_srv_101_a", + "policy_name" : "srv_101_a", + "policy_result" : "ACCEPT_ROUTE", + "statement_name" : "stm_srv_101_a"} + +data_2 = {'ext_community_member' : '65001:101', + 'ext_community_set_name' : 'set_srv_101_a'} + +print('\nRouting Policy Statement - CREATE\n') +print(rp_statement(data_1, False)) +print('\nRouting Policy Statement - DELETE\n') +print(rp_statement(data_1, True)) + +print('\nRouting Policy Defined Set - CREATE\n') +print(rp_defined_set(data_2, False)) +print('\nRouting Policy Defined Set - DELETE\n') +print(rp_defined_set(data_2, True)) +''' + +''' +from .openconfig_routing_policy import openconfig_routing_policy +from pyangbind.lib.serialise import pybindIETFXMLEncoder + +""" +# Method Name: create_rp_statement + +# Parameters: + - Policy_Name: [str] Variable that determines the name of the Routing Policy [Mandatory parameter in all cases]. + - DEL: [bool] Variable that determines if the template will be for creating (DEL = False) or for deleting (DEL = True) a configuration [Mandatory parameter in all cases]. + - Statement_Name: [str] Variable that determines the name of the Routing Policy Statement, which is a unique statement within the policy [Only mandatory if DEL = False]. + - Policy_Result: [str] Variable to set if the policy is for accepting (ACCEPT ROUTE) or rejecting (REJECT ROUTE). [Only mandatory if DEL = False]. + - ExtCommSetName: [str] Variable to set the name of the extended community set in the context of BGP policy conditions. [Only mandatory if DEL = False]. + +# Functionality: + This method generates the template of a routing policy statement to configure in a device, making use of pyangbind. + To generate the template the following steps are performed: + 1) Checks if the DEL variable is true (Template for deleting a policy statement) or false (Template for creating a policy statement). + 2) Create the template correspondent in each case, assigning the correspondent parameters with their value. + 3) Make the correspondent replaces for the unssuported configurations by pyangbind. + +# Return: + [str] The newly generated template according to the specified parameters. +""" +def create_rp_statement(parameters): #[L3] Creates a Routing Policy Statement + Policy_Name = parameters['policy_name'] + DEL = parameters['DEL'] #If the parameter DEL is set to "TRUE" that will mean that is for making a DELETE, ELSE is for creating + + #Create an instance of the YANG model + RoutingPolicy_Instance = openconfig_routing_policy() + + if DEL == True: + #Set the Name of the Routing Policy + Set_RoutingPolicy = RoutingPolicy_Instance.routing_policy.policy_definitions.policy_definition.add(name=Policy_Name) + + #Dump the entire instance as RFC 750 XML + RoutingInstance_set = pybindIETFXMLEncoder.serialise(RoutingPolicy_Instance) + + RoutingInstance_set = RoutingInstance_set.replace('<openconfig-routing-policy xmlns="http://openconfig.net/yang/routing-policy">',"") + RoutingInstance_set = RoutingInstance_set.replace('<routing-policy>','<routing-policy xmlns="http://openconfig.net/yang/routing-policy">') + + #Operation Delete [Replace] + RoutingInstance_set = RoutingInstance_set.replace('<policy-definition>','<policy-definition xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" nc:operation="delete">') + RoutingInstance_set = RoutingInstance_set.replace('</openconfig-routing-policy>','') + + else: + Statement_Name = parameters['statement_name'] + Policy_Result = parameters['policy_result'] + ExtCommSetName = parameters['ext_community_set_name'] + + #Access the entry container + + #Set the Name of the Routing Policy + Set_RoutingPolicy = RoutingPolicy_Instance.routing_policy.policy_definitions.policy_definition.add(name=Policy_Name) + Set_RoutingPolicy.config.name = Policy_Name + + #Configure the Statement of the Routing Policy + Set_Statement_RoutingPolicy = Set_RoutingPolicy.statements.statement.add(name=Statement_Name) + Set_Statement_RoutingPolicy.config.name = Statement_Name + Set_Statement_RoutingPolicy.conditions.config.install_protocol_eq = "DIRECTLY_CONNECTED" + Set_Statement_RoutingPolicy.actions.config.policy_result = Policy_Result + + #Dump the entire instance as RFC 750 XML + RoutingInstance_set = pybindIETFXMLEncoder.serialise(RoutingPolicy_Instance) + + #Policy-Definition - Statements - BGP-Conditions [Replace] + RoutingInstance_set = RoutingInstance_set.replace('</conditions>',' <bgp-conditions xmlns="http://openconfig.net/yang/bgp-policy"> \n\t\t <config> \n\t \ + <ext-community-set>'+ ExtCommSetName +'</ext-community-set> \n\t\t </config> \n\t </bgp-conditions>\n\t </conditions>') + + #Generic Replaces + RoutingInstance_set = RoutingInstance_set.replace('<openconfig-routing-policy xmlns="http://openconfig.net/yang/routing-policy">',"") + RoutingInstance_set = RoutingInstance_set.replace('<routing-policy>','<routing-policy xmlns="http://openconfig.net/yang/routing-policy">') + RoutingInstance_set = RoutingInstance_set.replace('</openconfig-routing-policy>','') + + return (RoutingInstance_set) + +""" +# Method Name: create_rp_def + +# Parameters: + - ExtCommSetName: [str] Variable to set the name of the extended community set in the context of BGP policy conditions. [Mandatory parameter in all cases]. + - DEL: [bool] Variable that determines if the template will be for creating (DEL = False) or for deleting (DEL = True) a configuration [Mandatory parameter in all cases]. + - ExtCommMember: [str] Variable that represents an individual member or value within an Extended Community [Only mandatory if DEL = False]. + +# Functionality: + This method generates the template of a routing policy defined sets, which are objects defined and used within a routing policy statement. + This template will be generated for being configured in a device, making use of pyangbind. + To generate the template the following steps are performed: + 1) Checks if the DEL variable is true (Template for deleting a routing policy defined set) or false (Template for creating a routing policy defined set). + 2) Create the template correspondent in each case, assigning the correspondent parameters with their value. + 3) Make the correspondent replaces for the unssuported configurations by pyangbind. + +# Return: + [str] The newly generated template according to the specified parameters. +""" +def create_rp_def(parameters): #[L3] Creates a Routing Policy - Defined Sets [ '/routing_policy/bgp_defined_set[{:s}_rt_export][{:s}]' ] + ExtCommSetName = parameters['ext_community_set_name'] + DEL = parameters['DEL'] #If the parameter DEL is set to "TRUE" that will mean that is for making a DELETE, ELSE is for creating + + #Create an instance of the YANG model + RoutingPolicy_Instance = openconfig_routing_policy() + + if DEL == True: #Delete operation + #Dump the entire instance as RFC 750 XML + RoutingInstance_set = pybindIETFXMLEncoder.serialise(RoutingPolicy_Instance) + + #BGP-Defined-Sets [Replace] + RoutingInstance_set = RoutingInstance_set.replace('<openconfig-routing-policy xmlns="http://openconfig.net/yang/routing-policy"/>', + '<routing-policy xmlns="http://openconfig.net/yang/routing-policy"> \n <defined-sets> \n <bgp-defined-sets xmlns="http://openconfig.net/yang/bgp-policy">\ + \n\t <ext-community-sets> \n\t <ext-community-set xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" nc:operation="delete"> \n \ + <ext-community-set-name>'+ExtCommSetName+'</ext-community-set-name> \n\t </ext-community-set> \n\t </ext-community-sets> \ + \n </bgp-defined-sets> \n </defined-sets> \n </routing-policy>') + + else: #Merge operation + #Add new requested parameter - ext_community_member + ExtCommMember = parameters['ext_community_member'] + + #Dump the entire instance as RFC 750 XML + RoutingInstance_set = pybindIETFXMLEncoder.serialise(RoutingPolicy_Instance) + + #BGP-Defined-Sets [Replace] + RoutingInstance_set = RoutingInstance_set.replace('<openconfig-routing-policy xmlns="http://openconfig.net/yang/routing-policy"/>', + '<routing-policy xmlns="http://openconfig.net/yang/routing-policy"> \n <defined-sets> \n <bgp-defined-sets xmlns="http://openconfig.net/yang/bgp-policy">\ + \n\t<ext-community-sets> \n\t <ext-community-set> \n\t <ext-community-set-name>'+ExtCommSetName+'</ext-community-set-name> \n\t <config> \ + \n\t\t<ext-community-set-name>'+ ExtCommSetName +'</ext-community-set-name> \n\t\t<ext-community-member>'+ExtCommMember+'</ext-community-member> \n \ + </config> \n\t </ext-community-set> \n\t </ext-community-sets> \n </bgp-defined-sets> \n </defined-sets> \n </routing-policy>') + + return (RoutingInstance_set) +''' diff --git a/src/device/service/drivers/openconfig/templates/VPN/__init__.py b/src/device/service/drivers/openconfig/templates/VPN/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..1549d9811aa5d1c193a44ad45d0d7773236c0612 --- /dev/null +++ b/src/device/service/drivers/openconfig/templates/VPN/__init__.py @@ -0,0 +1,14 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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/device/service/drivers/openconfig/templates/VPN/openconfig_interfaces.py b/src/device/service/drivers/openconfig/templates/VPN/openconfig_interfaces.py new file mode 100644 index 0000000000000000000000000000000000000000..583d164ba7b99ebcc825007fde6bddc6c4928bc5 --- /dev/null +++ b/src/device/service/drivers/openconfig/templates/VPN/openconfig_interfaces.py @@ -0,0 +1,5352 @@ +# -*- coding: utf-8 -*- +from operator import attrgetter +from pyangbind.lib.yangtypes import RestrictedPrecisionDecimalType +from pyangbind.lib.yangtypes import RestrictedClassType +from pyangbind.lib.yangtypes import TypedListType +from pyangbind.lib.yangtypes import YANGBool +from pyangbind.lib.yangtypes import YANGListType +from pyangbind.lib.yangtypes import YANGDynClass +from pyangbind.lib.yangtypes import ReferenceType +from pyangbind.lib.base import PybindBase +from collections import OrderedDict +from decimal import Decimal +from bitarray import bitarray +import six + +# PY3 support of some PY2 keywords (needs improved) +if six.PY3: + import builtins as __builtin__ + long = int +elif six.PY2: + import __builtin__ + +class yc_config_openconfig_interfaces__interfaces_interface_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-interfaces - based on the path /interfaces/interface/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configurable items at the global, physical interface +level + """ + __slots__ = ('_path_helper', '_extmethods', '__name','__type','__mtu','__loopback_mode','__description','__enabled',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/interfaces' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=True) + self.__type = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='identityref', is_config=True) + self.__mtu = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="mtu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint16', is_config=True) + self.__loopback_mode = YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="loopback-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=True) + self.__description = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=True) + self.__enabled = YANGDynClass(base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['interfaces', 'interface', 'config'] + + def _get_name(self): + """ + Getter method for name, mapped from YANG variable /interfaces/interface/config/name (string) + + YANG Description: The name of the interface. + +A device MAY restrict the allowed values for this leaf, +possibly depending on the type of the interface. +For system-controlled interfaces, this leaf is the +device-specific name of the interface. The 'config false' +list interfaces/interface[name]/state contains the currently +existing interfaces on the device. + +If a client tries to create configuration for a +system-controlled interface that is not present in the +corresponding state list, the server MAY reject +the request if the implementation does not support +pre-provisioning of interfaces or if the name refers to +an interface that can never exist in the system. A +NETCONF server MUST reply with an rpc-error with the +error-tag 'invalid-value' in this case. + +The IETF model in RFC 7223 provides YANG features for the +following (i.e., pre-provisioning and arbitrary-names), +however they are omitted here: + + If the device supports pre-provisioning of interface + configuration, the 'pre-provisioning' feature is + advertised. + + If the device allows arbitrarily named user-controlled + interfaces, the 'arbitrary-names' feature is advertised. + +When a configured user-controlled interface is created by +the system, it is instantiated with the same name in the +/interfaces/interface[name]/state list. + """ + return self.__name + + def _set_name(self, v, load=False): + """ + Setter method for name, mapped from YANG variable /interfaces/interface/config/name (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_name() directly. + + YANG Description: The name of the interface. + +A device MAY restrict the allowed values for this leaf, +possibly depending on the type of the interface. +For system-controlled interfaces, this leaf is the +device-specific name of the interface. The 'config false' +list interfaces/interface[name]/state contains the currently +existing interfaces on the device. + +If a client tries to create configuration for a +system-controlled interface that is not present in the +corresponding state list, the server MAY reject +the request if the implementation does not support +pre-provisioning of interfaces or if the name refers to +an interface that can never exist in the system. A +NETCONF server MUST reply with an rpc-error with the +error-tag 'invalid-value' in this case. + +The IETF model in RFC 7223 provides YANG features for the +following (i.e., pre-provisioning and arbitrary-names), +however they are omitted here: + + If the device supports pre-provisioning of interface + configuration, the 'pre-provisioning' feature is + advertised. + + If the device allows arbitrarily named user-controlled + interfaces, the 'arbitrary-names' feature is advertised. + +When a configured user-controlled interface is created by +the system, it is instantiated with the same name in the +/interfaces/interface[name]/state list. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """name must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=True)""", + }) + + self.__name = t + if hasattr(self, '_set'): + self._set() + + def _unset_name(self): + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=True) + + + def _get_type(self): + """ + Getter method for type, mapped from YANG variable /interfaces/interface/config/type (identityref) + + YANG Description: The type of the interface. + +When an interface entry is created, a server MAY +initialize the type leaf with a valid value, e.g., if it +is possible to derive the type from the name of the +interface. + +If a client tries to set the type of an interface to a +value that can never be used by the system, e.g., if the +type is not supported or if the type does not match the +name of the interface, the server MUST reject the request. +A NETCONF server MUST reply with an rpc-error with the +error-tag 'invalid-value' in this case. + """ + return self.__type + + def _set_type(self, v, load=False): + """ + Setter method for type, mapped from YANG variable /interfaces/interface/config/type (identityref) + If this variable is read-only (config: false) in the + source YANG file, then _set_type is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_type() directly. + + YANG Description: The type of the interface. + +When an interface entry is created, a server MAY +initialize the type leaf with a valid value, e.g., if it +is possible to derive the type from the name of the +interface. + +If a client tries to set the type of an interface to a +value that can never be used by the system, e.g., if the +type is not supported or if the type does not match the +name of the interface, the server MUST reject the request. +A NETCONF server MUST reply with an rpc-error with the +error-tag 'invalid-value' in this case. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='identityref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """type must be of a type compatible with identityref""", + 'defined-type': "openconfig-interfaces:identityref", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='identityref', is_config=True)""", + }) + + self.__type = t + if hasattr(self, '_set'): + self._set() + + def _unset_type(self): + self.__type = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='identityref', is_config=True) + + + def _get_mtu(self): + """ + Getter method for mtu, mapped from YANG variable /interfaces/interface/config/mtu (uint16) + + YANG Description: Set the max transmission unit size in octets +for the physical interface. If this is not set, the mtu is +set to the operational default -- e.g., 1514 bytes on an +Ethernet interface. + """ + return self.__mtu + + def _set_mtu(self, v, load=False): + """ + Setter method for mtu, mapped from YANG variable /interfaces/interface/config/mtu (uint16) + If this variable is read-only (config: false) in the + source YANG file, then _set_mtu is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_mtu() directly. + + YANG Description: Set the max transmission unit size in octets +for the physical interface. If this is not set, the mtu is +set to the operational default -- e.g., 1514 bytes on an +Ethernet interface. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="mtu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint16', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """mtu must be of a type compatible with uint16""", + 'defined-type': "uint16", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="mtu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint16', is_config=True)""", + }) + + self.__mtu = t + if hasattr(self, '_set'): + self._set() + + def _unset_mtu(self): + self.__mtu = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="mtu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint16', is_config=True) + + + def _get_loopback_mode(self): + """ + Getter method for loopback_mode, mapped from YANG variable /interfaces/interface/config/loopback_mode (boolean) + + YANG Description: When set to true, the interface is logically looped back, +such that packets that are forwarded via the interface +are received on the same interface. + """ + return self.__loopback_mode + + def _set_loopback_mode(self, v, load=False): + """ + Setter method for loopback_mode, mapped from YANG variable /interfaces/interface/config/loopback_mode (boolean) + If this variable is read-only (config: false) in the + source YANG file, then _set_loopback_mode is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_loopback_mode() directly. + + YANG Description: When set to true, the interface is logically looped back, +such that packets that are forwarded via the interface +are received on the same interface. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="loopback-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """loopback_mode must be of a type compatible with boolean""", + 'defined-type': "boolean", + 'generated-type': """YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="loopback-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=True)""", + }) + + self.__loopback_mode = t + if hasattr(self, '_set'): + self._set() + + def _unset_loopback_mode(self): + self.__loopback_mode = YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="loopback-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=True) + + + def _get_description(self): + """ + Getter method for description, mapped from YANG variable /interfaces/interface/config/description (string) + + YANG Description: A textual description of the interface. + +A server implementation MAY map this leaf to the ifAlias +MIB object. Such an implementation needs to use some +mechanism to handle the differences in size and characters +allowed between this leaf and ifAlias. The definition of +such a mechanism is outside the scope of this document. + +Since ifAlias is defined to be stored in non-volatile +storage, the MIB implementation MUST map ifAlias to the +value of 'description' in the persistently stored +datastore. + +Specifically, if the device supports ':startup', when +ifAlias is read the device MUST return the value of +'description' in the 'startup' datastore, and when it is +written, it MUST be written to the 'running' and 'startup' +datastores. Note that it is up to the implementation to + +decide whether to modify this single leaf in 'startup' or +perform an implicit copy-config from 'running' to +'startup'. + +If the device does not support ':startup', ifAlias MUST +be mapped to the 'description' leaf in the 'running' +datastore. + """ + return self.__description + + def _set_description(self, v, load=False): + """ + Setter method for description, mapped from YANG variable /interfaces/interface/config/description (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_description is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_description() directly. + + YANG Description: A textual description of the interface. + +A server implementation MAY map this leaf to the ifAlias +MIB object. Such an implementation needs to use some +mechanism to handle the differences in size and characters +allowed between this leaf and ifAlias. The definition of +such a mechanism is outside the scope of this document. + +Since ifAlias is defined to be stored in non-volatile +storage, the MIB implementation MUST map ifAlias to the +value of 'description' in the persistently stored +datastore. + +Specifically, if the device supports ':startup', when +ifAlias is read the device MUST return the value of +'description' in the 'startup' datastore, and when it is +written, it MUST be written to the 'running' and 'startup' +datastores. Note that it is up to the implementation to + +decide whether to modify this single leaf in 'startup' or +perform an implicit copy-config from 'running' to +'startup'. + +If the device does not support ':startup', ifAlias MUST +be mapped to the 'description' leaf in the 'running' +datastore. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """description must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=True)""", + }) + + self.__description = t + if hasattr(self, '_set'): + self._set() + + def _unset_description(self): + self.__description = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=True) + + + def _get_enabled(self): + """ + Getter method for enabled, mapped from YANG variable /interfaces/interface/config/enabled (boolean) + + YANG Description: This leaf contains the configured, desired state of the +interface. + +Systems that implement the IF-MIB use the value of this +leaf in the 'running' datastore to set +IF-MIB.ifAdminStatus to 'up' or 'down' after an ifEntry +has been initialized, as described in RFC 2863. + +Changes in this leaf in the 'running' datastore are +reflected in ifAdminStatus, but if ifAdminStatus is +changed over SNMP, this leaf is not affected. + """ + return self.__enabled + + def _set_enabled(self, v, load=False): + """ + Setter method for enabled, mapped from YANG variable /interfaces/interface/config/enabled (boolean) + If this variable is read-only (config: false) in the + source YANG file, then _set_enabled is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_enabled() directly. + + YANG Description: This leaf contains the configured, desired state of the +interface. + +Systems that implement the IF-MIB use the value of this +leaf in the 'running' datastore to set +IF-MIB.ifAdminStatus to 'up' or 'down' after an ifEntry +has been initialized, as described in RFC 2863. + +Changes in this leaf in the 'running' datastore are +reflected in ifAdminStatus, but if ifAdminStatus is +changed over SNMP, this leaf is not affected. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """enabled must be of a type compatible with boolean""", + 'defined-type': "boolean", + 'generated-type': """YANGDynClass(base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=True)""", + }) + + self.__enabled = t + if hasattr(self, '_set'): + self._set() + + def _unset_enabled(self): + self.__enabled = YANGDynClass(base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=True) + + name = __builtin__.property(_get_name, _set_name) + type = __builtin__.property(_get_type, _set_type) + mtu = __builtin__.property(_get_mtu, _set_mtu) + loopback_mode = __builtin__.property(_get_loopback_mode, _set_loopback_mode) + description = __builtin__.property(_get_description, _set_description) + enabled = __builtin__.property(_get_enabled, _set_enabled) + + + _pyangbind_elements = OrderedDict([('name', name), ('type', type), ('mtu', mtu), ('loopback_mode', loopback_mode), ('description', description), ('enabled', enabled), ]) + + +class yc_counters_openconfig_interfaces__interfaces_interface_state_counters(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-interfaces - based on the path /interfaces/interface/state/counters. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: A collection of interface-related statistics objects. + """ + __slots__ = ('_path_helper', '_extmethods', '__in_octets','__in_pkts','__in_unicast_pkts','__in_broadcast_pkts','__in_multicast_pkts','__in_discards','__in_errors','__in_unknown_protos','__in_fcs_errors','__out_octets','__out_pkts','__out_unicast_pkts','__out_broadcast_pkts','__out_multicast_pkts','__out_discards','__out_errors','__carrier_transitions','__last_clear',) + + _yang_name = 'counters' + _yang_namespace = 'http://openconfig.net/yang/interfaces' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__in_octets = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__in_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__in_unicast_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-unicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__in_broadcast_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-broadcast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__in_multicast_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-multicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__in_discards = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-discards", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__in_errors = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-errors", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__in_unknown_protos = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-unknown-protos", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__in_fcs_errors = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-fcs-errors", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__out_octets = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__out_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__out_unicast_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-unicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__out_broadcast_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-broadcast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__out_multicast_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-multicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__out_discards = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-discards", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__out_errors = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-errors", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__carrier_transitions = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="carrier-transitions", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__last_clear = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="last-clear", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-types:timeticks64', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['interfaces', 'interface', 'state', 'counters'] + + def _get_in_octets(self): + """ + Getter method for in_octets, mapped from YANG variable /interfaces/interface/state/counters/in_octets (oc-yang:counter64) + + YANG Description: The total number of octets received on the interface, +including framing characters. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__in_octets + + def _set_in_octets(self, v, load=False): + """ + Setter method for in_octets, mapped from YANG variable /interfaces/interface/state/counters/in_octets (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_in_octets is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_in_octets() directly. + + YANG Description: The total number of octets received on the interface, +including framing characters. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """in_octets must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__in_octets = t + if hasattr(self, '_set'): + self._set() + + def _unset_in_octets(self): + self.__in_octets = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_in_pkts(self): + """ + Getter method for in_pkts, mapped from YANG variable /interfaces/interface/state/counters/in_pkts (oc-yang:counter64) + + YANG Description: The total number of packets received on the interface, +including all unicast, multicast, broadcast and bad packets +etc. + """ + return self.__in_pkts + + def _set_in_pkts(self, v, load=False): + """ + Setter method for in_pkts, mapped from YANG variable /interfaces/interface/state/counters/in_pkts (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_in_pkts is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_in_pkts() directly. + + YANG Description: The total number of packets received on the interface, +including all unicast, multicast, broadcast and bad packets +etc. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """in_pkts must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__in_pkts = t + if hasattr(self, '_set'): + self._set() + + def _unset_in_pkts(self): + self.__in_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_in_unicast_pkts(self): + """ + Getter method for in_unicast_pkts, mapped from YANG variable /interfaces/interface/state/counters/in_unicast_pkts (oc-yang:counter64) + + YANG Description: The number of packets, delivered by this sub-layer to a +higher (sub-)layer, that were not addressed to a +multicast or broadcast address at this sub-layer. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__in_unicast_pkts + + def _set_in_unicast_pkts(self, v, load=False): + """ + Setter method for in_unicast_pkts, mapped from YANG variable /interfaces/interface/state/counters/in_unicast_pkts (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_in_unicast_pkts is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_in_unicast_pkts() directly. + + YANG Description: The number of packets, delivered by this sub-layer to a +higher (sub-)layer, that were not addressed to a +multicast or broadcast address at this sub-layer. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-unicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """in_unicast_pkts must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-unicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__in_unicast_pkts = t + if hasattr(self, '_set'): + self._set() + + def _unset_in_unicast_pkts(self): + self.__in_unicast_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-unicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_in_broadcast_pkts(self): + """ + Getter method for in_broadcast_pkts, mapped from YANG variable /interfaces/interface/state/counters/in_broadcast_pkts (oc-yang:counter64) + + YANG Description: The number of packets, delivered by this sub-layer to a +higher (sub-)layer, that were addressed to a broadcast +address at this sub-layer. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__in_broadcast_pkts + + def _set_in_broadcast_pkts(self, v, load=False): + """ + Setter method for in_broadcast_pkts, mapped from YANG variable /interfaces/interface/state/counters/in_broadcast_pkts (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_in_broadcast_pkts is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_in_broadcast_pkts() directly. + + YANG Description: The number of packets, delivered by this sub-layer to a +higher (sub-)layer, that were addressed to a broadcast +address at this sub-layer. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-broadcast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """in_broadcast_pkts must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-broadcast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__in_broadcast_pkts = t + if hasattr(self, '_set'): + self._set() + + def _unset_in_broadcast_pkts(self): + self.__in_broadcast_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-broadcast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_in_multicast_pkts(self): + """ + Getter method for in_multicast_pkts, mapped from YANG variable /interfaces/interface/state/counters/in_multicast_pkts (oc-yang:counter64) + + YANG Description: The number of packets, delivered by this sub-layer to a +higher (sub-)layer, that were addressed to a multicast +address at this sub-layer. For a MAC-layer protocol, +this includes both Group and Functional addresses. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__in_multicast_pkts + + def _set_in_multicast_pkts(self, v, load=False): + """ + Setter method for in_multicast_pkts, mapped from YANG variable /interfaces/interface/state/counters/in_multicast_pkts (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_in_multicast_pkts is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_in_multicast_pkts() directly. + + YANG Description: The number of packets, delivered by this sub-layer to a +higher (sub-)layer, that were addressed to a multicast +address at this sub-layer. For a MAC-layer protocol, +this includes both Group and Functional addresses. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-multicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """in_multicast_pkts must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-multicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__in_multicast_pkts = t + if hasattr(self, '_set'): + self._set() + + def _unset_in_multicast_pkts(self): + self.__in_multicast_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-multicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_in_discards(self): + """ + Getter method for in_discards, mapped from YANG variable /interfaces/interface/state/counters/in_discards (oc-yang:counter64) + + YANG Description: The number of inbound packets that were chosen to be +discarded even though no errors had been detected to +prevent their being deliverable to a higher-layer +protocol. One possible reason for discarding such a +packet could be to free up buffer space. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__in_discards + + def _set_in_discards(self, v, load=False): + """ + Setter method for in_discards, mapped from YANG variable /interfaces/interface/state/counters/in_discards (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_in_discards is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_in_discards() directly. + + YANG Description: The number of inbound packets that were chosen to be +discarded even though no errors had been detected to +prevent their being deliverable to a higher-layer +protocol. One possible reason for discarding such a +packet could be to free up buffer space. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-discards", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """in_discards must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-discards", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__in_discards = t + if hasattr(self, '_set'): + self._set() + + def _unset_in_discards(self): + self.__in_discards = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-discards", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_in_errors(self): + """ + Getter method for in_errors, mapped from YANG variable /interfaces/interface/state/counters/in_errors (oc-yang:counter64) + + YANG Description: For packet-oriented interfaces, the number of inbound +packets that contained errors preventing them from being +deliverable to a higher-layer protocol. For character- +oriented or fixed-length interfaces, the number of +inbound transmission units that contained errors +preventing them from being deliverable to a higher-layer +protocol. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__in_errors + + def _set_in_errors(self, v, load=False): + """ + Setter method for in_errors, mapped from YANG variable /interfaces/interface/state/counters/in_errors (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_in_errors is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_in_errors() directly. + + YANG Description: For packet-oriented interfaces, the number of inbound +packets that contained errors preventing them from being +deliverable to a higher-layer protocol. For character- +oriented or fixed-length interfaces, the number of +inbound transmission units that contained errors +preventing them from being deliverable to a higher-layer +protocol. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-errors", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """in_errors must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-errors", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__in_errors = t + if hasattr(self, '_set'): + self._set() + + def _unset_in_errors(self): + self.__in_errors = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-errors", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_in_unknown_protos(self): + """ + Getter method for in_unknown_protos, mapped from YANG variable /interfaces/interface/state/counters/in_unknown_protos (oc-yang:counter64) + + YANG Description: For packet-oriented interfaces, the number of packets +received via the interface that were discarded because +of an unknown or unsupported protocol. For +character-oriented or fixed-length interfaces that +support protocol multiplexing, the number of +transmission units received via the interface that were +discarded because of an unknown or unsupported protocol. +For any interface that does not support protocol +multiplexing, this counter is not present. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__in_unknown_protos + + def _set_in_unknown_protos(self, v, load=False): + """ + Setter method for in_unknown_protos, mapped from YANG variable /interfaces/interface/state/counters/in_unknown_protos (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_in_unknown_protos is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_in_unknown_protos() directly. + + YANG Description: For packet-oriented interfaces, the number of packets +received via the interface that were discarded because +of an unknown or unsupported protocol. For +character-oriented or fixed-length interfaces that +support protocol multiplexing, the number of +transmission units received via the interface that were +discarded because of an unknown or unsupported protocol. +For any interface that does not support protocol +multiplexing, this counter is not present. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-unknown-protos", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """in_unknown_protos must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-unknown-protos", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__in_unknown_protos = t + if hasattr(self, '_set'): + self._set() + + def _unset_in_unknown_protos(self): + self.__in_unknown_protos = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-unknown-protos", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_in_fcs_errors(self): + """ + Getter method for in_fcs_errors, mapped from YANG variable /interfaces/interface/state/counters/in_fcs_errors (oc-yang:counter64) + + YANG Description: Number of received packets which had errors in the +frame check sequence (FCS), i.e., framing errors. + +Discontinuities in the value of this counter can occur +when the device is re-initialization as indicated by the +value of 'last-clear'. + """ + return self.__in_fcs_errors + + def _set_in_fcs_errors(self, v, load=False): + """ + Setter method for in_fcs_errors, mapped from YANG variable /interfaces/interface/state/counters/in_fcs_errors (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_in_fcs_errors is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_in_fcs_errors() directly. + + YANG Description: Number of received packets which had errors in the +frame check sequence (FCS), i.e., framing errors. + +Discontinuities in the value of this counter can occur +when the device is re-initialization as indicated by the +value of 'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-fcs-errors", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """in_fcs_errors must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-fcs-errors", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__in_fcs_errors = t + if hasattr(self, '_set'): + self._set() + + def _unset_in_fcs_errors(self): + self.__in_fcs_errors = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-fcs-errors", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_out_octets(self): + """ + Getter method for out_octets, mapped from YANG variable /interfaces/interface/state/counters/out_octets (oc-yang:counter64) + + YANG Description: The total number of octets transmitted out of the +interface, including framing characters. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__out_octets + + def _set_out_octets(self, v, load=False): + """ + Setter method for out_octets, mapped from YANG variable /interfaces/interface/state/counters/out_octets (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_out_octets is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_out_octets() directly. + + YANG Description: The total number of octets transmitted out of the +interface, including framing characters. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """out_octets must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__out_octets = t + if hasattr(self, '_set'): + self._set() + + def _unset_out_octets(self): + self.__out_octets = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_out_pkts(self): + """ + Getter method for out_pkts, mapped from YANG variable /interfaces/interface/state/counters/out_pkts (oc-yang:counter64) + + YANG Description: The total number of packets transmitted out of the +interface, including all unicast, multicast, broadcast, +and bad packets etc. + """ + return self.__out_pkts + + def _set_out_pkts(self, v, load=False): + """ + Setter method for out_pkts, mapped from YANG variable /interfaces/interface/state/counters/out_pkts (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_out_pkts is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_out_pkts() directly. + + YANG Description: The total number of packets transmitted out of the +interface, including all unicast, multicast, broadcast, +and bad packets etc. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """out_pkts must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__out_pkts = t + if hasattr(self, '_set'): + self._set() + + def _unset_out_pkts(self): + self.__out_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_out_unicast_pkts(self): + """ + Getter method for out_unicast_pkts, mapped from YANG variable /interfaces/interface/state/counters/out_unicast_pkts (oc-yang:counter64) + + YANG Description: The total number of packets that higher-level protocols +requested be transmitted, and that were not addressed +to a multicast or broadcast address at this sub-layer, +including those that were discarded or not sent. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__out_unicast_pkts + + def _set_out_unicast_pkts(self, v, load=False): + """ + Setter method for out_unicast_pkts, mapped from YANG variable /interfaces/interface/state/counters/out_unicast_pkts (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_out_unicast_pkts is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_out_unicast_pkts() directly. + + YANG Description: The total number of packets that higher-level protocols +requested be transmitted, and that were not addressed +to a multicast or broadcast address at this sub-layer, +including those that were discarded or not sent. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-unicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """out_unicast_pkts must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-unicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__out_unicast_pkts = t + if hasattr(self, '_set'): + self._set() + + def _unset_out_unicast_pkts(self): + self.__out_unicast_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-unicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_out_broadcast_pkts(self): + """ + Getter method for out_broadcast_pkts, mapped from YANG variable /interfaces/interface/state/counters/out_broadcast_pkts (oc-yang:counter64) + + YANG Description: The total number of packets that higher-level protocols +requested be transmitted, and that were addressed to a +broadcast address at this sub-layer, including those +that were discarded or not sent. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__out_broadcast_pkts + + def _set_out_broadcast_pkts(self, v, load=False): + """ + Setter method for out_broadcast_pkts, mapped from YANG variable /interfaces/interface/state/counters/out_broadcast_pkts (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_out_broadcast_pkts is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_out_broadcast_pkts() directly. + + YANG Description: The total number of packets that higher-level protocols +requested be transmitted, and that were addressed to a +broadcast address at this sub-layer, including those +that were discarded or not sent. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-broadcast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """out_broadcast_pkts must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-broadcast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__out_broadcast_pkts = t + if hasattr(self, '_set'): + self._set() + + def _unset_out_broadcast_pkts(self): + self.__out_broadcast_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-broadcast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_out_multicast_pkts(self): + """ + Getter method for out_multicast_pkts, mapped from YANG variable /interfaces/interface/state/counters/out_multicast_pkts (oc-yang:counter64) + + YANG Description: The total number of packets that higher-level protocols +requested be transmitted, and that were addressed to a +multicast address at this sub-layer, including those +that were discarded or not sent. For a MAC-layer +protocol, this includes both Group and Functional +addresses. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__out_multicast_pkts + + def _set_out_multicast_pkts(self, v, load=False): + """ + Setter method for out_multicast_pkts, mapped from YANG variable /interfaces/interface/state/counters/out_multicast_pkts (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_out_multicast_pkts is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_out_multicast_pkts() directly. + + YANG Description: The total number of packets that higher-level protocols +requested be transmitted, and that were addressed to a +multicast address at this sub-layer, including those +that were discarded or not sent. For a MAC-layer +protocol, this includes both Group and Functional +addresses. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-multicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """out_multicast_pkts must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-multicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__out_multicast_pkts = t + if hasattr(self, '_set'): + self._set() + + def _unset_out_multicast_pkts(self): + self.__out_multicast_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-multicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_out_discards(self): + """ + Getter method for out_discards, mapped from YANG variable /interfaces/interface/state/counters/out_discards (oc-yang:counter64) + + YANG Description: The number of outbound packets that were chosen to be +discarded even though no errors had been detected to +prevent their being transmitted. One possible reason +for discarding such a packet could be to free up buffer +space. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__out_discards + + def _set_out_discards(self, v, load=False): + """ + Setter method for out_discards, mapped from YANG variable /interfaces/interface/state/counters/out_discards (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_out_discards is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_out_discards() directly. + + YANG Description: The number of outbound packets that were chosen to be +discarded even though no errors had been detected to +prevent their being transmitted. One possible reason +for discarding such a packet could be to free up buffer +space. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-discards", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """out_discards must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-discards", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__out_discards = t + if hasattr(self, '_set'): + self._set() + + def _unset_out_discards(self): + self.__out_discards = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-discards", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_out_errors(self): + """ + Getter method for out_errors, mapped from YANG variable /interfaces/interface/state/counters/out_errors (oc-yang:counter64) + + YANG Description: For packet-oriented interfaces, the number of outbound +packets that could not be transmitted because of errors. +For character-oriented or fixed-length interfaces, the +number of outbound transmission units that could not be +transmitted because of errors. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__out_errors + + def _set_out_errors(self, v, load=False): + """ + Setter method for out_errors, mapped from YANG variable /interfaces/interface/state/counters/out_errors (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_out_errors is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_out_errors() directly. + + YANG Description: For packet-oriented interfaces, the number of outbound +packets that could not be transmitted because of errors. +For character-oriented or fixed-length interfaces, the +number of outbound transmission units that could not be +transmitted because of errors. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-errors", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """out_errors must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-errors", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__out_errors = t + if hasattr(self, '_set'): + self._set() + + def _unset_out_errors(self): + self.__out_errors = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-errors", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_carrier_transitions(self): + """ + Getter method for carrier_transitions, mapped from YANG variable /interfaces/interface/state/counters/carrier_transitions (oc-yang:counter64) + + YANG Description: Number of times the interface state has transitioned +between up and down since the time the device restarted +or the last-clear time, whichever is most recent. + """ + return self.__carrier_transitions + + def _set_carrier_transitions(self, v, load=False): + """ + Setter method for carrier_transitions, mapped from YANG variable /interfaces/interface/state/counters/carrier_transitions (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_carrier_transitions is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_carrier_transitions() directly. + + YANG Description: Number of times the interface state has transitioned +between up and down since the time the device restarted +or the last-clear time, whichever is most recent. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="carrier-transitions", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """carrier_transitions must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="carrier-transitions", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__carrier_transitions = t + if hasattr(self, '_set'): + self._set() + + def _unset_carrier_transitions(self): + self.__carrier_transitions = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="carrier-transitions", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_last_clear(self): + """ + Getter method for last_clear, mapped from YANG variable /interfaces/interface/state/counters/last_clear (oc-types:timeticks64) + + YANG Description: Timestamp of the last time the interface counters were +cleared. + +The value is the timestamp in nanoseconds relative to +the Unix Epoch (Jan 1, 1970 00:00:00 UTC). + """ + return self.__last_clear + + def _set_last_clear(self, v, load=False): + """ + Setter method for last_clear, mapped from YANG variable /interfaces/interface/state/counters/last_clear (oc-types:timeticks64) + If this variable is read-only (config: false) in the + source YANG file, then _set_last_clear is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_last_clear() directly. + + YANG Description: Timestamp of the last time the interface counters were +cleared. + +The value is the timestamp in nanoseconds relative to +the Unix Epoch (Jan 1, 1970 00:00:00 UTC). + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="last-clear", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-types:timeticks64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """last_clear must be of a type compatible with oc-types:timeticks64""", + 'defined-type': "oc-types:timeticks64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="last-clear", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-types:timeticks64', is_config=False)""", + }) + + self.__last_clear = t + if hasattr(self, '_set'): + self._set() + + def _unset_last_clear(self): + self.__last_clear = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="last-clear", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-types:timeticks64', is_config=False) + + in_octets = __builtin__.property(_get_in_octets) + in_pkts = __builtin__.property(_get_in_pkts) + in_unicast_pkts = __builtin__.property(_get_in_unicast_pkts) + in_broadcast_pkts = __builtin__.property(_get_in_broadcast_pkts) + in_multicast_pkts = __builtin__.property(_get_in_multicast_pkts) + in_discards = __builtin__.property(_get_in_discards) + in_errors = __builtin__.property(_get_in_errors) + in_unknown_protos = __builtin__.property(_get_in_unknown_protos) + in_fcs_errors = __builtin__.property(_get_in_fcs_errors) + out_octets = __builtin__.property(_get_out_octets) + out_pkts = __builtin__.property(_get_out_pkts) + out_unicast_pkts = __builtin__.property(_get_out_unicast_pkts) + out_broadcast_pkts = __builtin__.property(_get_out_broadcast_pkts) + out_multicast_pkts = __builtin__.property(_get_out_multicast_pkts) + out_discards = __builtin__.property(_get_out_discards) + out_errors = __builtin__.property(_get_out_errors) + carrier_transitions = __builtin__.property(_get_carrier_transitions) + last_clear = __builtin__.property(_get_last_clear) + + + _pyangbind_elements = OrderedDict([('in_octets', in_octets), ('in_pkts', in_pkts), ('in_unicast_pkts', in_unicast_pkts), ('in_broadcast_pkts', in_broadcast_pkts), ('in_multicast_pkts', in_multicast_pkts), ('in_discards', in_discards), ('in_errors', in_errors), ('in_unknown_protos', in_unknown_protos), ('in_fcs_errors', in_fcs_errors), ('out_octets', out_octets), ('out_pkts', out_pkts), ('out_unicast_pkts', out_unicast_pkts), ('out_broadcast_pkts', out_broadcast_pkts), ('out_multicast_pkts', out_multicast_pkts), ('out_discards', out_discards), ('out_errors', out_errors), ('carrier_transitions', carrier_transitions), ('last_clear', last_clear), ]) + + +class yc_state_openconfig_interfaces__interfaces_interface_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-interfaces - based on the path /interfaces/interface/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state data at the global interface level + """ + __slots__ = ('_path_helper', '_extmethods', '__name','__type','__mtu','__loopback_mode','__description','__enabled','__ifindex','__admin_status','__oper_status','__last_change','__logical','__management','__cpu','__counters',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/interfaces' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=False) + self.__type = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='identityref', is_config=False) + self.__mtu = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="mtu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint16', is_config=False) + self.__loopback_mode = YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="loopback-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + self.__description = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=False) + self.__enabled = YANGDynClass(base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + self.__ifindex = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="ifindex", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=False) + self.__admin_status = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'UP': {}, 'DOWN': {}, 'TESTING': {}},), is_leaf=True, yang_name="admin-status", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='enumeration', is_config=False) + self.__oper_status = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'UP': {'value': 1}, 'DOWN': {'value': 2}, 'TESTING': {'value': 3}, 'UNKNOWN': {'value': 4}, 'DORMANT': {'value': 5}, 'NOT_PRESENT': {'value': 6}, 'LOWER_LAYER_DOWN': {'value': 7}},), is_leaf=True, yang_name="oper-status", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='enumeration', is_config=False) + self.__last_change = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="last-change", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-types:timeticks64', is_config=False) + self.__logical = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="logical", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + self.__management = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="management", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + self.__cpu = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="cpu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + self.__counters = YANGDynClass(base=yc_counters_openconfig_interfaces__interfaces_interface_state_counters, is_container='container', yang_name="counters", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['interfaces', 'interface', 'state'] + + def _get_name(self): + """ + Getter method for name, mapped from YANG variable /interfaces/interface/state/name (string) + + YANG Description: The name of the interface. + +A device MAY restrict the allowed values for this leaf, +possibly depending on the type of the interface. +For system-controlled interfaces, this leaf is the +device-specific name of the interface. The 'config false' +list interfaces/interface[name]/state contains the currently +existing interfaces on the device. + +If a client tries to create configuration for a +system-controlled interface that is not present in the +corresponding state list, the server MAY reject +the request if the implementation does not support +pre-provisioning of interfaces or if the name refers to +an interface that can never exist in the system. A +NETCONF server MUST reply with an rpc-error with the +error-tag 'invalid-value' in this case. + +The IETF model in RFC 7223 provides YANG features for the +following (i.e., pre-provisioning and arbitrary-names), +however they are omitted here: + + If the device supports pre-provisioning of interface + configuration, the 'pre-provisioning' feature is + advertised. + + If the device allows arbitrarily named user-controlled + interfaces, the 'arbitrary-names' feature is advertised. + +When a configured user-controlled interface is created by +the system, it is instantiated with the same name in the +/interfaces/interface[name]/state list. + """ + return self.__name + + def _set_name(self, v, load=False): + """ + Setter method for name, mapped from YANG variable /interfaces/interface/state/name (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_name() directly. + + YANG Description: The name of the interface. + +A device MAY restrict the allowed values for this leaf, +possibly depending on the type of the interface. +For system-controlled interfaces, this leaf is the +device-specific name of the interface. The 'config false' +list interfaces/interface[name]/state contains the currently +existing interfaces on the device. + +If a client tries to create configuration for a +system-controlled interface that is not present in the +corresponding state list, the server MAY reject +the request if the implementation does not support +pre-provisioning of interfaces or if the name refers to +an interface that can never exist in the system. A +NETCONF server MUST reply with an rpc-error with the +error-tag 'invalid-value' in this case. + +The IETF model in RFC 7223 provides YANG features for the +following (i.e., pre-provisioning and arbitrary-names), +however they are omitted here: + + If the device supports pre-provisioning of interface + configuration, the 'pre-provisioning' feature is + advertised. + + If the device allows arbitrarily named user-controlled + interfaces, the 'arbitrary-names' feature is advertised. + +When a configured user-controlled interface is created by +the system, it is instantiated with the same name in the +/interfaces/interface[name]/state list. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """name must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=False)""", + }) + + self.__name = t + if hasattr(self, '_set'): + self._set() + + def _unset_name(self): + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=False) + + + def _get_type(self): + """ + Getter method for type, mapped from YANG variable /interfaces/interface/state/type (identityref) + + YANG Description: The type of the interface. + +When an interface entry is created, a server MAY +initialize the type leaf with a valid value, e.g., if it +is possible to derive the type from the name of the +interface. + +If a client tries to set the type of an interface to a +value that can never be used by the system, e.g., if the +type is not supported or if the type does not match the +name of the interface, the server MUST reject the request. +A NETCONF server MUST reply with an rpc-error with the +error-tag 'invalid-value' in this case. + """ + return self.__type + + def _set_type(self, v, load=False): + """ + Setter method for type, mapped from YANG variable /interfaces/interface/state/type (identityref) + If this variable is read-only (config: false) in the + source YANG file, then _set_type is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_type() directly. + + YANG Description: The type of the interface. + +When an interface entry is created, a server MAY +initialize the type leaf with a valid value, e.g., if it +is possible to derive the type from the name of the +interface. + +If a client tries to set the type of an interface to a +value that can never be used by the system, e.g., if the +type is not supported or if the type does not match the +name of the interface, the server MUST reject the request. +A NETCONF server MUST reply with an rpc-error with the +error-tag 'invalid-value' in this case. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='identityref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """type must be of a type compatible with identityref""", + 'defined-type': "openconfig-interfaces:identityref", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='identityref', is_config=False)""", + }) + + self.__type = t + if hasattr(self, '_set'): + self._set() + + def _unset_type(self): + self.__type = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='identityref', is_config=False) + + + def _get_mtu(self): + """ + Getter method for mtu, mapped from YANG variable /interfaces/interface/state/mtu (uint16) + + YANG Description: Set the max transmission unit size in octets +for the physical interface. If this is not set, the mtu is +set to the operational default -- e.g., 1514 bytes on an +Ethernet interface. + """ + return self.__mtu + + def _set_mtu(self, v, load=False): + """ + Setter method for mtu, mapped from YANG variable /interfaces/interface/state/mtu (uint16) + If this variable is read-only (config: false) in the + source YANG file, then _set_mtu is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_mtu() directly. + + YANG Description: Set the max transmission unit size in octets +for the physical interface. If this is not set, the mtu is +set to the operational default -- e.g., 1514 bytes on an +Ethernet interface. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="mtu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint16', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """mtu must be of a type compatible with uint16""", + 'defined-type': "uint16", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="mtu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint16', is_config=False)""", + }) + + self.__mtu = t + if hasattr(self, '_set'): + self._set() + + def _unset_mtu(self): + self.__mtu = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="mtu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint16', is_config=False) + + + def _get_loopback_mode(self): + """ + Getter method for loopback_mode, mapped from YANG variable /interfaces/interface/state/loopback_mode (boolean) + + YANG Description: When set to true, the interface is logically looped back, +such that packets that are forwarded via the interface +are received on the same interface. + """ + return self.__loopback_mode + + def _set_loopback_mode(self, v, load=False): + """ + Setter method for loopback_mode, mapped from YANG variable /interfaces/interface/state/loopback_mode (boolean) + If this variable is read-only (config: false) in the + source YANG file, then _set_loopback_mode is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_loopback_mode() directly. + + YANG Description: When set to true, the interface is logically looped back, +such that packets that are forwarded via the interface +are received on the same interface. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="loopback-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """loopback_mode must be of a type compatible with boolean""", + 'defined-type': "boolean", + 'generated-type': """YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="loopback-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False)""", + }) + + self.__loopback_mode = t + if hasattr(self, '_set'): + self._set() + + def _unset_loopback_mode(self): + self.__loopback_mode = YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="loopback-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + + + def _get_description(self): + """ + Getter method for description, mapped from YANG variable /interfaces/interface/state/description (string) + + YANG Description: A textual description of the interface. + +A server implementation MAY map this leaf to the ifAlias +MIB object. Such an implementation needs to use some +mechanism to handle the differences in size and characters +allowed between this leaf and ifAlias. The definition of +such a mechanism is outside the scope of this document. + +Since ifAlias is defined to be stored in non-volatile +storage, the MIB implementation MUST map ifAlias to the +value of 'description' in the persistently stored +datastore. + +Specifically, if the device supports ':startup', when +ifAlias is read the device MUST return the value of +'description' in the 'startup' datastore, and when it is +written, it MUST be written to the 'running' and 'startup' +datastores. Note that it is up to the implementation to + +decide whether to modify this single leaf in 'startup' or +perform an implicit copy-config from 'running' to +'startup'. + +If the device does not support ':startup', ifAlias MUST +be mapped to the 'description' leaf in the 'running' +datastore. + """ + return self.__description + + def _set_description(self, v, load=False): + """ + Setter method for description, mapped from YANG variable /interfaces/interface/state/description (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_description is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_description() directly. + + YANG Description: A textual description of the interface. + +A server implementation MAY map this leaf to the ifAlias +MIB object. Such an implementation needs to use some +mechanism to handle the differences in size and characters +allowed between this leaf and ifAlias. The definition of +such a mechanism is outside the scope of this document. + +Since ifAlias is defined to be stored in non-volatile +storage, the MIB implementation MUST map ifAlias to the +value of 'description' in the persistently stored +datastore. + +Specifically, if the device supports ':startup', when +ifAlias is read the device MUST return the value of +'description' in the 'startup' datastore, and when it is +written, it MUST be written to the 'running' and 'startup' +datastores. Note that it is up to the implementation to + +decide whether to modify this single leaf in 'startup' or +perform an implicit copy-config from 'running' to +'startup'. + +If the device does not support ':startup', ifAlias MUST +be mapped to the 'description' leaf in the 'running' +datastore. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """description must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=False)""", + }) + + self.__description = t + if hasattr(self, '_set'): + self._set() + + def _unset_description(self): + self.__description = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=False) + + + def _get_enabled(self): + """ + Getter method for enabled, mapped from YANG variable /interfaces/interface/state/enabled (boolean) + + YANG Description: This leaf contains the configured, desired state of the +interface. + +Systems that implement the IF-MIB use the value of this +leaf in the 'running' datastore to set +IF-MIB.ifAdminStatus to 'up' or 'down' after an ifEntry +has been initialized, as described in RFC 2863. + +Changes in this leaf in the 'running' datastore are +reflected in ifAdminStatus, but if ifAdminStatus is +changed over SNMP, this leaf is not affected. + """ + return self.__enabled + + def _set_enabled(self, v, load=False): + """ + Setter method for enabled, mapped from YANG variable /interfaces/interface/state/enabled (boolean) + If this variable is read-only (config: false) in the + source YANG file, then _set_enabled is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_enabled() directly. + + YANG Description: This leaf contains the configured, desired state of the +interface. + +Systems that implement the IF-MIB use the value of this +leaf in the 'running' datastore to set +IF-MIB.ifAdminStatus to 'up' or 'down' after an ifEntry +has been initialized, as described in RFC 2863. + +Changes in this leaf in the 'running' datastore are +reflected in ifAdminStatus, but if ifAdminStatus is +changed over SNMP, this leaf is not affected. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """enabled must be of a type compatible with boolean""", + 'defined-type': "boolean", + 'generated-type': """YANGDynClass(base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False)""", + }) + + self.__enabled = t + if hasattr(self, '_set'): + self._set() + + def _unset_enabled(self): + self.__enabled = YANGDynClass(base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + + + def _get_ifindex(self): + """ + Getter method for ifindex, mapped from YANG variable /interfaces/interface/state/ifindex (uint32) + + YANG Description: System assigned number for each interface. Corresponds to +ifIndex object in SNMP Interface MIB + """ + return self.__ifindex + + def _set_ifindex(self, v, load=False): + """ + Setter method for ifindex, mapped from YANG variable /interfaces/interface/state/ifindex (uint32) + If this variable is read-only (config: false) in the + source YANG file, then _set_ifindex is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_ifindex() directly. + + YANG Description: System assigned number for each interface. Corresponds to +ifIndex object in SNMP Interface MIB + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="ifindex", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """ifindex must be of a type compatible with uint32""", + 'defined-type': "uint32", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="ifindex", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=False)""", + }) + + self.__ifindex = t + if hasattr(self, '_set'): + self._set() + + def _unset_ifindex(self): + self.__ifindex = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="ifindex", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=False) + + + def _get_admin_status(self): + """ + Getter method for admin_status, mapped from YANG variable /interfaces/interface/state/admin_status (enumeration) + + YANG Description: The desired state of the interface. In RFC 7223 this leaf +has the same read semantics as ifAdminStatus. Here, it +reflects the administrative state as set by enabling or +disabling the interface. + """ + return self.__admin_status + + def _set_admin_status(self, v, load=False): + """ + Setter method for admin_status, mapped from YANG variable /interfaces/interface/state/admin_status (enumeration) + If this variable is read-only (config: false) in the + source YANG file, then _set_admin_status is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_admin_status() directly. + + YANG Description: The desired state of the interface. In RFC 7223 this leaf +has the same read semantics as ifAdminStatus. Here, it +reflects the administrative state as set by enabling or +disabling the interface. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'UP': {}, 'DOWN': {}, 'TESTING': {}},), is_leaf=True, yang_name="admin-status", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='enumeration', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """admin_status must be of a type compatible with enumeration""", + 'defined-type': "openconfig-interfaces:enumeration", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'UP': {}, 'DOWN': {}, 'TESTING': {}},), is_leaf=True, yang_name="admin-status", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='enumeration', is_config=False)""", + }) + + self.__admin_status = t + if hasattr(self, '_set'): + self._set() + + def _unset_admin_status(self): + self.__admin_status = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'UP': {}, 'DOWN': {}, 'TESTING': {}},), is_leaf=True, yang_name="admin-status", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='enumeration', is_config=False) + + + def _get_oper_status(self): + """ + Getter method for oper_status, mapped from YANG variable /interfaces/interface/state/oper_status (enumeration) + + YANG Description: The current operational state of the interface. + +This leaf has the same semantics as ifOperStatus. + """ + return self.__oper_status + + def _set_oper_status(self, v, load=False): + """ + Setter method for oper_status, mapped from YANG variable /interfaces/interface/state/oper_status (enumeration) + If this variable is read-only (config: false) in the + source YANG file, then _set_oper_status is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_oper_status() directly. + + YANG Description: The current operational state of the interface. + +This leaf has the same semantics as ifOperStatus. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'UP': {'value': 1}, 'DOWN': {'value': 2}, 'TESTING': {'value': 3}, 'UNKNOWN': {'value': 4}, 'DORMANT': {'value': 5}, 'NOT_PRESENT': {'value': 6}, 'LOWER_LAYER_DOWN': {'value': 7}},), is_leaf=True, yang_name="oper-status", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='enumeration', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """oper_status must be of a type compatible with enumeration""", + 'defined-type': "openconfig-interfaces:enumeration", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'UP': {'value': 1}, 'DOWN': {'value': 2}, 'TESTING': {'value': 3}, 'UNKNOWN': {'value': 4}, 'DORMANT': {'value': 5}, 'NOT_PRESENT': {'value': 6}, 'LOWER_LAYER_DOWN': {'value': 7}},), is_leaf=True, yang_name="oper-status", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='enumeration', is_config=False)""", + }) + + self.__oper_status = t + if hasattr(self, '_set'): + self._set() + + def _unset_oper_status(self): + self.__oper_status = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'UP': {'value': 1}, 'DOWN': {'value': 2}, 'TESTING': {'value': 3}, 'UNKNOWN': {'value': 4}, 'DORMANT': {'value': 5}, 'NOT_PRESENT': {'value': 6}, 'LOWER_LAYER_DOWN': {'value': 7}},), is_leaf=True, yang_name="oper-status", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='enumeration', is_config=False) + + + def _get_last_change(self): + """ + Getter method for last_change, mapped from YANG variable /interfaces/interface/state/last_change (oc-types:timeticks64) + + YANG Description: This timestamp indicates the absolute time of the last +state change of the interface (e.g., up-to-down transition). +This is different than the SNMP ifLastChange object in the +standard interface MIB in that it is not relative to the +system boot time (i.e,. sysUpTime). + +The value is the timestamp in nanoseconds relative to +the Unix Epoch (Jan 1, 1970 00:00:00 UTC). + """ + return self.__last_change + + def _set_last_change(self, v, load=False): + """ + Setter method for last_change, mapped from YANG variable /interfaces/interface/state/last_change (oc-types:timeticks64) + If this variable is read-only (config: false) in the + source YANG file, then _set_last_change is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_last_change() directly. + + YANG Description: This timestamp indicates the absolute time of the last +state change of the interface (e.g., up-to-down transition). +This is different than the SNMP ifLastChange object in the +standard interface MIB in that it is not relative to the +system boot time (i.e,. sysUpTime). + +The value is the timestamp in nanoseconds relative to +the Unix Epoch (Jan 1, 1970 00:00:00 UTC). + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="last-change", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-types:timeticks64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """last_change must be of a type compatible with oc-types:timeticks64""", + 'defined-type': "oc-types:timeticks64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="last-change", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-types:timeticks64', is_config=False)""", + }) + + self.__last_change = t + if hasattr(self, '_set'): + self._set() + + def _unset_last_change(self): + self.__last_change = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="last-change", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-types:timeticks64', is_config=False) + + + def _get_logical(self): + """ + Getter method for logical, mapped from YANG variable /interfaces/interface/state/logical (boolean) + + YANG Description: When set to true, the interface is a logical interface +which does not have an associated physical port or +channel on the system. + """ + return self.__logical + + def _set_logical(self, v, load=False): + """ + Setter method for logical, mapped from YANG variable /interfaces/interface/state/logical (boolean) + If this variable is read-only (config: false) in the + source YANG file, then _set_logical is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_logical() directly. + + YANG Description: When set to true, the interface is a logical interface +which does not have an associated physical port or +channel on the system. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="logical", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """logical must be of a type compatible with boolean""", + 'defined-type': "boolean", + 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="logical", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False)""", + }) + + self.__logical = t + if hasattr(self, '_set'): + self._set() + + def _unset_logical(self): + self.__logical = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="logical", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + + + def _get_management(self): + """ + Getter method for management, mapped from YANG variable /interfaces/interface/state/management (boolean) + + YANG Description: When set to true, the interface is a dedicated +management interface that is not connected to dataplane +interfaces. It may be used to connect the system to an +out-of-band management network, for example. + """ + return self.__management + + def _set_management(self, v, load=False): + """ + Setter method for management, mapped from YANG variable /interfaces/interface/state/management (boolean) + If this variable is read-only (config: false) in the + source YANG file, then _set_management is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_management() directly. + + YANG Description: When set to true, the interface is a dedicated +management interface that is not connected to dataplane +interfaces. It may be used to connect the system to an +out-of-band management network, for example. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="management", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """management must be of a type compatible with boolean""", + 'defined-type': "boolean", + 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="management", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False)""", + }) + + self.__management = t + if hasattr(self, '_set'): + self._set() + + def _unset_management(self): + self.__management = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="management", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + + + def _get_cpu(self): + """ + Getter method for cpu, mapped from YANG variable /interfaces/interface/state/cpu (boolean) + + YANG Description: When set to true, the interface is for traffic +that is handled by the system CPU, sometimes also called the +control plane interface. On systems that represent the CPU +interface as an Ethernet interface, for example, this leaf +should be used to distinguish the CPU interface from dataplane +interfaces. + """ + return self.__cpu + + def _set_cpu(self, v, load=False): + """ + Setter method for cpu, mapped from YANG variable /interfaces/interface/state/cpu (boolean) + If this variable is read-only (config: false) in the + source YANG file, then _set_cpu is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_cpu() directly. + + YANG Description: When set to true, the interface is for traffic +that is handled by the system CPU, sometimes also called the +control plane interface. On systems that represent the CPU +interface as an Ethernet interface, for example, this leaf +should be used to distinguish the CPU interface from dataplane +interfaces. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="cpu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """cpu must be of a type compatible with boolean""", + 'defined-type': "boolean", + 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="cpu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False)""", + }) + + self.__cpu = t + if hasattr(self, '_set'): + self._set() + + def _unset_cpu(self): + self.__cpu = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="cpu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + + + def _get_counters(self): + """ + Getter method for counters, mapped from YANG variable /interfaces/interface/state/counters (container) + + YANG Description: A collection of interface-related statistics objects. + """ + return self.__counters + + def _set_counters(self, v, load=False): + """ + Setter method for counters, mapped from YANG variable /interfaces/interface/state/counters (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_counters is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_counters() directly. + + YANG Description: A collection of interface-related statistics objects. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_counters_openconfig_interfaces__interfaces_interface_state_counters, is_container='container', yang_name="counters", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """counters must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_counters_openconfig_interfaces__interfaces_interface_state_counters, is_container='container', yang_name="counters", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=False)""", + }) + + self.__counters = t + if hasattr(self, '_set'): + self._set() + + def _unset_counters(self): + self.__counters = YANGDynClass(base=yc_counters_openconfig_interfaces__interfaces_interface_state_counters, is_container='container', yang_name="counters", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=False) + + name = __builtin__.property(_get_name) + type = __builtin__.property(_get_type) + mtu = __builtin__.property(_get_mtu) + loopback_mode = __builtin__.property(_get_loopback_mode) + description = __builtin__.property(_get_description) + enabled = __builtin__.property(_get_enabled) + ifindex = __builtin__.property(_get_ifindex) + admin_status = __builtin__.property(_get_admin_status) + oper_status = __builtin__.property(_get_oper_status) + last_change = __builtin__.property(_get_last_change) + logical = __builtin__.property(_get_logical) + management = __builtin__.property(_get_management) + cpu = __builtin__.property(_get_cpu) + counters = __builtin__.property(_get_counters) + + + _pyangbind_elements = OrderedDict([('name', name), ('type', type), ('mtu', mtu), ('loopback_mode', loopback_mode), ('description', description), ('enabled', enabled), ('ifindex', ifindex), ('admin_status', admin_status), ('oper_status', oper_status), ('last_change', last_change), ('logical', logical), ('management', management), ('cpu', cpu), ('counters', counters), ]) + + +class yc_config_openconfig_interfaces__interfaces_interface_hold_time_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-interfaces - based on the path /interfaces/interface/hold-time/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configuration data for interface hold-time settings. + """ + __slots__ = ('_path_helper', '_extmethods', '__up','__down',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/interfaces' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__up = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(0), is_leaf=True, yang_name="up", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=True) + self.__down = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(0), is_leaf=True, yang_name="down", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['interfaces', 'interface', 'hold-time', 'config'] + + def _get_up(self): + """ + Getter method for up, mapped from YANG variable /interfaces/interface/hold_time/config/up (uint32) + + YANG Description: Dampens advertisement when the interface +transitions from down to up. A zero value means dampening +is turned off, i.e., immediate notification. + """ + return self.__up + + def _set_up(self, v, load=False): + """ + Setter method for up, mapped from YANG variable /interfaces/interface/hold_time/config/up (uint32) + If this variable is read-only (config: false) in the + source YANG file, then _set_up is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_up() directly. + + YANG Description: Dampens advertisement when the interface +transitions from down to up. A zero value means dampening +is turned off, i.e., immediate notification. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(0), is_leaf=True, yang_name="up", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """up must be of a type compatible with uint32""", + 'defined-type': "uint32", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(0), is_leaf=True, yang_name="up", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=True)""", + }) + + self.__up = t + if hasattr(self, '_set'): + self._set() + + def _unset_up(self): + self.__up = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(0), is_leaf=True, yang_name="up", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=True) + + + def _get_down(self): + """ + Getter method for down, mapped from YANG variable /interfaces/interface/hold_time/config/down (uint32) + + YANG Description: Dampens advertisement when the interface transitions from +up to down. A zero value means dampening is turned off, +i.e., immediate notification. + """ + return self.__down + + def _set_down(self, v, load=False): + """ + Setter method for down, mapped from YANG variable /interfaces/interface/hold_time/config/down (uint32) + If this variable is read-only (config: false) in the + source YANG file, then _set_down is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_down() directly. + + YANG Description: Dampens advertisement when the interface transitions from +up to down. A zero value means dampening is turned off, +i.e., immediate notification. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(0), is_leaf=True, yang_name="down", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """down must be of a type compatible with uint32""", + 'defined-type': "uint32", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(0), is_leaf=True, yang_name="down", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=True)""", + }) + + self.__down = t + if hasattr(self, '_set'): + self._set() + + def _unset_down(self): + self.__down = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(0), is_leaf=True, yang_name="down", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=True) + + up = __builtin__.property(_get_up, _set_up) + down = __builtin__.property(_get_down, _set_down) + + + _pyangbind_elements = OrderedDict([('up', up), ('down', down), ]) + + +class yc_state_openconfig_interfaces__interfaces_interface_hold_time_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-interfaces - based on the path /interfaces/interface/hold-time/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state data for interface hold-time. + """ + __slots__ = ('_path_helper', '_extmethods', '__up','__down',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/interfaces' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__up = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(0), is_leaf=True, yang_name="up", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=False) + self.__down = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(0), is_leaf=True, yang_name="down", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['interfaces', 'interface', 'hold-time', 'state'] + + def _get_up(self): + """ + Getter method for up, mapped from YANG variable /interfaces/interface/hold_time/state/up (uint32) + + YANG Description: Dampens advertisement when the interface +transitions from down to up. A zero value means dampening +is turned off, i.e., immediate notification. + """ + return self.__up + + def _set_up(self, v, load=False): + """ + Setter method for up, mapped from YANG variable /interfaces/interface/hold_time/state/up (uint32) + If this variable is read-only (config: false) in the + source YANG file, then _set_up is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_up() directly. + + YANG Description: Dampens advertisement when the interface +transitions from down to up. A zero value means dampening +is turned off, i.e., immediate notification. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(0), is_leaf=True, yang_name="up", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """up must be of a type compatible with uint32""", + 'defined-type': "uint32", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(0), is_leaf=True, yang_name="up", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=False)""", + }) + + self.__up = t + if hasattr(self, '_set'): + self._set() + + def _unset_up(self): + self.__up = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(0), is_leaf=True, yang_name="up", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=False) + + + def _get_down(self): + """ + Getter method for down, mapped from YANG variable /interfaces/interface/hold_time/state/down (uint32) + + YANG Description: Dampens advertisement when the interface transitions from +up to down. A zero value means dampening is turned off, +i.e., immediate notification. + """ + return self.__down + + def _set_down(self, v, load=False): + """ + Setter method for down, mapped from YANG variable /interfaces/interface/hold_time/state/down (uint32) + If this variable is read-only (config: false) in the + source YANG file, then _set_down is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_down() directly. + + YANG Description: Dampens advertisement when the interface transitions from +up to down. A zero value means dampening is turned off, +i.e., immediate notification. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(0), is_leaf=True, yang_name="down", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """down must be of a type compatible with uint32""", + 'defined-type': "uint32", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(0), is_leaf=True, yang_name="down", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=False)""", + }) + + self.__down = t + if hasattr(self, '_set'): + self._set() + + def _unset_down(self): + self.__down = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(0), is_leaf=True, yang_name="down", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=False) + + up = __builtin__.property(_get_up) + down = __builtin__.property(_get_down) + + + _pyangbind_elements = OrderedDict([('up', up), ('down', down), ]) + + +class yc_hold_time_openconfig_interfaces__interfaces_interface_hold_time(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-interfaces - based on the path /interfaces/interface/hold-time. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Top-level container for hold-time settings to enable +dampening advertisements of interface transitions. + """ + __slots__ = ('_path_helper', '_extmethods', '__config','__state',) + + _yang_name = 'hold-time' + _yang_namespace = 'http://openconfig.net/yang/interfaces' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__config = YANGDynClass(base=yc_config_openconfig_interfaces__interfaces_interface_hold_time_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_interfaces__interfaces_interface_hold_time_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['interfaces', 'interface', 'hold-time'] + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /interfaces/interface/hold_time/config (container) + + YANG Description: Configuration data for interface hold-time settings. + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /interfaces/interface/hold_time/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configuration data for interface hold-time settings. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_interfaces__interfaces_interface_hold_time_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_interfaces__interfaces_interface_hold_time_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_interfaces__interfaces_interface_hold_time_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /interfaces/interface/hold_time/state (container) + + YANG Description: Operational state data for interface hold-time. + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /interfaces/interface/hold_time/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state data for interface hold-time. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_interfaces__interfaces_interface_hold_time_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_interfaces__interfaces_interface_hold_time_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_interfaces__interfaces_interface_hold_time_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + + + _pyangbind_elements = OrderedDict([('config', config), ('state', state), ]) + + +class yc_config_openconfig_interfaces__interfaces_interface_subinterfaces_subinterface_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-interfaces - based on the path /interfaces/interface/subinterfaces/subinterface/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configurable items at the subinterface level + """ + __slots__ = ('_path_helper', '_extmethods', '__index','__description','__enabled',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/interfaces' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__index = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(0), is_leaf=True, yang_name="index", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=True) + self.__description = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=True) + self.__enabled = YANGDynClass(base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['interfaces', 'interface', 'subinterfaces', 'subinterface', 'config'] + + def _get_index(self): + """ + Getter method for index, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/config/index (uint32) + + YANG Description: The index of the subinterface, or logical interface number. +On systems with no support for subinterfaces, or not using +subinterfaces, this value should default to 0, i.e., the +default subinterface. + """ + return self.__index + + def _set_index(self, v, load=False): + """ + Setter method for index, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/config/index (uint32) + If this variable is read-only (config: false) in the + source YANG file, then _set_index is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_index() directly. + + YANG Description: The index of the subinterface, or logical interface number. +On systems with no support for subinterfaces, or not using +subinterfaces, this value should default to 0, i.e., the +default subinterface. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(0), is_leaf=True, yang_name="index", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """index must be of a type compatible with uint32""", + 'defined-type': "uint32", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(0), is_leaf=True, yang_name="index", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=True)""", + }) + + self.__index = t + if hasattr(self, '_set'): + self._set() + + def _unset_index(self): + self.__index = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(0), is_leaf=True, yang_name="index", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=True) + + + def _get_description(self): + """ + Getter method for description, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/config/description (string) + + YANG Description: A textual description of the interface. + +A server implementation MAY map this leaf to the ifAlias +MIB object. Such an implementation needs to use some +mechanism to handle the differences in size and characters +allowed between this leaf and ifAlias. The definition of +such a mechanism is outside the scope of this document. + +Since ifAlias is defined to be stored in non-volatile +storage, the MIB implementation MUST map ifAlias to the +value of 'description' in the persistently stored +datastore. + +Specifically, if the device supports ':startup', when +ifAlias is read the device MUST return the value of +'description' in the 'startup' datastore, and when it is +written, it MUST be written to the 'running' and 'startup' +datastores. Note that it is up to the implementation to + +decide whether to modify this single leaf in 'startup' or +perform an implicit copy-config from 'running' to +'startup'. + +If the device does not support ':startup', ifAlias MUST +be mapped to the 'description' leaf in the 'running' +datastore. + """ + return self.__description + + def _set_description(self, v, load=False): + """ + Setter method for description, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/config/description (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_description is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_description() directly. + + YANG Description: A textual description of the interface. + +A server implementation MAY map this leaf to the ifAlias +MIB object. Such an implementation needs to use some +mechanism to handle the differences in size and characters +allowed between this leaf and ifAlias. The definition of +such a mechanism is outside the scope of this document. + +Since ifAlias is defined to be stored in non-volatile +storage, the MIB implementation MUST map ifAlias to the +value of 'description' in the persistently stored +datastore. + +Specifically, if the device supports ':startup', when +ifAlias is read the device MUST return the value of +'description' in the 'startup' datastore, and when it is +written, it MUST be written to the 'running' and 'startup' +datastores. Note that it is up to the implementation to + +decide whether to modify this single leaf in 'startup' or +perform an implicit copy-config from 'running' to +'startup'. + +If the device does not support ':startup', ifAlias MUST +be mapped to the 'description' leaf in the 'running' +datastore. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """description must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=True)""", + }) + + self.__description = t + if hasattr(self, '_set'): + self._set() + + def _unset_description(self): + self.__description = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=True) + + + def _get_enabled(self): + """ + Getter method for enabled, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/config/enabled (boolean) + + YANG Description: This leaf contains the configured, desired state of the +interface. + +Systems that implement the IF-MIB use the value of this +leaf in the 'running' datastore to set +IF-MIB.ifAdminStatus to 'up' or 'down' after an ifEntry +has been initialized, as described in RFC 2863. + +Changes in this leaf in the 'running' datastore are +reflected in ifAdminStatus, but if ifAdminStatus is +changed over SNMP, this leaf is not affected. + """ + return self.__enabled + + def _set_enabled(self, v, load=False): + """ + Setter method for enabled, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/config/enabled (boolean) + If this variable is read-only (config: false) in the + source YANG file, then _set_enabled is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_enabled() directly. + + YANG Description: This leaf contains the configured, desired state of the +interface. + +Systems that implement the IF-MIB use the value of this +leaf in the 'running' datastore to set +IF-MIB.ifAdminStatus to 'up' or 'down' after an ifEntry +has been initialized, as described in RFC 2863. + +Changes in this leaf in the 'running' datastore are +reflected in ifAdminStatus, but if ifAdminStatus is +changed over SNMP, this leaf is not affected. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """enabled must be of a type compatible with boolean""", + 'defined-type': "boolean", + 'generated-type': """YANGDynClass(base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=True)""", + }) + + self.__enabled = t + if hasattr(self, '_set'): + self._set() + + def _unset_enabled(self): + self.__enabled = YANGDynClass(base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=True) + + index = __builtin__.property(_get_index, _set_index) + description = __builtin__.property(_get_description, _set_description) + enabled = __builtin__.property(_get_enabled, _set_enabled) + + + _pyangbind_elements = OrderedDict([('index', index), ('description', description), ('enabled', enabled), ]) + + +class yc_counters_openconfig_interfaces__interfaces_interface_subinterfaces_subinterface_state_counters(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-interfaces - based on the path /interfaces/interface/subinterfaces/subinterface/state/counters. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: A collection of interface-related statistics objects. + """ + __slots__ = ('_path_helper', '_extmethods', '__in_octets','__in_pkts','__in_unicast_pkts','__in_broadcast_pkts','__in_multicast_pkts','__in_discards','__in_errors','__in_unknown_protos','__in_fcs_errors','__out_octets','__out_pkts','__out_unicast_pkts','__out_broadcast_pkts','__out_multicast_pkts','__out_discards','__out_errors','__carrier_transitions','__last_clear',) + + _yang_name = 'counters' + _yang_namespace = 'http://openconfig.net/yang/interfaces' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__in_octets = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__in_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__in_unicast_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-unicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__in_broadcast_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-broadcast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__in_multicast_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-multicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__in_discards = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-discards", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__in_errors = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-errors", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__in_unknown_protos = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-unknown-protos", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__in_fcs_errors = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-fcs-errors", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__out_octets = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__out_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__out_unicast_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-unicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__out_broadcast_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-broadcast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__out_multicast_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-multicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__out_discards = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-discards", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__out_errors = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-errors", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__carrier_transitions = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="carrier-transitions", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + self.__last_clear = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="last-clear", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-types:timeticks64', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['interfaces', 'interface', 'subinterfaces', 'subinterface', 'state', 'counters'] + + def _get_in_octets(self): + """ + Getter method for in_octets, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/in_octets (oc-yang:counter64) + + YANG Description: The total number of octets received on the interface, +including framing characters. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__in_octets + + def _set_in_octets(self, v, load=False): + """ + Setter method for in_octets, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/in_octets (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_in_octets is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_in_octets() directly. + + YANG Description: The total number of octets received on the interface, +including framing characters. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """in_octets must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__in_octets = t + if hasattr(self, '_set'): + self._set() + + def _unset_in_octets(self): + self.__in_octets = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_in_pkts(self): + """ + Getter method for in_pkts, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/in_pkts (oc-yang:counter64) + + YANG Description: The total number of packets received on the interface, +including all unicast, multicast, broadcast and bad packets +etc. + """ + return self.__in_pkts + + def _set_in_pkts(self, v, load=False): + """ + Setter method for in_pkts, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/in_pkts (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_in_pkts is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_in_pkts() directly. + + YANG Description: The total number of packets received on the interface, +including all unicast, multicast, broadcast and bad packets +etc. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """in_pkts must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__in_pkts = t + if hasattr(self, '_set'): + self._set() + + def _unset_in_pkts(self): + self.__in_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_in_unicast_pkts(self): + """ + Getter method for in_unicast_pkts, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/in_unicast_pkts (oc-yang:counter64) + + YANG Description: The number of packets, delivered by this sub-layer to a +higher (sub-)layer, that were not addressed to a +multicast or broadcast address at this sub-layer. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__in_unicast_pkts + + def _set_in_unicast_pkts(self, v, load=False): + """ + Setter method for in_unicast_pkts, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/in_unicast_pkts (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_in_unicast_pkts is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_in_unicast_pkts() directly. + + YANG Description: The number of packets, delivered by this sub-layer to a +higher (sub-)layer, that were not addressed to a +multicast or broadcast address at this sub-layer. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-unicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """in_unicast_pkts must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-unicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__in_unicast_pkts = t + if hasattr(self, '_set'): + self._set() + + def _unset_in_unicast_pkts(self): + self.__in_unicast_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-unicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_in_broadcast_pkts(self): + """ + Getter method for in_broadcast_pkts, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/in_broadcast_pkts (oc-yang:counter64) + + YANG Description: The number of packets, delivered by this sub-layer to a +higher (sub-)layer, that were addressed to a broadcast +address at this sub-layer. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__in_broadcast_pkts + + def _set_in_broadcast_pkts(self, v, load=False): + """ + Setter method for in_broadcast_pkts, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/in_broadcast_pkts (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_in_broadcast_pkts is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_in_broadcast_pkts() directly. + + YANG Description: The number of packets, delivered by this sub-layer to a +higher (sub-)layer, that were addressed to a broadcast +address at this sub-layer. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-broadcast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """in_broadcast_pkts must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-broadcast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__in_broadcast_pkts = t + if hasattr(self, '_set'): + self._set() + + def _unset_in_broadcast_pkts(self): + self.__in_broadcast_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-broadcast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_in_multicast_pkts(self): + """ + Getter method for in_multicast_pkts, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/in_multicast_pkts (oc-yang:counter64) + + YANG Description: The number of packets, delivered by this sub-layer to a +higher (sub-)layer, that were addressed to a multicast +address at this sub-layer. For a MAC-layer protocol, +this includes both Group and Functional addresses. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__in_multicast_pkts + + def _set_in_multicast_pkts(self, v, load=False): + """ + Setter method for in_multicast_pkts, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/in_multicast_pkts (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_in_multicast_pkts is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_in_multicast_pkts() directly. + + YANG Description: The number of packets, delivered by this sub-layer to a +higher (sub-)layer, that were addressed to a multicast +address at this sub-layer. For a MAC-layer protocol, +this includes both Group and Functional addresses. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-multicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """in_multicast_pkts must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-multicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__in_multicast_pkts = t + if hasattr(self, '_set'): + self._set() + + def _unset_in_multicast_pkts(self): + self.__in_multicast_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-multicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_in_discards(self): + """ + Getter method for in_discards, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/in_discards (oc-yang:counter64) + + YANG Description: The number of inbound packets that were chosen to be +discarded even though no errors had been detected to +prevent their being deliverable to a higher-layer +protocol. One possible reason for discarding such a +packet could be to free up buffer space. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__in_discards + + def _set_in_discards(self, v, load=False): + """ + Setter method for in_discards, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/in_discards (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_in_discards is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_in_discards() directly. + + YANG Description: The number of inbound packets that were chosen to be +discarded even though no errors had been detected to +prevent their being deliverable to a higher-layer +protocol. One possible reason for discarding such a +packet could be to free up buffer space. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-discards", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """in_discards must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-discards", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__in_discards = t + if hasattr(self, '_set'): + self._set() + + def _unset_in_discards(self): + self.__in_discards = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-discards", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_in_errors(self): + """ + Getter method for in_errors, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/in_errors (oc-yang:counter64) + + YANG Description: For packet-oriented interfaces, the number of inbound +packets that contained errors preventing them from being +deliverable to a higher-layer protocol. For character- +oriented or fixed-length interfaces, the number of +inbound transmission units that contained errors +preventing them from being deliverable to a higher-layer +protocol. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__in_errors + + def _set_in_errors(self, v, load=False): + """ + Setter method for in_errors, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/in_errors (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_in_errors is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_in_errors() directly. + + YANG Description: For packet-oriented interfaces, the number of inbound +packets that contained errors preventing them from being +deliverable to a higher-layer protocol. For character- +oriented or fixed-length interfaces, the number of +inbound transmission units that contained errors +preventing them from being deliverable to a higher-layer +protocol. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-errors", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """in_errors must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-errors", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__in_errors = t + if hasattr(self, '_set'): + self._set() + + def _unset_in_errors(self): + self.__in_errors = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-errors", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_in_unknown_protos(self): + """ + Getter method for in_unknown_protos, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/in_unknown_protos (oc-yang:counter64) + + YANG Description: For packet-oriented interfaces, the number of packets +received via the interface that were discarded because +of an unknown or unsupported protocol. For +character-oriented or fixed-length interfaces that +support protocol multiplexing, the number of +transmission units received via the interface that were +discarded because of an unknown or unsupported protocol. +For any interface that does not support protocol +multiplexing, this counter is not present. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__in_unknown_protos + + def _set_in_unknown_protos(self, v, load=False): + """ + Setter method for in_unknown_protos, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/in_unknown_protos (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_in_unknown_protos is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_in_unknown_protos() directly. + + YANG Description: For packet-oriented interfaces, the number of packets +received via the interface that were discarded because +of an unknown or unsupported protocol. For +character-oriented or fixed-length interfaces that +support protocol multiplexing, the number of +transmission units received via the interface that were +discarded because of an unknown or unsupported protocol. +For any interface that does not support protocol +multiplexing, this counter is not present. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-unknown-protos", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """in_unknown_protos must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-unknown-protos", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__in_unknown_protos = t + if hasattr(self, '_set'): + self._set() + + def _unset_in_unknown_protos(self): + self.__in_unknown_protos = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-unknown-protos", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_in_fcs_errors(self): + """ + Getter method for in_fcs_errors, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/in_fcs_errors (oc-yang:counter64) + + YANG Description: Number of received packets which had errors in the +frame check sequence (FCS), i.e., framing errors. + +Discontinuities in the value of this counter can occur +when the device is re-initialization as indicated by the +value of 'last-clear'. + """ + return self.__in_fcs_errors + + def _set_in_fcs_errors(self, v, load=False): + """ + Setter method for in_fcs_errors, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/in_fcs_errors (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_in_fcs_errors is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_in_fcs_errors() directly. + + YANG Description: Number of received packets which had errors in the +frame check sequence (FCS), i.e., framing errors. + +Discontinuities in the value of this counter can occur +when the device is re-initialization as indicated by the +value of 'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-fcs-errors", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """in_fcs_errors must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-fcs-errors", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__in_fcs_errors = t + if hasattr(self, '_set'): + self._set() + + def _unset_in_fcs_errors(self): + self.__in_fcs_errors = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="in-fcs-errors", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_out_octets(self): + """ + Getter method for out_octets, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/out_octets (oc-yang:counter64) + + YANG Description: The total number of octets transmitted out of the +interface, including framing characters. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__out_octets + + def _set_out_octets(self, v, load=False): + """ + Setter method for out_octets, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/out_octets (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_out_octets is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_out_octets() directly. + + YANG Description: The total number of octets transmitted out of the +interface, including framing characters. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """out_octets must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__out_octets = t + if hasattr(self, '_set'): + self._set() + + def _unset_out_octets(self): + self.__out_octets = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-octets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_out_pkts(self): + """ + Getter method for out_pkts, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/out_pkts (oc-yang:counter64) + + YANG Description: The total number of packets transmitted out of the +interface, including all unicast, multicast, broadcast, +and bad packets etc. + """ + return self.__out_pkts + + def _set_out_pkts(self, v, load=False): + """ + Setter method for out_pkts, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/out_pkts (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_out_pkts is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_out_pkts() directly. + + YANG Description: The total number of packets transmitted out of the +interface, including all unicast, multicast, broadcast, +and bad packets etc. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """out_pkts must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__out_pkts = t + if hasattr(self, '_set'): + self._set() + + def _unset_out_pkts(self): + self.__out_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_out_unicast_pkts(self): + """ + Getter method for out_unicast_pkts, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/out_unicast_pkts (oc-yang:counter64) + + YANG Description: The total number of packets that higher-level protocols +requested be transmitted, and that were not addressed +to a multicast or broadcast address at this sub-layer, +including those that were discarded or not sent. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__out_unicast_pkts + + def _set_out_unicast_pkts(self, v, load=False): + """ + Setter method for out_unicast_pkts, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/out_unicast_pkts (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_out_unicast_pkts is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_out_unicast_pkts() directly. + + YANG Description: The total number of packets that higher-level protocols +requested be transmitted, and that were not addressed +to a multicast or broadcast address at this sub-layer, +including those that were discarded or not sent. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-unicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """out_unicast_pkts must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-unicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__out_unicast_pkts = t + if hasattr(self, '_set'): + self._set() + + def _unset_out_unicast_pkts(self): + self.__out_unicast_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-unicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_out_broadcast_pkts(self): + """ + Getter method for out_broadcast_pkts, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/out_broadcast_pkts (oc-yang:counter64) + + YANG Description: The total number of packets that higher-level protocols +requested be transmitted, and that were addressed to a +broadcast address at this sub-layer, including those +that were discarded or not sent. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__out_broadcast_pkts + + def _set_out_broadcast_pkts(self, v, load=False): + """ + Setter method for out_broadcast_pkts, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/out_broadcast_pkts (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_out_broadcast_pkts is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_out_broadcast_pkts() directly. + + YANG Description: The total number of packets that higher-level protocols +requested be transmitted, and that were addressed to a +broadcast address at this sub-layer, including those +that were discarded or not sent. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-broadcast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """out_broadcast_pkts must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-broadcast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__out_broadcast_pkts = t + if hasattr(self, '_set'): + self._set() + + def _unset_out_broadcast_pkts(self): + self.__out_broadcast_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-broadcast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_out_multicast_pkts(self): + """ + Getter method for out_multicast_pkts, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/out_multicast_pkts (oc-yang:counter64) + + YANG Description: The total number of packets that higher-level protocols +requested be transmitted, and that were addressed to a +multicast address at this sub-layer, including those +that were discarded or not sent. For a MAC-layer +protocol, this includes both Group and Functional +addresses. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__out_multicast_pkts + + def _set_out_multicast_pkts(self, v, load=False): + """ + Setter method for out_multicast_pkts, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/out_multicast_pkts (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_out_multicast_pkts is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_out_multicast_pkts() directly. + + YANG Description: The total number of packets that higher-level protocols +requested be transmitted, and that were addressed to a +multicast address at this sub-layer, including those +that were discarded or not sent. For a MAC-layer +protocol, this includes both Group and Functional +addresses. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-multicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """out_multicast_pkts must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-multicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__out_multicast_pkts = t + if hasattr(self, '_set'): + self._set() + + def _unset_out_multicast_pkts(self): + self.__out_multicast_pkts = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-multicast-pkts", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_out_discards(self): + """ + Getter method for out_discards, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/out_discards (oc-yang:counter64) + + YANG Description: The number of outbound packets that were chosen to be +discarded even though no errors had been detected to +prevent their being transmitted. One possible reason +for discarding such a packet could be to free up buffer +space. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__out_discards + + def _set_out_discards(self, v, load=False): + """ + Setter method for out_discards, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/out_discards (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_out_discards is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_out_discards() directly. + + YANG Description: The number of outbound packets that were chosen to be +discarded even though no errors had been detected to +prevent their being transmitted. One possible reason +for discarding such a packet could be to free up buffer +space. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-discards", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """out_discards must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-discards", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__out_discards = t + if hasattr(self, '_set'): + self._set() + + def _unset_out_discards(self): + self.__out_discards = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-discards", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_out_errors(self): + """ + Getter method for out_errors, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/out_errors (oc-yang:counter64) + + YANG Description: For packet-oriented interfaces, the number of outbound +packets that could not be transmitted because of errors. +For character-oriented or fixed-length interfaces, the +number of outbound transmission units that could not be +transmitted because of errors. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + return self.__out_errors + + def _set_out_errors(self, v, load=False): + """ + Setter method for out_errors, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/out_errors (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_out_errors is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_out_errors() directly. + + YANG Description: For packet-oriented interfaces, the number of outbound +packets that could not be transmitted because of errors. +For character-oriented or fixed-length interfaces, the +number of outbound transmission units that could not be +transmitted because of errors. + +Discontinuities in the value of this counter can occur +at re-initialization of the management system, and at +other times as indicated by the value of +'last-clear'. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-errors", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """out_errors must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-errors", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__out_errors = t + if hasattr(self, '_set'): + self._set() + + def _unset_out_errors(self): + self.__out_errors = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="out-errors", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_carrier_transitions(self): + """ + Getter method for carrier_transitions, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/carrier_transitions (oc-yang:counter64) + + YANG Description: Number of times the interface state has transitioned +between up and down since the time the device restarted +or the last-clear time, whichever is most recent. + """ + return self.__carrier_transitions + + def _set_carrier_transitions(self, v, load=False): + """ + Setter method for carrier_transitions, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/carrier_transitions (oc-yang:counter64) + If this variable is read-only (config: false) in the + source YANG file, then _set_carrier_transitions is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_carrier_transitions() directly. + + YANG Description: Number of times the interface state has transitioned +between up and down since the time the device restarted +or the last-clear time, whichever is most recent. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="carrier-transitions", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """carrier_transitions must be of a type compatible with oc-yang:counter64""", + 'defined-type': "oc-yang:counter64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="carrier-transitions", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False)""", + }) + + self.__carrier_transitions = t + if hasattr(self, '_set'): + self._set() + + def _unset_carrier_transitions(self): + self.__carrier_transitions = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="carrier-transitions", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-yang:counter64', is_config=False) + + + def _get_last_clear(self): + """ + Getter method for last_clear, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/last_clear (oc-types:timeticks64) + + YANG Description: Timestamp of the last time the interface counters were +cleared. + +The value is the timestamp in nanoseconds relative to +the Unix Epoch (Jan 1, 1970 00:00:00 UTC). + """ + return self.__last_clear + + def _set_last_clear(self, v, load=False): + """ + Setter method for last_clear, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters/last_clear (oc-types:timeticks64) + If this variable is read-only (config: false) in the + source YANG file, then _set_last_clear is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_last_clear() directly. + + YANG Description: Timestamp of the last time the interface counters were +cleared. + +The value is the timestamp in nanoseconds relative to +the Unix Epoch (Jan 1, 1970 00:00:00 UTC). + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="last-clear", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-types:timeticks64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """last_clear must be of a type compatible with oc-types:timeticks64""", + 'defined-type': "oc-types:timeticks64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="last-clear", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-types:timeticks64', is_config=False)""", + }) + + self.__last_clear = t + if hasattr(self, '_set'): + self._set() + + def _unset_last_clear(self): + self.__last_clear = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="last-clear", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-types:timeticks64', is_config=False) + + in_octets = __builtin__.property(_get_in_octets) + in_pkts = __builtin__.property(_get_in_pkts) + in_unicast_pkts = __builtin__.property(_get_in_unicast_pkts) + in_broadcast_pkts = __builtin__.property(_get_in_broadcast_pkts) + in_multicast_pkts = __builtin__.property(_get_in_multicast_pkts) + in_discards = __builtin__.property(_get_in_discards) + in_errors = __builtin__.property(_get_in_errors) + in_unknown_protos = __builtin__.property(_get_in_unknown_protos) + in_fcs_errors = __builtin__.property(_get_in_fcs_errors) + out_octets = __builtin__.property(_get_out_octets) + out_pkts = __builtin__.property(_get_out_pkts) + out_unicast_pkts = __builtin__.property(_get_out_unicast_pkts) + out_broadcast_pkts = __builtin__.property(_get_out_broadcast_pkts) + out_multicast_pkts = __builtin__.property(_get_out_multicast_pkts) + out_discards = __builtin__.property(_get_out_discards) + out_errors = __builtin__.property(_get_out_errors) + carrier_transitions = __builtin__.property(_get_carrier_transitions) + last_clear = __builtin__.property(_get_last_clear) + + + _pyangbind_elements = OrderedDict([('in_octets', in_octets), ('in_pkts', in_pkts), ('in_unicast_pkts', in_unicast_pkts), ('in_broadcast_pkts', in_broadcast_pkts), ('in_multicast_pkts', in_multicast_pkts), ('in_discards', in_discards), ('in_errors', in_errors), ('in_unknown_protos', in_unknown_protos), ('in_fcs_errors', in_fcs_errors), ('out_octets', out_octets), ('out_pkts', out_pkts), ('out_unicast_pkts', out_unicast_pkts), ('out_broadcast_pkts', out_broadcast_pkts), ('out_multicast_pkts', out_multicast_pkts), ('out_discards', out_discards), ('out_errors', out_errors), ('carrier_transitions', carrier_transitions), ('last_clear', last_clear), ]) + + +class yc_state_openconfig_interfaces__interfaces_interface_subinterfaces_subinterface_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-interfaces - based on the path /interfaces/interface/subinterfaces/subinterface/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state data for logical interfaces + """ + __slots__ = ('_path_helper', '_extmethods', '__index','__description','__enabled','__name','__ifindex','__admin_status','__oper_status','__last_change','__logical','__management','__cpu','__counters',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/interfaces' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__index = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(0), is_leaf=True, yang_name="index", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=False) + self.__description = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=False) + self.__enabled = YANGDynClass(base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=False) + self.__ifindex = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="ifindex", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=False) + self.__admin_status = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'UP': {}, 'DOWN': {}, 'TESTING': {}},), is_leaf=True, yang_name="admin-status", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='enumeration', is_config=False) + self.__oper_status = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'UP': {'value': 1}, 'DOWN': {'value': 2}, 'TESTING': {'value': 3}, 'UNKNOWN': {'value': 4}, 'DORMANT': {'value': 5}, 'NOT_PRESENT': {'value': 6}, 'LOWER_LAYER_DOWN': {'value': 7}},), is_leaf=True, yang_name="oper-status", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='enumeration', is_config=False) + self.__last_change = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="last-change", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-types:timeticks64', is_config=False) + self.__logical = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="logical", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + self.__management = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="management", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + self.__cpu = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="cpu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + self.__counters = YANGDynClass(base=yc_counters_openconfig_interfaces__interfaces_interface_subinterfaces_subinterface_state_counters, is_container='container', yang_name="counters", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['interfaces', 'interface', 'subinterfaces', 'subinterface', 'state'] + + def _get_index(self): + """ + Getter method for index, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/index (uint32) + + YANG Description: The index of the subinterface, or logical interface number. +On systems with no support for subinterfaces, or not using +subinterfaces, this value should default to 0, i.e., the +default subinterface. + """ + return self.__index + + def _set_index(self, v, load=False): + """ + Setter method for index, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/index (uint32) + If this variable is read-only (config: false) in the + source YANG file, then _set_index is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_index() directly. + + YANG Description: The index of the subinterface, or logical interface number. +On systems with no support for subinterfaces, or not using +subinterfaces, this value should default to 0, i.e., the +default subinterface. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(0), is_leaf=True, yang_name="index", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """index must be of a type compatible with uint32""", + 'defined-type': "uint32", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(0), is_leaf=True, yang_name="index", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=False)""", + }) + + self.__index = t + if hasattr(self, '_set'): + self._set() + + def _unset_index(self): + self.__index = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(0), is_leaf=True, yang_name="index", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=False) + + + def _get_description(self): + """ + Getter method for description, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/description (string) + + YANG Description: A textual description of the interface. + +A server implementation MAY map this leaf to the ifAlias +MIB object. Such an implementation needs to use some +mechanism to handle the differences in size and characters +allowed between this leaf and ifAlias. The definition of +such a mechanism is outside the scope of this document. + +Since ifAlias is defined to be stored in non-volatile +storage, the MIB implementation MUST map ifAlias to the +value of 'description' in the persistently stored +datastore. + +Specifically, if the device supports ':startup', when +ifAlias is read the device MUST return the value of +'description' in the 'startup' datastore, and when it is +written, it MUST be written to the 'running' and 'startup' +datastores. Note that it is up to the implementation to + +decide whether to modify this single leaf in 'startup' or +perform an implicit copy-config from 'running' to +'startup'. + +If the device does not support ':startup', ifAlias MUST +be mapped to the 'description' leaf in the 'running' +datastore. + """ + return self.__description + + def _set_description(self, v, load=False): + """ + Setter method for description, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/description (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_description is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_description() directly. + + YANG Description: A textual description of the interface. + +A server implementation MAY map this leaf to the ifAlias +MIB object. Such an implementation needs to use some +mechanism to handle the differences in size and characters +allowed between this leaf and ifAlias. The definition of +such a mechanism is outside the scope of this document. + +Since ifAlias is defined to be stored in non-volatile +storage, the MIB implementation MUST map ifAlias to the +value of 'description' in the persistently stored +datastore. + +Specifically, if the device supports ':startup', when +ifAlias is read the device MUST return the value of +'description' in the 'startup' datastore, and when it is +written, it MUST be written to the 'running' and 'startup' +datastores. Note that it is up to the implementation to + +decide whether to modify this single leaf in 'startup' or +perform an implicit copy-config from 'running' to +'startup'. + +If the device does not support ':startup', ifAlias MUST +be mapped to the 'description' leaf in the 'running' +datastore. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """description must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=False)""", + }) + + self.__description = t + if hasattr(self, '_set'): + self._set() + + def _unset_description(self): + self.__description = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=False) + + + def _get_enabled(self): + """ + Getter method for enabled, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/enabled (boolean) + + YANG Description: This leaf contains the configured, desired state of the +interface. + +Systems that implement the IF-MIB use the value of this +leaf in the 'running' datastore to set +IF-MIB.ifAdminStatus to 'up' or 'down' after an ifEntry +has been initialized, as described in RFC 2863. + +Changes in this leaf in the 'running' datastore are +reflected in ifAdminStatus, but if ifAdminStatus is +changed over SNMP, this leaf is not affected. + """ + return self.__enabled + + def _set_enabled(self, v, load=False): + """ + Setter method for enabled, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/enabled (boolean) + If this variable is read-only (config: false) in the + source YANG file, then _set_enabled is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_enabled() directly. + + YANG Description: This leaf contains the configured, desired state of the +interface. + +Systems that implement the IF-MIB use the value of this +leaf in the 'running' datastore to set +IF-MIB.ifAdminStatus to 'up' or 'down' after an ifEntry +has been initialized, as described in RFC 2863. + +Changes in this leaf in the 'running' datastore are +reflected in ifAdminStatus, but if ifAdminStatus is +changed over SNMP, this leaf is not affected. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """enabled must be of a type compatible with boolean""", + 'defined-type': "boolean", + 'generated-type': """YANGDynClass(base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False)""", + }) + + self.__enabled = t + if hasattr(self, '_set'): + self._set() + + def _unset_enabled(self): + self.__enabled = YANGDynClass(base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + + + def _get_name(self): + """ + Getter method for name, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/name (string) + + YANG Description: The system-assigned name for the sub-interface. This MAY +be a combination of the base interface name and the +subinterface index, or some other convention used by the +system. + """ + return self.__name + + def _set_name(self, v, load=False): + """ + Setter method for name, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/name (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_name() directly. + + YANG Description: The system-assigned name for the sub-interface. This MAY +be a combination of the base interface name and the +subinterface index, or some other convention used by the +system. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """name must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=False)""", + }) + + self.__name = t + if hasattr(self, '_set'): + self._set() + + def _unset_name(self): + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='string', is_config=False) + + + def _get_ifindex(self): + """ + Getter method for ifindex, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/ifindex (uint32) + + YANG Description: System assigned number for each interface. Corresponds to +ifIndex object in SNMP Interface MIB + """ + return self.__ifindex + + def _set_ifindex(self, v, load=False): + """ + Setter method for ifindex, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/ifindex (uint32) + If this variable is read-only (config: false) in the + source YANG file, then _set_ifindex is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_ifindex() directly. + + YANG Description: System assigned number for each interface. Corresponds to +ifIndex object in SNMP Interface MIB + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="ifindex", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """ifindex must be of a type compatible with uint32""", + 'defined-type': "uint32", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="ifindex", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=False)""", + }) + + self.__ifindex = t + if hasattr(self, '_set'): + self._set() + + def _unset_ifindex(self): + self.__ifindex = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="ifindex", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='uint32', is_config=False) + + + def _get_admin_status(self): + """ + Getter method for admin_status, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/admin_status (enumeration) + + YANG Description: The desired state of the interface. In RFC 7223 this leaf +has the same read semantics as ifAdminStatus. Here, it +reflects the administrative state as set by enabling or +disabling the interface. + """ + return self.__admin_status + + def _set_admin_status(self, v, load=False): + """ + Setter method for admin_status, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/admin_status (enumeration) + If this variable is read-only (config: false) in the + source YANG file, then _set_admin_status is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_admin_status() directly. + + YANG Description: The desired state of the interface. In RFC 7223 this leaf +has the same read semantics as ifAdminStatus. Here, it +reflects the administrative state as set by enabling or +disabling the interface. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'UP': {}, 'DOWN': {}, 'TESTING': {}},), is_leaf=True, yang_name="admin-status", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='enumeration', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """admin_status must be of a type compatible with enumeration""", + 'defined-type': "openconfig-interfaces:enumeration", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'UP': {}, 'DOWN': {}, 'TESTING': {}},), is_leaf=True, yang_name="admin-status", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='enumeration', is_config=False)""", + }) + + self.__admin_status = t + if hasattr(self, '_set'): + self._set() + + def _unset_admin_status(self): + self.__admin_status = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'UP': {}, 'DOWN': {}, 'TESTING': {}},), is_leaf=True, yang_name="admin-status", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='enumeration', is_config=False) + + + def _get_oper_status(self): + """ + Getter method for oper_status, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/oper_status (enumeration) + + YANG Description: The current operational state of the interface. + +This leaf has the same semantics as ifOperStatus. + """ + return self.__oper_status + + def _set_oper_status(self, v, load=False): + """ + Setter method for oper_status, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/oper_status (enumeration) + If this variable is read-only (config: false) in the + source YANG file, then _set_oper_status is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_oper_status() directly. + + YANG Description: The current operational state of the interface. + +This leaf has the same semantics as ifOperStatus. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'UP': {'value': 1}, 'DOWN': {'value': 2}, 'TESTING': {'value': 3}, 'UNKNOWN': {'value': 4}, 'DORMANT': {'value': 5}, 'NOT_PRESENT': {'value': 6}, 'LOWER_LAYER_DOWN': {'value': 7}},), is_leaf=True, yang_name="oper-status", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='enumeration', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """oper_status must be of a type compatible with enumeration""", + 'defined-type': "openconfig-interfaces:enumeration", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'UP': {'value': 1}, 'DOWN': {'value': 2}, 'TESTING': {'value': 3}, 'UNKNOWN': {'value': 4}, 'DORMANT': {'value': 5}, 'NOT_PRESENT': {'value': 6}, 'LOWER_LAYER_DOWN': {'value': 7}},), is_leaf=True, yang_name="oper-status", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='enumeration', is_config=False)""", + }) + + self.__oper_status = t + if hasattr(self, '_set'): + self._set() + + def _unset_oper_status(self): + self.__oper_status = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'UP': {'value': 1}, 'DOWN': {'value': 2}, 'TESTING': {'value': 3}, 'UNKNOWN': {'value': 4}, 'DORMANT': {'value': 5}, 'NOT_PRESENT': {'value': 6}, 'LOWER_LAYER_DOWN': {'value': 7}},), is_leaf=True, yang_name="oper-status", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='enumeration', is_config=False) + + + def _get_last_change(self): + """ + Getter method for last_change, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/last_change (oc-types:timeticks64) + + YANG Description: This timestamp indicates the absolute time of the last +state change of the interface (e.g., up-to-down transition). +This is different than the SNMP ifLastChange object in the +standard interface MIB in that it is not relative to the +system boot time (i.e,. sysUpTime). + +The value is the timestamp in nanoseconds relative to +the Unix Epoch (Jan 1, 1970 00:00:00 UTC). + """ + return self.__last_change + + def _set_last_change(self, v, load=False): + """ + Setter method for last_change, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/last_change (oc-types:timeticks64) + If this variable is read-only (config: false) in the + source YANG file, then _set_last_change is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_last_change() directly. + + YANG Description: This timestamp indicates the absolute time of the last +state change of the interface (e.g., up-to-down transition). +This is different than the SNMP ifLastChange object in the +standard interface MIB in that it is not relative to the +system boot time (i.e,. sysUpTime). + +The value is the timestamp in nanoseconds relative to +the Unix Epoch (Jan 1, 1970 00:00:00 UTC). + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="last-change", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-types:timeticks64', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """last_change must be of a type compatible with oc-types:timeticks64""", + 'defined-type': "oc-types:timeticks64", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="last-change", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-types:timeticks64', is_config=False)""", + }) + + self.__last_change = t + if hasattr(self, '_set'): + self._set() + + def _unset_last_change(self): + self.__last_change = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="last-change", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='oc-types:timeticks64', is_config=False) + + + def _get_logical(self): + """ + Getter method for logical, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/logical (boolean) + + YANG Description: When set to true, the interface is a logical interface +which does not have an associated physical port or +channel on the system. + """ + return self.__logical + + def _set_logical(self, v, load=False): + """ + Setter method for logical, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/logical (boolean) + If this variable is read-only (config: false) in the + source YANG file, then _set_logical is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_logical() directly. + + YANG Description: When set to true, the interface is a logical interface +which does not have an associated physical port or +channel on the system. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="logical", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """logical must be of a type compatible with boolean""", + 'defined-type': "boolean", + 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="logical", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False)""", + }) + + self.__logical = t + if hasattr(self, '_set'): + self._set() + + def _unset_logical(self): + self.__logical = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="logical", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + + + def _get_management(self): + """ + Getter method for management, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/management (boolean) + + YANG Description: When set to true, the interface is a dedicated +management interface that is not connected to dataplane +interfaces. It may be used to connect the system to an +out-of-band management network, for example. + """ + return self.__management + + def _set_management(self, v, load=False): + """ + Setter method for management, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/management (boolean) + If this variable is read-only (config: false) in the + source YANG file, then _set_management is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_management() directly. + + YANG Description: When set to true, the interface is a dedicated +management interface that is not connected to dataplane +interfaces. It may be used to connect the system to an +out-of-band management network, for example. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="management", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """management must be of a type compatible with boolean""", + 'defined-type': "boolean", + 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="management", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False)""", + }) + + self.__management = t + if hasattr(self, '_set'): + self._set() + + def _unset_management(self): + self.__management = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="management", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + + + def _get_cpu(self): + """ + Getter method for cpu, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/cpu (boolean) + + YANG Description: When set to true, the interface is for traffic +that is handled by the system CPU, sometimes also called the +control plane interface. On systems that represent the CPU +interface as an Ethernet interface, for example, this leaf +should be used to distinguish the CPU interface from dataplane +interfaces. + """ + return self.__cpu + + def _set_cpu(self, v, load=False): + """ + Setter method for cpu, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/cpu (boolean) + If this variable is read-only (config: false) in the + source YANG file, then _set_cpu is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_cpu() directly. + + YANG Description: When set to true, the interface is for traffic +that is handled by the system CPU, sometimes also called the +control plane interface. On systems that represent the CPU +interface as an Ethernet interface, for example, this leaf +should be used to distinguish the CPU interface from dataplane +interfaces. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="cpu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """cpu must be of a type compatible with boolean""", + 'defined-type': "boolean", + 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="cpu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False)""", + }) + + self.__cpu = t + if hasattr(self, '_set'): + self._set() + + def _unset_cpu(self): + self.__cpu = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="cpu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='boolean', is_config=False) + + + def _get_counters(self): + """ + Getter method for counters, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters (container) + + YANG Description: A collection of interface-related statistics objects. + """ + return self.__counters + + def _set_counters(self, v, load=False): + """ + Setter method for counters, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state/counters (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_counters is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_counters() directly. + + YANG Description: A collection of interface-related statistics objects. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_counters_openconfig_interfaces__interfaces_interface_subinterfaces_subinterface_state_counters, is_container='container', yang_name="counters", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """counters must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_counters_openconfig_interfaces__interfaces_interface_subinterfaces_subinterface_state_counters, is_container='container', yang_name="counters", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=False)""", + }) + + self.__counters = t + if hasattr(self, '_set'): + self._set() + + def _unset_counters(self): + self.__counters = YANGDynClass(base=yc_counters_openconfig_interfaces__interfaces_interface_subinterfaces_subinterface_state_counters, is_container='container', yang_name="counters", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=False) + + index = __builtin__.property(_get_index) + description = __builtin__.property(_get_description) + enabled = __builtin__.property(_get_enabled) + name = __builtin__.property(_get_name) + ifindex = __builtin__.property(_get_ifindex) + admin_status = __builtin__.property(_get_admin_status) + oper_status = __builtin__.property(_get_oper_status) + last_change = __builtin__.property(_get_last_change) + logical = __builtin__.property(_get_logical) + management = __builtin__.property(_get_management) + cpu = __builtin__.property(_get_cpu) + counters = __builtin__.property(_get_counters) + + + _pyangbind_elements = OrderedDict([('index', index), ('description', description), ('enabled', enabled), ('name', name), ('ifindex', ifindex), ('admin_status', admin_status), ('oper_status', oper_status), ('last_change', last_change), ('logical', logical), ('management', management), ('cpu', cpu), ('counters', counters), ]) + + +class yc_subinterface_openconfig_interfaces__interfaces_interface_subinterfaces_subinterface(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-interfaces - based on the path /interfaces/interface/subinterfaces/subinterface. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: The list of subinterfaces (logical interfaces) associated +with a physical interface + """ + __slots__ = ('_path_helper', '_extmethods', '__index','__config','__state',) + + _yang_name = 'subinterface' + _yang_namespace = 'http://openconfig.net/yang/interfaces' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__index = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="index", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='leafref', is_config=True) + self.__config = YANGDynClass(base=yc_config_openconfig_interfaces__interfaces_interface_subinterfaces_subinterface_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_interfaces__interfaces_interface_subinterfaces_subinterface_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['interfaces', 'interface', 'subinterfaces', 'subinterface'] + + def _get_index(self): + """ + Getter method for index, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/index (leafref) + + YANG Description: The index number of the subinterface -- used to address +the logical interface + """ + return self.__index + + def _set_index(self, v, load=False): + """ + Setter method for index, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/index (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_index is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_index() directly. + + YANG Description: The index number of the subinterface -- used to address +the logical interface + """ + parent = getattr(self, "_parent", None) + if parent is not None and load is False: + raise AttributeError("Cannot set keys directly when" + + " within an instantiated list") + + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="index", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """index must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="index", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='leafref', is_config=True)""", + }) + + self.__index = t + if hasattr(self, '_set'): + self._set() + + def _unset_index(self): + self.__index = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="index", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='leafref', is_config=True) + + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/config (container) + + YANG Description: Configurable items at the subinterface level + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configurable items at the subinterface level + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_interfaces__interfaces_interface_subinterfaces_subinterface_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_interfaces__interfaces_interface_subinterfaces_subinterface_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_interfaces__interfaces_interface_subinterfaces_subinterface_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state (container) + + YANG Description: Operational state data for logical interfaces + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state data for logical interfaces + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_interfaces__interfaces_interface_subinterfaces_subinterface_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_interfaces__interfaces_interface_subinterfaces_subinterface_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_interfaces__interfaces_interface_subinterfaces_subinterface_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + + index = __builtin__.property(_get_index, _set_index) + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + + + _pyangbind_elements = OrderedDict([('index', index), ('config', config), ('state', state), ]) + + +class yc_subinterfaces_openconfig_interfaces__interfaces_interface_subinterfaces(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-interfaces - based on the path /interfaces/interface/subinterfaces. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Enclosing container for the list of subinterfaces associated +with a physical interface + """ + __slots__ = ('_path_helper', '_extmethods', '__subinterface',) + + _yang_name = 'subinterfaces' + _yang_namespace = 'http://openconfig.net/yang/interfaces' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__subinterface = YANGDynClass(base=YANGListType("index",yc_subinterface_openconfig_interfaces__interfaces_interface_subinterfaces_subinterface, yang_name="subinterface", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='index', extensions=None), is_container='list', yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='list', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['interfaces', 'interface', 'subinterfaces'] + + def _get_subinterface(self): + """ + Getter method for subinterface, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface (list) + + YANG Description: The list of subinterfaces (logical interfaces) associated +with a physical interface + """ + return self.__subinterface + + def _set_subinterface(self, v, load=False): + """ + Setter method for subinterface, mapped from YANG variable /interfaces/interface/subinterfaces/subinterface (list) + If this variable is read-only (config: false) in the + source YANG file, then _set_subinterface is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_subinterface() directly. + + YANG Description: The list of subinterfaces (logical interfaces) associated +with a physical interface + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGListType("index",yc_subinterface_openconfig_interfaces__interfaces_interface_subinterfaces_subinterface, yang_name="subinterface", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='index', extensions=None), is_container='list', yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='list', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """subinterface must be of a type compatible with list""", + 'defined-type': "list", + 'generated-type': """YANGDynClass(base=YANGListType("index",yc_subinterface_openconfig_interfaces__interfaces_interface_subinterfaces_subinterface, yang_name="subinterface", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='index', extensions=None), is_container='list', yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='list', is_config=True)""", + }) + + self.__subinterface = t + if hasattr(self, '_set'): + self._set() + + def _unset_subinterface(self): + self.__subinterface = YANGDynClass(base=YANGListType("index",yc_subinterface_openconfig_interfaces__interfaces_interface_subinterfaces_subinterface, yang_name="subinterface", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='index', extensions=None), is_container='list', yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='list', is_config=True) + + subinterface = __builtin__.property(_get_subinterface, _set_subinterface) + + + _pyangbind_elements = OrderedDict([('subinterface', subinterface), ]) + + +class yc_interface_openconfig_interfaces__interfaces_interface(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-interfaces - based on the path /interfaces/interface. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: The list of named interfaces on the device. + """ + __slots__ = ('_path_helper', '_extmethods', '__name','__config','__state','__hold_time','__subinterfaces',) + + _yang_name = 'interface' + _yang_namespace = 'http://openconfig.net/yang/interfaces' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='leafref', is_config=True) + self.__config = YANGDynClass(base=yc_config_openconfig_interfaces__interfaces_interface_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_interfaces__interfaces_interface_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + self.__hold_time = YANGDynClass(base=yc_hold_time_openconfig_interfaces__interfaces_interface_hold_time, is_container='container', yang_name="hold-time", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + self.__subinterfaces = YANGDynClass(base=yc_subinterfaces_openconfig_interfaces__interfaces_interface_subinterfaces, is_container='container', yang_name="subinterfaces", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['interfaces', 'interface'] + + def _get_name(self): + """ + Getter method for name, mapped from YANG variable /interfaces/interface/name (leafref) + + YANG Description: References the name of the interface + """ + return self.__name + + def _set_name(self, v, load=False): + """ + Setter method for name, mapped from YANG variable /interfaces/interface/name (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_name() directly. + + YANG Description: References the name of the interface + """ + parent = getattr(self, "_parent", None) + if parent is not None and load is False: + raise AttributeError("Cannot set keys directly when" + + " within an instantiated list") + + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """name must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='leafref', is_config=True)""", + }) + + self.__name = t + if hasattr(self, '_set'): + self._set() + + def _unset_name(self): + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='leafref', is_config=True) + + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /interfaces/interface/config (container) + + YANG Description: Configurable items at the global, physical interface +level + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /interfaces/interface/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configurable items at the global, physical interface +level + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_interfaces__interfaces_interface_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_interfaces__interfaces_interface_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_interfaces__interfaces_interface_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /interfaces/interface/state (container) + + YANG Description: Operational state data at the global interface level + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /interfaces/interface/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state data at the global interface level + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_interfaces__interfaces_interface_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_interfaces__interfaces_interface_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_interfaces__interfaces_interface_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + + + def _get_hold_time(self): + """ + Getter method for hold_time, mapped from YANG variable /interfaces/interface/hold_time (container) + + YANG Description: Top-level container for hold-time settings to enable +dampening advertisements of interface transitions. + """ + return self.__hold_time + + def _set_hold_time(self, v, load=False): + """ + Setter method for hold_time, mapped from YANG variable /interfaces/interface/hold_time (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_hold_time is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_hold_time() directly. + + YANG Description: Top-level container for hold-time settings to enable +dampening advertisements of interface transitions. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_hold_time_openconfig_interfaces__interfaces_interface_hold_time, is_container='container', yang_name="hold-time", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """hold_time must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_hold_time_openconfig_interfaces__interfaces_interface_hold_time, is_container='container', yang_name="hold-time", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True)""", + }) + + self.__hold_time = t + if hasattr(self, '_set'): + self._set() + + def _unset_hold_time(self): + self.__hold_time = YANGDynClass(base=yc_hold_time_openconfig_interfaces__interfaces_interface_hold_time, is_container='container', yang_name="hold-time", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + + + def _get_subinterfaces(self): + """ + Getter method for subinterfaces, mapped from YANG variable /interfaces/interface/subinterfaces (container) + + YANG Description: Enclosing container for the list of subinterfaces associated +with a physical interface + """ + return self.__subinterfaces + + def _set_subinterfaces(self, v, load=False): + """ + Setter method for subinterfaces, mapped from YANG variable /interfaces/interface/subinterfaces (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_subinterfaces is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_subinterfaces() directly. + + YANG Description: Enclosing container for the list of subinterfaces associated +with a physical interface + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_subinterfaces_openconfig_interfaces__interfaces_interface_subinterfaces, is_container='container', yang_name="subinterfaces", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """subinterfaces must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_subinterfaces_openconfig_interfaces__interfaces_interface_subinterfaces, is_container='container', yang_name="subinterfaces", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True)""", + }) + + self.__subinterfaces = t + if hasattr(self, '_set'): + self._set() + + def _unset_subinterfaces(self): + self.__subinterfaces = YANGDynClass(base=yc_subinterfaces_openconfig_interfaces__interfaces_interface_subinterfaces, is_container='container', yang_name="subinterfaces", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + + name = __builtin__.property(_get_name, _set_name) + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + hold_time = __builtin__.property(_get_hold_time, _set_hold_time) + subinterfaces = __builtin__.property(_get_subinterfaces, _set_subinterfaces) + + + _pyangbind_elements = OrderedDict([('name', name), ('config', config), ('state', state), ('hold_time', hold_time), ('subinterfaces', subinterfaces), ]) + + +class yc_interfaces_openconfig_interfaces__interfaces(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-interfaces - based on the path /interfaces. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Top level container for interfaces, including configuration +and state data. + """ + __slots__ = ('_path_helper', '_extmethods', '__interface',) + + _yang_name = 'interfaces' + _yang_namespace = 'http://openconfig.net/yang/interfaces' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__interface = YANGDynClass(base=YANGListType("name",yc_interface_openconfig_interfaces__interfaces_interface, yang_name="interface", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='list', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['interfaces'] + + def _get_interface(self): + """ + Getter method for interface, mapped from YANG variable /interfaces/interface (list) + + YANG Description: The list of named interfaces on the device. + """ + return self.__interface + + def _set_interface(self, v, load=False): + """ + Setter method for interface, mapped from YANG variable /interfaces/interface (list) + If this variable is read-only (config: false) in the + source YANG file, then _set_interface is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_interface() directly. + + YANG Description: The list of named interfaces on the device. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGListType("name",yc_interface_openconfig_interfaces__interfaces_interface, yang_name="interface", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='list', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """interface must be of a type compatible with list""", + 'defined-type': "list", + 'generated-type': """YANGDynClass(base=YANGListType("name",yc_interface_openconfig_interfaces__interfaces_interface, yang_name="interface", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='list', is_config=True)""", + }) + + self.__interface = t + if hasattr(self, '_set'): + self._set() + + def _unset_interface(self): + self.__interface = YANGDynClass(base=YANGListType("name",yc_interface_openconfig_interfaces__interfaces_interface, yang_name="interface", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='list', is_config=True) + + interface = __builtin__.property(_get_interface, _set_interface) + + + _pyangbind_elements = OrderedDict([('interface', interface), ]) + + +class openconfig_interfaces(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-interfaces - based on the path /openconfig-interfaces. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Model for managing network interfaces and subinterfaces. This +module also defines convenience types / groupings for other +models to create references to interfaces: + + base-interface-ref (type) - reference to a base interface + interface-ref (grouping) - container for reference to a + interface + subinterface + interface-ref-state (grouping) - container for read-only + (opstate) reference to interface + subinterface + +This model reuses data items defined in the IETF YANG model for +interfaces described by RFC 7223 with an alternate structure +(particularly for operational state data) and with +additional configuration items. + +Portions of this code were derived from IETF RFC 7223. +Please reproduce this note if possible. + +IETF code is subject to the following copyright and license: +Copyright (c) IETF Trust and the persons identified as authors of +the code. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, is permitted pursuant to, and subject to the license +terms contained in, the Simplified BSD License set forth in +Section 4.c of the IETF Trust's Legal Provisions Relating +to IETF Documents (http://trustee.ietf.org/license-info). + """ + __slots__ = ('_path_helper', '_extmethods', '__interfaces',) + + _yang_name = 'openconfig-interfaces' + _yang_namespace = 'http://openconfig.net/yang/interfaces' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__interfaces = YANGDynClass(base=yc_interfaces_openconfig_interfaces__interfaces, is_container='container', yang_name="interfaces", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return [] + + def _get_interfaces(self): + """ + Getter method for interfaces, mapped from YANG variable /interfaces (container) + + YANG Description: Top level container for interfaces, including configuration +and state data. + """ + return self.__interfaces + + def _set_interfaces(self, v, load=False): + """ + Setter method for interfaces, mapped from YANG variable /interfaces (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_interfaces is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_interfaces() directly. + + YANG Description: Top level container for interfaces, including configuration +and state data. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_interfaces_openconfig_interfaces__interfaces, is_container='container', yang_name="interfaces", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """interfaces must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_interfaces_openconfig_interfaces__interfaces, is_container='container', yang_name="interfaces", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True)""", + }) + + self.__interfaces = t + if hasattr(self, '_set'): + self._set() + + def _unset_interfaces(self): + self.__interfaces = YANGDynClass(base=yc_interfaces_openconfig_interfaces__interfaces, is_container='container', yang_name="interfaces", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/interfaces', defining_module='openconfig-interfaces', yang_type='container', is_config=True) + + interfaces = __builtin__.property(_get_interfaces, _set_interfaces) + + + _pyangbind_elements = OrderedDict([('interfaces', interfaces), ]) + + diff --git a/src/device/service/drivers/openconfig/templates/VPN/openconfig_network_instance.py b/src/device/service/drivers/openconfig/templates/VPN/openconfig_network_instance.py new file mode 100644 index 0000000000000000000000000000000000000000..e50da01d286fa4af706c564475b7113311e1bbc8 Binary files /dev/null and b/src/device/service/drivers/openconfig/templates/VPN/openconfig_network_instance.py differ diff --git a/src/device/service/drivers/openconfig/templates/VPN/openconfig_routing_policy.py b/src/device/service/drivers/openconfig/templates/VPN/openconfig_routing_policy.py new file mode 100644 index 0000000000000000000000000000000000000000..c72a0a80e234fbe303b14d0e509b6c70923f9883 --- /dev/null +++ b/src/device/service/drivers/openconfig/templates/VPN/openconfig_routing_policy.py @@ -0,0 +1,7499 @@ +# -*- coding: utf-8 -*- +from operator import attrgetter +from pyangbind.lib.yangtypes import RestrictedPrecisionDecimalType +from pyangbind.lib.yangtypes import RestrictedClassType +from pyangbind.lib.yangtypes import TypedListType +from pyangbind.lib.yangtypes import YANGBool +from pyangbind.lib.yangtypes import YANGListType +from pyangbind.lib.yangtypes import YANGDynClass +from pyangbind.lib.yangtypes import ReferenceType +from pyangbind.lib.base import PybindBase +from collections import OrderedDict +from decimal import Decimal +from bitarray import bitarray +import six + +# PY3 support of some PY2 keywords (needs improved) +if six.PY3: + import builtins as __builtin__ + long = int +elif six.PY2: + import builtins as __builtin__ + +class yc_config_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/defined-sets/prefix-sets/prefix-set/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configuration data for prefix sets + """ + __slots__ = ('_path_helper', '_extmethods', '__name','__mode',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=True) + self.__mode = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IPV4': {}, 'IPV6': {}, 'MIXED': {}},), is_leaf=True, yang_name="mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='enumeration', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'defined-sets', 'prefix-sets', 'prefix-set', 'config'] + + def _get_name(self): + """ + Getter method for name, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/config/name (string) + + YANG Description: name / label of the prefix set -- this is used to +reference the set in match conditions + """ + return self.__name + + def _set_name(self, v, load=False): + """ + Setter method for name, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/config/name (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_name() directly. + + YANG Description: name / label of the prefix set -- this is used to +reference the set in match conditions + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """name must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=True)""", + }) + + self.__name = t + if hasattr(self, '_set'): + self._set() + + def _unset_name(self): + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=True) + + + def _get_mode(self): + """ + Getter method for mode, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/config/mode (enumeration) + + YANG Description: Indicates the mode of the prefix set, in terms of which +address families (IPv4, IPv6, or both) are present. The +mode provides a hint, but the device must validate that all +prefixes are of the indicated type, and is expected to +reject the configuration if there is a discrepancy. The +MIXED mode may not be supported on devices that require +prefix sets to be of only one address family. + """ + return self.__mode + + def _set_mode(self, v, load=False): + """ + Setter method for mode, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/config/mode (enumeration) + If this variable is read-only (config: false) in the + source YANG file, then _set_mode is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_mode() directly. + + YANG Description: Indicates the mode of the prefix set, in terms of which +address families (IPv4, IPv6, or both) are present. The +mode provides a hint, but the device must validate that all +prefixes are of the indicated type, and is expected to +reject the configuration if there is a discrepancy. The +MIXED mode may not be supported on devices that require +prefix sets to be of only one address family. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IPV4': {}, 'IPV6': {}, 'MIXED': {}},), is_leaf=True, yang_name="mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='enumeration', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """mode must be of a type compatible with enumeration""", + 'defined-type': "openconfig-routing-policy:enumeration", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IPV4': {}, 'IPV6': {}, 'MIXED': {}},), is_leaf=True, yang_name="mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='enumeration', is_config=True)""", + }) + + self.__mode = t + if hasattr(self, '_set'): + self._set() + + def _unset_mode(self): + self.__mode = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IPV4': {}, 'IPV6': {}, 'MIXED': {}},), is_leaf=True, yang_name="mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='enumeration', is_config=True) + + name = __builtin__.property(_get_name, _set_name) + mode = __builtin__.property(_get_mode, _set_mode) + + + _pyangbind_elements = OrderedDict([('name', name), ('mode', mode), ]) + + +class yc_state_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/defined-sets/prefix-sets/prefix-set/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state data + """ + __slots__ = ('_path_helper', '_extmethods', '__name','__mode',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=False) + self.__mode = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IPV4': {}, 'IPV6': {}, 'MIXED': {}},), is_leaf=True, yang_name="mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='enumeration', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'defined-sets', 'prefix-sets', 'prefix-set', 'state'] + + def _get_name(self): + """ + Getter method for name, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/state/name (string) + + YANG Description: name / label of the prefix set -- this is used to +reference the set in match conditions + """ + return self.__name + + def _set_name(self, v, load=False): + """ + Setter method for name, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/state/name (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_name() directly. + + YANG Description: name / label of the prefix set -- this is used to +reference the set in match conditions + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """name must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=False)""", + }) + + self.__name = t + if hasattr(self, '_set'): + self._set() + + def _unset_name(self): + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=False) + + + def _get_mode(self): + """ + Getter method for mode, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/state/mode (enumeration) + + YANG Description: Indicates the mode of the prefix set, in terms of which +address families (IPv4, IPv6, or both) are present. The +mode provides a hint, but the device must validate that all +prefixes are of the indicated type, and is expected to +reject the configuration if there is a discrepancy. The +MIXED mode may not be supported on devices that require +prefix sets to be of only one address family. + """ + return self.__mode + + def _set_mode(self, v, load=False): + """ + Setter method for mode, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/state/mode (enumeration) + If this variable is read-only (config: false) in the + source YANG file, then _set_mode is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_mode() directly. + + YANG Description: Indicates the mode of the prefix set, in terms of which +address families (IPv4, IPv6, or both) are present. The +mode provides a hint, but the device must validate that all +prefixes are of the indicated type, and is expected to +reject the configuration if there is a discrepancy. The +MIXED mode may not be supported on devices that require +prefix sets to be of only one address family. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IPV4': {}, 'IPV6': {}, 'MIXED': {}},), is_leaf=True, yang_name="mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='enumeration', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """mode must be of a type compatible with enumeration""", + 'defined-type': "openconfig-routing-policy:enumeration", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IPV4': {}, 'IPV6': {}, 'MIXED': {}},), is_leaf=True, yang_name="mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='enumeration', is_config=False)""", + }) + + self.__mode = t + if hasattr(self, '_set'): + self._set() + + def _unset_mode(self): + self.__mode = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'IPV4': {}, 'IPV6': {}, 'MIXED': {}},), is_leaf=True, yang_name="mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='enumeration', is_config=False) + + name = __builtin__.property(_get_name) + mode = __builtin__.property(_get_mode) + + + _pyangbind_elements = OrderedDict([('name', name), ('mode', mode), ]) + + +class yc_config_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_prefixes_prefix_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/defined-sets/prefix-sets/prefix-set/prefixes/prefix/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configuration data for prefix definition + """ + __slots__ = ('_path_helper', '_extmethods', '__ip_prefix','__masklength_range',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__ip_prefix = YANGDynClass(base=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}/([0-9]|[12][0-9]|3[0-2])'}),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])'}),], is_leaf=True, yang_name="ip-prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-inet:ip-prefix', is_config=True) + self.__masklength_range = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9]+\\.\\.[0-9]+)|exact)'}), is_leaf=True, yang_name="masklength-range", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'defined-sets', 'prefix-sets', 'prefix-set', 'prefixes', 'prefix', 'config'] + + def _get_ip_prefix(self): + """ + Getter method for ip_prefix, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/prefixes/prefix/config/ip_prefix (oc-inet:ip-prefix) + + YANG Description: The prefix member in CIDR notation -- while the +prefix may be either IPv4 or IPv6, most +implementations require all members of the prefix set +to be the same address family. Mixing address types in +the same prefix set is likely to cause an error. + """ + return self.__ip_prefix + + def _set_ip_prefix(self, v, load=False): + """ + Setter method for ip_prefix, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/prefixes/prefix/config/ip_prefix (oc-inet:ip-prefix) + If this variable is read-only (config: false) in the + source YANG file, then _set_ip_prefix is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_ip_prefix() directly. + + YANG Description: The prefix member in CIDR notation -- while the +prefix may be either IPv4 or IPv6, most +implementations require all members of the prefix set +to be the same address family. Mixing address types in +the same prefix set is likely to cause an error. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}/([0-9]|[12][0-9]|3[0-2])'}),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])'}),], is_leaf=True, yang_name="ip-prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-inet:ip-prefix', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """ip_prefix must be of a type compatible with oc-inet:ip-prefix""", + 'defined-type': "oc-inet:ip-prefix", + 'generated-type': """YANGDynClass(base=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}/([0-9]|[12][0-9]|3[0-2])'}),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])'}),], is_leaf=True, yang_name="ip-prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-inet:ip-prefix', is_config=True)""", + }) + + self.__ip_prefix = t + if hasattr(self, '_set'): + self._set() + + def _unset_ip_prefix(self): + self.__ip_prefix = YANGDynClass(base=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}/([0-9]|[12][0-9]|3[0-2])'}),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])'}),], is_leaf=True, yang_name="ip-prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-inet:ip-prefix', is_config=True) + + + def _get_masklength_range(self): + """ + Getter method for masklength_range, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/prefixes/prefix/config/masklength_range (string) + + YANG Description: Defines a range for the masklength, or 'exact' if +the prefix has an exact length. + +Example: 10.3.192.0/21 through 10.3.192.0/24 would be +expressed as prefix: 10.3.192.0/21, +masklength-range: 21..24. + +Example: 10.3.192.0/21 would be expressed as +prefix: 10.3.192.0/21, +masklength-range: exact + """ + return self.__masklength_range + + def _set_masklength_range(self, v, load=False): + """ + Setter method for masklength_range, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/prefixes/prefix/config/masklength_range (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_masklength_range is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_masklength_range() directly. + + YANG Description: Defines a range for the masklength, or 'exact' if +the prefix has an exact length. + +Example: 10.3.192.0/21 through 10.3.192.0/24 would be +expressed as prefix: 10.3.192.0/21, +masklength-range: 21..24. + +Example: 10.3.192.0/21 would be expressed as +prefix: 10.3.192.0/21, +masklength-range: exact + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9]+\\.\\.[0-9]+)|exact)'}), is_leaf=True, yang_name="masklength-range", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """masklength_range must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9]+\\.\\.[0-9]+)|exact)'}), is_leaf=True, yang_name="masklength-range", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=True)""", + }) + + self.__masklength_range = t + if hasattr(self, '_set'): + self._set() + + def _unset_masklength_range(self): + self.__masklength_range = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9]+\\.\\.[0-9]+)|exact)'}), is_leaf=True, yang_name="masklength-range", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=True) + + ip_prefix = __builtin__.property(_get_ip_prefix, _set_ip_prefix) + masklength_range = __builtin__.property(_get_masklength_range, _set_masklength_range) + + + _pyangbind_elements = OrderedDict([('ip_prefix', ip_prefix), ('masklength_range', masklength_range), ]) + + +class yc_state_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_prefixes_prefix_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/defined-sets/prefix-sets/prefix-set/prefixes/prefix/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state data for prefix definition + """ + __slots__ = ('_path_helper', '_extmethods', '__ip_prefix','__masklength_range',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__ip_prefix = YANGDynClass(base=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}/([0-9]|[12][0-9]|3[0-2])'}),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])'}),], is_leaf=True, yang_name="ip-prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-inet:ip-prefix', is_config=False) + self.__masklength_range = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9]+\\.\\.[0-9]+)|exact)'}), is_leaf=True, yang_name="masklength-range", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'defined-sets', 'prefix-sets', 'prefix-set', 'prefixes', 'prefix', 'state'] + + def _get_ip_prefix(self): + """ + Getter method for ip_prefix, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/prefixes/prefix/state/ip_prefix (oc-inet:ip-prefix) + + YANG Description: The prefix member in CIDR notation -- while the +prefix may be either IPv4 or IPv6, most +implementations require all members of the prefix set +to be the same address family. Mixing address types in +the same prefix set is likely to cause an error. + """ + return self.__ip_prefix + + def _set_ip_prefix(self, v, load=False): + """ + Setter method for ip_prefix, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/prefixes/prefix/state/ip_prefix (oc-inet:ip-prefix) + If this variable is read-only (config: false) in the + source YANG file, then _set_ip_prefix is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_ip_prefix() directly. + + YANG Description: The prefix member in CIDR notation -- while the +prefix may be either IPv4 or IPv6, most +implementations require all members of the prefix set +to be the same address family. Mixing address types in +the same prefix set is likely to cause an error. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}/([0-9]|[12][0-9]|3[0-2])'}),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])'}),], is_leaf=True, yang_name="ip-prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-inet:ip-prefix', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """ip_prefix must be of a type compatible with oc-inet:ip-prefix""", + 'defined-type': "oc-inet:ip-prefix", + 'generated-type': """YANGDynClass(base=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}/([0-9]|[12][0-9]|3[0-2])'}),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])'}),], is_leaf=True, yang_name="ip-prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-inet:ip-prefix', is_config=False)""", + }) + + self.__ip_prefix = t + if hasattr(self, '_set'): + self._set() + + def _unset_ip_prefix(self): + self.__ip_prefix = YANGDynClass(base=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}/([0-9]|[12][0-9]|3[0-2])'}),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])'}),], is_leaf=True, yang_name="ip-prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-inet:ip-prefix', is_config=False) + + + def _get_masklength_range(self): + """ + Getter method for masklength_range, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/prefixes/prefix/state/masklength_range (string) + + YANG Description: Defines a range for the masklength, or 'exact' if +the prefix has an exact length. + +Example: 10.3.192.0/21 through 10.3.192.0/24 would be +expressed as prefix: 10.3.192.0/21, +masklength-range: 21..24. + +Example: 10.3.192.0/21 would be expressed as +prefix: 10.3.192.0/21, +masklength-range: exact + """ + return self.__masklength_range + + def _set_masklength_range(self, v, load=False): + """ + Setter method for masklength_range, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/prefixes/prefix/state/masklength_range (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_masklength_range is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_masklength_range() directly. + + YANG Description: Defines a range for the masklength, or 'exact' if +the prefix has an exact length. + +Example: 10.3.192.0/21 through 10.3.192.0/24 would be +expressed as prefix: 10.3.192.0/21, +masklength-range: 21..24. + +Example: 10.3.192.0/21 would be expressed as +prefix: 10.3.192.0/21, +masklength-range: exact + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9]+\\.\\.[0-9]+)|exact)'}), is_leaf=True, yang_name="masklength-range", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """masklength_range must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9]+\\.\\.[0-9]+)|exact)'}), is_leaf=True, yang_name="masklength-range", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=False)""", + }) + + self.__masklength_range = t + if hasattr(self, '_set'): + self._set() + + def _unset_masklength_range(self): + self.__masklength_range = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9]+\\.\\.[0-9]+)|exact)'}), is_leaf=True, yang_name="masklength-range", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=False) + + ip_prefix = __builtin__.property(_get_ip_prefix) + masklength_range = __builtin__.property(_get_masklength_range) + + + _pyangbind_elements = OrderedDict([('ip_prefix', ip_prefix), ('masklength_range', masklength_range), ]) + + +class yc_prefix_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_prefixes_prefix(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/defined-sets/prefix-sets/prefix-set/prefixes/prefix. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: List of prefixes in the prefix set + """ + __slots__ = ('_path_helper', '_extmethods', '__ip_prefix','__masklength_range','__config','__state',) + + _yang_name = 'prefix' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__ip_prefix = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="ip-prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + self.__masklength_range = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="masklength-range", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_prefixes_prefix_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_prefixes_prefix_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'defined-sets', 'prefix-sets', 'prefix-set', 'prefixes', 'prefix'] + + def _get_ip_prefix(self): + """ + Getter method for ip_prefix, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/prefixes/prefix/ip_prefix (leafref) + + YANG Description: Reference to the ip-prefix list key. + """ + return self.__ip_prefix + + def _set_ip_prefix(self, v, load=False): + """ + Setter method for ip_prefix, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/prefixes/prefix/ip_prefix (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_ip_prefix is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_ip_prefix() directly. + + YANG Description: Reference to the ip-prefix list key. + """ + parent = getattr(self, "_parent", None) + if parent is not None and load is False: + raise AttributeError("Cannot set keys directly when" + + " within an instantiated list") + + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="ip-prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """ip_prefix must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="ip-prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True)""", + }) + + self.__ip_prefix = t + if hasattr(self, '_set'): + self._set() + + def _unset_ip_prefix(self): + self.__ip_prefix = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="ip-prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + + + def _get_masklength_range(self): + """ + Getter method for masklength_range, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/prefixes/prefix/masklength_range (leafref) + + YANG Description: Reference to the masklength-range list key + """ + return self.__masklength_range + + def _set_masklength_range(self, v, load=False): + """ + Setter method for masklength_range, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/prefixes/prefix/masklength_range (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_masklength_range is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_masklength_range() directly. + + YANG Description: Reference to the masklength-range list key + """ + parent = getattr(self, "_parent", None) + if parent is not None and load is False: + raise AttributeError("Cannot set keys directly when" + + " within an instantiated list") + + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="masklength-range", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """masklength_range must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="masklength-range", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True)""", + }) + + self.__masklength_range = t + if hasattr(self, '_set'): + self._set() + + def _unset_masklength_range(self): + self.__masklength_range = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="masklength-range", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/prefixes/prefix/config (container) + + YANG Description: Configuration data for prefix definition + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/prefixes/prefix/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configuration data for prefix definition + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_prefixes_prefix_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_prefixes_prefix_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_prefixes_prefix_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/prefixes/prefix/state (container) + + YANG Description: Operational state data for prefix definition + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/prefixes/prefix/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state data for prefix definition + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_prefixes_prefix_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_prefixes_prefix_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_prefixes_prefix_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + ip_prefix = __builtin__.property(_get_ip_prefix, _set_ip_prefix) + masklength_range = __builtin__.property(_get_masklength_range, _set_masklength_range) + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + + + _pyangbind_elements = OrderedDict([('ip_prefix', ip_prefix), ('masklength_range', masklength_range), ('config', config), ('state', state), ]) + + +class yc_prefixes_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_prefixes(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/defined-sets/prefix-sets/prefix-set/prefixes. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Enclosing container for the list of prefixes in a policy +prefix list + """ + __slots__ = ('_path_helper', '_extmethods', '__prefix',) + + _yang_name = 'prefixes' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__prefix = YANGDynClass(base=YANGListType("ip_prefix masklength_range",yc_prefix_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_prefixes_prefix, yang_name="prefix", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='ip-prefix masklength-range', extensions=None), is_container='list', yang_name="prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='list', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'defined-sets', 'prefix-sets', 'prefix-set', 'prefixes'] + + def _get_prefix(self): + """ + Getter method for prefix, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/prefixes/prefix (list) + + YANG Description: List of prefixes in the prefix set + """ + return self.__prefix + + def _set_prefix(self, v, load=False): + """ + Setter method for prefix, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/prefixes/prefix (list) + If this variable is read-only (config: false) in the + source YANG file, then _set_prefix is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_prefix() directly. + + YANG Description: List of prefixes in the prefix set + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGListType("ip_prefix masklength_range",yc_prefix_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_prefixes_prefix, yang_name="prefix", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='ip-prefix masklength-range', extensions=None), is_container='list', yang_name="prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='list', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """prefix must be of a type compatible with list""", + 'defined-type': "list", + 'generated-type': """YANGDynClass(base=YANGListType("ip_prefix masklength_range",yc_prefix_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_prefixes_prefix, yang_name="prefix", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='ip-prefix masklength-range', extensions=None), is_container='list', yang_name="prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='list', is_config=True)""", + }) + + self.__prefix = t + if hasattr(self, '_set'): + self._set() + + def _unset_prefix(self): + self.__prefix = YANGDynClass(base=YANGListType("ip_prefix masklength_range",yc_prefix_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_prefixes_prefix, yang_name="prefix", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='ip-prefix masklength-range', extensions=None), is_container='list', yang_name="prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='list', is_config=True) + + prefix = __builtin__.property(_get_prefix, _set_prefix) + + + _pyangbind_elements = OrderedDict([('prefix', prefix), ]) + + +class yc_prefix_set_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/defined-sets/prefix-sets/prefix-set. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: List of the defined prefix sets + """ + __slots__ = ('_path_helper', '_extmethods', '__name','__config','__state','__prefixes',) + + _yang_name = 'prefix-set' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__prefixes = YANGDynClass(base=yc_prefixes_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_prefixes, is_container='container', yang_name="prefixes", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'defined-sets', 'prefix-sets', 'prefix-set'] + + def _get_name(self): + """ + Getter method for name, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/name (leafref) + + YANG Description: Reference to prefix name list key + """ + return self.__name + + def _set_name(self, v, load=False): + """ + Setter method for name, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/name (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_name() directly. + + YANG Description: Reference to prefix name list key + """ + parent = getattr(self, "_parent", None) + if parent is not None and load is False: + raise AttributeError("Cannot set keys directly when" + + " within an instantiated list") + + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """name must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True)""", + }) + + self.__name = t + if hasattr(self, '_set'): + self._set() + + def _unset_name(self): + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/config (container) + + YANG Description: Configuration data for prefix sets + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configuration data for prefix sets + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/state (container) + + YANG Description: Operational state data + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state data + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_prefixes(self): + """ + Getter method for prefixes, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/prefixes (container) + + YANG Description: Enclosing container for the list of prefixes in a policy +prefix list + """ + return self.__prefixes + + def _set_prefixes(self, v, load=False): + """ + Setter method for prefixes, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set/prefixes (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_prefixes is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_prefixes() directly. + + YANG Description: Enclosing container for the list of prefixes in a policy +prefix list + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_prefixes_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_prefixes, is_container='container', yang_name="prefixes", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """prefixes must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_prefixes_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_prefixes, is_container='container', yang_name="prefixes", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__prefixes = t + if hasattr(self, '_set'): + self._set() + + def _unset_prefixes(self): + self.__prefixes = YANGDynClass(base=yc_prefixes_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set_prefixes, is_container='container', yang_name="prefixes", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + name = __builtin__.property(_get_name, _set_name) + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + prefixes = __builtin__.property(_get_prefixes, _set_prefixes) + + + _pyangbind_elements = OrderedDict([('name', name), ('config', config), ('state', state), ('prefixes', prefixes), ]) + + +class yc_prefix_sets_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/defined-sets/prefix-sets. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Enclosing container + """ + __slots__ = ('_path_helper', '_extmethods', '__prefix_set',) + + _yang_name = 'prefix-sets' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__prefix_set = YANGDynClass(base=YANGListType("name",yc_prefix_set_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set, yang_name="prefix-set", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='list', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'defined-sets', 'prefix-sets'] + + def _get_prefix_set(self): + """ + Getter method for prefix_set, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set (list) + + YANG Description: List of the defined prefix sets + """ + return self.__prefix_set + + def _set_prefix_set(self, v, load=False): + """ + Setter method for prefix_set, mapped from YANG variable /routing_policy/defined_sets/prefix_sets/prefix_set (list) + If this variable is read-only (config: false) in the + source YANG file, then _set_prefix_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_prefix_set() directly. + + YANG Description: List of the defined prefix sets + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGListType("name",yc_prefix_set_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set, yang_name="prefix-set", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='list', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """prefix_set must be of a type compatible with list""", + 'defined-type': "list", + 'generated-type': """YANGDynClass(base=YANGListType("name",yc_prefix_set_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set, yang_name="prefix-set", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='list', is_config=True)""", + }) + + self.__prefix_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_prefix_set(self): + self.__prefix_set = YANGDynClass(base=YANGListType("name",yc_prefix_set_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets_prefix_set, yang_name="prefix-set", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='list', is_config=True) + + prefix_set = __builtin__.property(_get_prefix_set, _set_prefix_set) + + + _pyangbind_elements = OrderedDict([('prefix_set', prefix_set), ]) + + +class yc_config_openconfig_routing_policy__routing_policy_defined_sets_neighbor_sets_neighbor_set_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/defined-sets/neighbor-sets/neighbor-set/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configuration data for neighbor sets. + """ + __slots__ = ('_path_helper', '_extmethods', '__name','__address',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=True) + self.__address = YANGDynClass(unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}'}),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))'}),]), is_leaf=False, yang_name="address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-inet:ip-address', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'defined-sets', 'neighbor-sets', 'neighbor-set', 'config'] + + def _get_name(self): + """ + Getter method for name, mapped from YANG variable /routing_policy/defined_sets/neighbor_sets/neighbor_set/config/name (string) + + YANG Description: name / label of the neighbor set -- this is used to +reference the set in match conditions + """ + return self.__name + + def _set_name(self, v, load=False): + """ + Setter method for name, mapped from YANG variable /routing_policy/defined_sets/neighbor_sets/neighbor_set/config/name (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_name() directly. + + YANG Description: name / label of the neighbor set -- this is used to +reference the set in match conditions + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """name must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=True)""", + }) + + self.__name = t + if hasattr(self, '_set'): + self._set() + + def _unset_name(self): + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=True) + + + def _get_address(self): + """ + Getter method for address, mapped from YANG variable /routing_policy/defined_sets/neighbor_sets/neighbor_set/config/address (oc-inet:ip-address) + + YANG Description: List of IP addresses in the neighbor set + """ + return self.__address + + def _set_address(self, v, load=False): + """ + Setter method for address, mapped from YANG variable /routing_policy/defined_sets/neighbor_sets/neighbor_set/config/address (oc-inet:ip-address) + If this variable is read-only (config: false) in the + source YANG file, then _set_address is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_address() directly. + + YANG Description: List of IP addresses in the neighbor set + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}'}),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))'}),]), is_leaf=False, yang_name="address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-inet:ip-address', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """address must be of a type compatible with oc-inet:ip-address""", + 'defined-type': "oc-inet:ip-address", + 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}'}),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))'}),]), is_leaf=False, yang_name="address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-inet:ip-address', is_config=True)""", + }) + + self.__address = t + if hasattr(self, '_set'): + self._set() + + def _unset_address(self): + self.__address = YANGDynClass(unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}'}),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))'}),]), is_leaf=False, yang_name="address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-inet:ip-address', is_config=True) + + name = __builtin__.property(_get_name, _set_name) + address = __builtin__.property(_get_address, _set_address) + + + _pyangbind_elements = OrderedDict([('name', name), ('address', address), ]) + + +class yc_state_openconfig_routing_policy__routing_policy_defined_sets_neighbor_sets_neighbor_set_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/defined-sets/neighbor-sets/neighbor-set/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state data for neighbor sets. + """ + __slots__ = ('_path_helper', '_extmethods', '__name','__address',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=False) + self.__address = YANGDynClass(unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}'}),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))'}),]), is_leaf=False, yang_name="address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-inet:ip-address', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'defined-sets', 'neighbor-sets', 'neighbor-set', 'state'] + + def _get_name(self): + """ + Getter method for name, mapped from YANG variable /routing_policy/defined_sets/neighbor_sets/neighbor_set/state/name (string) + + YANG Description: name / label of the neighbor set -- this is used to +reference the set in match conditions + """ + return self.__name + + def _set_name(self, v, load=False): + """ + Setter method for name, mapped from YANG variable /routing_policy/defined_sets/neighbor_sets/neighbor_set/state/name (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_name() directly. + + YANG Description: name / label of the neighbor set -- this is used to +reference the set in match conditions + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """name must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=False)""", + }) + + self.__name = t + if hasattr(self, '_set'): + self._set() + + def _unset_name(self): + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=False) + + + def _get_address(self): + """ + Getter method for address, mapped from YANG variable /routing_policy/defined_sets/neighbor_sets/neighbor_set/state/address (oc-inet:ip-address) + + YANG Description: List of IP addresses in the neighbor set + """ + return self.__address + + def _set_address(self, v, load=False): + """ + Setter method for address, mapped from YANG variable /routing_policy/defined_sets/neighbor_sets/neighbor_set/state/address (oc-inet:ip-address) + If this variable is read-only (config: false) in the + source YANG file, then _set_address is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_address() directly. + + YANG Description: List of IP addresses in the neighbor set + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}'}),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))'}),]), is_leaf=False, yang_name="address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-inet:ip-address', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """address must be of a type compatible with oc-inet:ip-address""", + 'defined-type': "oc-inet:ip-address", + 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}'}),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))'}),]), is_leaf=False, yang_name="address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-inet:ip-address', is_config=False)""", + }) + + self.__address = t + if hasattr(self, '_set'): + self._set() + + def _unset_address(self): + self.__address = YANGDynClass(unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){3}'}),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))'}),]), is_leaf=False, yang_name="address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-inet:ip-address', is_config=False) + + name = __builtin__.property(_get_name) + address = __builtin__.property(_get_address) + + + _pyangbind_elements = OrderedDict([('name', name), ('address', address), ]) + + +class yc_neighbor_set_openconfig_routing_policy__routing_policy_defined_sets_neighbor_sets_neighbor_set(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/defined-sets/neighbor-sets/neighbor-set. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: List of defined neighbor sets for use in policies. + """ + __slots__ = ('_path_helper', '_extmethods', '__name','__config','__state',) + + _yang_name = 'neighbor-set' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_defined_sets_neighbor_sets_neighbor_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_defined_sets_neighbor_sets_neighbor_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'defined-sets', 'neighbor-sets', 'neighbor-set'] + + def _get_name(self): + """ + Getter method for name, mapped from YANG variable /routing_policy/defined_sets/neighbor_sets/neighbor_set/name (leafref) + + YANG Description: Reference to the neighbor set name list key. + """ + return self.__name + + def _set_name(self, v, load=False): + """ + Setter method for name, mapped from YANG variable /routing_policy/defined_sets/neighbor_sets/neighbor_set/name (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_name() directly. + + YANG Description: Reference to the neighbor set name list key. + """ + parent = getattr(self, "_parent", None) + if parent is not None and load is False: + raise AttributeError("Cannot set keys directly when" + + " within an instantiated list") + + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """name must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True)""", + }) + + self.__name = t + if hasattr(self, '_set'): + self._set() + + def _unset_name(self): + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /routing_policy/defined_sets/neighbor_sets/neighbor_set/config (container) + + YANG Description: Configuration data for neighbor sets. + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /routing_policy/defined_sets/neighbor_sets/neighbor_set/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configuration data for neighbor sets. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_routing_policy__routing_policy_defined_sets_neighbor_sets_neighbor_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_defined_sets_neighbor_sets_neighbor_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_defined_sets_neighbor_sets_neighbor_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /routing_policy/defined_sets/neighbor_sets/neighbor_set/state (container) + + YANG Description: Operational state data for neighbor sets. + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /routing_policy/defined_sets/neighbor_sets/neighbor_set/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state data for neighbor sets. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_routing_policy__routing_policy_defined_sets_neighbor_sets_neighbor_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_defined_sets_neighbor_sets_neighbor_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_defined_sets_neighbor_sets_neighbor_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + name = __builtin__.property(_get_name, _set_name) + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + + + _pyangbind_elements = OrderedDict([('name', name), ('config', config), ('state', state), ]) + + +class yc_neighbor_sets_openconfig_routing_policy__routing_policy_defined_sets_neighbor_sets(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/defined-sets/neighbor-sets. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Enclosing container for the list of neighbor set +definitions + """ + __slots__ = ('_path_helper', '_extmethods', '__neighbor_set',) + + _yang_name = 'neighbor-sets' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__neighbor_set = YANGDynClass(base=YANGListType("name",yc_neighbor_set_openconfig_routing_policy__routing_policy_defined_sets_neighbor_sets_neighbor_set, yang_name="neighbor-set", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="neighbor-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='list', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'defined-sets', 'neighbor-sets'] + + def _get_neighbor_set(self): + """ + Getter method for neighbor_set, mapped from YANG variable /routing_policy/defined_sets/neighbor_sets/neighbor_set (list) + + YANG Description: List of defined neighbor sets for use in policies. + """ + return self.__neighbor_set + + def _set_neighbor_set(self, v, load=False): + """ + Setter method for neighbor_set, mapped from YANG variable /routing_policy/defined_sets/neighbor_sets/neighbor_set (list) + If this variable is read-only (config: false) in the + source YANG file, then _set_neighbor_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_neighbor_set() directly. + + YANG Description: List of defined neighbor sets for use in policies. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGListType("name",yc_neighbor_set_openconfig_routing_policy__routing_policy_defined_sets_neighbor_sets_neighbor_set, yang_name="neighbor-set", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="neighbor-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='list', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """neighbor_set must be of a type compatible with list""", + 'defined-type': "list", + 'generated-type': """YANGDynClass(base=YANGListType("name",yc_neighbor_set_openconfig_routing_policy__routing_policy_defined_sets_neighbor_sets_neighbor_set, yang_name="neighbor-set", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="neighbor-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='list', is_config=True)""", + }) + + self.__neighbor_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_neighbor_set(self): + self.__neighbor_set = YANGDynClass(base=YANGListType("name",yc_neighbor_set_openconfig_routing_policy__routing_policy_defined_sets_neighbor_sets_neighbor_set, yang_name="neighbor-set", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="neighbor-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='list', is_config=True) + + neighbor_set = __builtin__.property(_get_neighbor_set, _set_neighbor_set) + + + _pyangbind_elements = OrderedDict([('neighbor_set', neighbor_set), ]) + + +class yc_config_openconfig_routing_policy__routing_policy_defined_sets_tag_sets_tag_set_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/defined-sets/tag-sets/tag-set/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configuration data for tag sets + """ + __slots__ = ('_path_helper', '_extmethods', '__name','__tag_value',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=True) + self.__tag_value = YANGDynClass(unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?'}),]), is_leaf=False, yang_name="tag-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:tag-type', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'defined-sets', 'tag-sets', 'tag-set', 'config'] + + def _get_name(self): + """ + Getter method for name, mapped from YANG variable /routing_policy/defined_sets/tag_sets/tag_set/config/name (string) + + YANG Description: name / label of the tag set -- this is used to reference +the set in match conditions + """ + return self.__name + + def _set_name(self, v, load=False): + """ + Setter method for name, mapped from YANG variable /routing_policy/defined_sets/tag_sets/tag_set/config/name (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_name() directly. + + YANG Description: name / label of the tag set -- this is used to reference +the set in match conditions + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """name must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=True)""", + }) + + self.__name = t + if hasattr(self, '_set'): + self._set() + + def _unset_name(self): + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=True) + + + def _get_tag_value(self): + """ + Getter method for tag_value, mapped from YANG variable /routing_policy/defined_sets/tag_sets/tag_set/config/tag_value (oc-pol-types:tag-type) + + YANG Description: Value of the tag set member + """ + return self.__tag_value + + def _set_tag_value(self, v, load=False): + """ + Setter method for tag_value, mapped from YANG variable /routing_policy/defined_sets/tag_sets/tag_set/config/tag_value (oc-pol-types:tag-type) + If this variable is read-only (config: false) in the + source YANG file, then _set_tag_value is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_tag_value() directly. + + YANG Description: Value of the tag set member + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?'}),]), is_leaf=False, yang_name="tag-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:tag-type', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """tag_value must be of a type compatible with oc-pol-types:tag-type""", + 'defined-type': "oc-pol-types:tag-type", + 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?'}),]), is_leaf=False, yang_name="tag-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:tag-type', is_config=True)""", + }) + + self.__tag_value = t + if hasattr(self, '_set'): + self._set() + + def _unset_tag_value(self): + self.__tag_value = YANGDynClass(unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?'}),]), is_leaf=False, yang_name="tag-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:tag-type', is_config=True) + + name = __builtin__.property(_get_name, _set_name) + tag_value = __builtin__.property(_get_tag_value, _set_tag_value) + + + _pyangbind_elements = OrderedDict([('name', name), ('tag_value', tag_value), ]) + + +class yc_state_openconfig_routing_policy__routing_policy_defined_sets_tag_sets_tag_set_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/defined-sets/tag-sets/tag-set/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state data for tag sets + """ + __slots__ = ('_path_helper', '_extmethods', '__name','__tag_value',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=False) + self.__tag_value = YANGDynClass(unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?'}),]), is_leaf=False, yang_name="tag-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:tag-type', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'defined-sets', 'tag-sets', 'tag-set', 'state'] + + def _get_name(self): + """ + Getter method for name, mapped from YANG variable /routing_policy/defined_sets/tag_sets/tag_set/state/name (string) + + YANG Description: name / label of the tag set -- this is used to reference +the set in match conditions + """ + return self.__name + + def _set_name(self, v, load=False): + """ + Setter method for name, mapped from YANG variable /routing_policy/defined_sets/tag_sets/tag_set/state/name (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_name() directly. + + YANG Description: name / label of the tag set -- this is used to reference +the set in match conditions + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """name must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=False)""", + }) + + self.__name = t + if hasattr(self, '_set'): + self._set() + + def _unset_name(self): + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=False) + + + def _get_tag_value(self): + """ + Getter method for tag_value, mapped from YANG variable /routing_policy/defined_sets/tag_sets/tag_set/state/tag_value (oc-pol-types:tag-type) + + YANG Description: Value of the tag set member + """ + return self.__tag_value + + def _set_tag_value(self, v, load=False): + """ + Setter method for tag_value, mapped from YANG variable /routing_policy/defined_sets/tag_sets/tag_set/state/tag_value (oc-pol-types:tag-type) + If this variable is read-only (config: false) in the + source YANG file, then _set_tag_value is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_tag_value() directly. + + YANG Description: Value of the tag set member + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?'}),]), is_leaf=False, yang_name="tag-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:tag-type', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """tag_value must be of a type compatible with oc-pol-types:tag-type""", + 'defined-type': "oc-pol-types:tag-type", + 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?'}),]), is_leaf=False, yang_name="tag-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:tag-type', is_config=False)""", + }) + + self.__tag_value = t + if hasattr(self, '_set'): + self._set() + + def _unset_tag_value(self): + self.__tag_value = YANGDynClass(unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?'}),]), is_leaf=False, yang_name="tag-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:tag-type', is_config=False) + + name = __builtin__.property(_get_name) + tag_value = __builtin__.property(_get_tag_value) + + + _pyangbind_elements = OrderedDict([('name', name), ('tag_value', tag_value), ]) + + +class yc_tag_set_openconfig_routing_policy__routing_policy_defined_sets_tag_sets_tag_set(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/defined-sets/tag-sets/tag-set. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: List of tag set definitions. + """ + __slots__ = ('_path_helper', '_extmethods', '__name','__config','__state',) + + _yang_name = 'tag-set' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_defined_sets_tag_sets_tag_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_defined_sets_tag_sets_tag_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'defined-sets', 'tag-sets', 'tag-set'] + + def _get_name(self): + """ + Getter method for name, mapped from YANG variable /routing_policy/defined_sets/tag_sets/tag_set/name (leafref) + + YANG Description: Reference to the tag set name list key + """ + return self.__name + + def _set_name(self, v, load=False): + """ + Setter method for name, mapped from YANG variable /routing_policy/defined_sets/tag_sets/tag_set/name (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_name() directly. + + YANG Description: Reference to the tag set name list key + """ + parent = getattr(self, "_parent", None) + if parent is not None and load is False: + raise AttributeError("Cannot set keys directly when" + + " within an instantiated list") + + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """name must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True)""", + }) + + self.__name = t + if hasattr(self, '_set'): + self._set() + + def _unset_name(self): + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /routing_policy/defined_sets/tag_sets/tag_set/config (container) + + YANG Description: Configuration data for tag sets + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /routing_policy/defined_sets/tag_sets/tag_set/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configuration data for tag sets + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_routing_policy__routing_policy_defined_sets_tag_sets_tag_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_defined_sets_tag_sets_tag_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_defined_sets_tag_sets_tag_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /routing_policy/defined_sets/tag_sets/tag_set/state (container) + + YANG Description: Operational state data for tag sets + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /routing_policy/defined_sets/tag_sets/tag_set/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state data for tag sets + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_routing_policy__routing_policy_defined_sets_tag_sets_tag_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_defined_sets_tag_sets_tag_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_defined_sets_tag_sets_tag_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + name = __builtin__.property(_get_name, _set_name) + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + + + _pyangbind_elements = OrderedDict([('name', name), ('config', config), ('state', state), ]) + + +class yc_tag_sets_openconfig_routing_policy__routing_policy_defined_sets_tag_sets(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/defined-sets/tag-sets. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Enclosing container for the list of tag sets. + """ + __slots__ = ('_path_helper', '_extmethods', '__tag_set',) + + _yang_name = 'tag-sets' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__tag_set = YANGDynClass(base=YANGListType("name",yc_tag_set_openconfig_routing_policy__routing_policy_defined_sets_tag_sets_tag_set, yang_name="tag-set", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="tag-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='list', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'defined-sets', 'tag-sets'] + + def _get_tag_set(self): + """ + Getter method for tag_set, mapped from YANG variable /routing_policy/defined_sets/tag_sets/tag_set (list) + + YANG Description: List of tag set definitions. + """ + return self.__tag_set + + def _set_tag_set(self, v, load=False): + """ + Setter method for tag_set, mapped from YANG variable /routing_policy/defined_sets/tag_sets/tag_set (list) + If this variable is read-only (config: false) in the + source YANG file, then _set_tag_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_tag_set() directly. + + YANG Description: List of tag set definitions. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGListType("name",yc_tag_set_openconfig_routing_policy__routing_policy_defined_sets_tag_sets_tag_set, yang_name="tag-set", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="tag-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='list', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """tag_set must be of a type compatible with list""", + 'defined-type': "list", + 'generated-type': """YANGDynClass(base=YANGListType("name",yc_tag_set_openconfig_routing_policy__routing_policy_defined_sets_tag_sets_tag_set, yang_name="tag-set", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="tag-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='list', is_config=True)""", + }) + + self.__tag_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_tag_set(self): + self.__tag_set = YANGDynClass(base=YANGListType("name",yc_tag_set_openconfig_routing_policy__routing_policy_defined_sets_tag_sets_tag_set, yang_name="tag-set", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="tag-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='list', is_config=True) + + tag_set = __builtin__.property(_get_tag_set, _set_tag_set) + + + _pyangbind_elements = OrderedDict([('tag_set', tag_set), ]) + + +class yc_defined_sets_openconfig_routing_policy__routing_policy_defined_sets(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/defined-sets. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Predefined sets of attributes used in policy match +statements + """ + __slots__ = ('_path_helper', '_extmethods', '__prefix_sets','__neighbor_sets','__tag_sets',) + + _yang_name = 'defined-sets' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__prefix_sets = YANGDynClass(base=yc_prefix_sets_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets, is_container='container', yang_name="prefix-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__neighbor_sets = YANGDynClass(base=yc_neighbor_sets_openconfig_routing_policy__routing_policy_defined_sets_neighbor_sets, is_container='container', yang_name="neighbor-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__tag_sets = YANGDynClass(base=yc_tag_sets_openconfig_routing_policy__routing_policy_defined_sets_tag_sets, is_container='container', yang_name="tag-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'defined-sets'] + + def _get_prefix_sets(self): + """ + Getter method for prefix_sets, mapped from YANG variable /routing_policy/defined_sets/prefix_sets (container) + + YANG Description: Enclosing container + """ + return self.__prefix_sets + + def _set_prefix_sets(self, v, load=False): + """ + Setter method for prefix_sets, mapped from YANG variable /routing_policy/defined_sets/prefix_sets (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_prefix_sets is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_prefix_sets() directly. + + YANG Description: Enclosing container + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_prefix_sets_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets, is_container='container', yang_name="prefix-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """prefix_sets must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_prefix_sets_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets, is_container='container', yang_name="prefix-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__prefix_sets = t + if hasattr(self, '_set'): + self._set() + + def _unset_prefix_sets(self): + self.__prefix_sets = YANGDynClass(base=yc_prefix_sets_openconfig_routing_policy__routing_policy_defined_sets_prefix_sets, is_container='container', yang_name="prefix-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_neighbor_sets(self): + """ + Getter method for neighbor_sets, mapped from YANG variable /routing_policy/defined_sets/neighbor_sets (container) + + YANG Description: Enclosing container for the list of neighbor set +definitions + """ + return self.__neighbor_sets + + def _set_neighbor_sets(self, v, load=False): + """ + Setter method for neighbor_sets, mapped from YANG variable /routing_policy/defined_sets/neighbor_sets (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_neighbor_sets is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_neighbor_sets() directly. + + YANG Description: Enclosing container for the list of neighbor set +definitions + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_neighbor_sets_openconfig_routing_policy__routing_policy_defined_sets_neighbor_sets, is_container='container', yang_name="neighbor-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """neighbor_sets must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_neighbor_sets_openconfig_routing_policy__routing_policy_defined_sets_neighbor_sets, is_container='container', yang_name="neighbor-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__neighbor_sets = t + if hasattr(self, '_set'): + self._set() + + def _unset_neighbor_sets(self): + self.__neighbor_sets = YANGDynClass(base=yc_neighbor_sets_openconfig_routing_policy__routing_policy_defined_sets_neighbor_sets, is_container='container', yang_name="neighbor-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_tag_sets(self): + """ + Getter method for tag_sets, mapped from YANG variable /routing_policy/defined_sets/tag_sets (container) + + YANG Description: Enclosing container for the list of tag sets. + """ + return self.__tag_sets + + def _set_tag_sets(self, v, load=False): + """ + Setter method for tag_sets, mapped from YANG variable /routing_policy/defined_sets/tag_sets (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_tag_sets is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_tag_sets() directly. + + YANG Description: Enclosing container for the list of tag sets. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_tag_sets_openconfig_routing_policy__routing_policy_defined_sets_tag_sets, is_container='container', yang_name="tag-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """tag_sets must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_tag_sets_openconfig_routing_policy__routing_policy_defined_sets_tag_sets, is_container='container', yang_name="tag-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__tag_sets = t + if hasattr(self, '_set'): + self._set() + + def _unset_tag_sets(self): + self.__tag_sets = YANGDynClass(base=yc_tag_sets_openconfig_routing_policy__routing_policy_defined_sets_tag_sets, is_container='container', yang_name="tag-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + prefix_sets = __builtin__.property(_get_prefix_sets, _set_prefix_sets) + neighbor_sets = __builtin__.property(_get_neighbor_sets, _set_neighbor_sets) + tag_sets = __builtin__.property(_get_tag_sets, _set_tag_sets) + + + _pyangbind_elements = OrderedDict([('prefix_sets', prefix_sets), ('neighbor_sets', neighbor_sets), ('tag_sets', tag_sets), ]) + + +class yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configuration data for policy defintions + """ + __slots__ = ('_path_helper', '_extmethods', '__name',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'config'] + + def _get_name(self): + """ + Getter method for name, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/config/name (string) + + YANG Description: Name of the top-level policy definition -- this name +is used in references to the current policy + """ + return self.__name + + def _set_name(self, v, load=False): + """ + Setter method for name, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/config/name (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_name() directly. + + YANG Description: Name of the top-level policy definition -- this name +is used in references to the current policy + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """name must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=True)""", + }) + + self.__name = t + if hasattr(self, '_set'): + self._set() + + def _unset_name(self): + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=True) + + name = __builtin__.property(_get_name, _set_name) + + + _pyangbind_elements = OrderedDict([('name', name), ]) + + +class yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state data for policy definitions + """ + __slots__ = ('_path_helper', '_extmethods', '__name',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'state'] + + def _get_name(self): + """ + Getter method for name, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/state/name (string) + + YANG Description: Name of the top-level policy definition -- this name +is used in references to the current policy + """ + return self.__name + + def _set_name(self, v, load=False): + """ + Setter method for name, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/state/name (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_name() directly. + + YANG Description: Name of the top-level policy definition -- this name +is used in references to the current policy + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """name must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=False)""", + }) + + self.__name = t + if hasattr(self, '_set'): + self._set() + + def _unset_name(self): + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=False) + + name = __builtin__.property(_get_name) + + + _pyangbind_elements = OrderedDict([('name', name), ]) + + +class yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configuration data for policy statements + """ + __slots__ = ('_path_helper', '_extmethods', '__name',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'config'] + + def _get_name(self): + """ + Getter method for name, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/config/name (string) + + YANG Description: name of the policy statement + """ + return self.__name + + def _set_name(self, v, load=False): + """ + Setter method for name, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/config/name (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_name() directly. + + YANG Description: name of the policy statement + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """name must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=True)""", + }) + + self.__name = t + if hasattr(self, '_set'): + self._set() + + def _unset_name(self): + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=True) + + name = __builtin__.property(_get_name, _set_name) + + + _pyangbind_elements = OrderedDict([('name', name), ]) + + +class yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state data for policy statements + """ + __slots__ = ('_path_helper', '_extmethods', '__name',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'state'] + + def _get_name(self): + """ + Getter method for name, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/state/name (string) + + YANG Description: name of the policy statement + """ + return self.__name + + def _set_name(self, v, load=False): + """ + Setter method for name, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/state/name (string) + If this variable is read-only (config: false) in the + source YANG file, then _set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_name() directly. + + YANG Description: name of the policy statement + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """name must be of a type compatible with string""", + 'defined-type': "string", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=False)""", + }) + + self.__name = t + if hasattr(self, '_set'): + self._set() + + def _unset_name(self): + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='string', is_config=False) + + name = __builtin__.property(_get_name) + + + _pyangbind_elements = OrderedDict([('name', name), ]) + + +class yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/conditions/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configuration data for policy conditions + """ + __slots__ = ('_path_helper', '_extmethods', '__call_policy','__install_protocol_eq',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__call_policy = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="call-policy", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + self.__install_protocol_eq = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'BGP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:BGP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'ISIS': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:ISIS': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'OSPF': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:OSPF': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'OSPF3': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:OSPF3': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'STATIC': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:STATIC': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'DIRECTLY_CONNECTED': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:DIRECTLY_CONNECTED': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'LOCAL_AGGREGATE': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:LOCAL_AGGREGATE': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'PIM': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:PIM': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'IGMP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:IGMP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'GRIBI': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:GRIBI': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'PCEP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:PCEP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'LOCAL': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:LOCAL': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}},), is_leaf=True, yang_name="install-protocol-eq", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='identityref', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'conditions', 'config'] + + def _get_call_policy(self): + """ + Getter method for call_policy, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/config/call_policy (leafref) + + YANG Description: Applies the statements from the specified policy +definition and then returns control the current +policy statement. Note that the called policy may +itself call other policies (subject to +implementation limitations). This is intended to +provide a policy 'subroutine' capability. The +called policy should contain an explicit or a +default route disposition that returns an +effective true (accept-route) or false +(reject-route), otherwise the behavior may be +ambiguous and implementation dependent + """ + return self.__call_policy + + def _set_call_policy(self, v, load=False): + """ + Setter method for call_policy, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/config/call_policy (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_call_policy is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_call_policy() directly. + + YANG Description: Applies the statements from the specified policy +definition and then returns control the current +policy statement. Note that the called policy may +itself call other policies (subject to +implementation limitations). This is intended to +provide a policy 'subroutine' capability. The +called policy should contain an explicit or a +default route disposition that returns an +effective true (accept-route) or false +(reject-route), otherwise the behavior may be +ambiguous and implementation dependent + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="call-policy", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """call_policy must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="call-policy", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True)""", + }) + + self.__call_policy = t + if hasattr(self, '_set'): + self._set() + + def _unset_call_policy(self): + self.__call_policy = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="call-policy", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + + + def _get_install_protocol_eq(self): + """ + Getter method for install_protocol_eq, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/config/install_protocol_eq (identityref) + + YANG Description: Condition to check the protocol / method used to install +the route into the local routing table + """ + return self.__install_protocol_eq + + def _set_install_protocol_eq(self, v, load=False): + """ + Setter method for install_protocol_eq, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/config/install_protocol_eq (identityref) + If this variable is read-only (config: false) in the + source YANG file, then _set_install_protocol_eq is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_install_protocol_eq() directly. + + YANG Description: Condition to check the protocol / method used to install +the route into the local routing table + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'BGP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:BGP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'ISIS': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:ISIS': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'OSPF': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:OSPF': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'OSPF3': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:OSPF3': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'STATIC': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:STATIC': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'DIRECTLY_CONNECTED': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:DIRECTLY_CONNECTED': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'LOCAL_AGGREGATE': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:LOCAL_AGGREGATE': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'PIM': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:PIM': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'IGMP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:IGMP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'GRIBI': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:GRIBI': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'PCEP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:PCEP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'LOCAL': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:LOCAL': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}},), is_leaf=True, yang_name="install-protocol-eq", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='identityref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """install_protocol_eq must be of a type compatible with identityref""", + 'defined-type': "openconfig-routing-policy:identityref", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'BGP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:BGP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'ISIS': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:ISIS': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'OSPF': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:OSPF': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'OSPF3': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:OSPF3': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'STATIC': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:STATIC': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'DIRECTLY_CONNECTED': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:DIRECTLY_CONNECTED': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'LOCAL_AGGREGATE': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:LOCAL_AGGREGATE': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'PIM': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:PIM': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'IGMP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:IGMP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'GRIBI': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:GRIBI': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'PCEP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:PCEP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'LOCAL': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:LOCAL': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}},), is_leaf=True, yang_name="install-protocol-eq", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='identityref', is_config=True)""", + }) + + self.__install_protocol_eq = t + if hasattr(self, '_set'): + self._set() + + def _unset_install_protocol_eq(self): + self.__install_protocol_eq = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'BGP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:BGP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'ISIS': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:ISIS': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'OSPF': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:OSPF': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'OSPF3': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:OSPF3': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'STATIC': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:STATIC': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'DIRECTLY_CONNECTED': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:DIRECTLY_CONNECTED': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'LOCAL_AGGREGATE': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:LOCAL_AGGREGATE': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'PIM': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:PIM': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'IGMP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:IGMP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'GRIBI': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:GRIBI': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'PCEP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:PCEP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'LOCAL': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:LOCAL': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}},), is_leaf=True, yang_name="install-protocol-eq", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='identityref', is_config=True) + + call_policy = __builtin__.property(_get_call_policy, _set_call_policy) + install_protocol_eq = __builtin__.property(_get_install_protocol_eq, _set_install_protocol_eq) + + + _pyangbind_elements = OrderedDict([('call_policy', call_policy), ('install_protocol_eq', install_protocol_eq), ]) + + +class yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/conditions/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state data for policy conditions + """ + __slots__ = ('_path_helper', '_extmethods', '__call_policy','__install_protocol_eq',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__call_policy = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="call-policy", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False) + self.__install_protocol_eq = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'BGP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:BGP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'ISIS': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:ISIS': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'OSPF': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:OSPF': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'OSPF3': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:OSPF3': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'STATIC': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:STATIC': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'DIRECTLY_CONNECTED': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:DIRECTLY_CONNECTED': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'LOCAL_AGGREGATE': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:LOCAL_AGGREGATE': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'PIM': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:PIM': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'IGMP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:IGMP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'GRIBI': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:GRIBI': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'PCEP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:PCEP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'LOCAL': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:LOCAL': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}},), is_leaf=True, yang_name="install-protocol-eq", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='identityref', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'conditions', 'state'] + + def _get_call_policy(self): + """ + Getter method for call_policy, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/state/call_policy (leafref) + + YANG Description: Applies the statements from the specified policy +definition and then returns control the current +policy statement. Note that the called policy may +itself call other policies (subject to +implementation limitations). This is intended to +provide a policy 'subroutine' capability. The +called policy should contain an explicit or a +default route disposition that returns an +effective true (accept-route) or false +(reject-route), otherwise the behavior may be +ambiguous and implementation dependent + """ + return self.__call_policy + + def _set_call_policy(self, v, load=False): + """ + Setter method for call_policy, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/state/call_policy (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_call_policy is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_call_policy() directly. + + YANG Description: Applies the statements from the specified policy +definition and then returns control the current +policy statement. Note that the called policy may +itself call other policies (subject to +implementation limitations). This is intended to +provide a policy 'subroutine' capability. The +called policy should contain an explicit or a +default route disposition that returns an +effective true (accept-route) or false +(reject-route), otherwise the behavior may be +ambiguous and implementation dependent + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="call-policy", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """call_policy must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="call-policy", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False)""", + }) + + self.__call_policy = t + if hasattr(self, '_set'): + self._set() + + def _unset_call_policy(self): + self.__call_policy = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="call-policy", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False) + + + def _get_install_protocol_eq(self): + """ + Getter method for install_protocol_eq, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/state/install_protocol_eq (identityref) + + YANG Description: Condition to check the protocol / method used to install +the route into the local routing table + """ + return self.__install_protocol_eq + + def _set_install_protocol_eq(self, v, load=False): + """ + Setter method for install_protocol_eq, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/state/install_protocol_eq (identityref) + If this variable is read-only (config: false) in the + source YANG file, then _set_install_protocol_eq is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_install_protocol_eq() directly. + + YANG Description: Condition to check the protocol / method used to install +the route into the local routing table + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'BGP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:BGP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'ISIS': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:ISIS': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'OSPF': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:OSPF': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'OSPF3': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:OSPF3': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'STATIC': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:STATIC': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'DIRECTLY_CONNECTED': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:DIRECTLY_CONNECTED': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'LOCAL_AGGREGATE': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:LOCAL_AGGREGATE': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'PIM': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:PIM': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'IGMP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:IGMP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'GRIBI': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:GRIBI': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'PCEP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:PCEP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'LOCAL': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:LOCAL': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}},), is_leaf=True, yang_name="install-protocol-eq", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='identityref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """install_protocol_eq must be of a type compatible with identityref""", + 'defined-type': "openconfig-routing-policy:identityref", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'BGP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:BGP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'ISIS': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:ISIS': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'OSPF': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:OSPF': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'OSPF3': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:OSPF3': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'STATIC': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:STATIC': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'DIRECTLY_CONNECTED': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:DIRECTLY_CONNECTED': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'LOCAL_AGGREGATE': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:LOCAL_AGGREGATE': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'PIM': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:PIM': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'IGMP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:IGMP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'GRIBI': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:GRIBI': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'PCEP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:PCEP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'LOCAL': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:LOCAL': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}},), is_leaf=True, yang_name="install-protocol-eq", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='identityref', is_config=False)""", + }) + + self.__install_protocol_eq = t + if hasattr(self, '_set'): + self._set() + + def _unset_install_protocol_eq(self): + self.__install_protocol_eq = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'BGP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:BGP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'ISIS': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:ISIS': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'OSPF': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:OSPF': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'OSPF3': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:OSPF3': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'STATIC': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:STATIC': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'DIRECTLY_CONNECTED': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:DIRECTLY_CONNECTED': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'LOCAL_AGGREGATE': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:LOCAL_AGGREGATE': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'PIM': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:PIM': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'IGMP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:IGMP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'GRIBI': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:GRIBI': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'PCEP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:PCEP': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'LOCAL': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}, 'oc-pol-types:LOCAL': {'@module': 'openconfig-policy-types', '@namespace': 'http://openconfig.net/yang/policy-types'}},), is_leaf=True, yang_name="install-protocol-eq", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='identityref', is_config=False) + + call_policy = __builtin__.property(_get_call_policy) + install_protocol_eq = __builtin__.property(_get_install_protocol_eq) + + + _pyangbind_elements = OrderedDict([('call_policy', call_policy), ('install_protocol_eq', install_protocol_eq), ]) + + +class yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_interface_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/conditions/match-interface/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configuration data for interface match conditions + """ + __slots__ = ('_path_helper', '_extmethods', '__interface','__subinterface',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__interface = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + self.__subinterface = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'conditions', 'match-interface', 'config'] + + def _get_interface(self): + """ + Getter method for interface, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_interface/config/interface (leafref) + + YANG Description: Reference to a base interface. If a reference to a +subinterface is required, this leaf must be specified +to indicate the base interface. + """ + return self.__interface + + def _set_interface(self, v, load=False): + """ + Setter method for interface, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_interface/config/interface (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_interface is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_interface() directly. + + YANG Description: Reference to a base interface. If a reference to a +subinterface is required, this leaf must be specified +to indicate the base interface. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """interface must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True)""", + }) + + self.__interface = t + if hasattr(self, '_set'): + self._set() + + def _unset_interface(self): + self.__interface = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + + + def _get_subinterface(self): + """ + Getter method for subinterface, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_interface/config/subinterface (leafref) + + YANG Description: Reference to a subinterface -- this requires the base +interface to be specified using the interface leaf in +this container. If only a reference to a base interface +is requuired, this leaf should not be set. + """ + return self.__subinterface + + def _set_subinterface(self, v, load=False): + """ + Setter method for subinterface, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_interface/config/subinterface (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_subinterface is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_subinterface() directly. + + YANG Description: Reference to a subinterface -- this requires the base +interface to be specified using the interface leaf in +this container. If only a reference to a base interface +is requuired, this leaf should not be set. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """subinterface must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True)""", + }) + + self.__subinterface = t + if hasattr(self, '_set'): + self._set() + + def _unset_subinterface(self): + self.__subinterface = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + + interface = __builtin__.property(_get_interface, _set_interface) + subinterface = __builtin__.property(_get_subinterface, _set_subinterface) + + + _pyangbind_elements = OrderedDict([('interface', interface), ('subinterface', subinterface), ]) + + +class yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_interface_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/conditions/match-interface/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state data for interface match conditions + """ + __slots__ = ('_path_helper', '_extmethods', '__interface','__subinterface',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__interface = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False) + self.__subinterface = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'conditions', 'match-interface', 'state'] + + def _get_interface(self): + """ + Getter method for interface, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_interface/state/interface (leafref) + + YANG Description: Reference to a base interface. If a reference to a +subinterface is required, this leaf must be specified +to indicate the base interface. + """ + return self.__interface + + def _set_interface(self, v, load=False): + """ + Setter method for interface, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_interface/state/interface (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_interface is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_interface() directly. + + YANG Description: Reference to a base interface. If a reference to a +subinterface is required, this leaf must be specified +to indicate the base interface. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """interface must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False)""", + }) + + self.__interface = t + if hasattr(self, '_set'): + self._set() + + def _unset_interface(self): + self.__interface = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False) + + + def _get_subinterface(self): + """ + Getter method for subinterface, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_interface/state/subinterface (leafref) + + YANG Description: Reference to a subinterface -- this requires the base +interface to be specified using the interface leaf in +this container. If only a reference to a base interface +is requuired, this leaf should not be set. + """ + return self.__subinterface + + def _set_subinterface(self, v, load=False): + """ + Setter method for subinterface, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_interface/state/subinterface (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_subinterface is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_subinterface() directly. + + YANG Description: Reference to a subinterface -- this requires the base +interface to be specified using the interface leaf in +this container. If only a reference to a base interface +is requuired, this leaf should not be set. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """subinterface must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False)""", + }) + + self.__subinterface = t + if hasattr(self, '_set'): + self._set() + + def _unset_subinterface(self): + self.__subinterface = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="subinterface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False) + + interface = __builtin__.property(_get_interface) + subinterface = __builtin__.property(_get_subinterface) + + + _pyangbind_elements = OrderedDict([('interface', interface), ('subinterface', subinterface), ]) + + +class yc_match_interface_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_interface(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/conditions/match-interface. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Top-level container for interface match conditions + """ + __slots__ = ('_path_helper', '_extmethods', '__config','__state',) + + _yang_name = 'match-interface' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_interface_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_interface_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'conditions', 'match-interface'] + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_interface/config (container) + + YANG Description: Configuration data for interface match conditions + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_interface/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configuration data for interface match conditions + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_interface_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_interface_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_interface_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_interface/state (container) + + YANG Description: Operational state data for interface match conditions + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_interface/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state data for interface match conditions + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_interface_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_interface_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_interface_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + + + _pyangbind_elements = OrderedDict([('config', config), ('state', state), ]) + + +class yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_prefix_set_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/conditions/match-prefix-set/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configuration data for a prefix-set condition + """ + __slots__ = ('_path_helper', '_extmethods', '__prefix_set','__match_set_options',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__prefix_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + self.__match_set_options = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}, 'INVERT': {}},), default=six.text_type("ANY"), is_leaf=True, yang_name="match-set-options", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:match-set-options-restricted-type', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'conditions', 'match-prefix-set', 'config'] + + def _get_prefix_set(self): + """ + Getter method for prefix_set, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_prefix_set/config/prefix_set (leafref) + + YANG Description: References a defined prefix set + """ + return self.__prefix_set + + def _set_prefix_set(self, v, load=False): + """ + Setter method for prefix_set, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_prefix_set/config/prefix_set (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_prefix_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_prefix_set() directly. + + YANG Description: References a defined prefix set + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """prefix_set must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True)""", + }) + + self.__prefix_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_prefix_set(self): + self.__prefix_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + + + def _get_match_set_options(self): + """ + Getter method for match_set_options, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_prefix_set/config/match_set_options (oc-pol-types:match-set-options-restricted-type) + + YANG Description: Optional parameter that governs the behaviour of the +match operation. This leaf only supports matching on ANY +member of the set or inverting the match. Matching on ALL is +not supported + """ + return self.__match_set_options + + def _set_match_set_options(self, v, load=False): + """ + Setter method for match_set_options, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_prefix_set/config/match_set_options (oc-pol-types:match-set-options-restricted-type) + If this variable is read-only (config: false) in the + source YANG file, then _set_match_set_options is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_match_set_options() directly. + + YANG Description: Optional parameter that governs the behaviour of the +match operation. This leaf only supports matching on ANY +member of the set or inverting the match. Matching on ALL is +not supported + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}, 'INVERT': {}},), default=six.text_type("ANY"), is_leaf=True, yang_name="match-set-options", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:match-set-options-restricted-type', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """match_set_options must be of a type compatible with oc-pol-types:match-set-options-restricted-type""", + 'defined-type': "oc-pol-types:match-set-options-restricted-type", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}, 'INVERT': {}},), default=six.text_type("ANY"), is_leaf=True, yang_name="match-set-options", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:match-set-options-restricted-type', is_config=True)""", + }) + + self.__match_set_options = t + if hasattr(self, '_set'): + self._set() + + def _unset_match_set_options(self): + self.__match_set_options = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}, 'INVERT': {}},), default=six.text_type("ANY"), is_leaf=True, yang_name="match-set-options", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:match-set-options-restricted-type', is_config=True) + + prefix_set = __builtin__.property(_get_prefix_set, _set_prefix_set) + match_set_options = __builtin__.property(_get_match_set_options, _set_match_set_options) + + + _pyangbind_elements = OrderedDict([('prefix_set', prefix_set), ('match_set_options', match_set_options), ]) + + +class yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_prefix_set_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/conditions/match-prefix-set/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state data for a prefix-set condition + """ + __slots__ = ('_path_helper', '_extmethods', '__prefix_set','__match_set_options',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__prefix_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False) + self.__match_set_options = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}, 'INVERT': {}},), default=six.text_type("ANY"), is_leaf=True, yang_name="match-set-options", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:match-set-options-restricted-type', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'conditions', 'match-prefix-set', 'state'] + + def _get_prefix_set(self): + """ + Getter method for prefix_set, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_prefix_set/state/prefix_set (leafref) + + YANG Description: References a defined prefix set + """ + return self.__prefix_set + + def _set_prefix_set(self, v, load=False): + """ + Setter method for prefix_set, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_prefix_set/state/prefix_set (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_prefix_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_prefix_set() directly. + + YANG Description: References a defined prefix set + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """prefix_set must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False)""", + }) + + self.__prefix_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_prefix_set(self): + self.__prefix_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False) + + + def _get_match_set_options(self): + """ + Getter method for match_set_options, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_prefix_set/state/match_set_options (oc-pol-types:match-set-options-restricted-type) + + YANG Description: Optional parameter that governs the behaviour of the +match operation. This leaf only supports matching on ANY +member of the set or inverting the match. Matching on ALL is +not supported + """ + return self.__match_set_options + + def _set_match_set_options(self, v, load=False): + """ + Setter method for match_set_options, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_prefix_set/state/match_set_options (oc-pol-types:match-set-options-restricted-type) + If this variable is read-only (config: false) in the + source YANG file, then _set_match_set_options is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_match_set_options() directly. + + YANG Description: Optional parameter that governs the behaviour of the +match operation. This leaf only supports matching on ANY +member of the set or inverting the match. Matching on ALL is +not supported + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}, 'INVERT': {}},), default=six.text_type("ANY"), is_leaf=True, yang_name="match-set-options", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:match-set-options-restricted-type', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """match_set_options must be of a type compatible with oc-pol-types:match-set-options-restricted-type""", + 'defined-type': "oc-pol-types:match-set-options-restricted-type", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}, 'INVERT': {}},), default=six.text_type("ANY"), is_leaf=True, yang_name="match-set-options", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:match-set-options-restricted-type', is_config=False)""", + }) + + self.__match_set_options = t + if hasattr(self, '_set'): + self._set() + + def _unset_match_set_options(self): + self.__match_set_options = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}, 'INVERT': {}},), default=six.text_type("ANY"), is_leaf=True, yang_name="match-set-options", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:match-set-options-restricted-type', is_config=False) + + prefix_set = __builtin__.property(_get_prefix_set) + match_set_options = __builtin__.property(_get_match_set_options) + + + _pyangbind_elements = OrderedDict([('prefix_set', prefix_set), ('match_set_options', match_set_options), ]) + + +class yc_match_prefix_set_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_prefix_set(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/conditions/match-prefix-set. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Match a referenced prefix-set according to the logic +defined in the match-set-options leaf + """ + __slots__ = ('_path_helper', '_extmethods', '__config','__state',) + + _yang_name = 'match-prefix-set' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_prefix_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_prefix_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'conditions', 'match-prefix-set'] + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_prefix_set/config (container) + + YANG Description: Configuration data for a prefix-set condition + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_prefix_set/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configuration data for a prefix-set condition + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_prefix_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_prefix_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_prefix_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_prefix_set/state (container) + + YANG Description: Operational state data for a prefix-set condition + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_prefix_set/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state data for a prefix-set condition + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_prefix_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_prefix_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_prefix_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + + + _pyangbind_elements = OrderedDict([('config', config), ('state', state), ]) + + +class yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_neighbor_set_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/conditions/match-neighbor-set/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configuration data + """ + __slots__ = ('_path_helper', '_extmethods', '__neighbor_set','__match_set_options',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__neighbor_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="neighbor-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + self.__match_set_options = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}, 'INVERT': {}},), default=six.text_type("ANY"), is_leaf=True, yang_name="match-set-options", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:match-set-options-restricted-type', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'conditions', 'match-neighbor-set', 'config'] + + def _get_neighbor_set(self): + """ + Getter method for neighbor_set, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_neighbor_set/config/neighbor_set (leafref) + + YANG Description: References a defined neighbor set + """ + return self.__neighbor_set + + def _set_neighbor_set(self, v, load=False): + """ + Setter method for neighbor_set, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_neighbor_set/config/neighbor_set (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_neighbor_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_neighbor_set() directly. + + YANG Description: References a defined neighbor set + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="neighbor-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """neighbor_set must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="neighbor-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True)""", + }) + + self.__neighbor_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_neighbor_set(self): + self.__neighbor_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="neighbor-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + + + def _get_match_set_options(self): + """ + Getter method for match_set_options, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_neighbor_set/config/match_set_options (oc-pol-types:match-set-options-restricted-type) + + YANG Description: Optional parameter that governs the behaviour of the +match operation. This leaf only supports matching on ANY +member of the set or inverting the match. Matching on ALL is +not supported + """ + return self.__match_set_options + + def _set_match_set_options(self, v, load=False): + """ + Setter method for match_set_options, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_neighbor_set/config/match_set_options (oc-pol-types:match-set-options-restricted-type) + If this variable is read-only (config: false) in the + source YANG file, then _set_match_set_options is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_match_set_options() directly. + + YANG Description: Optional parameter that governs the behaviour of the +match operation. This leaf only supports matching on ANY +member of the set or inverting the match. Matching on ALL is +not supported + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}, 'INVERT': {}},), default=six.text_type("ANY"), is_leaf=True, yang_name="match-set-options", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:match-set-options-restricted-type', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """match_set_options must be of a type compatible with oc-pol-types:match-set-options-restricted-type""", + 'defined-type': "oc-pol-types:match-set-options-restricted-type", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}, 'INVERT': {}},), default=six.text_type("ANY"), is_leaf=True, yang_name="match-set-options", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:match-set-options-restricted-type', is_config=True)""", + }) + + self.__match_set_options = t + if hasattr(self, '_set'): + self._set() + + def _unset_match_set_options(self): + self.__match_set_options = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}, 'INVERT': {}},), default=six.text_type("ANY"), is_leaf=True, yang_name="match-set-options", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:match-set-options-restricted-type', is_config=True) + + neighbor_set = __builtin__.property(_get_neighbor_set, _set_neighbor_set) + match_set_options = __builtin__.property(_get_match_set_options, _set_match_set_options) + + + _pyangbind_elements = OrderedDict([('neighbor_set', neighbor_set), ('match_set_options', match_set_options), ]) + + +class yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_neighbor_set_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/conditions/match-neighbor-set/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state data + """ + __slots__ = ('_path_helper', '_extmethods', '__neighbor_set','__match_set_options',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__neighbor_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="neighbor-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False) + self.__match_set_options = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}, 'INVERT': {}},), default=six.text_type("ANY"), is_leaf=True, yang_name="match-set-options", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:match-set-options-restricted-type', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'conditions', 'match-neighbor-set', 'state'] + + def _get_neighbor_set(self): + """ + Getter method for neighbor_set, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_neighbor_set/state/neighbor_set (leafref) + + YANG Description: References a defined neighbor set + """ + return self.__neighbor_set + + def _set_neighbor_set(self, v, load=False): + """ + Setter method for neighbor_set, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_neighbor_set/state/neighbor_set (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_neighbor_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_neighbor_set() directly. + + YANG Description: References a defined neighbor set + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="neighbor-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """neighbor_set must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="neighbor-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False)""", + }) + + self.__neighbor_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_neighbor_set(self): + self.__neighbor_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="neighbor-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False) + + + def _get_match_set_options(self): + """ + Getter method for match_set_options, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_neighbor_set/state/match_set_options (oc-pol-types:match-set-options-restricted-type) + + YANG Description: Optional parameter that governs the behaviour of the +match operation. This leaf only supports matching on ANY +member of the set or inverting the match. Matching on ALL is +not supported + """ + return self.__match_set_options + + def _set_match_set_options(self, v, load=False): + """ + Setter method for match_set_options, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_neighbor_set/state/match_set_options (oc-pol-types:match-set-options-restricted-type) + If this variable is read-only (config: false) in the + source YANG file, then _set_match_set_options is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_match_set_options() directly. + + YANG Description: Optional parameter that governs the behaviour of the +match operation. This leaf only supports matching on ANY +member of the set or inverting the match. Matching on ALL is +not supported + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}, 'INVERT': {}},), default=six.text_type("ANY"), is_leaf=True, yang_name="match-set-options", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:match-set-options-restricted-type', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """match_set_options must be of a type compatible with oc-pol-types:match-set-options-restricted-type""", + 'defined-type': "oc-pol-types:match-set-options-restricted-type", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}, 'INVERT': {}},), default=six.text_type("ANY"), is_leaf=True, yang_name="match-set-options", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:match-set-options-restricted-type', is_config=False)""", + }) + + self.__match_set_options = t + if hasattr(self, '_set'): + self._set() + + def _unset_match_set_options(self): + self.__match_set_options = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}, 'INVERT': {}},), default=six.text_type("ANY"), is_leaf=True, yang_name="match-set-options", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:match-set-options-restricted-type', is_config=False) + + neighbor_set = __builtin__.property(_get_neighbor_set) + match_set_options = __builtin__.property(_get_match_set_options) + + + _pyangbind_elements = OrderedDict([('neighbor_set', neighbor_set), ('match_set_options', match_set_options), ]) + + +class yc_match_neighbor_set_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_neighbor_set(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/conditions/match-neighbor-set. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Match a referenced neighbor set according to the logic +defined in the match-set-options-leaf + """ + __slots__ = ('_path_helper', '_extmethods', '__config','__state',) + + _yang_name = 'match-neighbor-set' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_neighbor_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_neighbor_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'conditions', 'match-neighbor-set'] + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_neighbor_set/config (container) + + YANG Description: Configuration data + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_neighbor_set/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configuration data + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_neighbor_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_neighbor_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_neighbor_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_neighbor_set/state (container) + + YANG Description: Operational state data + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_neighbor_set/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state data + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_neighbor_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_neighbor_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_neighbor_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + + + _pyangbind_elements = OrderedDict([('config', config), ('state', state), ]) + + +class yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_tag_set_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/conditions/match-tag-set/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configuration data for tag-set conditions + """ + __slots__ = ('_path_helper', '_extmethods', '__tag_set','__match_set_options',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__tag_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="tag-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + self.__match_set_options = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}, 'INVERT': {}},), default=six.text_type("ANY"), is_leaf=True, yang_name="match-set-options", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:match-set-options-restricted-type', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'conditions', 'match-tag-set', 'config'] + + def _get_tag_set(self): + """ + Getter method for tag_set, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_tag_set/config/tag_set (leafref) + + YANG Description: References a defined tag set + """ + return self.__tag_set + + def _set_tag_set(self, v, load=False): + """ + Setter method for tag_set, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_tag_set/config/tag_set (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_tag_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_tag_set() directly. + + YANG Description: References a defined tag set + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="tag-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """tag_set must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="tag-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True)""", + }) + + self.__tag_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_tag_set(self): + self.__tag_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="tag-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + + + def _get_match_set_options(self): + """ + Getter method for match_set_options, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_tag_set/config/match_set_options (oc-pol-types:match-set-options-restricted-type) + + YANG Description: Optional parameter that governs the behaviour of the +match operation. This leaf only supports matching on ANY +member of the set or inverting the match. Matching on ALL is +not supported + """ + return self.__match_set_options + + def _set_match_set_options(self, v, load=False): + """ + Setter method for match_set_options, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_tag_set/config/match_set_options (oc-pol-types:match-set-options-restricted-type) + If this variable is read-only (config: false) in the + source YANG file, then _set_match_set_options is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_match_set_options() directly. + + YANG Description: Optional parameter that governs the behaviour of the +match operation. This leaf only supports matching on ANY +member of the set or inverting the match. Matching on ALL is +not supported + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}, 'INVERT': {}},), default=six.text_type("ANY"), is_leaf=True, yang_name="match-set-options", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:match-set-options-restricted-type', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """match_set_options must be of a type compatible with oc-pol-types:match-set-options-restricted-type""", + 'defined-type': "oc-pol-types:match-set-options-restricted-type", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}, 'INVERT': {}},), default=six.text_type("ANY"), is_leaf=True, yang_name="match-set-options", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:match-set-options-restricted-type', is_config=True)""", + }) + + self.__match_set_options = t + if hasattr(self, '_set'): + self._set() + + def _unset_match_set_options(self): + self.__match_set_options = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}, 'INVERT': {}},), default=six.text_type("ANY"), is_leaf=True, yang_name="match-set-options", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:match-set-options-restricted-type', is_config=True) + + tag_set = __builtin__.property(_get_tag_set, _set_tag_set) + match_set_options = __builtin__.property(_get_match_set_options, _set_match_set_options) + + + _pyangbind_elements = OrderedDict([('tag_set', tag_set), ('match_set_options', match_set_options), ]) + + +class yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_tag_set_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/conditions/match-tag-set/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state data tag-set conditions + """ + __slots__ = ('_path_helper', '_extmethods', '__tag_set','__match_set_options',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__tag_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="tag-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False) + self.__match_set_options = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}, 'INVERT': {}},), default=six.text_type("ANY"), is_leaf=True, yang_name="match-set-options", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:match-set-options-restricted-type', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'conditions', 'match-tag-set', 'state'] + + def _get_tag_set(self): + """ + Getter method for tag_set, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_tag_set/state/tag_set (leafref) + + YANG Description: References a defined tag set + """ + return self.__tag_set + + def _set_tag_set(self, v, load=False): + """ + Setter method for tag_set, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_tag_set/state/tag_set (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_tag_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_tag_set() directly. + + YANG Description: References a defined tag set + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="tag-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """tag_set must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="tag-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False)""", + }) + + self.__tag_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_tag_set(self): + self.__tag_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="tag-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False) + + + def _get_match_set_options(self): + """ + Getter method for match_set_options, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_tag_set/state/match_set_options (oc-pol-types:match-set-options-restricted-type) + + YANG Description: Optional parameter that governs the behaviour of the +match operation. This leaf only supports matching on ANY +member of the set or inverting the match. Matching on ALL is +not supported + """ + return self.__match_set_options + + def _set_match_set_options(self, v, load=False): + """ + Setter method for match_set_options, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_tag_set/state/match_set_options (oc-pol-types:match-set-options-restricted-type) + If this variable is read-only (config: false) in the + source YANG file, then _set_match_set_options is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_match_set_options() directly. + + YANG Description: Optional parameter that governs the behaviour of the +match operation. This leaf only supports matching on ANY +member of the set or inverting the match. Matching on ALL is +not supported + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}, 'INVERT': {}},), default=six.text_type("ANY"), is_leaf=True, yang_name="match-set-options", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:match-set-options-restricted-type', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """match_set_options must be of a type compatible with oc-pol-types:match-set-options-restricted-type""", + 'defined-type': "oc-pol-types:match-set-options-restricted-type", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}, 'INVERT': {}},), default=six.text_type("ANY"), is_leaf=True, yang_name="match-set-options", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:match-set-options-restricted-type', is_config=False)""", + }) + + self.__match_set_options = t + if hasattr(self, '_set'): + self._set() + + def _unset_match_set_options(self): + self.__match_set_options = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ANY': {}, 'INVERT': {}},), default=six.text_type("ANY"), is_leaf=True, yang_name="match-set-options", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:match-set-options-restricted-type', is_config=False) + + tag_set = __builtin__.property(_get_tag_set) + match_set_options = __builtin__.property(_get_match_set_options) + + + _pyangbind_elements = OrderedDict([('tag_set', tag_set), ('match_set_options', match_set_options), ]) + + +class yc_match_tag_set_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_tag_set(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/conditions/match-tag-set. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Match a referenced tag set according to the logic defined +in the match-options-set leaf + """ + __slots__ = ('_path_helper', '_extmethods', '__config','__state',) + + _yang_name = 'match-tag-set' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_tag_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_tag_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'conditions', 'match-tag-set'] + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_tag_set/config (container) + + YANG Description: Configuration data for tag-set conditions + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_tag_set/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configuration data for tag-set conditions + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_tag_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_tag_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_tag_set_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_tag_set/state (container) + + YANG Description: Operational state data tag-set conditions + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_tag_set/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state data tag-set conditions + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_tag_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_tag_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_tag_set_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + + + _pyangbind_elements = OrderedDict([('config', config), ('state', state), ]) + + +class yc_conditions_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/conditions. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Condition statements for the current policy statement + """ + __slots__ = ('_path_helper', '_extmethods', '__config','__state','__match_interface','__match_prefix_set','__match_neighbor_set','__match_tag_set',) + + _yang_name = 'conditions' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__match_interface = YANGDynClass(base=yc_match_interface_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_interface, is_container='container', yang_name="match-interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__match_prefix_set = YANGDynClass(base=yc_match_prefix_set_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_prefix_set, is_container='container', yang_name="match-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__match_neighbor_set = YANGDynClass(base=yc_match_neighbor_set_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_neighbor_set, is_container='container', yang_name="match-neighbor-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__match_tag_set = YANGDynClass(base=yc_match_tag_set_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_tag_set, is_container='container', yang_name="match-tag-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'conditions'] + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/config (container) + + YANG Description: Configuration data for policy conditions + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configuration data for policy conditions + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/state (container) + + YANG Description: Operational state data for policy conditions + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state data for policy conditions + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_match_interface(self): + """ + Getter method for match_interface, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_interface (container) + + YANG Description: Top-level container for interface match conditions + """ + return self.__match_interface + + def _set_match_interface(self, v, load=False): + """ + Setter method for match_interface, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_interface (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_match_interface is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_match_interface() directly. + + YANG Description: Top-level container for interface match conditions + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_match_interface_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_interface, is_container='container', yang_name="match-interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """match_interface must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_match_interface_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_interface, is_container='container', yang_name="match-interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__match_interface = t + if hasattr(self, '_set'): + self._set() + + def _unset_match_interface(self): + self.__match_interface = YANGDynClass(base=yc_match_interface_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_interface, is_container='container', yang_name="match-interface", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_match_prefix_set(self): + """ + Getter method for match_prefix_set, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_prefix_set (container) + + YANG Description: Match a referenced prefix-set according to the logic +defined in the match-set-options leaf + """ + return self.__match_prefix_set + + def _set_match_prefix_set(self, v, load=False): + """ + Setter method for match_prefix_set, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_prefix_set (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_match_prefix_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_match_prefix_set() directly. + + YANG Description: Match a referenced prefix-set according to the logic +defined in the match-set-options leaf + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_match_prefix_set_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_prefix_set, is_container='container', yang_name="match-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """match_prefix_set must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_match_prefix_set_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_prefix_set, is_container='container', yang_name="match-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__match_prefix_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_match_prefix_set(self): + self.__match_prefix_set = YANGDynClass(base=yc_match_prefix_set_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_prefix_set, is_container='container', yang_name="match-prefix-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_match_neighbor_set(self): + """ + Getter method for match_neighbor_set, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_neighbor_set (container) + + YANG Description: Match a referenced neighbor set according to the logic +defined in the match-set-options-leaf + """ + return self.__match_neighbor_set + + def _set_match_neighbor_set(self, v, load=False): + """ + Setter method for match_neighbor_set, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_neighbor_set (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_match_neighbor_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_match_neighbor_set() directly. + + YANG Description: Match a referenced neighbor set according to the logic +defined in the match-set-options-leaf + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_match_neighbor_set_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_neighbor_set, is_container='container', yang_name="match-neighbor-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """match_neighbor_set must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_match_neighbor_set_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_neighbor_set, is_container='container', yang_name="match-neighbor-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__match_neighbor_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_match_neighbor_set(self): + self.__match_neighbor_set = YANGDynClass(base=yc_match_neighbor_set_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_neighbor_set, is_container='container', yang_name="match-neighbor-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_match_tag_set(self): + """ + Getter method for match_tag_set, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_tag_set (container) + + YANG Description: Match a referenced tag set according to the logic defined +in the match-options-set leaf + """ + return self.__match_tag_set + + def _set_match_tag_set(self, v, load=False): + """ + Setter method for match_tag_set, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions/match_tag_set (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_match_tag_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_match_tag_set() directly. + + YANG Description: Match a referenced tag set according to the logic defined +in the match-options-set leaf + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_match_tag_set_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_tag_set, is_container='container', yang_name="match-tag-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """match_tag_set must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_match_tag_set_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_tag_set, is_container='container', yang_name="match-tag-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__match_tag_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_match_tag_set(self): + self.__match_tag_set = YANGDynClass(base=yc_match_tag_set_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions_match_tag_set, is_container='container', yang_name="match-tag-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + match_interface = __builtin__.property(_get_match_interface, _set_match_interface) + match_prefix_set = __builtin__.property(_get_match_prefix_set, _set_match_prefix_set) + match_neighbor_set = __builtin__.property(_get_match_neighbor_set, _set_match_neighbor_set) + match_tag_set = __builtin__.property(_get_match_tag_set, _set_match_tag_set) + + + _pyangbind_elements = OrderedDict([('config', config), ('state', state), ('match_interface', match_interface), ('match_prefix_set', match_prefix_set), ('match_neighbor_set', match_neighbor_set), ('match_tag_set', match_tag_set), ]) + + +class yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/actions/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configuration data for policy actions + """ + __slots__ = ('_path_helper', '_extmethods', '__policy_result',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__policy_result = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ACCEPT_ROUTE': {}, 'REJECT_ROUTE': {}},), is_leaf=True, yang_name="policy-result", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='policy-result-type', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'actions', 'config'] + + def _get_policy_result(self): + """ + Getter method for policy_result, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/config/policy_result (policy-result-type) + + YANG Description: Select the final disposition for the route, either +accept or reject. + """ + return self.__policy_result + + def _set_policy_result(self, v, load=False): + """ + Setter method for policy_result, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/config/policy_result (policy-result-type) + If this variable is read-only (config: false) in the + source YANG file, then _set_policy_result is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_policy_result() directly. + + YANG Description: Select the final disposition for the route, either +accept or reject. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ACCEPT_ROUTE': {}, 'REJECT_ROUTE': {}},), is_leaf=True, yang_name="policy-result", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='policy-result-type', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """policy_result must be of a type compatible with policy-result-type""", + 'defined-type': "openconfig-routing-policy:policy-result-type", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ACCEPT_ROUTE': {}, 'REJECT_ROUTE': {}},), is_leaf=True, yang_name="policy-result", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='policy-result-type', is_config=True)""", + }) + + self.__policy_result = t + if hasattr(self, '_set'): + self._set() + + def _unset_policy_result(self): + self.__policy_result = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ACCEPT_ROUTE': {}, 'REJECT_ROUTE': {}},), is_leaf=True, yang_name="policy-result", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='policy-result-type', is_config=True) + + policy_result = __builtin__.property(_get_policy_result, _set_policy_result) + + + _pyangbind_elements = OrderedDict([('policy_result', policy_result), ]) + + +class yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/actions/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state data for policy actions + """ + __slots__ = ('_path_helper', '_extmethods', '__policy_result',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__policy_result = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ACCEPT_ROUTE': {}, 'REJECT_ROUTE': {}},), is_leaf=True, yang_name="policy-result", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='policy-result-type', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'actions', 'state'] + + def _get_policy_result(self): + """ + Getter method for policy_result, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/state/policy_result (policy-result-type) + + YANG Description: Select the final disposition for the route, either +accept or reject. + """ + return self.__policy_result + + def _set_policy_result(self, v, load=False): + """ + Setter method for policy_result, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/state/policy_result (policy-result-type) + If this variable is read-only (config: false) in the + source YANG file, then _set_policy_result is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_policy_result() directly. + + YANG Description: Select the final disposition for the route, either +accept or reject. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ACCEPT_ROUTE': {}, 'REJECT_ROUTE': {}},), is_leaf=True, yang_name="policy-result", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='policy-result-type', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """policy_result must be of a type compatible with policy-result-type""", + 'defined-type': "openconfig-routing-policy:policy-result-type", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ACCEPT_ROUTE': {}, 'REJECT_ROUTE': {}},), is_leaf=True, yang_name="policy-result", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='policy-result-type', is_config=False)""", + }) + + self.__policy_result = t + if hasattr(self, '_set'): + self._set() + + def _unset_policy_result(self): + self.__policy_result = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'ACCEPT_ROUTE': {}, 'REJECT_ROUTE': {}},), is_leaf=True, yang_name="policy-result", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='policy-result-type', is_config=False) + + policy_result = __builtin__.property(_get_policy_result) + + + _pyangbind_elements = OrderedDict([('policy_result', policy_result), ]) + + +class yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/actions/set-tag/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configuration of tag application + """ + __slots__ = ('_path_helper', '_extmethods', '__mode',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__mode = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'INLINE': {}, 'REFERENCE': {}},), is_leaf=True, yang_name="mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='enumeration', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'actions', 'set-tag', 'config'] + + def _get_mode(self): + """ + Getter method for mode, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/config/mode (enumeration) + + YANG Description: This leaf controls the source of the tags that are set as a result +of the action. In the case that the INLINE value is specified, the +list of tags specified within the action is applied to matching prefixes. +In the case that the REFERENCE value is specified, a pre-defined set of +tags is utilised. + """ + return self.__mode + + def _set_mode(self, v, load=False): + """ + Setter method for mode, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/config/mode (enumeration) + If this variable is read-only (config: false) in the + source YANG file, then _set_mode is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_mode() directly. + + YANG Description: This leaf controls the source of the tags that are set as a result +of the action. In the case that the INLINE value is specified, the +list of tags specified within the action is applied to matching prefixes. +In the case that the REFERENCE value is specified, a pre-defined set of +tags is utilised. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'INLINE': {}, 'REFERENCE': {}},), is_leaf=True, yang_name="mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='enumeration', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """mode must be of a type compatible with enumeration""", + 'defined-type': "openconfig-routing-policy:enumeration", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'INLINE': {}, 'REFERENCE': {}},), is_leaf=True, yang_name="mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='enumeration', is_config=True)""", + }) + + self.__mode = t + if hasattr(self, '_set'): + self._set() + + def _unset_mode(self): + self.__mode = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'INLINE': {}, 'REFERENCE': {}},), is_leaf=True, yang_name="mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='enumeration', is_config=True) + + mode = __builtin__.property(_get_mode, _set_mode) + + + _pyangbind_elements = OrderedDict([('mode', mode), ]) + + +class yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/actions/set-tag/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state related to tag application. + """ + __slots__ = ('_path_helper', '_extmethods', '__mode',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__mode = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'INLINE': {}, 'REFERENCE': {}},), is_leaf=True, yang_name="mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='enumeration', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'actions', 'set-tag', 'state'] + + def _get_mode(self): + """ + Getter method for mode, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/state/mode (enumeration) + + YANG Description: This leaf controls the source of the tags that are set as a result +of the action. In the case that the INLINE value is specified, the +list of tags specified within the action is applied to matching prefixes. +In the case that the REFERENCE value is specified, a pre-defined set of +tags is utilised. + """ + return self.__mode + + def _set_mode(self, v, load=False): + """ + Setter method for mode, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/state/mode (enumeration) + If this variable is read-only (config: false) in the + source YANG file, then _set_mode is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_mode() directly. + + YANG Description: This leaf controls the source of the tags that are set as a result +of the action. In the case that the INLINE value is specified, the +list of tags specified within the action is applied to matching prefixes. +In the case that the REFERENCE value is specified, a pre-defined set of +tags is utilised. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'INLINE': {}, 'REFERENCE': {}},), is_leaf=True, yang_name="mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='enumeration', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """mode must be of a type compatible with enumeration""", + 'defined-type': "openconfig-routing-policy:enumeration", + 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'INLINE': {}, 'REFERENCE': {}},), is_leaf=True, yang_name="mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='enumeration', is_config=False)""", + }) + + self.__mode = t + if hasattr(self, '_set'): + self._set() + + def _unset_mode(self): + self.__mode = YANGDynClass(base=RestrictedClassType(base_type=six.text_type, restriction_type="dict_key", restriction_arg={'INLINE': {}, 'REFERENCE': {}},), is_leaf=True, yang_name="mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='enumeration', is_config=False) + + mode = __builtin__.property(_get_mode) + + + _pyangbind_elements = OrderedDict([('mode', mode), ]) + + +class yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_inline_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/actions/set-tag/inline/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configuration values related to in-line tag specification. + """ + __slots__ = ('_path_helper', '_extmethods', '__tag',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__tag = YANGDynClass(unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?'}),]), is_leaf=False, yang_name="tag", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:tag-type', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'actions', 'set-tag', 'inline', 'config'] + + def _get_tag(self): + """ + Getter method for tag, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/inline/config/tag (oc-pol-types:tag-type) + + YANG Description: Set one or more tags for prefixes that match the specified condition(s) +using the specified tag values. When a tag is set it MUST be possible to +match the value set in subsequent policies on the local device. Where the +protocol that is carrying the prefix has a tag field (OSPF, and IS-IS in +particular) the tag MUST be set in the corresponding protocol advertisements +of the prefix. + """ + return self.__tag + + def _set_tag(self, v, load=False): + """ + Setter method for tag, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/inline/config/tag (oc-pol-types:tag-type) + If this variable is read-only (config: false) in the + source YANG file, then _set_tag is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_tag() directly. + + YANG Description: Set one or more tags for prefixes that match the specified condition(s) +using the specified tag values. When a tag is set it MUST be possible to +match the value set in subsequent policies on the local device. Where the +protocol that is carrying the prefix has a tag field (OSPF, and IS-IS in +particular) the tag MUST be set in the corresponding protocol advertisements +of the prefix. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?'}),]), is_leaf=False, yang_name="tag", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:tag-type', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """tag must be of a type compatible with oc-pol-types:tag-type""", + 'defined-type': "oc-pol-types:tag-type", + 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?'}),]), is_leaf=False, yang_name="tag", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:tag-type', is_config=True)""", + }) + + self.__tag = t + if hasattr(self, '_set'): + self._set() + + def _unset_tag(self): + self.__tag = YANGDynClass(unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?'}),]), is_leaf=False, yang_name="tag", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:tag-type', is_config=True) + + tag = __builtin__.property(_get_tag, _set_tag) + + + _pyangbind_elements = OrderedDict([('tag', tag), ]) + + +class yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_inline_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/actions/set-tag/inline/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state related to in-line tag specification. + """ + __slots__ = ('_path_helper', '_extmethods', '__tag',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__tag = YANGDynClass(unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?'}),]), is_leaf=False, yang_name="tag", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:tag-type', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'actions', 'set-tag', 'inline', 'state'] + + def _get_tag(self): + """ + Getter method for tag, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/inline/state/tag (oc-pol-types:tag-type) + + YANG Description: Set one or more tags for prefixes that match the specified condition(s) +using the specified tag values. When a tag is set it MUST be possible to +match the value set in subsequent policies on the local device. Where the +protocol that is carrying the prefix has a tag field (OSPF, and IS-IS in +particular) the tag MUST be set in the corresponding protocol advertisements +of the prefix. + """ + return self.__tag + + def _set_tag(self, v, load=False): + """ + Setter method for tag, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/inline/state/tag (oc-pol-types:tag-type) + If this variable is read-only (config: false) in the + source YANG file, then _set_tag is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_tag() directly. + + YANG Description: Set one or more tags for prefixes that match the specified condition(s) +using the specified tag values. When a tag is set it MUST be possible to +match the value set in subsequent policies on the local device. Where the +protocol that is carrying the prefix has a tag field (OSPF, and IS-IS in +particular) the tag MUST be set in the corresponding protocol advertisements +of the prefix. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?'}),]), is_leaf=False, yang_name="tag", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:tag-type', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """tag must be of a type compatible with oc-pol-types:tag-type""", + 'defined-type': "oc-pol-types:tag-type", + 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?'}),]), is_leaf=False, yang_name="tag", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:tag-type', is_config=False)""", + }) + + self.__tag = t + if hasattr(self, '_set'): + self._set() + + def _unset_tag(self): + self.__tag = YANGDynClass(unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32),RestrictedClassType(base_type=six.text_type, restriction_dict={'pattern': '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?'}),]), is_leaf=False, yang_name="tag", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='oc-pol-types:tag-type', is_config=False) + + tag = __builtin__.property(_get_tag) + + + _pyangbind_elements = OrderedDict([('tag', tag), ]) + + +class yc_inline_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_inline(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/actions/set-tag/inline. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: The tags specified in this container are set on a route using +the values directly. It is applicable when the mode of application +is explicitly specified as INLINE. + """ + __slots__ = ('_path_helper', '_extmethods', '__config','__state',) + + _yang_name = 'inline' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_inline_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_inline_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'actions', 'set-tag', 'inline'] + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/inline/config (container) + + YANG Description: Configuration values related to in-line tag specification. + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/inline/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configuration values related to in-line tag specification. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_inline_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_inline_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_inline_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/inline/state (container) + + YANG Description: Operational state related to in-line tag specification. + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/inline/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state related to in-line tag specification. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_inline_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_inline_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_inline_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + + + _pyangbind_elements = OrderedDict([('config', config), ('state', state), ]) + + +class yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_reference_config(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/actions/set-tag/reference/config. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Configuration values related to specifying a tag-set to be applied to +a route. + """ + __slots__ = ('_path_helper', '_extmethods', '__tag_set',) + + _yang_name = 'config' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__tag_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="tag-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'actions', 'set-tag', 'reference', 'config'] + + def _get_tag_set(self): + """ + Getter method for tag_set, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/reference/config/tag_set (leafref) + + YANG Description: Use the referenced tag-set to set tags on the prefixes that match the +specified conditions. When a tag is set it MUST be possible to match the +value set in subsequent policies on the local device. where the protocol that +is carrying the prefix has a tag field (OSPF, and IS-IS for in particular) +the tag MUST be set in the corresponding protocol advertisements of the +prefix. + """ + return self.__tag_set + + def _set_tag_set(self, v, load=False): + """ + Setter method for tag_set, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/reference/config/tag_set (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_tag_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_tag_set() directly. + + YANG Description: Use the referenced tag-set to set tags on the prefixes that match the +specified conditions. When a tag is set it MUST be possible to match the +value set in subsequent policies on the local device. where the protocol that +is carrying the prefix has a tag field (OSPF, and IS-IS for in particular) +the tag MUST be set in the corresponding protocol advertisements of the +prefix. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="tag-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """tag_set must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="tag-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True)""", + }) + + self.__tag_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_tag_set(self): + self.__tag_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="tag-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + + tag_set = __builtin__.property(_get_tag_set, _set_tag_set) + + + _pyangbind_elements = OrderedDict([('tag_set', tag_set), ]) + + +class yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_reference_state(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/actions/set-tag/reference/state. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Operational state related to specifying a tag-set to be applied to a +route. + """ + __slots__ = ('_path_helper', '_extmethods', '__tag_set',) + + _yang_name = 'state' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__tag_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="tag-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'actions', 'set-tag', 'reference', 'state'] + + def _get_tag_set(self): + """ + Getter method for tag_set, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/reference/state/tag_set (leafref) + + YANG Description: Use the referenced tag-set to set tags on the prefixes that match the +specified conditions. When a tag is set it MUST be possible to match the +value set in subsequent policies on the local device. where the protocol that +is carrying the prefix has a tag field (OSPF, and IS-IS for in particular) +the tag MUST be set in the corresponding protocol advertisements of the +prefix. + """ + return self.__tag_set + + def _set_tag_set(self, v, load=False): + """ + Setter method for tag_set, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/reference/state/tag_set (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_tag_set is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_tag_set() directly. + + YANG Description: Use the referenced tag-set to set tags on the prefixes that match the +specified conditions. When a tag is set it MUST be possible to match the +value set in subsequent policies on the local device. where the protocol that +is carrying the prefix has a tag field (OSPF, and IS-IS for in particular) +the tag MUST be set in the corresponding protocol advertisements of the +prefix. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="tag-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """tag_set must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="tag-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False)""", + }) + + self.__tag_set = t + if hasattr(self, '_set'): + self._set() + + def _unset_tag_set(self): + self.__tag_set = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="tag-set", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=False) + + tag_set = __builtin__.property(_get_tag_set) + + + _pyangbind_elements = OrderedDict([('tag_set', tag_set), ]) + + +class yc_reference_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_reference(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/actions/set-tag/reference. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: This container is applicable when the mode of application is explicitly +specified to as REFERENCE. The tags set on a route are those that are +specified within the tag-set + """ + __slots__ = ('_path_helper', '_extmethods', '__config','__state',) + + _yang_name = 'reference' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_reference_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_reference_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'actions', 'set-tag', 'reference'] + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/reference/config (container) + + YANG Description: Configuration values related to specifying a tag-set to be applied to +a route. + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/reference/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configuration values related to specifying a tag-set to be applied to +a route. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_reference_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_reference_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_reference_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/reference/state (container) + + YANG Description: Operational state related to specifying a tag-set to be applied to a +route. + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/reference/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state related to specifying a tag-set to be applied to a +route. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_reference_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_reference_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_reference_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + + + _pyangbind_elements = OrderedDict([('config', config), ('state', state), ]) + + +class yc_set_tag_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/actions/set-tag. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Policy actions associated with setting tags for a particular +route. A tag is an abstract entity which can be mapped to underlying +protocol attributes where applicable. + """ + __slots__ = ('_path_helper', '_extmethods', '__config','__state','__inline','__reference',) + + _yang_name = 'set-tag' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__inline = YANGDynClass(base=yc_inline_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_inline, is_container='container', yang_name="inline", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__reference = YANGDynClass(base=yc_reference_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_reference, is_container='container', yang_name="reference", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'actions', 'set-tag'] + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/config (container) + + YANG Description: Configuration of tag application + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configuration of tag application + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/state (container) + + YANG Description: Operational state related to tag application. + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state related to tag application. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_inline(self): + """ + Getter method for inline, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/inline (container) + + YANG Description: The tags specified in this container are set on a route using +the values directly. It is applicable when the mode of application +is explicitly specified as INLINE. + """ + return self.__inline + + def _set_inline(self, v, load=False): + """ + Setter method for inline, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/inline (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_inline is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_inline() directly. + + YANG Description: The tags specified in this container are set on a route using +the values directly. It is applicable when the mode of application +is explicitly specified as INLINE. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_inline_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_inline, is_container='container', yang_name="inline", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """inline must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_inline_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_inline, is_container='container', yang_name="inline", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__inline = t + if hasattr(self, '_set'): + self._set() + + def _unset_inline(self): + self.__inline = YANGDynClass(base=yc_inline_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_inline, is_container='container', yang_name="inline", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_reference(self): + """ + Getter method for reference, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/reference (container) + + YANG Description: This container is applicable when the mode of application is explicitly +specified to as REFERENCE. The tags set on a route are those that are +specified within the tag-set + """ + return self.__reference + + def _set_reference(self, v, load=False): + """ + Setter method for reference, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag/reference (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_reference is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_reference() directly. + + YANG Description: This container is applicable when the mode of application is explicitly +specified to as REFERENCE. The tags set on a route are those that are +specified within the tag-set + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_reference_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_reference, is_container='container', yang_name="reference", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """reference must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_reference_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_reference, is_container='container', yang_name="reference", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__reference = t + if hasattr(self, '_set'): + self._set() + + def _unset_reference(self): + self.__reference = YANGDynClass(base=yc_reference_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag_reference, is_container='container', yang_name="reference", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + inline = __builtin__.property(_get_inline, _set_inline) + reference = __builtin__.property(_get_reference, _set_reference) + + + _pyangbind_elements = OrderedDict([('config', config), ('state', state), ('inline', inline), ('reference', reference), ]) + + +class yc_actions_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement/actions. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Top-level container for policy action statements + """ + __slots__ = ('_path_helper', '_extmethods', '__config','__state','__set_tag',) + + _yang_name = 'actions' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__set_tag = YANGDynClass(base=yc_set_tag_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag, is_container='container', yang_name="set-tag", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement', 'actions'] + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/config (container) + + YANG Description: Configuration data for policy actions + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configuration data for policy actions + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/state (container) + + YANG Description: Operational state data for policy actions + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state data for policy actions + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_set_tag(self): + """ + Getter method for set_tag, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag (container) + + YANG Description: Policy actions associated with setting tags for a particular +route. A tag is an abstract entity which can be mapped to underlying +protocol attributes where applicable. + """ + return self.__set_tag + + def _set_set_tag(self, v, load=False): + """ + Setter method for set_tag, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions/set_tag (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_set_tag is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_set_tag() directly. + + YANG Description: Policy actions associated with setting tags for a particular +route. A tag is an abstract entity which can be mapped to underlying +protocol attributes where applicable. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_set_tag_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag, is_container='container', yang_name="set-tag", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """set_tag must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_set_tag_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag, is_container='container', yang_name="set-tag", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__set_tag = t + if hasattr(self, '_set'): + self._set() + + def _unset_set_tag(self): + self.__set_tag = YANGDynClass(base=yc_set_tag_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions_set_tag, is_container='container', yang_name="set-tag", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + set_tag = __builtin__.property(_get_set_tag, _set_set_tag) + + + _pyangbind_elements = OrderedDict([('config', config), ('state', state), ('set_tag', set_tag), ]) + + +class yc_statement_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements/statement. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Policy statements group conditions and actions +within a policy definition. They are evaluated in +the order specified (see the description of policy +evaluation at the top of this module. + """ + __slots__ = ('_path_helper', '_extmethods', '__name','__config','__state','__conditions','__actions',) + + _yang_name = 'statement' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__conditions = YANGDynClass(base=yc_conditions_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions, is_container='container', yang_name="conditions", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__actions = YANGDynClass(base=yc_actions_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions, is_container='container', yang_name="actions", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements', 'statement'] + + def _get_name(self): + """ + Getter method for name, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/name (leafref) + + YANG Description: Reference to list key + """ + return self.__name + + def _set_name(self, v, load=False): + """ + Setter method for name, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/name (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_name() directly. + + YANG Description: Reference to list key + """ + parent = getattr(self, "_parent", None) + if parent is not None and load is False: + raise AttributeError("Cannot set keys directly when" + + " within an instantiated list") + + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """name must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True)""", + }) + + self.__name = t + if hasattr(self, '_set'): + self._set() + + def _unset_name(self): + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/config (container) + + YANG Description: Configuration data for policy statements + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configuration data for policy statements + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/state (container) + + YANG Description: Operational state data for policy statements + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state data for policy statements + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_conditions(self): + """ + Getter method for conditions, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions (container) + + YANG Description: Condition statements for the current policy statement + """ + return self.__conditions + + def _set_conditions(self, v, load=False): + """ + Setter method for conditions, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/conditions (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_conditions is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_conditions() directly. + + YANG Description: Condition statements for the current policy statement + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_conditions_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions, is_container='container', yang_name="conditions", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """conditions must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_conditions_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions, is_container='container', yang_name="conditions", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__conditions = t + if hasattr(self, '_set'): + self._set() + + def _unset_conditions(self): + self.__conditions = YANGDynClass(base=yc_conditions_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_conditions, is_container='container', yang_name="conditions", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_actions(self): + """ + Getter method for actions, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions (container) + + YANG Description: Top-level container for policy action statements + """ + return self.__actions + + def _set_actions(self, v, load=False): + """ + Setter method for actions, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement/actions (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_actions is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_actions() directly. + + YANG Description: Top-level container for policy action statements + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_actions_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions, is_container='container', yang_name="actions", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """actions must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_actions_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions, is_container='container', yang_name="actions", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__actions = t + if hasattr(self, '_set'): + self._set() + + def _unset_actions(self): + self.__actions = YANGDynClass(base=yc_actions_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement_actions, is_container='container', yang_name="actions", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + name = __builtin__.property(_get_name, _set_name) + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + conditions = __builtin__.property(_get_conditions, _set_conditions) + actions = __builtin__.property(_get_actions, _set_actions) + + + _pyangbind_elements = OrderedDict([('name', name), ('config', config), ('state', state), ('conditions', conditions), ('actions', actions), ]) + + +class yc_statements_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition/statements. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Enclosing container for policy statements + """ + __slots__ = ('_path_helper', '_extmethods', '__statement',) + + _yang_name = 'statements' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__statement = YANGDynClass(base=YANGListType("name",yc_statement_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement, yang_name="statement", parent=self, is_container='list', user_ordered=True, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="statement", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='list', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition', 'statements'] + + def _get_statement(self): + """ + Getter method for statement, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement (list) + + YANG Description: Policy statements group conditions and actions +within a policy definition. They are evaluated in +the order specified (see the description of policy +evaluation at the top of this module. + """ + return self.__statement + + def _set_statement(self, v, load=False): + """ + Setter method for statement, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements/statement (list) + If this variable is read-only (config: false) in the + source YANG file, then _set_statement is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_statement() directly. + + YANG Description: Policy statements group conditions and actions +within a policy definition. They are evaluated in +the order specified (see the description of policy +evaluation at the top of this module. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGListType("name",yc_statement_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement, yang_name="statement", parent=self, is_container='list', user_ordered=True, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="statement", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='list', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """statement must be of a type compatible with list""", + 'defined-type': "list", + 'generated-type': """YANGDynClass(base=YANGListType("name",yc_statement_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement, yang_name="statement", parent=self, is_container='list', user_ordered=True, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="statement", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='list', is_config=True)""", + }) + + self.__statement = t + if hasattr(self, '_set'): + self._set() + + def _unset_statement(self): + self.__statement = YANGDynClass(base=YANGListType("name",yc_statement_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements_statement, yang_name="statement", parent=self, is_container='list', user_ordered=True, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="statement", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='list', is_config=True) + + statement = __builtin__.property(_get_statement, _set_statement) + + + _pyangbind_elements = OrderedDict([('statement', statement), ]) + + +class yc_policy_definition_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions/policy-definition. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: List of top-level policy definitions, keyed by unique +name. These policy definitions are expected to be +referenced (by name) in policy chains specified in import +or export configuration statements. + """ + __slots__ = ('_path_helper', '_extmethods', '__name','__config','__state','__statements',) + + _yang_name = 'policy-definition' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__statements = YANGDynClass(base=yc_statements_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements, is_container='container', yang_name="statements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions', 'policy-definition'] + + def _get_name(self): + """ + Getter method for name, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/name (leafref) + + YANG Description: Reference to the list key + """ + return self.__name + + def _set_name(self, v, load=False): + """ + Setter method for name, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/name (leafref) + If this variable is read-only (config: false) in the + source YANG file, then _set_name is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_name() directly. + + YANG Description: Reference to the list key + """ + parent = getattr(self, "_parent", None) + if parent is not None and load is False: + raise AttributeError("Cannot set keys directly when" + + " within an instantiated list") + + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """name must be of a type compatible with leafref""", + 'defined-type': "leafref", + 'generated-type': """YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True)""", + }) + + self.__name = t + if hasattr(self, '_set'): + self._set() + + def _unset_name(self): + self.__name = YANGDynClass(base=six.text_type, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='leafref', is_config=True) + + + def _get_config(self): + """ + Getter method for config, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/config (container) + + YANG Description: Configuration data for policy defintions + """ + return self.__config + + def _set_config(self, v, load=False): + """ + Setter method for config, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/config (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_config is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_config() directly. + + YANG Description: Configuration data for policy defintions + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """config must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__config = t + if hasattr(self, '_set'): + self._set() + + def _unset_config(self): + self.__config = YANGDynClass(base=yc_config_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_config, is_container='container', yang_name="config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_state(self): + """ + Getter method for state, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/state (container) + + YANG Description: Operational state data for policy definitions + """ + return self.__state + + def _set_state(self, v, load=False): + """ + Setter method for state, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/state (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_state is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_state() directly. + + YANG Description: Operational state data for policy definitions + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """state must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__state = t + if hasattr(self, '_set'): + self._set() + + def _unset_state(self): + self.__state = YANGDynClass(base=yc_state_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_state, is_container='container', yang_name="state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_statements(self): + """ + Getter method for statements, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements (container) + + YANG Description: Enclosing container for policy statements + """ + return self.__statements + + def _set_statements(self, v, load=False): + """ + Setter method for statements, mapped from YANG variable /routing_policy/policy_definitions/policy_definition/statements (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_statements is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_statements() directly. + + YANG Description: Enclosing container for policy statements + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_statements_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements, is_container='container', yang_name="statements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """statements must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_statements_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements, is_container='container', yang_name="statements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__statements = t + if hasattr(self, '_set'): + self._set() + + def _unset_statements(self): + self.__statements = YANGDynClass(base=yc_statements_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition_statements, is_container='container', yang_name="statements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + name = __builtin__.property(_get_name, _set_name) + config = __builtin__.property(_get_config, _set_config) + state = __builtin__.property(_get_state, _set_state) + statements = __builtin__.property(_get_statements, _set_statements) + + + _pyangbind_elements = OrderedDict([('name', name), ('config', config), ('state', state), ('statements', statements), ]) + + +class yc_policy_definitions_openconfig_routing_policy__routing_policy_policy_definitions(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy/policy-definitions. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Enclosing container for the list of top-level policy + definitions + """ + __slots__ = ('_path_helper', '_extmethods', '__policy_definition',) + + _yang_name = 'policy-definitions' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__policy_definition = YANGDynClass(base=YANGListType("name",yc_policy_definition_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition, yang_name="policy-definition", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="policy-definition", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='list', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy', 'policy-definitions'] + + def _get_policy_definition(self): + """ + Getter method for policy_definition, mapped from YANG variable /routing_policy/policy_definitions/policy_definition (list) + + YANG Description: List of top-level policy definitions, keyed by unique +name. These policy definitions are expected to be +referenced (by name) in policy chains specified in import +or export configuration statements. + """ + return self.__policy_definition + + def _set_policy_definition(self, v, load=False): + """ + Setter method for policy_definition, mapped from YANG variable /routing_policy/policy_definitions/policy_definition (list) + If this variable is read-only (config: false) in the + source YANG file, then _set_policy_definition is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_policy_definition() directly. + + YANG Description: List of top-level policy definitions, keyed by unique +name. These policy definitions are expected to be +referenced (by name) in policy chains specified in import +or export configuration statements. + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=YANGListType("name",yc_policy_definition_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition, yang_name="policy-definition", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="policy-definition", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='list', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """policy_definition must be of a type compatible with list""", + 'defined-type': "list", + 'generated-type': """YANGDynClass(base=YANGListType("name",yc_policy_definition_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition, yang_name="policy-definition", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="policy-definition", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='list', is_config=True)""", + }) + + self.__policy_definition = t + if hasattr(self, '_set'): + self._set() + + def _unset_policy_definition(self): + self.__policy_definition = YANGDynClass(base=YANGListType("name",yc_policy_definition_openconfig_routing_policy__routing_policy_policy_definitions_policy_definition, yang_name="policy-definition", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="policy-definition", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='list', is_config=True) + + policy_definition = __builtin__.property(_get_policy_definition, _set_policy_definition) + + + _pyangbind_elements = OrderedDict([('policy_definition', policy_definition), ]) + + +class yc_routing_policy_openconfig_routing_policy__routing_policy(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /routing-policy. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: Top-level container for all routing policy configuration + """ + __slots__ = ('_path_helper', '_extmethods', '__defined_sets','__policy_definitions',) + + _yang_name = 'routing-policy' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__defined_sets = YANGDynClass(base=yc_defined_sets_openconfig_routing_policy__routing_policy_defined_sets, is_container='container', yang_name="defined-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + self.__policy_definitions = YANGDynClass(base=yc_policy_definitions_openconfig_routing_policy__routing_policy_policy_definitions, is_container='container', yang_name="policy-definitions", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return ['routing-policy'] + + def _get_defined_sets(self): + """ + Getter method for defined_sets, mapped from YANG variable /routing_policy/defined_sets (container) + + YANG Description: Predefined sets of attributes used in policy match +statements + """ + return self.__defined_sets + + def _set_defined_sets(self, v, load=False): + """ + Setter method for defined_sets, mapped from YANG variable /routing_policy/defined_sets (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_defined_sets is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_defined_sets() directly. + + YANG Description: Predefined sets of attributes used in policy match +statements + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_defined_sets_openconfig_routing_policy__routing_policy_defined_sets, is_container='container', yang_name="defined-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """defined_sets must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_defined_sets_openconfig_routing_policy__routing_policy_defined_sets, is_container='container', yang_name="defined-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__defined_sets = t + if hasattr(self, '_set'): + self._set() + + def _unset_defined_sets(self): + self.__defined_sets = YANGDynClass(base=yc_defined_sets_openconfig_routing_policy__routing_policy_defined_sets, is_container='container', yang_name="defined-sets", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + + def _get_policy_definitions(self): + """ + Getter method for policy_definitions, mapped from YANG variable /routing_policy/policy_definitions (container) + + YANG Description: Enclosing container for the list of top-level policy + definitions + """ + return self.__policy_definitions + + def _set_policy_definitions(self, v, load=False): + """ + Setter method for policy_definitions, mapped from YANG variable /routing_policy/policy_definitions (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_policy_definitions is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_policy_definitions() directly. + + YANG Description: Enclosing container for the list of top-level policy + definitions + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_policy_definitions_openconfig_routing_policy__routing_policy_policy_definitions, is_container='container', yang_name="policy-definitions", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """policy_definitions must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_policy_definitions_openconfig_routing_policy__routing_policy_policy_definitions, is_container='container', yang_name="policy-definitions", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__policy_definitions = t + if hasattr(self, '_set'): + self._set() + + def _unset_policy_definitions(self): + self.__policy_definitions = YANGDynClass(base=yc_policy_definitions_openconfig_routing_policy__routing_policy_policy_definitions, is_container='container', yang_name="policy-definitions", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + defined_sets = __builtin__.property(_get_defined_sets, _set_defined_sets) + policy_definitions = __builtin__.property(_get_policy_definitions, _set_policy_definitions) + + + _pyangbind_elements = OrderedDict([('defined_sets', defined_sets), ('policy_definitions', policy_definitions), ]) + + +class openconfig_routing_policy(PybindBase): + """ + This class was auto-generated by the PythonClass plugin for PYANG + from YANG module openconfig-routing-policy - based on the path /openconfig-routing-policy. Each member element of + the container is represented as a class variable - with a specific + YANG type. + + YANG Description: This module describes a YANG model for routing policy +configuration. It is a limited subset of all of the policy +configuration parameters available in the variety of vendor +implementations, but supports widely used constructs for managing +how routes are imported, exported, and modified across different +routing protocols. This module is intended to be used in +conjunction with routing protocol configuration models (e.g., +BGP) defined in other modules. + +Route policy expression: + +Policies are expressed as a set of top-level policy definitions, +each of which consists of a sequence of policy statements. Policy +statements consist of simple condition-action tuples. Conditions +may include mutiple match or comparison operations, and similarly +actions may be multitude of changes to route attributes or a +final disposition of accepting or rejecting the route. + +Route policy evaluation: + +Policy definitions are referenced in routing protocol +configurations using import and export configuration statements. +The arguments are members of an ordered list of named policy +definitions which comprise a policy chain, and optionally, an +explicit default policy action (i.e., reject or accept). + +Evaluation of each policy definition proceeds by evaluating its +corresponding individual policy statements in order. When a +condition statement in a policy statement is satisfied, the +corresponding action statement is executed. If the action +statement has either accept-route or reject-route actions, policy +evaluation of the current policy definition stops, and no further +policy definitions in the chain are evaluated. + +If the condition is not satisfied, then evaluation proceeds to +the next policy statement. If none of the policy statement +conditions are satisfied, then evaluation of the current policy +definition stops, and the next policy definition in the chain is +evaluated. When the end of the policy chain is reached, the +default route disposition action is performed (i.e., reject-route +unless an an alternate default action is specified for the +chain). + +Policy 'subroutines' (or nested policies) are supported by +allowing policy statement conditions to reference another policy +definition which applies conditions and actions from the +referenced policy before returning to the calling policy +statement and resuming evaluation. If the called policy +results in an accept-route (either explicit or by default), then +the subroutine returns an effective true value to the calling +policy. Similarly, a reject-route action returns false. If the +subroutine returns true, the calling policy continues to evaluate +the remaining conditions (using a modified route if the +subroutine performed any changes to the route). + """ + __slots__ = ('_path_helper', '_extmethods', '__routing_policy',) + + _yang_name = 'openconfig-routing-policy' + _yang_namespace = 'http://openconfig.net/yang/routing-policy' + + _pybind_generated_by = 'container' + + def __init__(self, *args, **kwargs): + + self._path_helper = False + + self._extmethods = False + self.__routing_policy = YANGDynClass(base=yc_routing_policy_openconfig_routing_policy__routing_policy, is_container='container', yang_name="routing-policy", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + load = kwargs.pop("load", None) + if args: + if len(args) > 1: + raise TypeError("cannot create a YANG container with >1 argument") + all_attr = True + for e in self._pyangbind_elements: + if not hasattr(args[0], e): + all_attr = False + break + if not all_attr: + raise ValueError("Supplied object did not have the correct attributes") + for e in self._pyangbind_elements: + nobj = getattr(args[0], e) + if nobj._changed() is False: + continue + setmethod = getattr(self, "_set_%s" % e) + if load is None: + setmethod(getattr(args[0], e)) + else: + setmethod(getattr(args[0], e), load=load) + + def _path(self): + if hasattr(self, "_parent"): + return self._parent._path()+[self._yang_name] + else: + return [] + + def _get_routing_policy(self): + """ + Getter method for routing_policy, mapped from YANG variable /routing_policy (container) + + YANG Description: Top-level container for all routing policy configuration + """ + return self.__routing_policy + + def _set_routing_policy(self, v, load=False): + """ + Setter method for routing_policy, mapped from YANG variable /routing_policy (container) + If this variable is read-only (config: false) in the + source YANG file, then _set_routing_policy is considered as a private + method. Backends looking to populate this variable should + do so via calling thisObj._set_routing_policy() directly. + + YANG Description: Top-level container for all routing policy configuration + """ + if hasattr(v, "_utype"): + v = v._utype(v) + try: + t = YANGDynClass(v,base=yc_routing_policy_openconfig_routing_policy__routing_policy, is_container='container', yang_name="routing-policy", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + except (TypeError, ValueError): + raise ValueError({ + 'error-string': """routing_policy must be of a type compatible with container""", + 'defined-type': "container", + 'generated-type': """YANGDynClass(base=yc_routing_policy_openconfig_routing_policy__routing_policy, is_container='container', yang_name="routing-policy", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True)""", + }) + + self.__routing_policy = t + if hasattr(self, '_set'): + self._set() + + def _unset_routing_policy(self): + self.__routing_policy = YANGDynClass(base=yc_routing_policy_openconfig_routing_policy__routing_policy, is_container='container', yang_name="routing-policy", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='http://openconfig.net/yang/routing-policy', defining_module='openconfig-routing-policy', yang_type='container', is_config=True) + + routing_policy = __builtin__.property(_get_routing_policy, _set_routing_policy) + + + _pyangbind_elements = OrderedDict([('routing_policy', routing_policy), ]) + + diff --git a/src/device/service/drivers/openconfig/templates/__init__.py b/src/device/service/drivers/openconfig/templates/__init__.py index fd992b807bd05082abc5861b2a66dd6add6b13fc..3dde94fc50cb215c11210cf1906e217038c2564c 100644 --- a/src/device/service/drivers/openconfig/templates/__init__.py +++ b/src/device/service/drivers/openconfig/templates/__init__.py @@ -12,9 +12,13 @@ # See the License for the specific language governing permissions and # limitations under the License. +from ast import List, Tuple import json, logging, lxml.etree as ET, re +import time from typing import Any, Dict, Optional from jinja2 import Environment, PackageLoader, select_autoescape +import paramiko +from .Tools import generate_templates from device.service.driver_api._Driver import ( RESOURCE_ENDPOINTS, RESOURCE_INTERFACES, RESOURCE_INTERFACES_MNG,RESOURCE_NETWORK_INSTANCES, RESOURCE_ROUTING_POLICIES, RESOURCE_ACL, RESOURCE_INVENTORY) from .EndPoints import parse as parse_endpoints @@ -24,6 +28,7 @@ from .NetworkInstances import parse as parse_network_instances from .RoutingPolicy import parse as parse_routing_policy from .Acl import parse as parse_acl from .Inventory import parse as parse_inventory +LOGGER = logging.getLogger(__name__) ALL_RESOURCE_KEYS = [ RESOURCE_INVENTORY, @@ -77,19 +82,177 @@ def parse(resource_key : str, xml_data : ET.Element): resource_key = RE_REMOVE_FILTERS.sub('', resource_key) resource_key = RE_REMOVE_FILTERS_2.sub('/', resource_key) resource_key = resource_key.replace('//', '') - #resource_key_parts = resource_key.split('/') - #if len(resource_key_parts) > 1: resource_key_parts = resource_key_parts[:-1] - #resource_key = '/'.join(resource_key_parts) - #resource_key = RESOURCE_KEY_MAPPINGS.get(resource_key, resource_key) parser = RESOURCE_PARSERS.get(resource_key) if parser is None: return [(resource_key, xml_data)] return parser(xml_data) -def compose_config( - resource_key : str, resource_value : str, delete : bool = False, vendor : Optional[str] = None +""" +# Method Name: compose_config + +# Parameters: + - resource_key: [str] Variable to identify the rule to be executed. + - resource_value: [str] Variable with the configuration parameters of the rule to be executed. + - delete: [bool] Variable to identify whether to create or delete the rule. + - vendor: [str] Variable to identify the vendor of the equipment to be configured. + - message_renderer [str] Variable to dientify template generation method. Can be "jinja" or "pyangbind". + +# Functionality: + This method calls the function obtains the equipment configuration template according to the value of the variable "message_renderer". + Depending on the value of this variable, it gets the template with "jinja" or "pyangbind". + +# Return: + [dict] Set of templates obtained according to the configuration method +""" + +def compose_config( # template generation + resource_key : str, resource_value : str, delete : bool = False, vendor : Optional[str] = None, message_renderer = str ) -> str: - template_name = '{:s}/edit_config.xml'.format(RE_REMOVE_FILTERS.sub('', resource_key)) - template = JINJA_ENV.get_template(template_name) - data : Dict[str, Any] = json.loads(resource_value) - operation = 'delete' if delete else 'merge' - return '<config>{:s}</config>'.format(template.render(**data, operation=operation, vendor=vendor).strip()) + + if (message_renderer == "pyangbind"): + templates = (generate_templates(resource_key, resource_value, delete,vendor)) + return [ + '<config>{:s}</config>'.format(template) # format correction + for template in templates + ] + + elif (message_renderer == "jinja"): + templates =[] + template_name = '{:s}/edit_config.xml'.format(RE_REMOVE_FILTERS.sub('', resource_key)) + templates.append(JINJA_ENV.get_template(template_name)) + + if "acl_ruleset" in resource_key: # MANAGING ACLs + templates =[] + templates.append(JINJA_ENV.get_template('acl/acl-set/acl-entry/edit_config.xml')) + templates.append(JINJA_ENV.get_template('acl/interfaces/ingress/edit_config.xml')) + data : Dict[str, Any] = json.loads(resource_value) + operation = 'delete' if delete else 'merge' + + return [ + '<config>{:s}</config>'.format( + template.render(**data, operation=operation, vendor=vendor).strip()) + for template in templates + ] + + else: + raise ValueError('Invalid message_renderer value: {}'.format(message_renderer)) + +""" +# Method Name: cli_compose_config + +# Parameters: + - resource_key: [str] Variable to identify the rule to be executed. + - resource_value: [str] Variable with the configuration parameters of the rule to be executed. + - delete: [bool] Variable to identify whether to create or delete the rule. + - vendor: [str] Variable to identify the vendor of the equipment to be configured. + - message_renderer [str] Variable to dientify template generation method. Can be "jinja" or "pyangbind". + +# Functionality: + This method calls the function obtains the equipment configuration template according to the value of the variable "message_renderer". + Depending on the value of this variable, it gets the template with "jinja" or "pyangbind". + +# Return: + [dict] Set of templates obtained according to the configuration method +""" + +def cli_compose_config(resources, delete: bool, host: str, user: str, passw: str): #Method used for configuring via CLI directly L2VPN in CISCO devices + + key_value_data = {} + + for path, json_str in resources: + key_value_data[path] = json_str + + # Iterate through the resources and extract parameter values dynamically + for path, json_str in resources: + data = json.loads(json_str) + if 'VC_ID' in data: vc_id = data['VC_ID'] + if 'connection_point' in data: connection_point = data['connection_point'] + if 'remote_system' in data: remote_system = data['remote_system'] + if 'interface' in data: + interface = data['interface'] + interface = interface.split("-") #New Line To Avoid Bad Endpoint Name In CISCO + interface = interface[1] + if 'vlan_id' in data: vlan_id = data['vlan_id'] + if 'name' in data: ni_name = data['name'] + if 'type' in data: ni_type = data['type'] + if 'index' in data: subif_index = data['index'] + if 'description' in data: description = data['description'] + else: description = " " + + # initialize the SSH client + ssh_client = paramiko.SSHClient() + ssh_client.load_system_host_keys() + # add to known hosts + ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) + + try: + ssh_client.connect(hostname=host, username=user, password=passw, look_for_keys=False) + #print("Connection successful") + LOGGER.warning("Connection successful") + except: + #print("[!] Cannot connect to the SSH Server") + LOGGER.warning("[!] Cannot connect to the SSH Server") + exit() + + try: + # Open an SSH shell + channel = ssh_client.invoke_shell() + channel.send('enable\n') + time.sleep(1) + channel.send('conf term\n') + time.sleep(0.1) + channel.send(f"interface {interface} l2transport\n") + time.sleep(0.1) + channel.send('description l2vpn_vpws_example\n') + time.sleep(0.1) + channel.send(f"encapsulation dot1q {vlan_id}\n") + time.sleep(0.1) + channel.send('mtu 9088\n') + time.sleep(0.1) + channel.send('commit\n') + time.sleep(0.1) + + channel.send('l2vpn\n') + time.sleep(0.1) + channel.send('load-balancing flow src-dst-ip\n') + time.sleep(0.1) + channel.send('pw-class l2vpn_vpws_profile_example\n') + time.sleep(0.1) + channel.send('encapsulation mpls\n') + time.sleep(0.1) + channel.send('transport-mode vlan passthrough\n') + time.sleep(0.1) + channel.send('control-word\n') + time.sleep(0.1) + channel.send('exit\n') + time.sleep(0.1) + channel.send('l2vpn\n') + time.sleep(0.1) + channel.send('xconnect group l2vpn_vpws_group_example\n') + time.sleep(0.1) + channel.send(f"p2p {ni_name}\n") + time.sleep(0.1) + channel.send(f"interface {interface}\n") #Ignore the VlanID because the interface already includes the vlanid tag + time.sleep(0.1) + channel.send(f"neighbor ipv4 {remote_system} pw-id {vc_id}\n") + time.sleep(0.1) + channel.send('pw-class l2vpn_vpws_profile_example\n') + time.sleep(0.1) + channel.send('exit\n') + time.sleep(0.1) + channel.send(f"description {description}\n") + time.sleep(0.1) + channel.send('commit\n') + time.sleep(0.1) + # Capturar la salida del comando + output = channel.recv(65535).decode('utf-8') + #print(output) + LOGGER.warning(output) + # Close the SSH shell + channel.close() + + except Exception as e: + LOGGER.exception(f"Error with the CLI configuration: {e}") + + # Close the SSH client + ssh_client.close() + \ No newline at end of file diff --git a/src/device/tests/Device_Emulated.py b/src/device/tests/Device_Emulated.py index bb5dfa5f39e2e3ec3c07f9f49dc55e03c8e3c88d..0dffd7ad5a1d6da3bb58ca1c874a797c34ca5357 100644 --- a/src/device/tests/Device_Emulated.py +++ b/src/device/tests/Device_Emulated.py @@ -16,13 +16,17 @@ from common.proto.kpi_sample_types_pb2 import KpiSampleType from common.tools.object_factory.ConfigRule import json_config_rule_delete, json_config_rule_set from common.tools.object_factory.Device import ( json_device_emulated_connect_rules, json_device_emulated_packet_router_disabled, json_device_id) +from common.tools.object_factory.EndPoint import json_endpoint_descriptor from device.tests.CommonObjects import PACKET_PORT_SAMPLE_TYPES DEVICE_EMU_UUID = 'R1-EMU' DEVICE_EMU_ID = json_device_id(DEVICE_EMU_UUID) DEVICE_EMU = json_device_emulated_packet_router_disabled(DEVICE_EMU_UUID) DEVICE_EMU_EP_UUIDS = ['EP1', 'EP2', 'EP3', 'EP4'] -DEVICE_EMU_EP_DESCS = [(ep_uuid, '10Gbps', PACKET_PORT_SAMPLE_TYPES) for ep_uuid in DEVICE_EMU_EP_UUIDS] +DEVICE_EMU_EP_DESCS = [ + json_endpoint_descriptor(ep_uuid, '10Gbps', sample_types=PACKET_PORT_SAMPLE_TYPES) + for ep_uuid in DEVICE_EMU_EP_UUIDS +] DEVICE_EMU_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_EMU_EP_DESCS) RSRC_EP = '/endpoints/endpoint[{:s}]' @@ -30,7 +34,10 @@ RSRC_SUBIF = RSRC_EP + '/subinterfaces/subinterface[{:d}]' RSRC_ADDRIPV4 = RSRC_SUBIF + '/ipv4/address[{:s}]' DEVICE_EMU_ENDPOINTS_COOKED = [] -for endpoint_uuid,endpoint_type,endpoint_sample_types in DEVICE_EMU_EP_DESCS: +for endpoint_data in DEVICE_EMU_EP_DESCS: + endpoint_uuid = endpoint_data['uuid'] + endpoint_type = endpoint_data['type'] + endpoint_sample_types = endpoint_data['sample_types'] endpoint_resource_key = RSRC_EP.format(str(endpoint_uuid)) sample_types = {} for endpoint_sample_type in endpoint_sample_types: diff --git a/src/device/tests/test_gnmi.py b/src/device/tests/test_gnmi.py new file mode 100644 index 0000000000000000000000000000000000000000..50c9155822d5285fda5fc75777363c066ffb215a --- /dev/null +++ b/src/device/tests/test_gnmi.py @@ -0,0 +1,115 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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, os, sys, time +from typing import Dict, Tuple +os.environ['DEVICE_EMULATED_ONLY'] = 'YES' +from device.service.drivers.gnmi_openconfig.GnmiOpenConfigDriver import GnmiOpenConfigDriver # pylint: disable=wrong-import-position +#from device.service.driver_api._Driver import ( +# RESOURCE_ENDPOINTS, RESOURCE_INTERFACES, RESOURCE_NETWORK_INSTANCES, RESOURCE_ROUTING_POLICIES, RESOURCE_SERVICES +#) + +logging.basicConfig(level=logging.DEBUG) +LOGGER = logging.getLogger(__name__) +LOGGER.setLevel(logging.DEBUG) + +# +---+---------------------------+--------------+---------------------------------+-------+---------+--------------------+--------------+ +# | # | Name | Container ID | Image | Kind | State | IPv4 Address | IPv6 Address | +# +---+---------------------------+--------------+---------------------------------+-------+---------+--------------------+--------------+ +# | 1 | clab-tfs-scenario-client1 | a8d48ec3265a | ghcr.io/hellt/network-multitool | linux | running | 172.100.100.201/24 | N/A | +# | 2 | clab-tfs-scenario-client2 | fc88436d2b32 | ghcr.io/hellt/network-multitool | linux | running | 172.100.100.202/24 | N/A | +# | 3 | clab-tfs-scenario-srl1 | b995b9bdadda | ghcr.io/nokia/srlinux | srl | running | 172.100.100.101/24 | N/A | +# | 4 | clab-tfs-scenario-srl2 | aacfc38cc376 | ghcr.io/nokia/srlinux | srl | running | 172.100.100.102/24 | N/A | +# +---+---------------------------+--------------+---------------------------------+-------+---------+--------------------+--------------+ + +def interface(if_name, sif_index, ipv4_address, ipv4_prefix, enabled) -> Tuple[str, Dict]: + str_path = '/interface[{:s}]'.format(if_name) + str_data = {'name': if_name, 'enabled': enabled, 'sub_if_index': sif_index, 'sub_if_enabled': enabled, + 'sub_if_ipv4_enabled': enabled, 'sub_if_ipv4_address': ipv4_address, 'sub_if_ipv4_prefix': ipv4_prefix} + return str_path, str_data + +def network_instance(ni_name, ni_type) -> Tuple[str, Dict]: + str_path = '/network_instance[{:s}]'.format(ni_name) + str_data = {'name': ni_name, 'type': ni_type} + return str_path, str_data + +def network_instance_static_route(ni_name, prefix, next_hop, next_hop_index=0) -> Tuple[str, Dict]: + str_path = '/network_instance[{:s}]/static_route[{:s}]'.format(ni_name, prefix) + str_data = {'name': ni_name, 'prefix': prefix, 'next_hop': next_hop, 'next_hop_index': next_hop_index} + return str_path, str_data + +def network_instance_interface(ni_name, if_name, sif_index) -> Tuple[str, Dict]: + str_path = '/network_instance[{:s}]/interface[{:s}.{:d}]'.format(ni_name, if_name, sif_index) + str_data = {'name': ni_name, 'if_name': if_name, 'sif_index': sif_index} + return str_path, str_data + +def main(): + driver_settings = { + 'protocol': 'gnmi', + 'username': 'admin', + 'password': 'NokiaSrl1!', + 'use_tls' : True, + } + driver = GnmiOpenConfigDriver('172.100.100.102', 57400, **driver_settings) + driver.Connect() + + #resources_to_get = [] + #resources_to_get = [RESOURCE_ENDPOINTS] + #resources_to_get = [RESOURCE_INTERFACES] + #resources_to_get = [RESOURCE_NETWORK_INSTANCES] + #resources_to_get = [RESOURCE_ROUTING_POLICIES] + #resources_to_get = [RESOURCE_SERVICES] + #LOGGER.info('resources_to_get = {:s}'.format(str(resources_to_get))) + #results_getconfig = driver.GetConfig(resources_to_get) + #LOGGER.info('results_getconfig = {:s}'.format(str(results_getconfig))) + + #resources_to_set = [ + # network_instance('test-svc', 'L3VRF'), + # + # interface('ethernet-1/1', 0, '172.16.0.1', 24, True), + # network_instance_interface('test-svc', 'ethernet-1/1', 0), + # + # interface('ethernet-1/2', 0, '172.0.0.1', 24, True), + # network_instance_interface('test-svc', 'ethernet-1/2', 0), + # + # network_instance_static_route('test-svc', '172.0.0.0/24', '172.16.0.2'), + # network_instance_static_route('test-svc', '172.2.0.0/24', '172.16.0.3'), + #] + #LOGGER.info('resources_to_set = {:s}'.format(str(resources_to_set))) + #results_setconfig = driver.SetConfig(resources_to_set) + #LOGGER.info('results_setconfig = {:s}'.format(str(results_setconfig))) + + resources_to_delete = [ + #network_instance_static_route('d35fc1d9', '172.0.0.0/24', '172.16.0.2'), + #network_instance_static_route('d35fc1d9', '172.2.0.0/24', '172.16.0.3'), + + #network_instance_interface('d35fc1d9', 'ethernet-1/1', 0), + #network_instance_interface('d35fc1d9', 'ethernet-1/2', 0), + + interface('ethernet-1/1', 0, '172.16.1.1', 24, True), + interface('ethernet-1/2', 0, '172.0.0.2', 24, True), + + network_instance('20f66fb5', 'L3VRF'), + ] + LOGGER.info('resources_to_delete = {:s}'.format(str(resources_to_delete))) + results_deleteconfig = driver.DeleteConfig(resources_to_delete) + LOGGER.info('results_deleteconfig = {:s}'.format(str(results_deleteconfig))) + + time.sleep(1) + + driver.Disconnect() + return 0 + +if __name__ == '__main__': + sys.exit(main()) diff --git a/src/device/tests/test_netconf.py b/src/device/tests/test_netconf.py new file mode 100644 index 0000000000000000000000000000000000000000..70551eed759867d26b46d399fba998a2d8007d21 --- /dev/null +++ b/src/device/tests/test_netconf.py @@ -0,0 +1,31 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 ncclient.manager import Manager, connect_ssh + +str_filter = '''<filter> + <components xmlns="http://openconfig.net/yang/platform"> + <component/> + </components> +</filter>''' + +_manager : Manager = connect_ssh( + host='10.5.32.3', port=830, username='admin', password='admin', + device_params={'name': 'huaweiyang'}, manager_params={'timeout': 120}, + key_filename=None, hostkey_verify=False, allow_agent=False, + look_for_keys=False) +c = _manager.get(filter=str_filter, with_defaults=None).data_xml +with open('data.xml', 'w') as f: + f.write(c) +_manager.close_session() diff --git a/src/dlt/connector/tests/Objects.py b/src/dlt/connector/tests/Objects.py index 2ff850000a2d20b0556dc6e65a21b7151db849d6..5a7f9f68235eefa93e73d66bb6a2ab3ae210ee14 100644 --- a/src/dlt/connector/tests/Objects.py +++ b/src/dlt/connector/tests/Objects.py @@ -14,7 +14,7 @@ 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.EndPoint import json_endpoint_descriptor, json_endpoints from common.tools.object_factory.Link import compose_link from common.tools.object_factory.Topology import json_topology, json_topology_id @@ -22,7 +22,10 @@ def compose_device( device_uuid, endpoint_uuids, endpoint_type='copper', endpoint_topology_id=None, endpoint_sample_types=[] ): device_id = json_device_id(device_uuid) - endpoints = [(endpoint_uuid, endpoint_type, endpoint_sample_types) for endpoint_uuid in endpoint_uuids] + endpoints = [ + json_endpoint_descriptor(endpoint_uuid, endpoint_type, endpoint_sample_types) + for endpoint_uuid in endpoint_uuids + ] endpoints = json_endpoints(device_id, endpoints, topology_id=endpoint_topology_id) device = json_device_emulated_packet_router_disabled(device_uuid, endpoints=endpoints) return device_id, endpoints, device diff --git a/src/interdomain/Config.py b/src/interdomain/Config.py index 38d04994fb0fa1951fb465bc127eb72659dc2eaf..f8e81dd2b598e403b032830d9ef7ad1e155d5ae1 100644 --- a/src/interdomain/Config.py +++ b/src/interdomain/Config.py @@ -11,3 +11,14 @@ # 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.Settings import get_setting + +SETTING_NAME_TOPOLOGY_ABSTRACTOR = 'TOPOLOGY_ABSTRACTOR' +TRUE_VALUES = {'Y', 'YES', 'TRUE', 'T', 'E', 'ENABLE', 'ENABLED'} + +def is_topology_abstractor_enabled() -> bool: + is_enabled = get_setting(SETTING_NAME_TOPOLOGY_ABSTRACTOR, default=None) + if is_enabled is None: return False + str_is_enabled = str(is_enabled).upper() + return str_is_enabled in TRUE_VALUES diff --git a/src/interdomain/Dockerfile b/src/interdomain/Dockerfile index 69fcf3d9c52b9dc6232a2a8f3051acba88987408..66c6e938d7adf5bd985fc0b4f87fe284c1370be4 100644 --- a/src/interdomain/Dockerfile +++ b/src/interdomain/Dockerfile @@ -68,7 +68,7 @@ COPY src/dlt/. dlt/ COPY src/interdomain/. interdomain/ #COPY src/monitoring/. monitoring/ COPY src/pathcomp/. pathcomp/ -#COPY src/service/. service/ +COPY src/service/. service/ COPY src/slice/. slice/ # Start the service diff --git a/src/interdomain/client/InterdomainClient.py b/src/interdomain/client/InterdomainClient.py index f5631de61f9df3e35cac7efc1d768b9fbc9d5d7c..ade3ef20779fd4a456c74ed5420ce2855642bdb8 100644 --- a/src/interdomain/client/InterdomainClient.py +++ b/src/interdomain/client/InterdomainClient.py @@ -15,7 +15,7 @@ import grpc, logging from common.Constants import ServiceNameEnum from common.Settings import get_service_host, get_service_port_grpc -from common.proto.context_pb2 import AuthenticationResult, Slice, SliceId, SliceStatus, TeraFlowController +from common.proto.context_pb2 import AuthenticationResult, Empty, Slice, SliceId, SliceStatus, TeraFlowController from common.proto.interdomain_pb2_grpc import InterdomainServiceStub from common.tools.client.RetryDecorator import retry, delay_exponential from common.tools.grpc.Tools import grpc_message_to_json_string @@ -45,13 +45,6 @@ class InterdomainClient: self.channel = None self.stub = None - @RETRY_DECORATOR - def RequestSlice(self, request : Slice) -> SliceId: - LOGGER.debug('RequestSlice request: {:s}'.format(grpc_message_to_json_string(request))) - response = self.stub.RequestSlice(request) - LOGGER.debug('RequestSlice result: {:s}'.format(grpc_message_to_json_string(response))) - return response - @RETRY_DECORATOR def Authenticate(self, request : TeraFlowController) -> AuthenticationResult: LOGGER.debug('Authenticate request: {:s}'.format(grpc_message_to_json_string(request))) @@ -59,6 +52,13 @@ class InterdomainClient: LOGGER.debug('Authenticate result: {:s}'.format(grpc_message_to_json_string(response))) return response + @RETRY_DECORATOR + def RequestSlice(self, request : Slice) -> SliceId: + LOGGER.debug('RequestSlice request: {:s}'.format(grpc_message_to_json_string(request))) + response = self.stub.RequestSlice(request) + LOGGER.debug('RequestSlice result: {:s}'.format(grpc_message_to_json_string(response))) + return response + @RETRY_DECORATOR def LookUpSlice(self, request : Slice) -> SliceId: LOGGER.debug('LookUpSlice request: {:s}'.format(grpc_message_to_json_string(request))) @@ -79,3 +79,24 @@ class InterdomainClient: response = self.stub.CreateSliceAndAddToCatalog(request) LOGGER.debug('CreateSliceAndAddToCatalog result: {:s}'.format(grpc_message_to_json_string(response))) return response + + @RETRY_DECORATOR + def OrderSliceWithSLA(self, request : Slice) -> SliceId: + LOGGER.debug('OrderSliceWithSLA request: {:s}'.format(grpc_message_to_json_string(request))) + response = self.stub.OrderSliceWithSLA(request) + LOGGER.debug('OrderSliceWithSLA result: {:s}'.format(grpc_message_to_json_string(response))) + return response + + @RETRY_DECORATOR + def UpdateSlice(self, request : Slice) -> Slice: + LOGGER.debug('UpdateSlice request: {:s}'.format(grpc_message_to_json_string(request))) + response = self.stub.UpdateSlice(request) + LOGGER.debug('UpdateSlice result: {:s}'.format(grpc_message_to_json_string(response))) + return response + + @RETRY_DECORATOR + def DeleteSlice(self, request : SliceId) -> Empty: + LOGGER.debug('DeleteSlice request: {:s}'.format(grpc_message_to_json_string(request))) + response = self.stub.DeleteSlice(request) + LOGGER.debug('DeleteSlice result: {:s}'.format(grpc_message_to_json_string(response))) + return response diff --git a/src/interdomain/service/InterdomainServiceServicerImpl.py b/src/interdomain/service/InterdomainServiceServicerImpl.py index 51c8ee39aa0fc70aa96fe8154cbc312043d2c488..fa6bec912413234d225ee1e4662fba0b2cb82b28 100644 --- a/src/interdomain/service/InterdomainServiceServicerImpl.py +++ b/src/interdomain/service/InterdomainServiceServicerImpl.py @@ -12,25 +12,35 @@ # See the License for the specific language governing permissions and # limitations under the License. +from typing import Dict, Tuple import grpc, logging, uuid -from common.Constants import DEFAULT_CONTEXT_NAME, DEFAULT_TOPOLOGY_NAME, ServiceNameEnum -from common.Settings import ENVVAR_SUFIX_SERVICE_HOST, ENVVAR_SUFIX_SERVICE_PORT_GRPC, find_missing_environment_variables, get_env_var_name -from common.proto.context_pb2 import AuthenticationResult, Slice, SliceId, SliceStatusEnum, TeraFlowController, TopologyId +from common.Constants import DEFAULT_CONTEXT_NAME, DEFAULT_TOPOLOGY_NAME, INTERDOMAIN_TOPOLOGY_NAME, ServiceNameEnum +from common.Settings import ( + ENVVAR_SUFIX_SERVICE_HOST, ENVVAR_SUFIX_SERVICE_PORT_GRPC, find_environment_variables, get_env_var_name) +from common.proto.context_pb2 import ( + AuthenticationResult, Empty, EndPointId, Slice, SliceId, SliceStatusEnum, TeraFlowController, TopologyId) from common.proto.interdomain_pb2_grpc import InterdomainServiceServicer from common.method_wrappers.Decorator import MetricsPool, safe_and_metered_rpc_method +from common.tools.context_queries.CheckType import endpoint_type_is_border from common.tools.context_queries.Context import create_context +from common.tools.context_queries.Device import get_device from common.tools.context_queries.InterDomain import ( - compute_interdomain_path, compute_traversed_domains, get_local_device_uuids, is_inter_domain) -from common.tools.context_queries.Topology import create_topology -from common.tools.grpc.Tools import grpc_message_to_json_string + compute_interdomain_sub_slices, get_local_device_uuids, is_inter_domain) +from common.tools.context_queries.Slice import get_slice_by_id +from common.tools.context_queries.Topology import create_topology, get_topology +from common.tools.grpc.Tools import grpc_message_to_json, grpc_message_to_json_string +from common.tools.object_factory.Context import json_context_id +from common.tools.object_factory.Device import json_device_id +from common.tools.object_factory.EndPoint import json_endpoint_id from common.tools.object_factory.Topology import json_topology_id from context.client.ContextClient import ContextClient from dlt.connector.client.DltConnectorClient import DltConnectorClient -from interdomain.service.topology_abstractor.DltRecordSender import DltRecordSender from pathcomp.frontend.client.PathCompClient import PathCompClient +from service.client.ServiceClient import ServiceClient from slice.client.SliceClient import SliceClient +from .topology_abstractor.DltRecordSender import DltRecordSender from .RemoteDomainClients import RemoteDomainClients -from .Tools import compose_slice, compute_slice_owner, map_abstract_endpoints_to_real +from .Tools import compose_slice, compute_slice_owner #, map_abstract_endpoints_to_real LOGGER = logging.getLogger(__name__) @@ -57,39 +67,26 @@ class InterdomainServiceServicerImpl(InterdomainServiceServicer): str_slice = grpc_message_to_json_string(request) raise Exception('InterDomain can only handle inter-domain slice requests: {:s}'.format(str_slice)) - interdomain_path = compute_interdomain_path(pathcomp_client, request) - str_interdomain_path = [ - [device_uuid, [ - (endpoint_id.device_id.device_uuid.uuid, endpoint_id.endpoint_uuid.uuid) - for endpoint_id in endpoint_ids - ]] - for device_uuid, endpoint_ids in interdomain_path - ] - LOGGER.info('interdomain_path={:s}'.format(str(str_interdomain_path))) - - traversed_domains = compute_traversed_domains(context_client, interdomain_path) - str_traversed_domains = [ - (domain_uuid, is_local_domain, [ - (endpoint_id.device_id.device_uuid.uuid, endpoint_id.endpoint_uuid.uuid) - for endpoint_id in endpoint_ids - ]) - for domain_uuid,is_local_domain,endpoint_ids in traversed_domains - ] - LOGGER.info('traversed_domains={:s}'.format(str(str_traversed_domains))) - - slice_owner_uuid = compute_slice_owner(context_client, traversed_domains) - LOGGER.info('slice_owner_uuid={:s}'.format(str(slice_owner_uuid))) + local_slices, remote_slices = compute_interdomain_sub_slices( + context_client, pathcomp_client, request) + + traversed_domain_uuids = set() + traversed_domain_uuids.update(local_slices.keys()) + traversed_domain_uuids.update(remote_slices.keys()) + LOGGER.debug('traversed_domain_uuids={:s}'.format(str(traversed_domain_uuids))) + slice_owner_uuid = compute_slice_owner(context_client, traversed_domain_uuids) + LOGGER.debug('slice_owner_uuid={:s}'.format(str(slice_owner_uuid))) if slice_owner_uuid is None: raise Exception('Unable to identify slice owner') reply = Slice() reply.CopyFrom(request) - missing_env_vars = find_missing_environment_variables([ + env_vars = find_environment_variables([ get_env_var_name(ServiceNameEnum.DLT, ENVVAR_SUFIX_SERVICE_HOST ), get_env_var_name(ServiceNameEnum.DLT, ENVVAR_SUFIX_SERVICE_PORT_GRPC), ]) - if len(missing_env_vars) == 0: + if len(env_vars) == 2: # DLT available dlt_connector_client = DltConnectorClient() dlt_connector_client.connect() @@ -98,41 +95,80 @@ class InterdomainServiceServicerImpl(InterdomainServiceServicer): dlt_record_sender = DltRecordSender(context_client, dlt_connector_client) - for domain_uuid, is_local_domain, endpoint_ids in traversed_domains: - if is_local_domain: + for domain_uuid, endpoint_id_groups in local_slices.items(): + domain_topology = get_topology(context_client, domain_uuid) + if domain_topology is None: raise Exception('Topology({:s}) not found'.format(str(domain_uuid))) + domain_name = domain_topology.name + for endpoint_ids in endpoint_id_groups: slice_uuid = str(uuid.uuid4()) - LOGGER.info('[loop] [local] domain_uuid={:s} is_local_domain={:s} slice_uuid={:s}'.format( - str(domain_uuid), str(is_local_domain), str(slice_uuid))) + MSG = '[loop] [local] domain_uuid={:s} slice_uuid={:s} endpoint_ids={:s}' + LOGGER.debug(MSG.format(str(domain_uuid), str(slice_uuid), str([ + grpc_message_to_json(ep_id) for ep_id in endpoint_ids + ]))) # local slices always in DEFAULT_CONTEXT_NAME #context_uuid = request.slice_id.context_id.context_uuid.uuid context_uuid = DEFAULT_CONTEXT_NAME - endpoint_ids = map_abstract_endpoints_to_real(context_client, domain_uuid, endpoint_ids) + #endpoint_ids = map_abstract_endpoints_to_real(context_client, domain_uuid, endpoint_ids) + slice_name = '{:s}:local:{:s}'.format(request.name, domain_name) sub_slice = compose_slice( - context_uuid, slice_uuid, endpoint_ids, constraints=request.slice_constraints, + context_uuid, slice_uuid, endpoint_ids, slice_name=slice_name, constraints=request.slice_constraints, config_rules=request.slice_config.config_rules) - LOGGER.info('[loop] [local] sub_slice={:s}'.format(grpc_message_to_json_string(sub_slice))) + LOGGER.debug('[loop] [local] sub_slice={:s}'.format(grpc_message_to_json_string(sub_slice))) sub_slice_id = slice_client.CreateSlice(sub_slice) - else: - slice_uuid = request.slice_id.slice_uuid.uuid - LOGGER.info('[loop] [remote] domain_uuid={:s} is_local_domain={:s} slice_uuid={:s}'.format( - str(domain_uuid), str(is_local_domain), str(slice_uuid))) + + LOGGER.debug('[loop] adding sub-slice') + reply.slice_subslice_ids.add().CopyFrom(sub_slice_id) # pylint: disable=no-member + + for domain_uuid, endpoint_id_groups in remote_slices.items(): + domain_topology = get_device(context_client, domain_uuid) + if domain_topology is None: raise Exception('Device({:s}) not found'.format(str(domain_uuid))) + domain_name = domain_topology.name + domain_endpoint_ids_to_names = { + endpoint.endpoint_id.endpoint_uuid.uuid : endpoint.name + for endpoint in domain_topology.device_endpoints + if endpoint_type_is_border(endpoint.endpoint_type) + } + for endpoint_ids in endpoint_id_groups: + slice_uuid = str(uuid.uuid4()) + MSG = '[loop] [remote] domain_uuid={:s} slice_uuid={:s} endpoint_ids={:s}' + LOGGER.debug(MSG.format(str(domain_uuid), str(slice_uuid), str([ + grpc_message_to_json(ep_id) for ep_id in endpoint_ids + ]))) # create context/topology for the remote domains where we are creating slices - create_context(context_client, domain_uuid) + create_context(context_client, domain_uuid, name=domain_name) create_topology(context_client, domain_uuid, DEFAULT_TOPOLOGY_NAME) + create_topology(context_client, domain_uuid, INTERDOMAIN_TOPOLOGY_NAME) + + slice_name = '{:s}:remote:{:s}'.format(request.name, domain_name) + # convert endpoint ids to names to enable conversion to uuids on the remote domain + endpoint_ids = [ + EndPointId(**json_endpoint_id( + json_device_id(domain_name), + domain_endpoint_ids_to_names[endpoint_id.endpoint_uuid.uuid], + topology_id=json_topology_id( + INTERDOMAIN_TOPOLOGY_NAME, + context_id=json_context_id(DEFAULT_CONTEXT_NAME) + ) + )) + for endpoint_id in endpoint_ids + ] sub_slice = compose_slice( - domain_uuid, slice_uuid, endpoint_ids, constraints=request.slice_constraints, - config_rules=request.slice_config.config_rules, owner_uuid=slice_owner_uuid) - LOGGER.info('[loop] [remote] sub_slice={:s}'.format(grpc_message_to_json_string(sub_slice))) + DEFAULT_CONTEXT_NAME, slice_uuid, endpoint_ids, slice_name=slice_name, + constraints=request.slice_constraints, config_rules=request.slice_config.config_rules, + owner_uuid=slice_owner_uuid, owner_string=domain_uuid) + LOGGER.debug('[loop] [remote] sub_slice={:s}'.format(grpc_message_to_json_string(sub_slice))) sub_slice_id = context_client.SetSlice(sub_slice) if dlt_connector_client is not None: topology_id = TopologyId(**json_topology_id(domain_uuid)) dlt_record_sender.add_slice(topology_id, sub_slice) else: - interdomain_client = self.remote_domain_clients.get_peer('remote-teraflow') + interdomain_client = self.remote_domain_clients.get_peer(domain_uuid) + if interdomain_client is None: + raise Exception('InterDomain Client not found for Domain({:s})'.format(str(domain_uuid))) sub_slice_reply = interdomain_client.LookUpSlice(sub_slice) if sub_slice_reply == sub_slice.slice_id: # pylint: disable=no-member # successful case @@ -140,20 +176,23 @@ class InterdomainServiceServicerImpl(InterdomainServiceServicer): else: # not in catalog remote_sub_slice = interdomain_client.CreateSliceAndAddToCatalog(sub_slice) + + sub_slice.slice_status.slice_status = remote_sub_slice.slice_status.slice_status + context_client.SetSlice(sub_slice) if remote_sub_slice.slice_status.slice_status != SliceStatusEnum.SLICESTATUS_ACTIVE: raise Exception('Remote Slice creation failed. Wrong Slice status returned') - LOGGER.info('[loop] adding sub-slice') - reply.slice_subslice_ids.add().CopyFrom(sub_slice_id) # pylint: disable=no-member + LOGGER.debug('[loop] adding sub-slice') + reply.slice_subslice_ids.add().CopyFrom(sub_slice_id) # pylint: disable=no-member if dlt_connector_client is not None: - LOGGER.info('Recording Remote Slice requests to DLT') + LOGGER.debug('Recording Remote Slice requests to DLT') dlt_record_sender.commit() - LOGGER.info('Activating interdomain slice') + LOGGER.debug('Activating interdomain slice') reply.slice_status.slice_status = SliceStatusEnum.SLICESTATUS_ACTIVE # pylint: disable=no-member - LOGGER.info('Updating interdomain slice') + LOGGER.debug('Updating interdomain slice') slice_id = context_client.SetSlice(reply) return slice_id @@ -168,22 +207,133 @@ class InterdomainServiceServicerImpl(InterdomainServiceServicer): def LookUpSlice(self, request : Slice, context : grpc.ServicerContext) -> SliceId: try: context_client = ContextClient() - slice_ = context_client.GetSlice(request.slice_id) + slice_id = SliceId() + slice_id.CopyFrom(request.slice_id) + slice_id.context_id.context_uuid.uuid = DEFAULT_CONTEXT_NAME + slice_ = context_client.GetSlice(slice_id) return slice_.slice_id except grpc.RpcError: #LOGGER.exception('Unable to get slice({:s})'.format(grpc_message_to_json_string(request.slice_id))) return SliceId() @safe_and_metered_rpc_method(METRICS_POOL, LOGGER) - def OrderSliceFromCatalog(self, request : Slice, context : grpc.ServicerContext) -> Slice: - raise NotImplementedError('OrderSliceFromCatalog') - #return Slice() + def CreateSliceAndAddToCatalog(self, request : Slice, context : grpc.ServicerContext) -> Slice: + context_client = ContextClient() + slice_client = SliceClient() + _request = Slice() + _request.CopyFrom(request) + _request.slice_id.context_id.context_uuid.uuid = DEFAULT_CONTEXT_NAME + + #admin_context = context_client.GetContext(ContextId(**json_context_id(DEFAULT_CONTEXT_NAME))) + #admin_context_uuid = admin_context.context_id.context_uuid.uuid + #admin_context_name = admin_context.name + + #interdomain_topology = context_client.GetTopology(TopologyId(**json_topology_id( + # DEFAULT_TOPOLOGY_NAME, context_id=json_context_id(DEFAULT_CONTEXT_NAME) + #))) + #interdomain_topology_uuid = interdomain_topology.topology_id.topology_uuid.uuid + #interdomain_topology_name = interdomain_topology.name + + devices = context_client.ListDevices(Empty()) + interdomain_endpoint_map : Dict[str, Tuple[str, str, str, str]] = dict() + for device in devices.devices: + device_uuid = device.device_id.device_uuid.uuid + device_name = device.name + for endpoint in device.device_endpoints: + if not endpoint_type_is_border(endpoint.endpoint_type): continue + #endpoint_context_uuid = endpoint.endpoint_id.topology_id.context_id.context_uuid.uuid + #if endpoint_context_uuid not in {admin_context_uuid, admin_context_name}: continue + #endpoint_topology_uuid = endpoint.endpoint_id.topology_id.topology_uuid.uuid + #if endpoint_topology_uuid not in {interdomain_topology_uuid, interdomain_topology_name}: continue + endpoint_uuid = endpoint.endpoint_id.endpoint_uuid.uuid + endpoint_name = endpoint.name + interdomain_endpoint_map[endpoint_name] = (device_uuid, device_name, endpoint_uuid, endpoint_name) + LOGGER.debug('interdomain_endpoint_map={:s}'.format(str(interdomain_endpoint_map))) + + # Map endpoints to local real counterparts + del _request.slice_endpoint_ids[:] + for endpoint_id in request.slice_endpoint_ids: + #endpoint_context_uuid = endpoint_id.topology_id.context_id.context_uuid.uuid + #if endpoint_context_uuid not in {admin_context_uuid, admin_context_name}: + # MSG = 'Unexpected ContextId in EndPointId({:s})' + # raise Exception(MSG.format(grpc_message_to_json_string(endpoint_id))) + + #endpoint_topology_uuid = endpoint_id.topology_id.topology_uuid.uuid + #if endpoint_topology_uuid not in {admin_topology_uuid, admin_topology_name}: + # MSG = 'Unexpected TopologyId in EndPointId({:s})' + # raise Exception(MSG.format(grpc_message_to_json_string(endpoint_id))) + + endpoint_uuid = endpoint_id.endpoint_uuid.uuid + real_endpoint = interdomain_endpoint_map.get(endpoint_uuid) + if real_endpoint is None: + MSG = 'Unable to map EndPointId({:s}) to real endpoint. interdomain_endpoint_map={:s}' + raise Exception(MSG.format(grpc_message_to_json_string(endpoint_id), str(interdomain_endpoint_map))) + real_device_uuid, _, real_endpoint_uuid, _ = real_endpoint + + real_endpoint_id = _request.slice_endpoint_ids.add() + real_endpoint_id.topology_id.context_id.context_uuid.uuid = DEFAULT_CONTEXT_NAME + real_endpoint_id.topology_id.topology_uuid.uuid = DEFAULT_TOPOLOGY_NAME + real_endpoint_id.device_id.device_uuid.uuid = real_device_uuid + real_endpoint_id.endpoint_uuid.uuid = real_endpoint_uuid + + slice_id = slice_client.CreateSlice(_request) + return context_client.GetSlice(slice_id) @safe_and_metered_rpc_method(METRICS_POOL, LOGGER) - def CreateSliceAndAddToCatalog(self, request : Slice, context : grpc.ServicerContext) -> Slice: + def DeleteSlice(self, request : SliceId, context : grpc.ServicerContext) -> Empty: context_client = ContextClient() + try: + _slice = context_client.GetSlice(request) + except: # pylint: disable=bare-except + context_client.close() + return Empty() + + _slice_rw = Slice() + _slice_rw.CopyFrom(_slice) + _slice_rw.slice_status.slice_status = SliceStatusEnum.SLICESTATUS_DEINIT # pylint: disable=no-member + context_client.SetSlice(_slice_rw) + + local_device_uuids = get_local_device_uuids(context_client) + slice_owner_uuid = _slice.slice_owner.owner_uuid.uuid + not_inter_domain = not is_inter_domain(context_client, _slice.slice_endpoint_ids) + no_slice_owner = len(slice_owner_uuid) == 0 + is_local_slice_owner = slice_owner_uuid in local_device_uuids + if not_inter_domain and (no_slice_owner or is_local_slice_owner): + str_slice = grpc_message_to_json_string(_slice) + raise Exception('InterDomain can only handle inter-domain slice requests: {:s}'.format(str_slice)) + slice_client = SliceClient() - reply = slice_client.CreateSlice(request) - if reply != request.slice_id: - raise Exception('Slice creation failed. Wrong Slice Id was returned') - return context_client.GetSlice(request.slice_id) + for subslice_id in _slice_rw.slice_subslice_ids: + sub_slice = get_slice_by_id(context_client, subslice_id, rw_copy=True) + if ':remote:' in sub_slice.name: + domain_uuid = sub_slice.slice_owner.owner_string + interdomain_client = self.remote_domain_clients.get_peer(domain_uuid) + if interdomain_client is None: + raise Exception('InterDomain Client not found for Domain({:s})'.format(str(domain_uuid))) + interdomain_client.DeleteSlice(subslice_id) + + tmp_slice = Slice() + tmp_slice.slice_id.CopyFrom(_slice_rw.slice_id) # pylint: disable=no-member + slice_subslice_id = tmp_slice.slice_subslice_ids.add() # pylint: disable=no-member + slice_subslice_id.CopyFrom(subslice_id) + context_client.UnsetSlice(tmp_slice) + + if ':remote:' in sub_slice.name: + context_client.RemoveSlice(subslice_id) + else: + slice_client.DeleteSlice(subslice_id) + + service_client = ServiceClient() + for service_id in _slice_rw.slice_service_ids: + tmp_slice = Slice() + tmp_slice.slice_id.CopyFrom(_slice_rw.slice_id) # pylint: disable=no-member + slice_service_id = tmp_slice.slice_service_ids.add() # pylint: disable=no-member + slice_service_id.CopyFrom(service_id) + context_client.UnsetSlice(tmp_slice) + service_client.DeleteService(service_id) + + context_client.RemoveSlice(request) + slice_client.close() + service_client.close() + context_client.close() + return Empty() diff --git a/src/interdomain/service/RemoteDomainClients.py b/src/interdomain/service/RemoteDomainClients.py index e28176ef4fad2d3f2e2c6b1d7f0eb8d24116308a..adc6fe52b554d119db951189abcefe9e58860985 100644 --- a/src/interdomain/service/RemoteDomainClients.py +++ b/src/interdomain/service/RemoteDomainClients.py @@ -27,12 +27,13 @@ from interdomain.client.InterdomainClient import InterdomainClient LOGGER = logging.getLogger(__name__) -def get_domain_data(context_client : ContextClient, event : DeviceEvent) -> Optional[Tuple[str, str, int]]: +def get_domain_data(context_client : ContextClient, event : DeviceEvent) -> Optional[Tuple[str, str, str, int]]: device_uuid = event.device_id.device_uuid.uuid device = get_device( context_client, device_uuid, include_endpoints=False, include_components=False, include_config_rules=True) if device.device_type != DeviceTypeEnum.NETWORK.value: return None + idc_domain_uuid = device_uuid idc_domain_name = device.name idc_domain_address = None idc_domain_port = None @@ -45,7 +46,7 @@ def get_domain_data(context_client : ContextClient, event : DeviceEvent) -> Opti idc_domain_port = int(config_rule.custom.resource_value) if idc_domain_address is None: return None if idc_domain_port is None: return None - return idc_domain_name, idc_domain_address, idc_domain_port + return idc_domain_uuid, idc_domain_name, idc_domain_address, idc_domain_port class RemoteDomainClients(threading.Thread): def __init__(self) -> None: @@ -67,20 +68,22 @@ class RemoteDomainClients(threading.Thread): event = self.context_event_collector.get_event(timeout=0.1) if event is None: continue if not isinstance(event, DeviceEvent): continue - LOGGER.info('Processing Event({:s})...'.format(grpc_message_to_json_string(event))) + LOGGER.info('Processing DeviceEvent({:s})...'.format(grpc_message_to_json_string(event))) domain_data = get_domain_data(self.context_client, event) - domain_name, domain_address, domain_port = domain_data + if domain_data is None: continue + domain_uuid, domain_name, domain_address, domain_port = domain_data try: - self.add_peer(domain_name, domain_address, domain_port) + self.add_peer(domain_uuid, domain_name, domain_address, domain_port) except: # pylint: disable=bare-except - MSG = 'Unable to connect to remote domain {:s} ({:s}:{:d})' - LOGGER.exception(MSG.format(domain_name, domain_address, domain_port)) + MSG = 'Unable to connect to remote domain {:s} {:s} ({:s}:{:d})' + LOGGER.exception(MSG.format(domain_uuid, domain_name, domain_address, domain_port)) self.context_event_collector.stop() self.context_client.close() def add_peer( - self, domain_name : str, domain_address : str, domain_port : int, context_uuid : str = DEFAULT_CONTEXT_NAME + self, domain_uuid : str, domain_name : str, domain_address : str, domain_port : int, + context_uuid : str = DEFAULT_CONTEXT_NAME ) -> None: request = TeraFlowController() request.context_id.context_uuid.uuid = context_uuid # pylint: disable=no-member @@ -95,18 +98,22 @@ class RemoteDomainClients(threading.Thread): if not reply.authenticated: MSG = 'Authentication against {:s}:{:d} with Context({:s}) rejected' # pylint: disable=broad-exception-raised - raise Exception(MSG.format(domain_address, domain_port, domain_name)) + raise Exception(MSG.format(domain_address, domain_port, context_uuid)) with self.lock: + self.peer_domains[domain_uuid] = interdomain_client self.peer_domains[domain_name] = interdomain_client - LOGGER.info('Added peer domain {:s} ({:s}:{:d})'.format(domain_name, domain_address, domain_port)) + MSG = 'Added peer domain {:s} {:s} ({:s}:{:d})' + LOGGER.info(MSG.format(domain_uuid, domain_name, domain_address, domain_port)) - def get_peer(self, domain_name : str) -> InterdomainClient: + def get_peer(self, domain_uuid_or_name : str) -> Optional[InterdomainClient]: with self.lock: - LOGGER.warning('peers: {:s}'.format(str(self.peer_domains))) - return self.peer_domains.get(domain_name) + LOGGER.debug('domain_uuid_or_name: {:s}'.format(str(domain_uuid_or_name))) + LOGGER.debug('peers: {:s}'.format(str(self.peer_domains))) + return self.peer_domains.get(domain_uuid_or_name) - def remove_peer(self, domain_name : str) -> None: + def remove_peer(self, domain_uuid_or_name : str) -> None: with self.lock: - self.peer_domains.pop(domain_name, None) - LOGGER.info('Removed peer domain {:s}'.format(domain_name)) + LOGGER.debug('domain_uuid_or_name: {:s}'.format(str(domain_uuid_or_name))) + self.peer_domains.pop(domain_uuid_or_name, None) + LOGGER.info('Removed peer domain {:s}'.format(domain_uuid_or_name)) diff --git a/src/interdomain/service/Tools.py b/src/interdomain/service/Tools.py index 609dc6e07815de80d6d18f7464ce164ea3e14332..1c8fd90f1b983e66eca04143c3cf94164cdda425 100644 --- a/src/interdomain/service/Tools.py +++ b/src/interdomain/service/Tools.py @@ -13,10 +13,11 @@ # limitations under the License. import json, logging -from typing import List, Optional, Tuple +from typing import List, Optional, Set from common.Constants import DEFAULT_CONTEXT_NAME, DEFAULT_TOPOLOGY_NAME, INTERDOMAIN_TOPOLOGY_NAME +from common.DeviceTypes import DeviceTypeEnum from common.proto.context_pb2 import ( - ConfigRule, Constraint, ContextId, Device, Empty, EndPointId, Slice, SliceStatusEnum) + ConfigRule, Constraint, ContextId, Empty, EndPointId, Slice, SliceStatusEnum) from common.tools.context_queries.CheckType import device_type_is_network, endpoint_type_is_border from common.tools.context_queries.InterDomain import get_local_device_uuids from common.tools.grpc.ConfigRules import copy_config_rules @@ -28,23 +29,32 @@ from context.client.ContextClient import ContextClient LOGGER = logging.getLogger(__name__) def compute_slice_owner( - context_client : ContextClient, traversed_domains : List[Tuple[str, Device, bool, List[EndPointId]]] + context_client : ContextClient, traversed_domain_uuids : Set[str] ) -> Optional[str]: - traversed_domain_uuids = {traversed_domain[0] for traversed_domain in traversed_domains} - - existing_topology_ids = context_client.ListTopologyIds(ContextId(**json_context_id(DEFAULT_CONTEXT_NAME))) - existing_topology_uuids = { - topology_id.topology_uuid.uuid for topology_id in existing_topology_ids.topology_ids - } - existing_topology_uuids.discard(DEFAULT_TOPOLOGY_NAME) - existing_topology_uuids.discard(INTERDOMAIN_TOPOLOGY_NAME) - - candidate_owner_uuids = traversed_domain_uuids.intersection(existing_topology_uuids) + existing_topologies = context_client.ListTopologies(ContextId(**json_context_id(DEFAULT_CONTEXT_NAME))) + domain_uuids_names = set() + DISCARD_TOPOLOGY_NAMES = {DEFAULT_TOPOLOGY_NAME, INTERDOMAIN_TOPOLOGY_NAME} + for topology in existing_topologies.topologies: + topology_uuid = topology.topology_id.topology_uuid.uuid + if topology_uuid in DISCARD_TOPOLOGY_NAMES: continue + topology_name = topology.name + if topology_name in DISCARD_TOPOLOGY_NAMES: continue + domain_uuids_names.add(topology_uuid) + domain_uuids_names.add(topology_name) + + for topology in existing_topologies.topologies: + topology_details = context_client.GetTopologyDetails(topology.topology_id) + for device in topology_details.devices: + if device.device_type != DeviceTypeEnum.NETWORK.value: continue + domain_uuids_names.discard(device.device_id.device_uuid.uuid) + domain_uuids_names.discard(device.name) + + candidate_owner_uuids = traversed_domain_uuids.intersection(domain_uuids_names) if len(candidate_owner_uuids) != 1: data = { - 'traversed_domain_uuids' : [td_uuid for td_uuid in traversed_domain_uuids ], - 'existing_topology_uuids': [et_uuid for et_uuid in existing_topology_uuids], - 'candidate_owner_uuids' : [co_uuid for co_uuid in candidate_owner_uuids ], + 'traversed_domain_uuids': [td_uuid for td_uuid in traversed_domain_uuids], + 'domain_uuids_names' : [et_uuid for et_uuid in domain_uuids_names ], + 'candidate_owner_uuids' : [co_uuid for co_uuid in candidate_owner_uuids ], } LOGGER.warning('Unable to identify slice owner: {:s}'.format(json.dumps(data))) return None @@ -52,17 +62,24 @@ def compute_slice_owner( return candidate_owner_uuids.pop() def compose_slice( - context_uuid : str, slice_uuid : str, endpoint_ids : List[EndPointId], constraints : List[Constraint] = [], - config_rules : List[ConfigRule] = [], owner_uuid : Optional[str] = None + context_uuid : str, slice_uuid : str, endpoint_ids : List[EndPointId], slice_name : Optional[str] = None, + constraints : List[Constraint] = [], config_rules : List[ConfigRule] = [], owner_uuid : Optional[str] = None, + owner_string : Optional[str] = None ) -> Slice: slice_ = Slice() slice_.slice_id.context_id.context_uuid.uuid = context_uuid # pylint: disable=no-member slice_.slice_id.slice_uuid.uuid = slice_uuid # pylint: disable=no-member slice_.slice_status.slice_status = SliceStatusEnum.SLICESTATUS_PLANNED # pylint: disable=no-member + if slice_name is not None: + slice_.name = slice_name + if owner_uuid is not None: slice_.slice_owner.owner_uuid.uuid = owner_uuid # pylint: disable=no-member + if owner_string is not None: + slice_.slice_owner.owner_string = owner_string # pylint: disable=no-member + if len(endpoint_ids) >= 2: slice_.slice_endpoint_ids.add().CopyFrom(endpoint_ids[0]) # pylint: disable=no-member slice_.slice_endpoint_ids.add().CopyFrom(endpoint_ids[-1]) # pylint: disable=no-member diff --git a/src/interdomain/service/__main__.py b/src/interdomain/service/__main__.py index f867dc378020f3ef2ca8fb43b3beed538a1ebb9c..b986f8921fd212318dad3598d91e93418a6b51b7 100644 --- a/src/interdomain/service/__main__.py +++ b/src/interdomain/service/__main__.py @@ -18,6 +18,7 @@ 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 interdomain.Config import is_topology_abstractor_enabled from .topology_abstractor.TopologyAbstractor import TopologyAbstractor from .InterdomainService import InterdomainService from .RemoteDomainClients import RemoteDomainClients @@ -63,14 +64,17 @@ def main(): grpc_service.start() # Subscribe to Context Events - topology_abstractor = TopologyAbstractor() - topology_abstractor.start() + topology_abstractor_enabled = is_topology_abstractor_enabled() + if topology_abstractor_enabled: + topology_abstractor = TopologyAbstractor() + topology_abstractor.start() # Wait for Ctrl+C or termination signal while not terminate.wait(timeout=1.0): pass LOGGER.info('Terminating...') - topology_abstractor.stop() + if topology_abstractor_enabled: + topology_abstractor.stop() grpc_service.stop() remote_domain_clients.stop() diff --git a/src/interdomain/service/topology_abstractor/AbstractDevice.py b/src/interdomain/service/topology_abstractor/AbstractDevice.py index 0de93daa8c6e7a77b696cdf437d6e870d33b3666..47832acc02c78b5cfc095fb3ecceccfb6b9a774f 100644 --- a/src/interdomain/service/topology_abstractor/AbstractDevice.py +++ b/src/interdomain/service/topology_abstractor/AbstractDevice.py @@ -24,13 +24,15 @@ from common.tools.context_queries.Device import add_device_to_topology, get_exis from common.tools.object_factory.Context import json_context_id from common.tools.object_factory.Device import json_device, json_device_id from context.client.ContextClient import ContextClient +from context.service.database.uuids.EndPoint import endpoint_get_uuid LOGGER = logging.getLogger(__name__) class AbstractDevice: - def __init__(self, device_uuid : str, device_type : DeviceTypeEnum): + def __init__(self, device_uuid : str, device_name : str, device_type : DeviceTypeEnum): self.__context_client = ContextClient() self.__device_uuid : str = device_uuid + self.__device_name : str = device_name self.__device_type : DeviceTypeEnum = device_type self.__device : Optional[Device] = None self.__device_id : Optional[DeviceId] = None @@ -41,9 +43,23 @@ class AbstractDevice: # Dict[endpoint_uuid, device_uuid] self.__abstract_endpoint_to_device : Dict[str, str] = dict() + def to_json(self) -> Dict: + return { + 'device_uuid' : self.__device_uuid, + 'device_name' : self.__device_name, + 'device_type' : self.__device_type, + 'device' : self.__device, + 'device_id' : self.__device_id, + 'device_endpoint_to_abstract' : self.__device_endpoint_to_abstract, + 'abstract_endpoint_to_device' : self.__abstract_endpoint_to_device, + } + @property def uuid(self) -> str: return self.__device_uuid + @property + def name(self) -> str: return self.__device_name + @property def device_id(self) -> Optional[DeviceId]: return self.__device_id @@ -92,7 +108,7 @@ class AbstractDevice: device = Device(**json_device( device_uuid, self.__device_type.value, DeviceOperationalStatusEnum.DEVICEOPERATIONALSTATUS_ENABLED, - endpoints=[], config_rules=[], drivers=[DeviceDriverEnum.DEVICEDRIVER_UNDEFINED] + name=self.__device_name, endpoints=[], config_rules=[], drivers=[DeviceDriverEnum.DEVICEDRIVER_UNDEFINED] )) self.__context_client.SetDevice(device) self.__device = device @@ -126,6 +142,14 @@ class AbstractDevice: self.__abstract_endpoint_to_device\ .setdefault(endpoint_uuid, device_uuid) + def _update_endpoint_name(self, device_uuid : str, endpoint_uuid : str, endpoint_name : str) -> bool: + device_endpoint_to_abstract = self.__device_endpoint_to_abstract.get(device_uuid, {}) + interdomain_endpoint = device_endpoint_to_abstract.get(endpoint_uuid) + interdomain_endpoint_name = interdomain_endpoint.name + if endpoint_name == interdomain_endpoint_name: return False + interdomain_endpoint.name = endpoint_name + return True + def _update_endpoint_type(self, device_uuid : str, endpoint_uuid : str, endpoint_type : str) -> bool: device_endpoint_to_abstract = self.__device_endpoint_to_abstract.get(device_uuid, {}) interdomain_endpoint = device_endpoint_to_abstract.get(endpoint_uuid) @@ -134,16 +158,24 @@ class AbstractDevice: interdomain_endpoint.endpoint_type = endpoint_type return True - def _add_endpoint(self, device_uuid : str, endpoint_uuid : str, endpoint_type : str) -> EndPoint: + def _add_endpoint( + self, device_uuid : str, endpoint_uuid : str, endpoint_name : str, endpoint_type : str + ) -> EndPoint: interdomain_endpoint = self.__device.device_endpoints.add() + interdomain_endpoint.endpoint_id.topology_id.topology_uuid.uuid = INTERDOMAIN_TOPOLOGY_NAME + interdomain_endpoint.endpoint_id.topology_id.context_id.context_uuid.uuid = DEFAULT_CONTEXT_NAME interdomain_endpoint.endpoint_id.device_id.CopyFrom(self.__device_id) - interdomain_endpoint.endpoint_id.endpoint_uuid.uuid = endpoint_uuid + interdomain_endpoint.endpoint_id.endpoint_uuid.uuid = endpoint_name + interdomain_endpoint.name = endpoint_name interdomain_endpoint.endpoint_type = endpoint_type + uuids = endpoint_get_uuid(interdomain_endpoint.endpoint_id, endpoint_name=endpoint_name, allow_random=False) + _, _, interdomain_endpoint_uuid = uuids + self.__device_endpoint_to_abstract\ .setdefault(device_uuid, {}).setdefault(endpoint_uuid, interdomain_endpoint) self.__abstract_endpoint_to_device\ - .setdefault(endpoint_uuid, device_uuid) + .setdefault(interdomain_endpoint_uuid, device_uuid) return interdomain_endpoint @@ -160,7 +192,7 @@ class AbstractDevice: device_uuid = device.device_id.device_uuid.uuid device_border_endpoint_uuids = { - endpoint.endpoint_id.endpoint_uuid.uuid : endpoint.endpoint_type + endpoint.endpoint_id.endpoint_uuid.uuid : (endpoint.name, endpoint.endpoint_type) for endpoint in device.device_endpoints if endpoint_type_is_border(endpoint.endpoint_type) } @@ -177,14 +209,15 @@ class AbstractDevice: updated = True # for each border endpoint in device that is not in abstract device; add to abstract device - for endpoint_uuid,endpoint_type in device_border_endpoint_uuids.items(): - # if already added; just check endpoint type is not modified + for endpoint_uuid,(endpoint_name, endpoint_type) in device_border_endpoint_uuids.items(): + # if already added; just check endpoint name and type are not modified if endpoint_uuid in self.__abstract_endpoint_to_device: + updated = updated or self._update_endpoint_name(device_uuid, endpoint_uuid, endpoint_name) updated = updated or self._update_endpoint_type(device_uuid, endpoint_uuid, endpoint_type) continue # otherwise, add it to the abstract device - self._add_endpoint(device_uuid, endpoint_uuid, endpoint_type) + self._add_endpoint(device_uuid, endpoint_uuid, endpoint_name, endpoint_type) updated = True return updated diff --git a/src/interdomain/service/topology_abstractor/AbstractLink.py b/src/interdomain/service/topology_abstractor/AbstractLink.py index bdab62476c709de7d3fa2c4de2dba687714aba77..76b2a0311b2213d35c1b5461e06c324f9304b934 100644 --- a/src/interdomain/service/topology_abstractor/AbstractLink.py +++ b/src/interdomain/service/topology_abstractor/AbstractLink.py @@ -33,6 +33,14 @@ class AbstractLink: # Dict[(device_uuid, endpoint_uuid), abstract EndPointId] self.__device_endpoint_to_abstract : Dict[Tuple[str, str], EndPointId] = dict() + def to_json(self) -> Dict: + return { + 'link_uuid' : self.__link_uuid, + 'link' : self.__link, + 'link_id' : self.__link_id, + 'device_endpoint_to_abstract' : self.__device_endpoint_to_abstract, + } + @property def uuid(self) -> str: return self.__link_uuid @@ -95,6 +103,8 @@ class AbstractLink: def _add_endpoint(self, device_uuid : str, endpoint_uuid : str) -> None: endpoint_id = self.__link.link_endpoint_ids.add() + endpoint_id.topology_id.topology_uuid.uuid = INTERDOMAIN_TOPOLOGY_NAME + endpoint_id.topology_id.context_id.context_uuid.uuid = DEFAULT_CONTEXT_NAME endpoint_id.device_id.device_uuid.uuid = device_uuid endpoint_id.endpoint_uuid.uuid = endpoint_uuid self.__device_endpoint_to_abstract.setdefault((device_uuid, endpoint_uuid), endpoint_id) diff --git a/src/interdomain/service/topology_abstractor/TopologyAbstractor.py b/src/interdomain/service/topology_abstractor/TopologyAbstractor.py index 20b186f307fb583734f8d0e96cea2a26e24e5590..0d9faa0408fe77dceaf5652b144590f9beb4a88d 100644 --- a/src/interdomain/service/topology_abstractor/TopologyAbstractor.py +++ b/src/interdomain/service/topology_abstractor/TopologyAbstractor.py @@ -16,15 +16,16 @@ import logging, threading from typing import Dict, Optional, Tuple from common.Constants import DEFAULT_CONTEXT_NAME, DEFAULT_TOPOLOGY_NAME, INTERDOMAIN_TOPOLOGY_NAME, ServiceNameEnum from common.DeviceTypes import DeviceTypeEnum -from common.Settings import ENVVAR_SUFIX_SERVICE_HOST, ENVVAR_SUFIX_SERVICE_PORT_GRPC, find_missing_environment_variables, get_env_var_name +from common.Settings import ( + ENVVAR_SUFIX_SERVICE_HOST, ENVVAR_SUFIX_SERVICE_PORT_GRPC, find_environment_variables, get_env_var_name) from common.proto.context_pb2 import ( ContextEvent, ContextId, Device, DeviceEvent, DeviceId, EndPoint, EndPointId, Link, LinkEvent, TopologyId, TopologyEvent) from common.tools.context_queries.CheckType import ( device_type_is_datacenter, device_type_is_network, endpoint_type_is_border) from common.tools.context_queries.Context import create_context -from common.tools.context_queries.Device import get_devices_in_topology, get_uuids_of_devices_in_topology -from common.tools.context_queries.Link import get_links_in_topology +from common.tools.context_queries.Device import get_uuids_of_devices_in_topology #, get_devices_in_topology +#from common.tools.context_queries.Link import get_links_in_topology from common.tools.context_queries.Topology import create_missing_topologies from common.tools.grpc.Tools import grpc_message_to_json_string from common.tools.object_factory.Context import json_context_id @@ -99,13 +100,13 @@ class TopologyAbstractor(threading.Thread): # return False def _get_or_create_abstract_device( - self, device_uuid : str, device_type : DeviceTypeEnum, dlt_record_sender : DltRecordSender, + self, device_uuid : str, device_name : str, device_type : DeviceTypeEnum, dlt_record_sender : DltRecordSender, abstract_topology_id : TopologyId ) -> AbstractDevice: abstract_device = self.abstract_devices.get(device_uuid) changed = False if abstract_device is None: - abstract_device = AbstractDevice(device_uuid, device_type) + abstract_device = AbstractDevice(device_uuid, device_name, device_type) changed = abstract_device.initialize() if changed: dlt_record_sender.add_device(abstract_topology_id, abstract_device.device) self.abstract_devices[device_uuid] = abstract_device @@ -117,16 +118,17 @@ class TopologyAbstractor(threading.Thread): abstract_device_uuid : Optional[str] = None ) -> None: device_uuid = device.device_id.device_uuid.uuid + device_name = device.name if device_type_is_datacenter(device.device_type): abstract_device_uuid = device_uuid abstract_device = self._get_or_create_abstract_device( - device_uuid, DeviceTypeEnum.EMULATED_DATACENTER, dlt_record_sender, abstract_topology_id) + device_uuid, device_name, DeviceTypeEnum.EMULATED_DATACENTER, dlt_record_sender, abstract_topology_id) elif device_type_is_network(device.device_type): LOGGER.warning('device_type is network; not implemented') return else: abstract_device = self._get_or_create_abstract_device( - abstract_device_uuid, DeviceTypeEnum.NETWORK, dlt_record_sender, abstract_topology_id) + abstract_device_uuid, None, DeviceTypeEnum.NETWORK, dlt_record_sender, abstract_topology_id) self.real_to_abstract_device_uuid[device_uuid] = abstract_device_uuid changed = abstract_device.update_endpoints(device) if changed: dlt_record_sender.add_device(abstract_topology_id, abstract_device.device) @@ -224,11 +226,11 @@ class TopologyAbstractor(threading.Thread): if changed: dlt_record_sender.add_link(INTERDOMAIN_TOPOLOGY_ID, abstract_link.link) def update_abstraction(self, event : EventTypes) -> None: - missing_env_vars = find_missing_environment_variables([ + env_vars = find_environment_variables([ get_env_var_name(ServiceNameEnum.DLT, ENVVAR_SUFIX_SERVICE_HOST ), get_env_var_name(ServiceNameEnum.DLT, ENVVAR_SUFIX_SERVICE_PORT_GRPC), ]) - if len(missing_env_vars) == 0: + if len(env_vars) == 2: # DLT available dlt_connector_client = DltConnectorClient() dlt_connector_client.connect() @@ -238,41 +240,55 @@ class TopologyAbstractor(threading.Thread): dlt_record_sender = DltRecordSender(self.context_client, dlt_connector_client) if isinstance(event, ContextEvent): - LOGGER.warning('Ignoring Event({:s})'.format(grpc_message_to_json_string(event))) + LOGGER.debug('Processing ContextEvent({:s})'.format(grpc_message_to_json_string(event))) + LOGGER.warning('Ignoring ContextEvent({:s})'.format(grpc_message_to_json_string(event))) elif isinstance(event, TopologyEvent): + LOGGER.debug('Processing TopologyEvent({:s})'.format(grpc_message_to_json_string(event))) topology_id = event.topology_id topology_uuid = topology_id.topology_uuid.uuid context_id = topology_id.context_id context_uuid = context_id.context_uuid.uuid topology_uuids = {DEFAULT_TOPOLOGY_NAME, INTERDOMAIN_TOPOLOGY_NAME} - if (context_uuid == DEFAULT_CONTEXT_NAME) and (topology_uuid not in topology_uuids): + + context = self.context_client.GetContext(context_id) + context_name = context.name + + topology_details = self.context_client.GetTopologyDetails(topology_id) + topology_name = topology_details.name + + if ((context_uuid == DEFAULT_CONTEXT_NAME) or (context_name == DEFAULT_CONTEXT_NAME)) and \ + (topology_uuid not in topology_uuids) and (topology_name not in topology_uuids): + abstract_topology_id = TopologyId(**json_topology_id(topology_uuid, context_id=ADMIN_CONTEXT_ID)) self._get_or_create_abstract_device( - topology_uuid, DeviceTypeEnum.NETWORK, dlt_record_sender, abstract_topology_id) + topology_uuid, topology_name, DeviceTypeEnum.NETWORK, dlt_record_sender, abstract_topology_id) - devices = get_devices_in_topology(self.context_client, context_id, topology_uuid) - for device in devices: + #devices = get_devices_in_topology(self.context_client, context_id, topology_uuid) + for device in topology_details.devices: self._update_abstract_device( device, dlt_record_sender, abstract_topology_id, abstract_device_uuid=topology_uuid) - links = get_links_in_topology(self.context_client, context_id, topology_uuid) - for link in links: + #links = get_links_in_topology(self.context_client, context_id, topology_uuid) + for link in topology_details.links: self._update_abstract_link(link, dlt_record_sender, abstract_topology_id) - for device in devices: + for device in topology_details.devices: self._infer_abstract_links(device, dlt_record_sender) else: - LOGGER.warning('Ignoring Event({:s})'.format(grpc_message_to_json_string(event))) - + MSG = 'Ignoring ({:s}/{:s})({:s}/{:s}) TopologyEvent({:s})' + args = context_uuid, context_name, topology_uuid, topology_name, grpc_message_to_json_string(event) + LOGGER.warning(MSG.format(*args)) + elif isinstance(event, DeviceEvent): + LOGGER.debug('Processing DeviceEvent({:s})'.format(grpc_message_to_json_string(event))) device_id = event.device_id device_uuid = device_id.device_uuid.uuid abstract_device_uuid = self.real_to_abstract_device_uuid.get(device_uuid) device = self.context_client.GetDevice(device_id) if abstract_device_uuid is None: - LOGGER.warning('Ignoring Event({:s})'.format(grpc_message_to_json_string(event))) + LOGGER.warning('Ignoring DeviceEvent({:s})'.format(grpc_message_to_json_string(event))) else: abstract_topology_id = self.abstract_device_to_topology_id[abstract_device_uuid] self._update_abstract_device( @@ -281,11 +297,12 @@ class TopologyAbstractor(threading.Thread): self._infer_abstract_links(device, dlt_record_sender) elif isinstance(event, LinkEvent): + LOGGER.debug('Processing LinkEvent({:s})'.format(grpc_message_to_json_string(event))) link_id = event.link_id link_uuid = link_id.link_uuid.uuid abstract_link_uuid = self.real_to_abstract_link_uuid.get(link_uuid) if abstract_link_uuid is None: - LOGGER.warning('Ignoring Event({:s})'.format(grpc_message_to_json_string(event))) + LOGGER.warning('Ignoring LinkEvent({:s})'.format(grpc_message_to_json_string(event))) else: abstract_topology_id = self.abstract_link_to_topology_id[abstract_link_uuid] link = self.context_client.GetLink(link_id) @@ -295,4 +312,4 @@ class TopologyAbstractor(threading.Thread): LOGGER.warning('Unsupported Event({:s})'.format(grpc_message_to_json_string(event))) dlt_record_sender.commit() - dlt_connector_client.close() + if dlt_connector_client is not None: dlt_connector_client.close() diff --git a/src/interdomain/tests/test_unitary.py b/src/interdomain/tests/old_tests.py similarity index 99% rename from src/interdomain/tests/test_unitary.py rename to src/interdomain/tests/old_tests.py index 403dea54334da54a794b6da40dd64d1e6e856034..3543c9541371d3e1dd3d81e8f51c62082cec6ec1 100644 --- a/src/interdomain/tests/test_unitary.py +++ b/src/interdomain/tests/old_tests.py @@ -12,7 +12,6 @@ # See the License for the specific language governing permissions and # limitations under the License. - #import logging, grpc #import os #import sqlite3 diff --git a/src/interdomain/tests/test_compute_domains.py b/src/interdomain/tests/test_compute_domains.py new file mode 100644 index 0000000000000000000000000000000000000000..3332731dd53ad62801c80c5172fbfee3ea943c6a --- /dev/null +++ b/src/interdomain/tests/test_compute_domains.py @@ -0,0 +1,119 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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, pytest +from typing import Dict, List, Tuple +from common.DeviceTypes import DeviceTypeEnum +from common.proto.context_pb2 import EndPointId +from common.proto.pathcomp_pb2 import PathCompRequest +from common.tools.context_queries.Device import get_device +from common.tools.context_queries.InterDomain import get_device_to_domain_map, get_local_device_uuids +from common.tools.grpc.Tools import grpc_message_list_to_json, grpc_message_list_to_json_string, grpc_message_to_json_string +from context.client.ContextClient import ContextClient +from pathcomp.frontend.client.PathCompClient import PathCompClient + +LOGGER = logging.getLogger(__name__) +LOGGER.setLevel(logging.DEBUG) + +@pytest.fixture(scope='session') +def context_client(): + _client = ContextClient() + yield _client + _client.close() + +@pytest.fixture(scope='session') +def pathcomp_client(): + _client = PathCompClient() + yield _client + _client.close() + +def test_interdomain_topology_abstractor( + context_client : ContextClient, # pylint: disable=redefined-outer-name + pathcomp_client : PathCompClient, # pylint: disable=redefined-outer-name +) -> None: + + pathcomp_req = PathCompRequest(**{ + "services": [ + {"name": "", "service_constraints": [{"sla_capacity": {"capacity_gbps": 10.0}}, {"sla_latency": {"e2e_latency_ms": 100.0}}], "service_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "cda90d2f-e7b0-5837-8f2e-2fb29dd9b367"}}, "endpoint_uuid": {"uuid": "37ab67ef-0064-54e3-ae9b-d40100953834"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "43813baf-195e-5da6-af20-b3d0922e71a7"}}, "topology_uuid": {"uuid": "c76135e3-24a8-5e92-9bed-c3c9139359c8"}}}, + {"device_id": {"device_uuid": {"uuid": "800d5bd4-a7a3-5a66-82ab-d399767ca3d8"}}, "endpoint_uuid": {"uuid": "97f57787-cfec-5315-9718-7e850905f11a"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "43813baf-195e-5da6-af20-b3d0922e71a7"}}, "topology_uuid": {"uuid": "c76135e3-24a8-5e92-9bed-c3c9139359c8"}}} + ], "service_id": {"context_id": {"context_uuid": {"uuid": "43813baf-195e-5da6-af20-b3d0922e71a7"}}, "service_uuid": {"uuid": "77277b43-f9cd-5e01-a3e7-6c5fa4577137"}}, "service_type": "SERVICETYPE_L2NM"} + ], + "shortest_path": {} + }) + pathcomp_req_svc = pathcomp_req.services[0] + + pathcomp_rep = pathcomp_client.Compute(pathcomp_req) + LOGGER.warning('pathcomp_rep = {:s}'.format(grpc_message_to_json_string(pathcomp_rep))) + + num_services = len(pathcomp_rep.services) + if num_services == 0: + raise Exception('No services received : {:s}'.format(grpc_message_to_json_string(pathcomp_rep))) + + num_connections = len(pathcomp_rep.connections) + if num_connections == 0: + raise Exception('No connections received : {:s}'.format(grpc_message_to_json_string(pathcomp_rep))) + + local_device_uuids = get_local_device_uuids(context_client) + LOGGER.warning('local_device_uuids={:s}'.format(str(local_device_uuids))) + + device_to_domain_map = get_device_to_domain_map(context_client) + LOGGER.warning('device_to_domain_map={:s}'.format(str(device_to_domain_map))) + + local_slices : List[List[EndPointId]] = list() + remote_slices : List[List[EndPointId]] = list() + req_service_uuid = pathcomp_req_svc.service_id.service_uuid.uuid + for service in pathcomp_rep.services: + service_uuid = service.service_id.service_uuid.uuid + if service_uuid == req_service_uuid: continue # main synthetic service; we don't care + device_uuids = { + endpoint_id.device_id.device_uuid.uuid + for endpoint_id in service.service_endpoint_ids + } + local_domain_uuids = set() + remote_domain_uuids = set() + for device_uuid in device_uuids: + if device_uuid in local_device_uuids: + domain_uuid = device_to_domain_map.get(device_uuid) + if domain_uuid is None: + raise Exception('Unable to map device({:s}) to a domain'.format(str(device_uuid))) + local_domain_uuids.add(domain_uuid) + else: + device = get_device( + context_client, device_uuid, include_endpoints=True, include_config_rules=False, + include_components=False) + if device is None: raise Exception('Device({:s}) not found'.format(str(device_uuid))) + device_type = DeviceTypeEnum._value2member_map_.get(device.device_type) + is_remote = device_type == DeviceTypeEnum.NETWORK + if not is_remote: + MSG = 'Weird device({:s}) is not local and not network' + raise Exception(MSG.format(grpc_message_to_json_string(device))) + remote_domain_uuids.add(device_uuid) + is_local = len(local_domain_uuids) > 0 + is_remote = len(remote_domain_uuids) > 0 + if is_local == is_remote: + MSG = 'Weird service combines local and remote devices: {:s}' + raise Exception(MSG.format(grpc_message_to_json_string(service))) + elif is_local: + local_slices.append(service.service_endpoint_ids) + else: + remote_slices.append(service.service_endpoint_ids) + + str_local_slices = [grpc_message_list_to_json(endpoint_ids) for endpoint_ids in local_slices] + LOGGER.warning('local_slices={:s}'.format(str(str_local_slices))) + + str_remote_slices = [grpc_message_list_to_json(endpoint_ids) for endpoint_ids in remote_slices] + LOGGER.warning('remote_slices={:s}'.format(str(str_remote_slices))) + + raise Exception() diff --git a/src/interdomain/tests/test_topology_abstractor.py b/src/interdomain/tests/test_topology_abstractor.py new file mode 100644 index 0000000000000000000000000000000000000000..e6243a236c6a2ab38bd5e5325ecdd1668d2b033f --- /dev/null +++ b/src/interdomain/tests/test_topology_abstractor.py @@ -0,0 +1,105 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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, pytest, time +from common.Constants import DEFAULT_CONTEXT_NAME +from common.proto.context_pb2 import ContextId, Empty +from common.proto.context_pb2 import ConfigActionEnum, Device, DeviceId +from common.tools.descriptor.Loader import DescriptorLoader, check_descriptor_load_results, validate_empty_scenario +from common.tools.grpc.Tools import grpc_message_to_json_string +from common.tools.object_factory.Context import json_context_id +from context.client.ContextClient import ContextClient +from device.client.DeviceClient import DeviceClient +from interdomain.service.topology_abstractor.TopologyAbstractor import TopologyAbstractor + +LOGGER = logging.getLogger(__name__) +LOGGER.setLevel(logging.DEBUG) + +@pytest.fixture(scope='session') +def context_client(): + _client = ContextClient() + yield _client + _client.close() + +@pytest.fixture(scope='session') +def device_client(): + _client = DeviceClient() + yield _client + _client.close() + +@pytest.fixture(scope='session') +def topology_abstractor(): + _topology_abstractor = TopologyAbstractor() + _topology_abstractor.start() + yield _topology_abstractor + _topology_abstractor.stop() + _topology_abstractor.join() + +def test_pre_cleanup_scenario( + context_client : ContextClient, # pylint: disable=redefined-outer-name + device_client : DeviceClient, # pylint: disable=redefined-outer-name +) -> None: + for link_id in context_client.ListLinkIds(Empty()).link_ids: context_client.RemoveLink(link_id) + for device_id in context_client.ListDeviceIds(Empty()).device_ids: device_client.DeleteDevice(device_id) + + contexts = context_client.ListContexts(Empty()) + for context in contexts.contexts: + assert len(context.slice_ids) == 0, 'Found Slices: {:s}'.format(grpc_message_to_json_string(context)) + assert len(context.service_ids) == 0, 'Found Services: {:s}'.format(grpc_message_to_json_string(context)) + for topology_id in context.topology_ids: context_client.RemoveTopology(topology_id) + context_client.RemoveContext(context.context_id) + +DESCRIPTOR_FILE = 'oeccpsc22/descriptors/domain1.json' +#DESCRIPTOR_FILE = 'oeccpsc22/descriptors/domain2.json' + +def test_interdomain_topology_abstractor( + context_client : ContextClient, # pylint: disable=redefined-outer-name + device_client : DeviceClient, # pylint: disable=redefined-outer-name + topology_abstractor : TopologyAbstractor, # pylint: disable=redefined-outer-name +) -> None: + #validate_empty_scenario(context_client) + + time.sleep(3) + + descriptor_loader = DescriptorLoader( + descriptors_file=DESCRIPTOR_FILE, context_client=context_client, device_client=device_client) + results = descriptor_loader.process() + check_descriptor_load_results(results, descriptor_loader) + #descriptor_loader.validate() + + time.sleep(3) + + LOGGER.warning('real_to_abstract_device_uuid={:s}'.format(str(topology_abstractor.real_to_abstract_device_uuid))) + LOGGER.warning('real_to_abstract_link_uuid={:s}'.format(str(topology_abstractor.real_to_abstract_link_uuid))) + + LOGGER.warning('abstract_device_to_topology_id={:s}'.format(str(topology_abstractor.abstract_device_to_topology_id))) + LOGGER.warning('abstract_link_to_topology_id={:s}'.format(str(topology_abstractor.abstract_link_to_topology_id))) + + LOGGER.warning('abstract_devices={:s}'.format(str({ + k:v.to_json() + for k,v in topology_abstractor.abstract_devices.items() + }))) + LOGGER.warning('abstract_links={:s}'.format(str({ + k:v.to_json() + for k,v in topology_abstractor.abstract_links.items() + }))) + + raise Exception() + + +#def test_post_cleanup_scenario( +# context_client : ContextClient, # pylint: disable=redefined-outer-name +# device_client : DeviceClient, # pylint: disable=redefined-outer-name +#) -> None: +# test_pre_cleanup_scenario(context_client, device_client) diff --git a/src/l3_attackmitigator/README.md b/src/l3_attackmitigator/README.md index 04c937a1d35e91071e0357278c81b33335e2e37a..d82400cdcd2a396c6275fea39dc1c127ee3510dc 100644 --- a/src/l3_attackmitigator/README.md +++ b/src/l3_attackmitigator/README.md @@ -1,3 +1,8 @@ -# l3_attackmitigator -- Receives packages and process it with TSTAT -- Functions: ReportSummarizeKpi(KpiList) +# L3 Attack Mitigator + +Receives detected attacks from the Centralized Attack Detector component and performs the necessary mitigations. + +## Functions: +- PerformMitigation(L3AttackmitigatorOutput) -> StatusMessage +- GetMitigation(Empty) -> Empty +- GetConfiguredACLRules(Empty) -> ACLRules diff --git a/src/l3_attackmitigator/client/l3_attackmitigatorClient.py b/src/l3_attackmitigator/client/l3_attackmitigatorClient.py index c5d98b1c4974172e50e65db16ba4753e742eab28..bae3fd62785e02eed1cd8fd7678c1775b0193d84 100644 --- a/src/l3_attackmitigator/client/l3_attackmitigatorClient.py +++ b/src/l3_attackmitigator/client/l3_attackmitigatorClient.py @@ -15,17 +15,12 @@ import grpc, logging from common.Constants import ServiceNameEnum from common.Settings import get_service_host, get_service_port_grpc +from common.proto.context_pb2 import Empty +from common.proto.l3_attackmitigator_pb2 import L3AttackmitigatorOutput, ACLRules +from common.proto.l3_attackmitigator_pb2_grpc import L3AttackmitigatorStub +from common.proto.l3_centralizedattackdetector_pb2 import StatusMessage from common.tools.client.RetryDecorator import retry, delay_exponential -from common.proto.l3_attackmitigator_pb2_grpc import ( - L3AttackmitigatorStub, -) -from common.proto.l3_attackmitigator_pb2 import ( - L3AttackmitigatorOutput, ACLRules -) - -from common.proto.context_pb2 import ( - Empty -) +from common.tools.grpc.Tools import grpc_message_to_json_string LOGGER = logging.getLogger(__name__) MAX_RETRIES = 15 @@ -37,7 +32,7 @@ class l3_attackmitigatorClient: if not host: host = get_service_host(ServiceNameEnum.L3_AM) if not port: port = get_service_port_grpc(ServiceNameEnum.L3_AM) self.endpoint = "{}:{}".format(host, port) - LOGGER.debug("Creating channel to {}...".format(self.endpoint)) + LOGGER.debug("Creating channel to {:s}...".format(self.endpoint)) self.channel = None self.stub = None self.connect() @@ -54,23 +49,22 @@ class l3_attackmitigatorClient: self.stub = None @RETRY_DECORATOR - def PerformMitigation(self, request: L3AttackmitigatorOutput) -> Empty: - LOGGER.debug('PerformMitigation request: {}'.format(request)) + def PerformMitigation(self, request: L3AttackmitigatorOutput) -> StatusMessage: + LOGGER.debug('PerformMitigation request: {:s}'.format(grpc_message_to_json_string(request))) response = self.stub.PerformMitigation(request) - LOGGER.debug('PerformMitigation result: {}'.format(response)) + LOGGER.debug('PerformMitigation result: {:s}'.format(grpc_message_to_json_string(response))) return response @RETRY_DECORATOR def GetMitigation(self, request: Empty) -> Empty: - LOGGER.debug('GetMitigation request: {}'.format(request)) + LOGGER.debug('GetMitigation request: {:s}'.format(grpc_message_to_json_string(request))) response = self.stub.GetMitigation(request) - LOGGER.debug('GetMitigation result: {}'.format(response)) + LOGGER.debug('GetMitigation result: {:s}'.format(grpc_message_to_json_string(response))) return response @RETRY_DECORATOR def GetConfiguredACLRules(self, request: Empty) -> ACLRules: - LOGGER.debug('GetConfiguredACLRules request: {}'.format(request)) + LOGGER.debug('GetConfiguredACLRules request: {:s}'.format(grpc_message_to_json_string(request))) response = self.stub.GetConfiguredACLRules(request) - LOGGER.debug('GetConfiguredACLRules result: {}'.format(response)) + LOGGER.debug('GetConfiguredACLRules result: {:s}'.format(grpc_message_to_json_string(response))) return response - diff --git a/src/l3_attackmitigator/requirements.in b/src/l3_attackmitigator/requirements.in index a8aba849708799232f6b0732c3661396266da329..38d04994fb0fa1951fb465bc127eb72659dc2eaf 100644 --- a/src/l3_attackmitigator/requirements.in +++ b/src/l3_attackmitigator/requirements.in @@ -11,5 +11,3 @@ # 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. - -# no extra dependency diff --git a/src/l3_attackmitigator/service/l3_attackmitigatorServiceServicerImpl.py b/src/l3_attackmitigator/service/l3_attackmitigatorServiceServicerImpl.py index 34cfcd5d081a431f165461564eeb5a3390a3bda5..5a7abe0a7416e61ae73b24e5f528ebc1717d8f2e 100644 --- a/src/l3_attackmitigator/service/l3_attackmitigatorServiceServicerImpl.py +++ b/src/l3_attackmitigator/service/l3_attackmitigatorServiceServicerImpl.py @@ -13,33 +13,39 @@ # limitations under the License. from __future__ import print_function + +import grpc import logging import time -from common.proto.l3_centralizedattackdetector_pb2 import Empty -from common.proto.l3_attackmitigator_pb2_grpc import L3AttackmitigatorServicer -from common.proto.l3_attackmitigator_pb2 import ACLRules -from common.proto.context_pb2 import ( - ServiceId, - ConfigActionEnum, -) - +from common.method_wrappers.Decorator import MetricsPool, safe_and_metered_rpc_method from common.proto.acl_pb2 import AclForwardActionEnum, AclLogActionEnum, AclRuleTypeEnum -from common.proto.context_pb2 import ConfigActionEnum, Service, ServiceId, ConfigRule +from common.proto.context_pb2 import ConfigActionEnum, Empty, Service, ServiceId +from common.proto.l3_attackmitigator_pb2 import ACLRules, L3AttackmitigatorOutput +from common.proto.l3_attackmitigator_pb2_grpc import L3AttackmitigatorServicer +from common.proto.l3_centralizedattackdetector_pb2 import StatusMessage from common.tools.grpc.Tools import grpc_message_to_json_string from context.client.ContextClient import ContextClient from service.client.ServiceClient import ServiceClient -from common.method_wrappers.Decorator import MetricsPool, safe_and_metered_rpc_method LOGGER = logging.getLogger(__name__) - -METRICS_POOL = MetricsPool('l3_attackmitigator', 'RPC') +METRICS_POOL = MetricsPool("l3_attackmitigator", "RPC") class l3_attackmitigatorServiceServicerImpl(L3AttackmitigatorServicer): def __init__(self): - LOGGER.info("Creating Attack Mitigator Service") + """ + Initializes the Attack Mitigator service. + + Args: + None. + + Returns: + None. + """ + + LOGGER.info("Creating Attack Mitigator service") self.last_value = -1 self.last_tag = 0 @@ -60,14 +66,28 @@ class l3_attackmitigatorServiceServicerImpl(L3AttackmitigatorServicer): src_port: str, dst_port: str, ) -> None: + """ + Configures an ACL rule to block undesired TCP traffic. + + Args: + context_uuid (str): The UUID of the context. + service_uuid (str): The UUID of the service. + device_uuid (str): The UUID of the device. + endpoint_uuid (str): The UUID of the endpoint. + src_ip (str): The source IP address. + dst_ip (str): The destination IP address. + src_port (str): The source port. + dst_port (str): The destination port. + + Returns: + None. + """ + # Create ServiceId service_id = ServiceId() service_id.context_id.context_uuid.uuid = context_uuid service_id.service_uuid.uuid = service_uuid - # Get service form Context - # context_client = ContextClient() - try: _service: Service = self.context_client.GetService(service_id) except: @@ -88,11 +108,9 @@ class l3_attackmitigatorServiceServicerImpl(L3AttackmitigatorServicer): # Set RuleSet for this ACL ConfigRule acl_rule_set = acl_config_rule.acl.rule_set - # TODO: update the following parameters; for instance, add them as parameters of the method configure_acl_rule - # acl_rule_set.name = "DROP-HTTPS" + acl_rule_set.name = "DROP-TCP" acl_rule_set.type = AclRuleTypeEnum.ACLRULETYPE_IPV4 - # acl_rule_set.description = "DROP undesired HTTPS traffic" acl_rule_set.description = "DROP undesired TCP traffic" # Add ACLEntry to the ACLRuleSet @@ -108,35 +126,45 @@ class l3_attackmitigatorServiceServicerImpl(L3AttackmitigatorServicer): acl_entry.match.dst_address = "{}/32".format(dst_ip) acl_entry.match.src_port = int(src_port) acl_entry.match.dst_port = int(dst_port) - # TODO: update the following parameters; for instance, add them as parameters of the method configure_acl_rule + acl_entry.action.forward_action = AclForwardActionEnum.ACLFORWARDINGACTION_DROP acl_entry.action.log_action = AclLogActionEnum.ACLLOGACTION_NOLOG - LOGGER.info("ACL Rule Set: %s", acl_rule_set) - LOGGER.info("ACL Config Rule: %s", acl_config_rule) + LOGGER.info(f"ACL Rule Set: {grpc_message_to_json_string(acl_rule_set)}") + LOGGER.info(f"ACL Config Rule: {grpc_message_to_json_string(acl_config_rule)}") # Add the ACLRuleSet to the list of configured ACLRuleSets self.configured_acl_config_rules.append(acl_config_rule) + + LOGGER.info(service_request) # Update the Service with the new ACL RuleSet - # service_client = ServiceClient() - service_reply: ServiceId = self.service_client.UpdateService(service_request) + service_reply = self.service_client.UpdateService(service_request) - # TODO: Log the service_reply details + LOGGER.info(f"Service reply: {grpc_message_to_json_string(service_reply)}") if service_reply != service_request.service_id: # pylint: disable=no-member raise Exception("Service update failed. Wrong ServiceId was returned") - @safe_and_metered_rpc_method(METRICS_POOL, LOGGER) - def PerformMitigation(self, request, context): + def PerformMitigation(self, request : L3AttackmitigatorOutput, context : grpc.ServicerContext) -> StatusMessage: + """ + Performs mitigation on an attack by configuring an ACL rule to block undesired TCP traffic. + + Args: + request (L3AttackmitigatorOutput): The request message containing the attack mitigation information. + context (Empty): The context of the request. + + Returns: + StatusMessage: A response with a message indicating that the attack mitigation information + was received and processed. + """ + last_value = request.confidence last_tag = request.tag LOGGER.info( - "Attack Mitigator received attack mitigation information. Prediction confidence: %s, Predicted class: %s", - last_value, - last_tag, + f"Attack Mitigator received attack mitigation information. Prediction confidence: {last_value}, Predicted class: {last_tag}" ) ip_o = request.ip_o @@ -148,21 +176,23 @@ class l3_attackmitigatorServiceServicerImpl(L3AttackmitigatorServicer): counter = 0 service_id = request.service_id - LOGGER.info("Service Id.:\n{}".format(service_id)) - + LOGGER.info(f"Service Id.: {grpc_message_to_json_string(service_id)}") LOGGER.info("Retrieving service from Context") + while sentinel: try: service = self.context_client.GetService(service_id) sentinel = False except Exception as e: counter = counter + 1 - LOGGER.debug("Waiting 2 seconds", counter, e) + LOGGER.debug(f"Waiting 2 seconds for service to be available (attempt: {counter})") time.sleep(2) - LOGGER.info(f"Service with Service Id.: {service_id}\n{service}") - + LOGGER.info( + f"Service with Service Id.: {grpc_message_to_json_string(service_id)}\n{grpc_message_to_json_string(service)}" + ) LOGGER.info("Adding new rule to the service to block the attack") + self.configure_acl_rule( context_uuid=service_id.context_id.context_uuid.uuid, service_uuid=service_id.service_uuid.uuid, @@ -173,22 +203,33 @@ class l3_attackmitigatorServiceServicerImpl(L3AttackmitigatorServicer): src_port=port_o, dst_port=port_d, ) - LOGGER.info("Service with new rule:\n{}".format(service)) - + LOGGER.info("Service with new rule:\n{}".format(grpc_message_to_json_string(service))) LOGGER.info("Updating service with the new rule") + self.service_client.UpdateService(service) + service = self.context_client.GetService(service_id) LOGGER.info( "Service obtained from Context after updating with the new rule:\n{}".format( - self.context_client.GetService(service_id) + grpc_message_to_json_string(service) ) ) - return Empty(message=f"OK, received values: {last_tag} with confidence {last_value}.") - + return StatusMessage(message=f"OK, received values: {last_tag} with confidence {last_value}.") @safe_and_metered_rpc_method(METRICS_POOL, LOGGER) - def GetConfiguredACLRules(self, request, context): + def GetConfiguredACLRules(self, request : Empty, context : grpc.ServicerContext) -> ACLRules: + """ + Returns the configured ACL rules. + + Args: + request (Empty): The request message. + context (Empty): The context of the RPC call. + + Returns: + acl_rules (ACLRules): The configured ACL rules. + """ + acl_rules = ACLRules() for acl_config_rule in self.configured_acl_config_rules: diff --git a/src/l3_attackmitigator/service/test_create_service.py b/src/l3_attackmitigator/service/test_create_service.py deleted file mode 100644 index 01cf769a271de1bbbd0329a3ce21ea476ac10cab..0000000000000000000000000000000000000000 --- a/src/l3_attackmitigator/service/test_create_service.py +++ /dev/null @@ -1,267 +0,0 @@ -# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) -# -# 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 __future__ import print_function -import logging -from common.proto.l3_centralizedattackdetector_pb2 import ( - Empty -) -from common.proto.l3_attackmitigator_pb2_grpc import ( - L3AttackmitigatorServicer, -) -from common.proto.context_pb2 import ( - Service, ServiceId, ServiceConfig, ServiceTypeEnum, ServiceStatusEnum, ServiceStatus, Context, ContextId, Uuid, - Timestamp, ConfigRule, ConfigRule_Custom, ConfigActionEnum, Device, DeviceId, DeviceConfig, - DeviceOperationalStatusEnum, DeviceDriverEnum, EndPoint, Link, LinkId, EndPoint, EndPointId, Topology, TopologyId -) -from common.proto.context_pb2_grpc import ( - ContextServiceStub -) -from common.proto.service_pb2_grpc import ( - ServiceServiceStub -) -from datetime import datetime -import grpc - -LOGGER = logging.getLogger(__name__) -CONTEXT_CHANNEL = "192.168.165.78:1010" -SERVICE_CHANNEL = "192.168.165.78:3030" - -class l3_attackmitigatorServiceServicerImpl(L3AttackmitigatorServicer): - - def GetNewService(self, service_id): - service = Service() - service_id_obj = self.GenerateServiceId(service_id) - service.service_id.CopyFrom(service_id_obj) - service.service_type = ServiceTypeEnum.SERVICETYPE_L3NM - service_status = ServiceStatus() - service_status.service_status = ServiceStatusEnum.SERVICESTATUS_ACTIVE - service.service_status.CopyFrom(service_status) - timestamp = Timestamp() - timestamp.timestamp = datetime.timestamp(datetime.now()) - service.timestamp.CopyFrom(timestamp) - return service - - def GetNewContext(self, service_id): - context = Context() - context_id = ContextId() - uuid = Uuid() - uuid.uuid = service_id - context_id.context_uuid.CopyFrom(uuid) - context.context_id.CopyFrom(context_id) - return context - - def GetNewDevice(self, service_id): - device = Device() - device_id = DeviceId() - uuid = Uuid() - uuid.uuid = service_id - device_id.device_uuid.CopyFrom(uuid) - device.device_type="test" - device.device_id.CopyFrom(device_id) - device.device_operational_status = DeviceOperationalStatusEnum.DEVICEOPERATIONALSTATUS_ENABLED - return device - - def GetNewLink(self, service_id): - link = Link() - link_id = LinkId() - uuid = Uuid() - uuid.uuid = service_id - link_id.link_uuid.CopyFrom(uuid) - link.link_id.CopyFrom(link_id) - return link - - def GetNewTopology(self,context_id, device_id, link_id): - topology = Topology() - topology_id = TopologyId() - topology_id.context_id.CopyFrom(context_id) - uuid = Uuid() - uuid.uuid = "test_crypto" - topology_id.topology_uuid.CopyFrom(uuid) - topology.topology_id.CopyFrom(topology_id) - topology.device_ids.extend([device_id]) - topology.link_ids.extend([link_id]) - return topology - - def GetNewEndpoint(self, topology_id, device_id, uuid_name): - endpoint = EndPoint() - endpoint_id = EndPointId() - endpoint_id.topology_id.CopyFrom(topology_id) - endpoint_id.device_id.CopyFrom(device_id) - uuid = Uuid() - uuid.uuid = uuid_name - endpoint_id.endpoint_uuid.CopyFrom(uuid) - endpoint.endpoint_id.CopyFrom(endpoint_id) - endpoint.endpoint_type = "test" - return endpoint - - - def __init__(self): - LOGGER.debug("Creating Servicer...") - self.last_value = -1 - self.last_tag = 0 - """ - context = self.GetNewContext("test_crypto") - print(context, flush=True) - print(self.SetContext(context)) - - service = self.GetNewService("test_crypto") - print("This is the new service", self.CreateService(service), flush = True) - - ip_o = "127.0.0.1" - ip_d = "127.0.0.2" - port_o = "123" - port_d = "124" - - service_id = self.GenerateServiceId("test_crypto") - - config_rule = self.GetConfigRule(ip_o, ip_d, port_o, port_d) - - service = self.GetService(service_id) - print("Service obtained from id", service, flush=True) - - config_rule = self.GetConfigRule(ip_o, ip_d, port_o, port_d) - - #service_config = service.service_config - #service_config.append(config_rule) - - service_config = ServiceConfig() - service_config.config_rules.extend([config_rule]) - service.service_config.CopyFrom(service_config) - - device = self.GetNewDevice("test_crypto") - print("New device", device, flush=True) - device_id = self.SetDevice(device) - - link = self.GetNewLink("test_crypto") - print("New link", link, flush=True) - link_id = self.SetLink(link) - - topology = self.GetNewTopology(context.context_id, device.device_id, link.link_id) - print("New topology", topology, flush=True) - topology_id = self.SetTopology(topology) - - endpoint = self.GetNewEndpoint(topology.topology_id, device.device_id, "test_crypto") - print("New endpoint", endpoint, flush=True) - link.link_endpoint_ids.extend([endpoint.endpoint_id]) - - self.SetLink(link) - - print("Service with new rule", service, flush=True) - self.UpdateService(service) - - service2 = self.GetService(service_id) - print("Service obtained from id after updating", service2, flush=True) - """ - - def GenerateRuleValue(self, ip_o, ip_d, port_o, port_d): - value = { - 'ipv4:source-address': ip_o, - 'ipv4:destination-address': ip_d, - 'transport:source-port': port_o, - 'transport:destination-port': port_d, - 'forwarding-action': 'DROP', - } - return value - - def GetConfigRule(self, ip_o, ip_d, port_o, port_d): - config_rule = ConfigRule() - config_rule_custom = ConfigRule_Custom() - config_rule.action = ConfigActionEnum.CONFIGACTION_SET - config_rule_custom.resource_key = 'test' - config_rule_custom.resource_value = str(self.GenerateRuleValue(ip_o, ip_d, port_o, port_d)) - config_rule.custom.CopyFrom(config_rule_custom) - return config_rule - - def GenerateServiceId(self, service_id): - service_id_obj = ServiceId() - context_id = ContextId() - uuid = Uuid() - uuid.uuid = service_id - context_id.context_uuid.CopyFrom(uuid) - service_id_obj.context_id.CopyFrom(context_id) - service_id_obj.service_uuid.CopyFrom(uuid) - return service_id_obj - - def SendOutput(self, request, context): - # SEND CONFIDENCE TO MITIGATION SERVER - print("Server received mitigation values...", request.confidence, flush=True) - - last_value = request.confidence - last_tag = request.tag - - ip_o = request.ip_o - ip_d = request.ip_d - port_o = request.port_o - port_d = request.port_d - - service_id = self.GenerateServiceId(request.service_id) - - config_rule = self.GetConfigRule(ip_o, ip_d, port_o, port_d) - - service = GetService(service_id) - print(service) - #service.config_rules.append(config_rule) - #UpdateService(service) - - # RETURN OK TO THE CALLER - return Empty( - message=f"OK, received values: {last_tag} with confidence {last_value}." - ) - - def SetDevice(self, device): - with grpc.insecure_channel(CONTEXT_CHANNEL) as channel: - stub = ContextServiceStub(channel) - return stub.SetDevice(device) - - def SetLink(self, link): - with grpc.insecure_channel(CONTEXT_CHANNEL) as channel: - stub = ContextServiceStub(channel) - return stub.SetLink(link) - - def SetTopology(self, link): - with grpc.insecure_channel(CONTEXT_CHANNEL) as channel: - stub = ContextServiceStub(channel) - return stub.SetTopology(link) - - - def GetService(self, service_id): - with grpc.insecure_channel(CONTEXT_CHANNEL) as channel: - stub = ContextServiceStub(channel) - return stub.GetService(service_id) - - def SetContext(self, context): - with grpc.insecure_channel(CONTEXT_CHANNEL) as channel: - stub = ContextServiceStub(channel) - return stub.SetContext(context) - - def UpdateService(self, service): - with grpc.insecure_channel(SERVICE_CHANNEL) as channel: - stub = ServiceServiceStub(channel) - stub.UpdateService(service) - - def CreateService(self, service): - with grpc.insecure_channel(SERVICE_CHANNEL) as channel: - stub = ServiceServiceStub(channel) - stub.CreateService(service) - - def GetMitigation(self, request, context): - # GET OR PERFORM MITIGATION STRATEGY - logging.debug("") - print("Returing mitigation strategy...") - k = self.last_value * 2 - return Empty( - message=f"Mitigation with double confidence = {k}" - ) - diff --git a/src/l3_centralizedattackdetector/Config.py b/src/l3_centralizedattackdetector/Config.py index f6c7e33553820b1214e5265cf219db629bcfe006..809380b2cda1c8c556f973e570de36e3189edb99 100644 --- a/src/l3_centralizedattackdetector/Config.py +++ b/src/l3_centralizedattackdetector/Config.py @@ -18,7 +18,7 @@ import logging LOG_LEVEL = logging.WARNING # gRPC settings -GRPC_SERVICE_PORT = 10001 # TODO UPM FIXME +GRPC_SERVICE_PORT = 10001 GRPC_MAX_WORKERS = 10 GRPC_GRACE_PERIOD = 60 diff --git a/src/l3_centralizedattackdetector/README.md b/src/l3_centralizedattackdetector/README.md index bcec4052cc9aa2ea734e08a4ed6b9158609b3532..2273eef80ec4c366d549d20d9447434003257217 100644 --- a/src/l3_centralizedattackdetector/README.md +++ b/src/l3_centralizedattackdetector/README.md @@ -1,3 +1,10 @@ -# l3_centralizedattackdetector -- Receives packages and process it with TSTAT -- Functions: ReportSummarizeKpi(KpiList) +# L3 Centralized Attack Detector + +Receives snapshot statistics from Distributed Attack Detector component and performs an inference to detect attacks. +It then sends the detected attacks to the Attack Mitigator component for them to be mitigated. + +## Functions: +- AnalyzeConnectionStatistics(L3CentralizedattackdetectorMetrics) -> StatusMessage +- AnalyzeBatchConnectionStatistics(L3CentralizedattackdetectorBatchInput) -> StatusMessage +- GetFeaturesIds(Empty) -> AutoFeatures +- SetAttackIPs(AttackIPs) -> Empty diff --git a/src/l3_centralizedattackdetector/client/l3_centralizedattackdetectorClient.py b/src/l3_centralizedattackdetector/client/l3_centralizedattackdetectorClient.py index 2ef33438e77dbe4c3609bd21133fb3a9c95c8bcc..8de016a5d56ea1e1fefe23ba6e29f6865ee5e5a6 100644 --- a/src/l3_centralizedattackdetector/client/l3_centralizedattackdetectorClient.py +++ b/src/l3_centralizedattackdetector/client/l3_centralizedattackdetectorClient.py @@ -13,18 +13,17 @@ # limitations under the License. import grpc, logging -from common.tools.client.RetryDecorator import retry, delay_exponential -from common.proto.l3_centralizedattackdetector_pb2_grpc import ( - L3CentralizedattackdetectorStub, -) +from common.proto.context_pb2 import Empty +from common.proto.l3_centralizedattackdetector_pb2_grpc import L3CentralizedattackdetectorStub from common.proto.l3_centralizedattackdetector_pb2 import ( + AttackIPs, AutoFeatures, - Empty, L3CentralizedattackdetectorBatchInput, L3CentralizedattackdetectorMetrics, - ModelInput, - ModelOutput + StatusMessage ) +from common.tools.client.RetryDecorator import retry, delay_exponential +from common.tools.grpc.Tools import grpc_message_to_json_string LOGGER = logging.getLogger(__name__) MAX_RETRIES = 15 @@ -34,7 +33,7 @@ RETRY_DECORATOR = retry(max_retries=MAX_RETRIES, delay_function=DELAY_FUNCTION, class l3_centralizedattackdetectorClient: def __init__(self, address, port): self.endpoint = "{}:{}".format(address, port) - LOGGER.debug("Creating channel to {}...".format(self.endpoint)) + LOGGER.debug("Creating channel to {:s}...".format(self.endpoint)) self.channel = None self.stub = None self.connect() @@ -51,24 +50,29 @@ class l3_centralizedattackdetectorClient: self.stub = None @RETRY_DECORATOR - def AnalyzeConnectionStatistics(self, request: L3CentralizedattackdetectorMetrics) -> Empty: - LOGGER.debug('AnalyzeConnectionStatistics request: {}'.format(request)) + def AnalyzeConnectionStatistics(self, request : L3CentralizedattackdetectorMetrics) -> StatusMessage: + LOGGER.debug('AnalyzeConnectionStatistics request: {:s}'.format(grpc_message_to_json_string(request))) response = self.stub.AnalyzeConnectionStatistics(request) - LOGGER.debug('AnalyzeConnectionStatistics result: {}'.format(response)) + LOGGER.debug('AnalyzeConnectionStatistics result: {:s}'.format(grpc_message_to_json_string(response))) return response - + @RETRY_DECORATOR - def AnalyzeBatchConnectionStatistics(self, request: L3CentralizedattackdetectorBatchInput) -> Empty: - LOGGER.debug('AnalyzeBatchConnectionStatistics request: {}'.format(request)) - response = self.stub.GetOutput(request) - LOGGER.debug('AnalyzeBatchConnectionStatistics result: {}'.format(response)) + def AnalyzeBatchConnectionStatistics(self, request: L3CentralizedattackdetectorBatchInput) -> StatusMessage: + LOGGER.debug('AnalyzeBatchConnectionStatistics request: {:s}'.format(grpc_message_to_json_string(request))) + response = self.stub.AnalyzeBatchConnectionStatistics(request) + LOGGER.debug('AnalyzeBatchConnectionStatistics result: {:s}'.format(grpc_message_to_json_string(response))) return response - + @RETRY_DECORATOR - def GetFeaturesIds(self, request: Empty) -> AutoFeatures: - LOGGER.debug('GetFeaturesIds request: {}'.format(request)) - response = self.stub.GetOutput(request) - LOGGER.debug('GetFeaturesIds result: {}'.format(response)) + def GetFeaturesIds(self, request : Empty) -> AutoFeatures: + LOGGER.debug('GetFeaturesIds request: {:s}'.format(grpc_message_to_json_string(request))) + response = self.stub.GetFeaturesIds(request) + LOGGER.debug('GetFeaturesIds result: {:s}'.format(grpc_message_to_json_string(response))) return response - + @RETRY_DECORATOR + def SetAttackIPs(self, request : AttackIPs) -> Empty: + LOGGER.debug('SetAttackIPs request: {:s}'.format(grpc_message_to_json_string(request))) + response = self.stub.SetAttackIPs(request) + LOGGER.debug('SetAttackIPs result: {:s}'.format(grpc_message_to_json_string(response))) + return response diff --git a/src/l3_centralizedattackdetector/service/l3_centralizedattackdetectorServiceServicerImpl.py b/src/l3_centralizedattackdetector/service/l3_centralizedattackdetectorServiceServicerImpl.py index 8f59c81150345f15faaf69824d1036b87f5bd80d..a5c38151c0f44534b96c550860deac495d442c4d 100644 --- a/src/l3_centralizedattackdetector/service/l3_centralizedattackdetectorServiceServicerImpl.py +++ b/src/l3_centralizedattackdetector/service/l3_centralizedattackdetectorServiceServicerImpl.py @@ -13,46 +13,36 @@ # limitations under the License. from __future__ import print_function -from datetime import datetime -from datetime import timedelta -import os +import csv +import grpc +import logging import numpy as np import onnxruntime as rt -import logging +import os import time +import uuid -from common.proto.l3_centralizedattackdetector_pb2 import Empty, AutoFeatures -from common.proto.l3_centralizedattackdetector_pb2_grpc import L3CentralizedattackdetectorServicer - -from common.proto.l3_attackmitigator_pb2 import L3AttackmitigatorOutput - -from common.proto.monitoring_pb2 import KpiDescriptor +from datetime import datetime, timedelta +from common.method_wrappers.Decorator import MetricsPool, safe_and_metered_rpc_method +from common.proto.context_pb2 import Empty, Timestamp from common.proto.kpi_sample_types_pb2 import KpiSampleType - -from monitoring.client.MonitoringClient import MonitoringClient -from common.proto.monitoring_pb2 import Kpi - +from common.proto.l3_attackmitigator_pb2 import L3AttackmitigatorOutput +from common.proto.l3_centralizedattackdetector_pb2 import AttackIPs, AutoFeatures, L3CentralizedattackdetectorMetrics, L3CentralizedattackdetectorBatchInput, StatusMessage +from common.proto.l3_centralizedattackdetector_pb2_grpc import L3CentralizedattackdetectorServicer +from common.proto.monitoring_pb2 import Kpi, KpiDescriptor from common.tools.timestamp.Converters import timestamp_utcnow_to_float -from common.proto.context_pb2 import Timestamp, SliceId, ConnectionId - from l3_attackmitigator.client.l3_attackmitigatorClient import l3_attackmitigatorClient - -import uuid - -from common.method_wrappers.Decorator import MetricsPool, safe_and_metered_rpc_method +from monitoring.client.MonitoringClient import MonitoringClient LOGGER = logging.getLogger(__name__) current_dir = os.path.dirname(os.path.abspath(__file__)) -# Demo constants -DEMO_MODE = False -ATTACK_IPS = ["37.187.95.110", "91.121.140.167", "94.23.23.52", "94.23.247.226", "149.202.83.171"] - -BATCH_SIZE= 10 - -METRICS_POOL = MetricsPool('l3_centralizedattackdetector', 'RPC') +# Environment variables +TEST_ML_MODEL = True if int(os.getenv("TEST_ML_MODEL", 0)) == 1 else False +BATCH_SIZE = int(os.getenv("BATCH_SIZE", 10)) +METRICS_POOL = MetricsPool("l3_centralizedattackdetector", "RPC") class ConnectionInfo: @@ -71,16 +61,21 @@ class ConnectionInfo: ) def __str__(self): - return "ip_o: " + self.ip_o + "\nport_o: " + self.port_o + "\nip_d: " + self.ip_d + "\nport_d: " + self.port_d + return f"ip_o: {self.ip_o}\nport_o: {self.port_o}\nip_d: {self.ip_d}\nport_d: {self.port_d}" class l3_centralizedattackdetectorServiceServicerImpl(L3CentralizedattackdetectorServicer): + def __init__(self): + """ + Initializes the Centralized Attack Detector service. - """ - Initialize variables, prediction model and clients of components used by CAD - """ + Args: + None + + Returns: + None + """ - def __init__(self): LOGGER.info("Creating Centralized Attack Detector Service") self.inference_values = [] @@ -92,22 +87,22 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto ) self.cryptomining_detector_model = rt.InferenceSession(self.cryptomining_detector_model_path) - # Load cryptomining detector features metadata from ONNX file + # Load cryptomining attack detector features metadata from ONNX file self.cryptomining_detector_features_metadata = list( self.cryptomining_detector_model.get_modelmeta().custom_metadata_map.values() ) self.cryptomining_detector_features_metadata = [float(x) for x in self.cryptomining_detector_features_metadata] self.cryptomining_detector_features_metadata.sort() - LOGGER.info("Cryptomining Detector Features: " + str(self.cryptomining_detector_features_metadata)) - - LOGGER.info("Batch size: " + str(BATCH_SIZE)) + + LOGGER.info(f"Cryptomining Attack Detector Features: {self.cryptomining_detector_features_metadata}") + LOGGER.info(f"Batch size: {BATCH_SIZE}") self.input_name = self.cryptomining_detector_model.get_inputs()[0].name self.label_name = self.cryptomining_detector_model.get_outputs()[0].name self.prob_name = self.cryptomining_detector_model.get_outputs()[1].name - # Kpi values - self.l3_security_status = 0 # unnecessary + # KPI values + self.l3_security_status = 0 self.l3_ml_model_confidence = 0 self.l3_inferences_in_interval_counter = 0 @@ -123,7 +118,7 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto self.l3_unique_attackers = 0 self.l3_non_empty_time_interval = False - + self.active_requests = [] self.monitoring_client = MonitoringClient() @@ -131,7 +126,7 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto self.monitored_kpis = { "l3_security_status": { "kpi_id": None, - "description": "L3 - Confidence of the cryptomining detector in the security status in the last time interval of the service {service_id}", + "description": "L3 - Confidence of the cryptomining attack detector in the security status in the last time interval of the service {service_id}", "kpi_sample_type": KpiSampleType.KPISAMPLETYPE_L3_SECURITY_STATUS_CRYPTO, "service_ids": [], }, @@ -163,8 +158,8 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto self.attackmitigator_client = l3_attackmitigatorClient() # Environment variables - self.CLASSIFICATION_THRESHOLD = os.getenv("CAD_CLASSIFICATION_THRESHOLD", 0.5) - self.MONITORED_KPIS_TIME_INTERVAL_AGG = os.getenv("MONITORED_KPIS_TIME_INTERVAL_AGG", 60) + self.CLASSIFICATION_THRESHOLD = float(os.getenv("CAD_CLASSIFICATION_THRESHOLD", 0.5)) + self.MONITORED_KPIS_TIME_INTERVAL_AGG = int(os.getenv("MONITORED_KPIS_TIME_INTERVAL_AGG", 60)) # Constants self.NORMAL_CLASS = 0 @@ -180,6 +175,9 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto # AM evaluation tests self.am_notification_times = [] + + # List of attack connections IPs + self.attack_ips = [] # List of attack connections self.attack_connections = [] @@ -190,15 +188,18 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto self.false_positives = 0 self.false_negatives = 0 - """ - Create a monitored KPI for a specific service and add it to the Monitoring Client - -input: - + service_id: service ID where the KPI will be monitored - + kpi_name: name of the KPI - + kpi_description: description of the KPI - + kpi_sample_type: KPI sample type of the KPI (it must be defined in the kpi_sample_types.proto file) - -output: KPI identifier representing the KPI - """ + self.pod_id = uuid.uuid4() + LOGGER.info(f"Pod Id.: {self.pod_id}") + + self.first_batch_request_time = 0 + self.last_batch_request_time = 0 + + self.response_times_csv_file_path = "response_times.csv" + col_names = ["timestamp_first_req", "timestamp_last_req", "total_time", "batch_size"] + + with open(self.response_times_csv_file_path, "w", newline="") as file: + writer = csv.writer(file) + writer.writerow(col_names) def create_kpi( self, @@ -207,36 +208,44 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto kpi_description, kpi_sample_type, ): + """ + Creates a new KPI for a specific service and add it to the Monitoring client + + Args: + service_id (ServiceID): The ID of the service. + kpi_name (str): The name of the KPI. + kpi_description (str): The description of the KPI. + kpi_sample_type (KpiSampleType): The sample type of the KPI. + + Returns: + kpi (Kpi): The created KPI. + """ + kpidescriptor = KpiDescriptor() kpidescriptor.kpi_description = kpi_description kpidescriptor.service_id.service_uuid.uuid = service_id.service_uuid.uuid kpidescriptor.kpi_sample_type = kpi_sample_type - new_kpi = self.monitoring_client.SetKpi(kpidescriptor) + kpi = self.monitoring_client.SetKpi(kpidescriptor) LOGGER.info("Created KPI {}".format(kpi_name)) - return new_kpi + return kpi - """ - Create the monitored KPIs for a specific service, add them to the Monitoring Client and store their identifiers in the monitored_kpis dictionary - -input: - + service_id: service ID where the KPIs will be monitored - -output: None - """ + def create_kpis(self, service_id): + """ + Creates the monitored KPIs for a specific service, adds them to the Monitoring client and stores their identifiers in the monitored_kpis dictionary - def create_kpis(self, service_id, device_id, endpoint_id): - LOGGER.info("Creating KPIs for service {}".format(service_id)) + Args: + service_id (uuid): The ID of the service. - # for now, all the KPIs are created for all the services from which requests are received - for kpi in self.monitored_kpis: - # generate random slice_id - slice_id = SliceId() - slice_id.slice_uuid.uuid = str(uuid.uuid4()) + Returns: + None + """ - # generate random connection_id - connection_id = ConnectionId() - connection_id.connection_uuid.uuid = str(uuid.uuid4()) + LOGGER.info("Creating KPIs for service {}".format(service_id)) + # all the KPIs are created for all the services from which requests are received + for kpi in self.monitored_kpis: created_kpi = self.create_kpi( service_id, kpi, @@ -249,6 +258,16 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto LOGGER.info("Created KPIs for service {}".format(service_id)) def monitor_kpis(self): + """ + Monitors KPIs for all the services from which requests are received + + Args: + None + + Returns: + None + """ + monitor_inference_results = self.inference_results monitor_service_ids = self.service_ids @@ -259,22 +278,23 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto if non_empty_time_interval: for service_id in monitor_service_ids: LOGGER.debug("service_id: {}".format(service_id)) - - self.monitor_compute_l3_kpi(service_id, monitor_inference_results) - - # Demo mode inference results are erased - """if DEMO_MODE: - # Delete fist half of the inference results - LOGGER.debug("inference_results len: {}".format(len(self.inference_results))) - self.inference_results = self.inference_results[len(self.inference_results)//2:] - LOGGER.debug("inference_results len after erase: {}".format(len(self.inference_results)))""" - # end = time.time() - # LOGGER.debug("Time to process inference results with erase: {}".format(end - start)) + + self.monitor_compute_l3_kpi() LOGGER.debug("KPIs sent to monitoring server") else: LOGGER.debug("No KPIs sent to monitoring server") def assign_timestamp(self, monitor_inference_results): + """ + Assigns a timestamp to the monitored inference results. + + Args: + monitor_inference_results (list): A list of monitored inference results. + + Returns: + None + """ + time_interval = self.MONITORED_KPIS_TIME_INTERVAL_AGG # assign the timestamp of the first inference result to the time_interval_start @@ -314,7 +334,19 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto LOGGER.debug("time_interval_start: {}".format(self.time_interval_start)) LOGGER.debug("time_interval_end: {}".format(self.time_interval_end)) - def monitor_compute_l3_kpi(self, service_id, monitor_inference_results): + def monitor_compute_l3_kpi( + self, + ): + """ + Computes the monitored KPIs for a specific service and sends them to the Monitoring server + + Args: + None + + Returns: + None + """ + # L3 security status kpi_security_status = Kpi() kpi_security_status.kpi_id.kpi_id.CopyFrom(self.monitored_kpis["l3_security_status"]["kpi_id"]) @@ -369,19 +401,36 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto LOGGER.debug("Error sending KPIs to monitoring server: {}".format(e)) def monitor_ml_model_confidence(self): - if self.l3_security_status == 0: - return self.l3_ml_model_confidence_normal + """ + Get the monitored KPI for the confidence of the ML model + + Args: + None - return self.l3_ml_model_confidence_crypto + Returns: + confidence (float): The monitored KPI for the confidence of the ML model + """ - """ - Classify connection as standard traffic or cryptomining attack and return results - -input: - + request: L3CentralizedattackdetectorMetrics object with connection features information - -output: L3AttackmitigatorOutput object with information about the assigned class and prediction confidence - """ + confidence = None + + if self.l3_security_status == 0: + confidence = self.l3_ml_model_confidence_normal + else: + confidence = self.l3_ml_model_confidence_crypto + + return confidence def perform_inference(self, request): + """ + Performs inference on the input data using the Cryptomining Attack Detector model to classify the connection as standard traffic or cryptomining attack. + + Args: + request (L3CentralizedattackdetectorMetrics): A L3CentralizedattackdetectorMetrics object with connection features information. + + Returns: + dict: A dictionary containing the predicted class, the probability of that class, and other relevant information required to block the attack. + """ + x_data = np.array([[feature.feature for feature in request.features]]) # Print input data shape @@ -389,19 +438,14 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto # Get batch size batch_size = x_data.shape[0] - - # Print batch size - LOGGER.debug("batch_size: {}".format(batch_size)) - LOGGER.debug("x_data.shape: {}".format(x_data.shape)) - - inference_time_start = time.perf_counter() + inference_time_start = time.time() # Perform inference predictions = self.cryptomining_detector_model.run( [self.prob_name], {self.input_name: x_data.astype(np.float32)} )[0] - inference_time_end = time.perf_counter() + inference_time_end = time.time() # Measure inference time inference_time = inference_time_end - inference_time_start @@ -459,15 +503,18 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto output_message["tag"] = self.NORMAL_CLASS return output_message - - """ - Classify connection as standard traffic or cryptomining attack and return results - -input: - + request: L3CentralizedattackdetectorMetrics object with connection features information - -output: L3AttackmitigatorOutput object with information about the assigned class and prediction confidence - """ - - def perform_distributed_inference(self, requests): + + def perform_batch_inference(self, requests): + """ + Performs batch inference on the input data using the Cryptomining Attack Detector model to classify the connection as standard traffic or cryptomining attack. + + Args: + requests (list): A list of L3CentralizedattackdetectorMetrics objects with connection features information. + + Returns: + list: A list of dictionaries containing the predicted class, the probability of that class, and other relevant information required to block the attack for each request. + """ + batch_size = len(requests) # Create an empty array to hold the input data @@ -480,14 +527,14 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto # Print input data shape LOGGER.debug("x_data.shape: {}".format(x_data.shape)) - inference_time_start = time.perf_counter() + inference_time_start = time.time() # Perform inference predictions = self.cryptomining_detector_model.run( [self.prob_name], {self.input_name: x_data.astype(np.float32)} )[0] - inference_time_end = time.perf_counter() + inference_time_end = time.time() # Measure inference time inference_time = inference_time_end - inference_time_start @@ -519,23 +566,25 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto # Gather the predicted class, the probability of that class and other relevant information required to block the attack output_messages = [] for i, request in enumerate(requests): - output_messages.append({ - "confidence": None, - "timestamp": datetime.now().strftime("%d/%m/%Y %H:%M:%S"), - "ip_o": request.connection_metadata.ip_o, - "ip_d": request.connection_metadata.ip_d, - "tag_name": None, - "tag": None, - "flow_id": request.connection_metadata.flow_id, - "protocol": request.connection_metadata.protocol, - "port_o": request.connection_metadata.port_o, - "port_d": request.connection_metadata.port_d, - "ml_id": self.cryptomining_detector_file_name, - "service_id": request.connection_metadata.service_id, - "endpoint_id": request.connection_metadata.endpoint_id, - "time_start": request.connection_metadata.time_start, - "time_end": request.connection_metadata.time_end, - }) + output_messages.append( + { + "confidence": None, + "timestamp": datetime.now().strftime("%d/%m/%Y %H:%M:%S"), + "ip_o": request.connection_metadata.ip_o, + "ip_d": request.connection_metadata.ip_d, + "tag_name": None, + "tag": None, + "flow_id": request.connection_metadata.flow_id, + "protocol": request.connection_metadata.protocol, + "port_o": request.connection_metadata.port_o, + "port_d": request.connection_metadata.port_d, + "ml_id": self.cryptomining_detector_file_name, + "service_id": request.connection_metadata.service_id, + "endpoint_id": request.connection_metadata.endpoint_id, + "time_start": request.connection_metadata.time_start, + "time_end": request.connection_metadata.time_end, + } + ) if predictions[i][1] >= self.CLASSIFICATION_THRESHOLD: output_messages[i]["confidence"] = predictions[i][1] @@ -548,38 +597,51 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto return output_messages - """ - Receive features from Attack Mitigator, predict attack and communicate with Attack Mitigator - -input: - + request: L3CentralizedattackdetectorMetrics object with connection features information - -output: Empty object with a message about the execution of the function - """ @safe_and_metered_rpc_method(METRICS_POOL, LOGGER) - def AnalyzeConnectionStatistics(self, request, context): + def AnalyzeConnectionStatistics( + self, request : L3CentralizedattackdetectorMetrics, context : grpc.ServicerContext + ) -> StatusMessage: + """ + Analyzes the connection statistics sent in the request, performs batch inference on the + input data using the Cryptomining Attack Detector model to classify the connection as + standard traffic or cryptomining attack, and notifies the Attack Mitigator component in + case of attack. + + Args: + request (L3CentralizedattackdetectorMetrics): A L3CentralizedattackdetectorMetrics + object with connection features information. + context (grpc.ServicerContext): The context of the request. + + Returns: + StatusMessage: An response indicating that the information was received and processed. + """ + # Perform inference with the data sent in the request + if len(self.active_requests) == 0: + self.first_batch_request_time = time.time() + self.active_requests.append(request) - - if len(self.active_requests) == BATCH_SIZE: - logging.info("Performing inference...") - + + if len(self.active_requests) >= BATCH_SIZE: + LOGGER.debug("Performing inference... {}".format(self.pod_id)) + inference_time_start = time.time() - cryptomining_detector_output = self.perform_distributed_inference(self.active_requests) + cryptomining_detector_output = self.perform_batch_inference(self.active_requests) inference_time_end = time.time() - + LOGGER.debug("Inference performed in {} seconds".format(inference_time_end - inference_time_start)) - logging.info("Inference performed correctly") + LOGGER.info("Inference performed correctly") self.inference_results.append({"output": cryptomining_detector_output, "timestamp": datetime.now()}) LOGGER.debug("inference_results length: {}".format(len(self.inference_results))) for i, req in enumerate(self.active_requests): service_id = req.connection_metadata.service_id - device_id = req.connection_metadata.endpoint_id.device_id - endpoint_id = req.connection_metadata.endpoint_id - # Check if a request of a new service has been received and, if so, create the monitored KPIs for that service + # Check if a request of a new service has been received and, if so, create + # the monitored KPIs for that service if service_id not in self.service_ids: - self.create_kpis(service_id, device_id, endpoint_id) + self.create_kpis(service_id) self.service_ids.append(service_id) monitor_kpis_start = time.time() @@ -589,7 +651,7 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto LOGGER.debug("Monitoring KPIs performed in {} seconds".format(monitor_kpis_end - monitor_kpis_start)) LOGGER.debug("cryptomining_detector_output: {}".format(cryptomining_detector_output[i])) - if DEMO_MODE: + if TEST_ML_MODEL: self.analyze_prediction_accuracy(cryptomining_detector_output[i]["confidence"]) connection_info = ConnectionInfo( @@ -626,10 +688,10 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto # Only notify Attack Mitigator when a cryptomining connection has been detected if cryptomining_detector_output[i]["tag_name"] == "Crypto": - if DEMO_MODE: + if TEST_ML_MODEL: self.attack_connections.append(connection_info) - if connection_info.ip_o in ATTACK_IPS or connection_info.ip_d in ATTACK_IPS: + if connection_info.ip_o in self.attack_ips or connection_info.ip_d in self.attack_ips: self.correct_attack_conns += 1 self.correct_predictions += 1 else: @@ -637,22 +699,23 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto self.false_positives += 1 self.total_predictions += 1 - - # if False: - notification_time_start = time.perf_counter() + notification_time_start = time.time() LOGGER.debug("Crypto attack detected") # Notify the Attack Mitigator component about the attack - logging.info( + LOGGER.info( "Notifying the Attack Mitigator component about the attack in order to block the connection..." ) try: - logging.info("Sending the connection information to the Attack Mitigator component...") + LOGGER.info("Sending the connection information to the Attack Mitigator component...") message = L3AttackmitigatorOutput(**cryptomining_detector_output[i]) - response = self.attackmitigator_client.PerformMitigation(message) - notification_time_end = time.perf_counter() + + am_response = self.attackmitigator_client.PerformMitigation(message) + LOGGER.debug("AM response: {}".format(am_response)) + + notification_time_end = time.time() self.am_notification_times.append(notification_time_end - notification_time_start) @@ -682,21 +745,18 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto f.write("Std notification time: {}\n".format(std_notification_time)) f.write("Median notification time: {}\n".format(median_notification_time)) - # logging.info("Attack Mitigator notified and received response: ", response.message) # FIX No message received - logging.info("Attack Mitigator notified") + LOGGER.info("Attack Mitigator notified") - #return Empty(message="OK, information received and mitigator notified abou the attack") - except Exception as e: - logging.error("Error notifying the Attack Mitigator component about the attack: ", e) - logging.error("Couldn't find l3_attackmitigator") + LOGGER.error("Error notifying the Attack Mitigator component about the attack: ", e) + LOGGER.error("Couldn't find l3_attackmitigator") - return Empty(message="Attack Mitigator not found") + return StatusMessage(message="Attack Mitigator not found") else: - logging.info("No attack detected") + LOGGER.info("No attack detected") if cryptomining_detector_output[i]["tag_name"] != "Crypto": - if connection_info.ip_o not in ATTACK_IPS and connection_info.ip_d not in ATTACK_IPS: + if connection_info.ip_o not in self.attack_ips and connection_info.ip_d not in self.attack_ips: self.correct_predictions += 1 else: LOGGER.debug("False negative: {}".format(connection_info)) @@ -704,14 +764,37 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto self.total_predictions += 1 - # return Empty(message="Ok, information received (no attack detected)") - self.active_requests = [] - return Empty(message="Ok, metrics processed") - - return Empty(message="Ok, information received") + self.last_batch_request_time = time.time() + + col_values = [ + self.first_batch_request_time, + self.last_batch_request_time, + self.last_batch_request_time - self.first_batch_request_time, + BATCH_SIZE, + ] + + LOGGER.debug("col_values: {}".format(col_values)) + + with open(self.response_times_csv_file_path, "a", newline="") as file: + writer = csv.writer(file) + writer.writerow(col_values) + + return StatusMessage(message="Ok, metrics processed") + + return StatusMessage(message="Ok, information received") def analyze_prediction_accuracy(self, confidence): + """ + Analyzes the prediction accuracy of the Centralized Attack Detector. + + Args: + confidence (float): The confidence level of the Cryptomining Attack Detector model. + + Returns: + None + """ + LOGGER.info("Number of Attack Connections Correctly Classified: {}".format(self.correct_attack_conns)) LOGGER.info("Number of Attack Connections: {}".format(len(self.attack_connections))) @@ -728,7 +811,7 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto cryptomining_attack_detection_acc = 0 LOGGER.info("Cryptomining Attack Detection Accuracy: {}".format(cryptomining_attack_detection_acc)) - LOGGER.info("Cryptomining Detector Confidence: {}".format(confidence)) + LOGGER.info("Cryptomining Attack Detector Confidence: {}".format(confidence)) with open("prediction_accuracy.txt", "a") as f: LOGGER.debug("Exporting prediction accuracy and confidence") @@ -740,12 +823,28 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto f.write("False Positives: {}\n".format(self.false_positives)) f.write("True Negatives: {}\n".format(self.total_predictions - len(self.attack_connections))) f.write("False Negatives: {}\n".format(self.false_negatives)) - f.write("Cryptomining Detector Confidence: {}\n\n".format(confidence)) + f.write("Cryptomining Attack Detector Confidence: {}\n\n".format(confidence)) f.write("Timestamp: {}\n".format(datetime.now().strftime("%d/%m/%Y %H:%M:%S"))) f.close() @safe_and_metered_rpc_method(METRICS_POOL, LOGGER) - def AnalyzeBatchConnectionStatistics(self, request, context): + def AnalyzeBatchConnectionStatistics( + self, request : L3CentralizedattackdetectorBatchInput, context : grpc.ServicerContext + ) -> StatusMessage: + """ + Analyzes a batch of connection statistics sent in the request, performs batch inference on the + input data using the Cryptomining Attack Detector model to classify the connection as standard + traffic or cryptomining attack, and notifies the Attack Mitigator component in case of attack. + + Args: + request (L3CentralizedattackdetectorBatchInput): A L3CentralizedattackdetectorBatchInput + object with connection features information. + context (grpc.ServicerContext): The context of the request. + + Returns: + StatusMessage: An StatusMessage indicating that the information was received and processed. + """ + batch_time_start = time.time() for metric in request.metrics: @@ -753,24 +852,50 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto batch_time_end = time.time() with open("batch_time.txt", "a") as f: - f.write(str(len(request.metrics)) + "\n") - f.write(str(batch_time_end - batch_time_start) + "\n\n") + f.write(f"{len(request.metrics)}\n") + f.write(f"{batch_time_end - batch_time_start}\n\n") f.close() - logging.debug("Metrics: " + str(len(request.metrics))) - logging.debug("Batch time: " + str(batch_time_end - batch_time_start)) + LOGGER.debug(f"Batch time: {batch_time_end - batch_time_start}") + LOGGER.debug("Batch time: {}".format(batch_time_end - batch_time_start)) - return Empty(message="OK, information received.") + return StatusMessage(message="OK, information received.") - """ - Send features allocated in the metadata of the onnx file to the DAD - -output: ONNX metadata as a list of integers - """ @safe_and_metered_rpc_method(METRICS_POOL, LOGGER) - def GetFeaturesIds(self, request: Empty, context): - features = AutoFeatures() + def GetFeaturesIds(self, request : Empty, context : grpc.ServicerContext) -> AutoFeatures: + """ + Returns a list of feature IDs used by the Cryptomining Attack Detector model. + + Args: + request (Empty): An empty request object. + context (grpc.ServicerContext): The context of the request. + + Returns: + features_ids (AutoFeatures): A list of feature IDs used by the Cryptomining Attack Detector model. + """ + + features_ids = AutoFeatures() for feature in self.cryptomining_detector_features_metadata: - features.auto_features.append(feature) + features_ids.auto_features.append(feature) + + return features_ids + + @safe_and_metered_rpc_method(METRICS_POOL, LOGGER) + def SetAttackIPs(self, request : AttackIPs, context : grpc.ServicerContext) -> Empty: + """ + Sets the list of attack IPs in order to be used to compute the prediction accuracy of the + Centralized Attack Detector in case of testing the ML model. + + Args: + request (AttackIPs): A list of attack IPs. + context (grpc.ServicerContext): The context of the request. + + Returns: + empty (Empty): An empty response object. + """ + + self.attack_ips = request.attack_ips + LOGGER.debug(f"Succesfully set attack IPs: {self.attack_ips}") - return features + return Empty() diff --git a/src/l3_centralizedattackdetector/service/l3_centralizedattackdetectorServiceServicerImpl_old.py b/src/l3_centralizedattackdetector/service/l3_centralizedattackdetectorServiceServicerImpl_old.py deleted file mode 100644 index 1fdc955557f189d2f5aded162052743b3e762036..0000000000000000000000000000000000000000 --- a/src/l3_centralizedattackdetector/service/l3_centralizedattackdetectorServiceServicerImpl_old.py +++ /dev/null @@ -1,791 +0,0 @@ -# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) -# -# 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 __future__ import print_function -from datetime import datetime -from datetime import timedelta - -import os -import numpy as np -import onnxruntime as rt -import logging -import time - -from common.proto.l3_centralizedattackdetector_pb2 import Empty, AutoFeatures -from common.proto.l3_centralizedattackdetector_pb2_grpc import L3CentralizedattackdetectorServicer - -from common.proto.l3_attackmitigator_pb2 import L3AttackmitigatorOutput - -from common.proto.monitoring_pb2 import KpiDescriptor -from common.proto.kpi_sample_types_pb2 import KpiSampleType - -from monitoring.client.MonitoringClient import MonitoringClient -from common.proto.monitoring_pb2 import Kpi - -from common.tools.timestamp.Converters import timestamp_utcnow_to_float -from common.proto.context_pb2 import Timestamp, SliceId, ConnectionId - -from l3_attackmitigator.client.l3_attackmitigatorClient import l3_attackmitigatorClient - -import uuid - - -LOGGER = logging.getLogger(__name__) -# ML directory (ml_model/cryptomining_detector/cryptomining_detector.onnx) -current_dir = os.path.dirname(os.path.abspath(__file__)) - -# Demo constants -DEMO_MODE = True -ATTACK_IPS = ["37.187.95.110", "91.121.140.167", "94.23.23.52", "94.23.247.226", "149.202.83.171"] - - -class ConnectionInfo: - def __init__(self, ip_o, port_o, ip_d, port_d): - self.ip_o = ip_o - self.port_o = port_o - self.ip_d = ip_d - self.port_d = port_d - - def __eq__(self, other): - return ( - self.ip_o == other.ip_o - and self.port_o == other.port_o - and self.ip_d == other.ip_d - and self.port_d == other.port_d - ) - - def __str__(self): - return "ip_o: " + self.ip_o + "\nport_o: " + self.port_o + "\nip_d: " + self.ip_d + "\nport_d: " + self.port_d - - -class l3_centralizedattackdetectorServiceServicerImpl(L3CentralizedattackdetectorServicer): - - """ - Initialize variables, prediction model and clients of components used by CAD - """ - - def __init__(self): - LOGGER.info("Creating Centralized Attack Detector Service") - - self.inference_values = [] - self.inference_results = [] - self.cryptomining_detector_path = os.path.join(current_dir, "ml_model/cryptomining_detector/") - self.cryptomining_detector_file_name = os.listdir(self.cryptomining_detector_path)[0] - self.cryptomining_detector_model_path = os.path.join( - self.cryptomining_detector_path, self.cryptomining_detector_file_name - ) - self.cryptomining_detector_model = rt.InferenceSession(self.cryptomining_detector_model_path) - - # Load cryptomining detector features metadata from ONNX file - self.cryptomining_detector_features_metadata = list( - self.cryptomining_detector_model.get_modelmeta().custom_metadata_map.values() - ) - self.cryptomining_detector_features_metadata = [float(x) for x in self.cryptomining_detector_features_metadata] - self.cryptomining_detector_features_metadata.sort() - LOGGER.info("Cryptomining Detector Features: " + str(self.cryptomining_detector_features_metadata)) - - self.input_name = self.cryptomining_detector_model.get_inputs()[0].name - self.label_name = self.cryptomining_detector_model.get_outputs()[0].name - self.prob_name = self.cryptomining_detector_model.get_outputs()[1].name - - self.monitoring_client = MonitoringClient() - self.service_ids = [] - self.monitored_kpis = { - "l3_security_status": { - "kpi_id": None, - "description": "L3 - Confidence of the cryptomining detector in the security status in the last time interval of the service {service_id}", - "kpi_sample_type": KpiSampleType.KPISAMPLETYPE_L3_SECURITY_STATUS_CRYPTO, - "service_ids": [], - }, - "l3_ml_model_confidence": { - "kpi_id": None, - "description": "L3 - Security status of the service in a time interval of the service {service_id} (“0†if no attack has been detected on the service and “1†if a cryptomining attack has been detected)", - "kpi_sample_type": KpiSampleType.KPISAMPLETYPE_ML_CONFIDENCE, - "service_ids": [], - }, - "l3_unique_attack_conns": { - "kpi_id": None, - "description": "L3 - Number of attack connections detected in a time interval of the service {service_id} (attacks of the same connection [origin IP, origin port, destination IP and destination port] are only considered once)", - "kpi_sample_type": KpiSampleType.KPISAMPLETYPE_L3_UNIQUE_ATTACK_CONNS, - "service_ids": [], - }, - "l3_unique_compromised_clients": { - "kpi_id": None, - "description": "L3 - Number of unique compromised clients of the service in a time interval of the service {service_id} (attacks from the same origin IP are only considered once)", - "kpi_sample_type": KpiSampleType.KPISAMPLETYPE_L3_UNIQUE_COMPROMISED_CLIENTS, - "service_ids": [], - }, - "l3_unique_attackers": { - "kpi_id": None, - "description": "L3 - number of unique attackers of the service in a time interval of the service {service_id} (attacks from the same destination IP are only considered once)", - "kpi_sample_type": KpiSampleType.KPISAMPLETYPE_L3_UNIQUE_ATTACKERS, - "service_ids": [], - }, - } - self.attackmitigator_client = l3_attackmitigatorClient() - - # Environment variables - self.CLASSIFICATION_THRESHOLD = os.getenv("CAD_CLASSIFICATION_THRESHOLD", 0.5) - self.MONITORED_KPIS_TIME_INTERVAL_AGG = os.getenv("MONITORED_KPIS_TIME_INTERVAL_AGG", 60) - - # Constants - self.NORMAL_CLASS = 0 - self.CRYPTO_CLASS = 1 - - self.kpi_test = None - self.time_interval_start = None - self.time_interval_end = None - - # CAD evaluation tests - self.cad_inference_times = [] - self.cad_num_inference_measurements = 100 - - # AM evaluation tests - self.am_notification_times = [] - - # List of attack connections - self.attack_connections = [] - - self.correct_attack_conns = 0 - self.correct_predictions = 0 - self.total_predictions = 0 - self.false_positives = 0 - self.false_negatives = 0 - - """ - Create a monitored KPI for a specific service and add it to the Monitoring Client - -input: - + service_id: service ID where the KPI will be monitored - + kpi_name: name of the KPI - + kpi_description: description of the KPI - + kpi_sample_type: KPI sample type of the KPI (it must be defined in the kpi_sample_types.proto file) - -output: KPI identifier representing the KPI - """ - - def create_kpi( - self, - service_id, - kpi_name, - kpi_description, - kpi_sample_type, - ): - kpidescriptor = KpiDescriptor() - kpidescriptor.kpi_description = kpi_description - kpidescriptor.service_id.service_uuid.uuid = service_id.service_uuid.uuid - kpidescriptor.kpi_sample_type = kpi_sample_type - new_kpi = self.monitoring_client.SetKpi(kpidescriptor) - - LOGGER.info("Created KPI {}".format(kpi_name)) - - return new_kpi - - """ - Create the monitored KPIs for a specific service, add them to the Monitoring Client and store their identifiers in the monitored_kpis dictionary - -input: - + service_id: service ID where the KPIs will be monitored - -output: None - """ - - def create_kpis(self, service_id, device_id, endpoint_id): - LOGGER.info("Creating KPIs for service {}".format(service_id)) - - # for now, all the KPIs are created for all the services from which requests are received - for kpi in self.monitored_kpis: - # generate random slice_id - slice_id = SliceId() - slice_id.slice_uuid.uuid = str(uuid.uuid4()) - - # generate random connection_id - connection_id = ConnectionId() - connection_id.connection_uuid.uuid = str(uuid.uuid4()) - - created_kpi = self.create_kpi( - service_id, - kpi, - self.monitored_kpis[kpi]["description"].format(service_id=service_id.service_uuid.uuid), - self.monitored_kpis[kpi]["kpi_sample_type"], - ) - self.monitored_kpis[kpi]["kpi_id"] = created_kpi.kpi_id - self.monitored_kpis[kpi]["service_ids"].append(service_id.service_uuid.uuid) - - LOGGER.info("Created KPIs for service {}".format(service_id)) - - def monitor_kpis(self): - monitor_inference_results = self.inference_results - monitor_service_ids = self.service_ids - - LOGGER.debug("monitor_inference_results: {}".format(len(monitor_inference_results))) - LOGGER.debug("monitor_service_ids: {}".format(len(monitor_service_ids))) - - self.assign_timestamp(monitor_inference_results) - - self.delete_older_inference_results(monitor_inference_results) - - non_empty_time_interval = self.check_inference_time_interval(monitor_inference_results) - - if non_empty_time_interval: - # start = time.time() - for service_id in monitor_service_ids: - LOGGER.debug("service_id: {}".format(service_id)) - - self.monitor_compute_l3_kpi(service_id, monitor_inference_results) - - # Demo mode inference results are erased - """if DEMO_MODE: - # Delete fist half of the inference results - LOGGER.debug("inference_results len: {}".format(len(self.inference_results))) - self.inference_results = self.inference_results[len(self.inference_results)//2:] - LOGGER.debug("inference_results len after erase: {}".format(len(self.inference_results)))""" - # end = time.time() - # LOGGER.debug("Time to process inference results with erase: {}".format(end - start)) - LOGGER.debug("KPIs sent to monitoring server") - else: - LOGGER.debug("No KPIs sent to monitoring server") - - def assign_timestamp(self, monitor_inference_results): - time_interval = self.MONITORED_KPIS_TIME_INTERVAL_AGG - - # assign the timestamp of the first inference result to the time_interval_start - if self.time_interval_start is None: - self.time_interval_start = monitor_inference_results[0]["timestamp"] - LOGGER.debug("self.time_interval_start: {}".format(self.time_interval_start)) - - # add time_interval to the current time to get the time interval end - LOGGER.debug("time_interval: {}".format(time_interval)) - LOGGER.debug(timedelta(seconds=time_interval)) - self.time_interval_end = self.time_interval_start + timedelta(seconds=time_interval) - - current_time = datetime.utcnow() - - LOGGER.debug("current_time: {}".format(current_time)) - - if current_time >= self.time_interval_end: - self.time_interval_start = self.time_interval_end - self.time_interval_end = self.time_interval_start + timedelta(seconds=time_interval) - - LOGGER.debug("time_interval_start: {}".format(self.time_interval_start)) - LOGGER.debug("time_interval_end: {}".format(self.time_interval_end)) - - def delete_older_inference_results(self, monitor_inference_results): - # delete all inference results that are older than the time_interval_start - delete_inference_results = [] - - for i in range(len(monitor_inference_results)): - inference_result_timestamp = monitor_inference_results[i]["timestamp"] - - if inference_result_timestamp < self.time_interval_start: - delete_inference_results.append(monitor_inference_results[i]) - - if len(delete_inference_results) > 0: - monitor_inference_results = [ - inference_result - for inference_result in monitor_inference_results - if inference_result not in delete_inference_results - ] - if DEMO_MODE: - LOGGER.debug("inference_results len: {}".format(len(self.inference_results))) - self.inference_results = monitor_inference_results - LOGGER.debug("inference_results len after erase: {}".format(len(self.inference_results))) - LOGGER.debug(f"Cleaned inference results. {len(delete_inference_results)} inference results deleted") - - def check_inference_time_interval(self, monitor_inference_results): - # check if there is at least one inference result in monitor_inference_results in the current time_interval - num_inference_results_in_time_interval = 0 - for i in range(len(monitor_inference_results)): - inference_result_timestamp = monitor_inference_results[i]["timestamp"] - - if ( - inference_result_timestamp >= self.time_interval_start - and inference_result_timestamp < self.time_interval_end - ): - num_inference_results_in_time_interval += 1 - - if num_inference_results_in_time_interval > 0: - non_empty_time_interval = True - LOGGER.debug( - f"Current time interval is not empty (there are {num_inference_results_in_time_interval} inference results" - ) - else: - non_empty_time_interval = False - LOGGER.debug("Current time interval is empty. No KPIs will be reported.") - - return non_empty_time_interval - - def monitor_compute_l3_kpi(self, service_id, monitor_inference_results): - # L3 security status - kpi_security_status = Kpi() - kpi_security_status.kpi_id.kpi_id.CopyFrom(self.monitored_kpis["l3_security_status"]["kpi_id"]) - kpi_security_status.kpi_value.int32Val = self.monitor_security_status(service_id, monitor_inference_results) - - # L3 ML model confidence - kpi_conf = Kpi() - kpi_conf.kpi_id.kpi_id.CopyFrom(self.monitored_kpis["l3_ml_model_confidence"]["kpi_id"]) - kpi_conf.kpi_value.floatVal = self.monitor_ml_model_confidence( - service_id, monitor_inference_results, kpi_security_status - ) - - # L3 unique attack connections - kpi_unique_attack_conns = Kpi() - kpi_unique_attack_conns.kpi_id.kpi_id.CopyFrom(self.monitored_kpis["l3_unique_attack_conns"]["kpi_id"]) - kpi_unique_attack_conns.kpi_value.int32Val = self.monitor_unique_attack_conns( - service_id, monitor_inference_results - ) - - # L3 unique compromised clients - kpi_unique_compromised_clients = Kpi() - kpi_unique_compromised_clients.kpi_id.kpi_id.CopyFrom( - self.monitored_kpis["l3_unique_compromised_clients"]["kpi_id"] - ) - kpi_unique_compromised_clients.kpi_value.int32Val = self.monitor_unique_compromised_clients( - service_id, monitor_inference_results - ) - - # L3 unique attackers - kpi_unique_attackers = Kpi() - kpi_unique_attackers.kpi_id.kpi_id.CopyFrom(self.monitored_kpis["l3_unique_attackers"]["kpi_id"]) - kpi_unique_attackers.kpi_value.int32Val = self.monitor_unique_attackers(service_id, monitor_inference_results) - - timestamp = Timestamp() - timestamp.timestamp = timestamp_utcnow_to_float() - - kpi_security_status.timestamp.CopyFrom(timestamp) - kpi_conf.timestamp.CopyFrom(timestamp) - kpi_unique_attack_conns.timestamp.CopyFrom(timestamp) - kpi_unique_compromised_clients.timestamp.CopyFrom(timestamp) - kpi_unique_attackers.timestamp.CopyFrom(timestamp) - - LOGGER.debug("Sending KPIs to monitoring server") - - LOGGER.debug("kpi_security_status: {}".format(kpi_security_status)) - LOGGER.debug("kpi_conf: {}".format(kpi_conf)) - LOGGER.debug("kpi_unique_attack_conns: {}".format(kpi_unique_attack_conns)) - LOGGER.debug("kpi_unique_compromised_clients: {}".format(kpi_unique_compromised_clients)) - LOGGER.debug("kpi_unique_attackers: {}".format(kpi_unique_attackers)) - - try: - self.monitoring_client.IncludeKpi(kpi_security_status) - self.monitoring_client.IncludeKpi(kpi_conf) - self.monitoring_client.IncludeKpi(kpi_unique_attack_conns) - self.monitoring_client.IncludeKpi(kpi_unique_compromised_clients) - self.monitoring_client.IncludeKpi(kpi_unique_attackers) - except Exception as e: - LOGGER.debug("Error sending KPIs to monitoring server: {}".format(e)) - - def monitor_security_status(self, service_id, monitor_inference_results): - # get the output.tag of the ML model of the last aggregation time interval as indicated by the self.MONITORED_KPIS_TIME_INTERVAL_AGG variable - outputs_last_time_interval = [] - - for i in range(len(monitor_inference_results)): - if ( - monitor_inference_results[i]["timestamp"] >= self.time_interval_start - and monitor_inference_results[i]["timestamp"] < self.time_interval_end - and monitor_inference_results[i]["output"]["service_id"] == service_id - and service_id.service_uuid.uuid in self.monitored_kpis["l3_security_status"]["service_ids"] - ): - outputs_last_time_interval.append(monitor_inference_results[i]["output"]["tag"]) - - LOGGER.debug("outputs_last_time_interval: {}".format(outputs_last_time_interval)) - - # check if all outputs are 0 - all_outputs_zero = True - for output in outputs_last_time_interval: - if output != self.NORMAL_CLASS: - all_outputs_zero = False - break - - if all_outputs_zero: - return 0 - return 1 - - def monitor_ml_model_confidence(self, service_id, monitor_inference_results, kpi_security_status): - # get the output.confidence of the ML model of the last aggregation time interval as indicated by the self.MONITORED_KPIS_TIME_INTERVAL_AGG variable - confidences_normal_last_time_interval = [] - confidences_crypto_last_time_interval = [] - - for i in range(len(monitor_inference_results)): - LOGGER.debug("monitor_inference_results[i]: {}".format(monitor_inference_results[i])) - - if ( - monitor_inference_results[i]["timestamp"] >= self.time_interval_start - and monitor_inference_results[i]["timestamp"] < self.time_interval_end - and monitor_inference_results[i]["output"]["service_id"] == service_id - and service_id.service_uuid.uuid in self.monitored_kpis["l3_ml_model_confidence"]["service_ids"] - ): - if monitor_inference_results[i]["output"]["tag"] == self.NORMAL_CLASS: - confidences_normal_last_time_interval.append(monitor_inference_results[i]["output"]["confidence"]) - elif monitor_inference_results[i]["output"]["tag"] == self.CRYPTO_CLASS: - confidences_crypto_last_time_interval.append(monitor_inference_results[i]["output"]["confidence"]) - else: - LOGGER.debug("Unknown tag: {}".format(monitor_inference_results[i]["output"]["tag"])) - - LOGGER.debug("confidences_normal_last_time_interval: {}".format(confidences_normal_last_time_interval)) - LOGGER.debug("confidences_crypto_last_time_interval: {}".format(confidences_crypto_last_time_interval)) - - if kpi_security_status.kpi_value.int32Val == 0: - return np.mean(confidences_normal_last_time_interval) - - return np.mean(confidences_crypto_last_time_interval) - - def monitor_unique_attack_conns(self, service_id, monitor_inference_results): - # get the number of unique attack connections (grouping by origin IP, origin port, destination IP, destination port) of the last aggregation time interval as indicated by the self.MONITORED_KPIS_TIME_INTERVAL_AGG variable - num_unique_attack_conns_last_time_interval = 0 - unique_attack_conns_last_time_interval = [] - - for i in range(len(monitor_inference_results)): - if ( - monitor_inference_results[i]["timestamp"] >= self.time_interval_start - and monitor_inference_results[i]["timestamp"] < self.time_interval_end - and monitor_inference_results[i]["output"]["service_id"] == service_id - and service_id.service_uuid.uuid in self.monitored_kpis["l3_unique_attack_conns"]["service_ids"] - ): - if monitor_inference_results[i]["output"]["tag"] == self.CRYPTO_CLASS: - current_attack_conn = { - "ip_o": monitor_inference_results[i]["output"]["ip_o"], - "port_o": monitor_inference_results[i]["output"]["port_o"], - "ip_d": monitor_inference_results[i]["output"]["ip_d"], - "port_d": monitor_inference_results[i]["output"]["port_d"], - } - - is_unique_attack_conn = True - - for j in range(len(unique_attack_conns_last_time_interval)): - if current_attack_conn == unique_attack_conns_last_time_interval[j]: - is_unique_attack_conn = False - - if is_unique_attack_conn: - num_unique_attack_conns_last_time_interval += 1 - unique_attack_conns_last_time_interval.append(current_attack_conn) - - return num_unique_attack_conns_last_time_interval - - def monitor_unique_compromised_clients(self, service_id, monitor_inference_results): - # get the number of unique compromised clients (grouping by origin IP) of the last aggregation time interval as indicated by the self.MONITORED_KPIS_TIME_INTERVAL_AGG variable - num_unique_compromised_clients_last_time_interval = 0 - unique_compromised_clients_last_time_interval = [] - - for i in range(len(monitor_inference_results)): - if ( - monitor_inference_results[i]["timestamp"] >= self.time_interval_start - and monitor_inference_results[i]["timestamp"] < self.time_interval_end - and monitor_inference_results[i]["output"]["service_id"] == service_id - and service_id.service_uuid.uuid in self.monitored_kpis["l3_unique_compromised_clients"]["service_ids"] - ): - if monitor_inference_results[i]["output"]["tag"] == self.CRYPTO_CLASS: - if ( - monitor_inference_results[i]["output"]["ip_o"] - not in unique_compromised_clients_last_time_interval - ): - unique_compromised_clients_last_time_interval.append( - monitor_inference_results[i]["output"]["ip_o"] - ) - num_unique_compromised_clients_last_time_interval += 1 - - return num_unique_compromised_clients_last_time_interval - - def monitor_unique_attackers(self, service_id, monitor_inference_results): - # get the number of unique attackers (grouping by destination ip) of the last aggregation time interval as indicated by the self.MONITORED_KPIS_TIME_INTERVAL_AGG variable - num_unique_attackers_last_time_interval = 0 - unique_attackers_last_time_interval = [] - - for i in range(len(monitor_inference_results)): - if ( - monitor_inference_results[i]["timestamp"] >= self.time_interval_start - and monitor_inference_results[i]["timestamp"] < self.time_interval_end - and monitor_inference_results[i]["output"]["service_id"] == service_id - and service_id.service_uuid.uuid in self.monitored_kpis["l3_unique_attackers"]["service_ids"] - ): - if monitor_inference_results[i]["output"]["tag"] == self.CRYPTO_CLASS: - if monitor_inference_results[i]["output"]["ip_d"] not in unique_attackers_last_time_interval: - unique_attackers_last_time_interval.append(monitor_inference_results[i]["output"]["ip_d"]) - num_unique_attackers_last_time_interval += 1 - - return num_unique_attackers_last_time_interval - - """ - Classify connection as standard traffic or cryptomining attack and return results - -input: - + request: L3CentralizedattackdetectorMetrics object with connection features information - -output: L3AttackmitigatorOutput object with information about the assigned class and prediction confidence - """ - - def perform_inference(self, request): - x_data = np.array([[feature.feature for feature in request.features]]) - - # Print input data shape - LOGGER.debug("x_data.shape: {}".format(x_data.shape)) - - # Get batch size - batch_size = x_data.shape[0] - - # Print batch size - LOGGER.debug("batch_size: {}".format(batch_size)) - LOGGER.debug("x_data.shape: {}".format(x_data.shape)) - - inference_time_start = time.perf_counter() - - # Perform inference - predictions = self.cryptomining_detector_model.run( - [self.prob_name], {self.input_name: x_data.astype(np.float32)} - )[0] - - inference_time_end = time.perf_counter() - - # Measure inference time - inference_time = inference_time_end - inference_time_start - self.cad_inference_times.append(inference_time) - - if len(self.cad_inference_times) > self.cad_num_inference_measurements: - inference_times_np_array = np.array(self.cad_inference_times) - np.save(f"inference_times_{batch_size}.npy", inference_times_np_array) - - avg_inference_time = np.mean(inference_times_np_array) - max_inference_time = np.max(inference_times_np_array) - min_inference_time = np.min(inference_times_np_array) - std_inference_time = np.std(inference_times_np_array) - median_inference_time = np.median(inference_times_np_array) - - LOGGER.debug("Average inference time: {}".format(avg_inference_time)) - LOGGER.debug("Max inference time: {}".format(max_inference_time)) - LOGGER.debug("Min inference time: {}".format(min_inference_time)) - LOGGER.debug("Standard deviation inference time: {}".format(std_inference_time)) - LOGGER.debug("Median inference time: {}".format(median_inference_time)) - - with open(f"inference_times_stats_{batch_size}.txt", "w") as f: - f.write("Average inference time: {}\n".format(avg_inference_time)) - f.write("Max inference time: {}\n".format(max_inference_time)) - f.write("Min inference time: {}\n".format(min_inference_time)) - f.write("Standard deviation inference time: {}\n".format(std_inference_time)) - f.write("Median inference time: {}\n".format(median_inference_time)) - - # Gather the predicted class, the probability of that class and other relevant information required to block the attack - output_message = { - "confidence": None, - "timestamp": datetime.now().strftime("%d/%m/%Y %H:%M:%S"), - "ip_o": request.connection_metadata.ip_o, - "ip_d": request.connection_metadata.ip_d, - "tag_name": None, - "tag": None, - "flow_id": request.connection_metadata.flow_id, - "protocol": request.connection_metadata.protocol, - "port_o": request.connection_metadata.port_o, - "port_d": request.connection_metadata.port_d, - "ml_id": self.cryptomining_detector_file_name, - "service_id": request.connection_metadata.service_id, - "endpoint_id": request.connection_metadata.endpoint_id, - "time_start": request.connection_metadata.time_start, - "time_end": request.connection_metadata.time_end, - } - - if predictions[0][1] >= self.CLASSIFICATION_THRESHOLD: - output_message["confidence"] = predictions[0][1] - output_message["tag_name"] = "Crypto" - output_message["tag"] = self.CRYPTO_CLASS - else: - output_message["confidence"] = predictions[0][0] - output_message["tag_name"] = "Normal" - output_message["tag"] = self.NORMAL_CLASS - - return output_message - - """ - Receive features from Attack Mitigator, predict attack and communicate with Attack Mitigator - -input: - + request: L3CentralizedattackdetectorMetrics object with connection features information - -output: Empty object with a message about the execution of the function - """ - - def AnalyzeConnectionStatistics(self, request, context): - # Perform inference with the data sent in the request - logging.info("Performing inference...") - start = time.time() - cryptomining_detector_output = self.perform_inference(request) - end = time.time() - LOGGER.debug("Inference performed in {} seconds".format(end - start)) - logging.info("Inference performed correctly") - - self.inference_results.append({"output": cryptomining_detector_output, "timestamp": datetime.now()}) - LOGGER.debug("inference_results length: {}".format(len(self.inference_results))) - - service_id = request.connection_metadata.service_id - device_id = request.connection_metadata.endpoint_id.device_id - endpoint_id = request.connection_metadata.endpoint_id - - # Check if a request of a new service has been received and, if so, create the monitored KPIs for that service - if service_id not in self.service_ids: - self.create_kpis(service_id, device_id, endpoint_id) - self.service_ids.append(service_id) - - start = time.time() - self.monitor_kpis() - end = time.time() - - LOGGER.debug("Monitoring KPIs performed in {} seconds".format(end - start)) - LOGGER.debug("cryptomining_detector_output: {}".format(cryptomining_detector_output)) - - if DEMO_MODE: - self.analyze_prediction_accuracy(cryptomining_detector_output["confidence"]) - - connection_info = ConnectionInfo( - request.connection_metadata.ip_o, - request.connection_metadata.port_o, - request.connection_metadata.ip_d, - request.connection_metadata.port_d, - ) - - if cryptomining_detector_output["tag_name"] == "Crypto": - LOGGER.debug("Crypto found") - LOGGER.debug(connection_info) - - # Only notify Attack Mitigator when a cryptomining connection has been detected - if cryptomining_detector_output["tag_name"] == "Crypto" and connection_info not in self.attack_connections: - self.attack_connections.append(connection_info) - - if connection_info.ip_o in ATTACK_IPS or connection_info.ip_d in ATTACK_IPS: - self.correct_attack_conns += 1 - self.correct_predictions += 1 - else: - LOGGER.debug("False positive: {}".format(connection_info)) - self.false_positives += 1 - - self.total_predictions += 1 - - # if False: - notification_time_start = time.perf_counter() - - LOGGER.debug("Crypto attack detected") - - # Notify the Attack Mitigator component about the attack - logging.info( - "Notifying the Attack Mitigator component about the attack in order to block the connection..." - ) - - try: - logging.info("Sending the connection information to the Attack Mitigator component...") - message = L3AttackmitigatorOutput(**cryptomining_detector_output) - response = self.attackmitigator_client.PerformMitigation(message) - notification_time_end = time.perf_counter() - - self.am_notification_times.append(notification_time_end - notification_time_start) - - LOGGER.debug(f"am_notification_times length: {len(self.am_notification_times)}") - LOGGER.debug(f"last am_notification_time: {self.am_notification_times[-1]}") - - if len(self.am_notification_times) > 100: - am_notification_times_np_array = np.array(self.am_notification_times) - np.save("am_notification_times.npy", am_notification_times_np_array) - - avg_notification_time = np.mean(am_notification_times_np_array) - max_notification_time = np.max(am_notification_times_np_array) - min_notification_time = np.min(am_notification_times_np_array) - std_notification_time = np.std(am_notification_times_np_array) - median_notification_time = np.median(am_notification_times_np_array) - - LOGGER.debug("Average notification time: {}".format(avg_notification_time)) - LOGGER.debug("Max notification time: {}".format(max_notification_time)) - LOGGER.debug("Min notification time: {}".format(min_notification_time)) - LOGGER.debug("Std notification time: {}".format(std_notification_time)) - LOGGER.debug("Median notification time: {}".format(median_notification_time)) - - with open("am_notification_times_stats.txt", "w") as f: - f.write("Average notification time: {}\n".format(avg_notification_time)) - f.write("Max notification time: {}\n".format(max_notification_time)) - f.write("Min notification time: {}\n".format(min_notification_time)) - f.write("Std notification time: {}\n".format(std_notification_time)) - f.write("Median notification time: {}\n".format(median_notification_time)) - - # logging.info("Attack Mitigator notified and received response: ", response.message) # FIX No message received - logging.info("Attack Mitigator notified") - - return Empty(message="OK, information received and mitigator notified abou the attack") - except Exception as e: - logging.error("Error notifying the Attack Mitigator component about the attack: ", e) - logging.error("Couldn't find l3_attackmitigator") - - return Empty(message="Attack Mitigator not found") - else: - logging.info("No attack detected") - - if cryptomining_detector_output["tag_name"] != "Crypto": - if connection_info.ip_o not in ATTACK_IPS and connection_info.ip_d not in ATTACK_IPS: - self.correct_predictions += 1 - else: - LOGGER.debug("False negative: {}".format(connection_info)) - self.false_negatives += 1 - - self.total_predictions += 1 - - return Empty(message="Ok, information received (no attack detected)") - - def analyze_prediction_accuracy(self, confidence): - LOGGER.info("Number of Attack Connections Correctly Classified: {}".format(self.correct_attack_conns)) - LOGGER.info("Number of Attack Connections: {}".format(len(self.attack_connections))) - - if self.total_predictions > 0: - overall_detection_acc = self.correct_predictions / self.total_predictions - else: - overall_detection_acc = 0 - - LOGGER.info("Overall Detection Accuracy: {}\n".format(overall_detection_acc)) - - if len(self.attack_connections) > 0: - cryptomining_attack_detection_acc = self.correct_attack_conns / len(self.attack_connections) - else: - cryptomining_attack_detection_acc = 0 - - LOGGER.info("Cryptomining Attack Detection Accuracy: {}".format(cryptomining_attack_detection_acc)) - LOGGER.info("Cryptomining Detector Confidence: {}".format(confidence)) - - with open("prediction_accuracy.txt", "a") as f: - LOGGER.debug("Exporting prediction accuracy and confidence") - - f.write("Overall Detection Accuracy: {}\n".format(overall_detection_acc)) - f.write("Cryptomining Attack Detection Accuracy: {}\n".format(cryptomining_attack_detection_acc)) - f.write("Total Predictions: {}\n".format(self.total_predictions)) - f.write("Total Positives: {}\n".format(len(self.attack_connections))) - f.write("False Positives: {}\n".format(self.false_positives)) - f.write("True Negatives: {}\n".format(self.total_predictions - len(self.attack_connections))) - f.write("False Negatives: {}\n".format(self.false_negatives)) - f.write("Cryptomining Detector Confidence: {}\n\n".format(confidence)) - f.write("Timestamp: {}\n".format(datetime.now().strftime("%d/%m/%Y %H:%M:%S"))) - f.close() - - def AnalyzeBatchConnectionStatistics(self, request, context): - start = time.time() - - for metric in request.metrics: - self.AnalyzeConnectionStatistics(metric, context) - end = time.time() - - with open("batch_time.txt", "a") as f: - f.write(str(len(request.metrics)) + "\n") - f.write(str(end - start) + "\n\n") - f.close() - - logging.debug("Metrics: " + str(len(request.metrics))) - logging.debug("Batch time: " + str(end - start)) - - return Empty(message="OK, information received.") - - """ - Send features allocated in the metadata of the onnx file to the DAD - -output: ONNX metadata as a list of integers - """ - - def GetFeaturesIds(self, request: Empty, context): - features = AutoFeatures() - - for feature in self.cryptomining_detector_features_metadata: - features.auto_features.append(feature) - - return features diff --git a/src/l3_distributedattackdetector/Config.py b/src/l3_distributedattackdetector/Config.py index e04de0b2622b621fb95f1c382ac3a152836de760..a1419ef09c9b3dcbff5aa576536fae8ffe6bc7a4 100644 --- a/src/l3_distributedattackdetector/Config.py +++ b/src/l3_distributedattackdetector/Config.py @@ -18,7 +18,7 @@ import logging LOG_LEVEL = logging.WARNING # gRPC settings -GRPC_SERVICE_PORT = 10000 # TODO UPM FIXME +GRPC_SERVICE_PORT = 10000 GRPC_MAX_WORKERS = 10 GRPC_GRACE_PERIOD = 60 diff --git a/src/l3_distributedattackdetector/README.md b/src/l3_distributedattackdetector/README.md index d8cac8b72d41c6eb6ce2b2908e6ab7402966ad62..d79563dd8936814132e96aa738216435be44950a 100644 --- a/src/l3_distributedattackdetector/README.md +++ b/src/l3_distributedattackdetector/README.md @@ -1,3 +1,3 @@ -# l3_distributedattackdetector -- Receives packages and process it with TSTAT -- Functions: ReportSummarizeKpi(KpiList) +# L3 Distributed Attack Detector + +Receives packages and processes them with TSTAT to generate traffic snapshot statistics. diff --git a/src/l3_distributedattackdetector/requirements.in b/src/l3_distributedattackdetector/requirements.in index a8aba849708799232f6b0732c3661396266da329..64e4aa198bd8b7902c0bb810e5fcd6f108faae6f 100644 --- a/src/l3_distributedattackdetector/requirements.in +++ b/src/l3_distributedattackdetector/requirements.in @@ -12,4 +12,5 @@ # See the License for the specific language governing permissions and # limitations under the License. -# no extra dependency +numpy==1.23.* +asyncio==3.4.3 diff --git a/src/l3_distributedattackdetector/service/__main__.py b/src/l3_distributedattackdetector/service/__main__.py index 1f558dfb6c271cf63a9e36ae06cb9993f7e49c57..a8f0ac3c4f9737091c2c1a39134b97ee7bd6de7d 100644 --- a/src/l3_distributedattackdetector/service/__main__.py +++ b/src/l3_distributedattackdetector/service/__main__.py @@ -13,207 +13,39 @@ # limitations under the License. import logging -import sys -import os -import time -import grpc -from common.proto.l3_centralizedattackdetector_pb2_grpc import ( - L3CentralizedattackdetectorStub, -) -from common.proto.l3_centralizedattackdetector_pb2 import ( - ModelInput, -) +from sys import stdout +import sys +from l3_distributedattackdetector import l3_distributedattackdetector -LOGGER = logging.getLogger(__name__) -TSTAT_DIR_NAME = "piped/" -JSON_BLANK = { - "ip_o": "", # Client IP - "port_o": "", # Client port - "ip_d": "", # Server ip - "port_d": "", # Server port - "flow_id": "", # Identifier:c_ip,c_port,s_ip,s_port,time_start - "protocol": "", # Connection protocol - "time_start": 0, # Start of connection - "time_end": 0, # Time of last packet -} +# Setup LOGGER +LOGGER = logging.getLogger("main_dad_LOGGER") +LOGGER.setLevel(logging.INFO) +logFormatter = logging.Formatter(fmt="%(levelname)-8s %(message)s") +consoleHandler = logging.StreamHandler(stdout) +consoleHandler.setFormatter(logFormatter) +LOGGER.addHandler(consoleHandler) -def follow(thefile, time_sleep): - """ - Generator function that yields new lines in a file - It reads the logfie (the opened file) - """ - # seek the end of the file - thefile.seek(0, os.SEEK_END) +PROFILING = False - trozo = "" - # start infinite loop - while True: - # read last line of file - line = thefile.readline() - # sleep if file hasn't been updated - if not line: - time.sleep(time_sleep) # FIXME - continue - - if line[-1] != "\n": - trozo += line - # print ("OJO :"+line+":") - else: - if trozo != "": - line = trozo + line - trozo = "" - yield line - -def load_file(dirname=TSTAT_DIR_NAME): - """ - - Client side - - """ - # "/home/dapi/Tstat/TOSHI/tstat/tstat_DRv4/tstat/piped/" - - while True: - here = os.path.dirname(os.path.abspath(__file__)) - tstat_piped = os.path.join(here, dirname) - tstat_dirs = os.listdir(tstat_piped) - if len(tstat_dirs) > 0: - tstat_dirs.sort() - new_dir = tstat_dirs[-1] - print(new_dir) - # print("dir: {0}".format(new_dir)) - tstat_file = tstat_piped + new_dir + "/log_tcp_temp_complete" - print("tstat_file: {0}".format(tstat_file)) - return tstat_file - else: - print("No tstat directory!") - time.sleep(1) - -def process_line(line): - """ - - Preprocessing before a message per line - - Avoids crash when nan are found by generating a 0s array - - Returns a list of values - """ - - def makeDivision(i, j): - """ - Helper function - """ - return i / j if (j and type(i) != str and type(j) != str) else 0 - - line = line.split(" ") - try: - n_packets_server, n_packets_client = float( - line[16]), float(line[2]) - except: - return [0 for i in range(9)] - n_bits_server, n_bits_client = float(line[22]), float(line[8]) - seconds = float(line[30]) / 1e6 # Duration in ms - values = [ - makeDivision(n_packets_server, seconds), - makeDivision(n_packets_client, seconds), - makeDivision(n_bits_server, seconds), - makeDivision(n_bits_client, seconds), - makeDivision(n_bits_server, n_packets_server), - makeDivision(n_bits_client, n_packets_client), - makeDivision(n_packets_server, n_packets_client), - makeDivision(n_bits_server, n_bits_client), - ] - return values - -def open_channel(input_information): - with grpc.insecure_channel("localhost:10001") as channel: - stub = L3CentralizedattackdetectorStub(channel) - response = stub.SendInput( - ModelInput(**input_information)) - LOGGER.debug("Inferencer send_input sent and received: ", - response.message) - # response = stub.get_output(Inferencer_pb2.empty(message="")) - # print("Inferencer get_output response: \n", response) - -def run(time_sleep, max_lines): - - filename = load_file() - write_salida = None - print( - "following: ", - filename, - " time to wait:", - time_sleep, - "lineas_tope:", - max_lines, - "write salida:", - write_salida, - ) - logfile = open(filename, "r") - # iterate over the generator - loglines = follow(logfile, time_sleep) - lin = 0 - ultima_lin = 0 - last_line = "" - cryptos = 0 - new_connections = {} # Dict for storing NEW data - connections_db = {} # Dict for storing ALL data - print('Reading lines') - for line in loglines: - print('Received Line') - start = time.time() - line_id = line.split(" ") - conn_id = (line_id[0], line_id[1], line_id[14], line_id[15]) - new_connections[conn_id] = process_line(line) - try: - connections_db[conn_id]["time_end"] = time.time() - except KeyError: - connections_db[conn_id] = JSON_BLANK.copy() - connections_db[conn_id]["time_start"] = time.time() - connections_db[conn_id]["time_end"] = time.time() - connections_db[conn_id]["ip_o"] = conn_id[0] - connections_db[conn_id]["port_o"] = conn_id[1] - connections_db[conn_id]["flow_id"] = "".join(conn_id) - connections_db[conn_id]["protocol"] = "TCP" - connections_db[conn_id]["ip_d"] = conn_id[2] - connections_db[conn_id]["port_d"] = conn_id[3] +def main(): + l3_distributedattackdetector() - # CRAFT DICT - inference_information = { - "n_packets_server_seconds": new_connections[conn_id][0], - "n_packets_client_seconds": new_connections[conn_id][1], - "n_bits_server_seconds": new_connections[conn_id][2], - "n_bits_client_seconds": new_connections[conn_id][3], - "n_bits_server_n_packets_server": new_connections[conn_id][4], - "n_bits_client_n_packets_client": new_connections[conn_id][5], - "n_packets_server_n_packets_client": new_connections[conn_id][6], - "n_bits_server_n_bits_client": new_connections[conn_id][7], - "ip_o": connections_db[conn_id]["ip_o"], - "port_o": connections_db[conn_id]["port_o"], - "ip_d": connections_db[conn_id]["ip_d"], - "port_d": connections_db[conn_id]["port_d"], - "flow_id": connections_db[conn_id]["flow_id"], - "protocol": connections_db[conn_id]["protocol"], - "time_start": connections_db[conn_id]["time_start"], - "time_end": connections_db[conn_id]["time_end"], - } - # SEND MSG - try: - open_channel(inference_information) - except: - LOGGER.info("Centralized Attack Mitigator is not up") +if __name__ == "__main__": + if PROFILING: + import cProfile, pstats, io - if write_salida: - print(line, end="") - sys.stdout.flush() - lin += 1 - if lin >= max_lines: - break - elif lin == 1: - print("primera:", ultima_lin) + pr = cProfile.Profile() + pr.enable() - end = time.time() - start - print(end) + main() + if PROFILING: + pr.disable() + s = io.StringIO() + sortby = "cumulative" + ps = pstats.Stats(pr, stream=s).sort_stats(sortby) + ps.print_stats() + LOGGER.info(s.getvalue()) -def main(): - logging.basicConfig() - run(5, 70) - -if __name__ == '__main__': - sys.exit(main()) + sys.exit(0) \ No newline at end of file diff --git a/src/l3_distributedattackdetector/service/known_attack_ips.csv b/src/l3_distributedattackdetector/service/known_attack_ips.csv new file mode 100644 index 0000000000000000000000000000000000000000..254dad83da9342581186335ca63c6ea1e8b2a219 --- /dev/null +++ b/src/l3_distributedattackdetector/service/known_attack_ips.csv @@ -0,0 +1 @@ +37.187.95.110,91.121.140.167,94.23.23.52,94.23.247.226,149.202.83.171 \ No newline at end of file diff --git a/src/l3_distributedattackdetector/service/l3_distributedattackdetector.py b/src/l3_distributedattackdetector/service/l3_distributedattackdetector.py new file mode 100644 index 0000000000000000000000000000000000000000..6c9d09dc57d2966538dbe804117e330e06b10bd4 --- /dev/null +++ b/src/l3_distributedattackdetector/service/l3_distributedattackdetector.py @@ -0,0 +1,587 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 asyncio +import logging +import os +import signal +import time +from sys import stdout + +import grpc +import numpy as np + +from common.proto.context_pb2 import ContextId, Empty, ServiceTypeEnum +from common.proto.context_pb2_grpc import ContextServiceStub +from common.proto.l3_centralizedattackdetector_pb2 import ( + ConnectionMetadata, + Feature, + L3CentralizedattackdetectorBatchInput, + L3CentralizedattackdetectorMetrics, +) +from common.proto.l3_centralizedattackdetector_pb2_grpc import L3CentralizedattackdetectorStub + +# Setup LOGGER +LOGGER = logging.getLogger("dad_LOGGER") +LOGGER.setLevel(logging.INFO) +logFormatter = logging.Formatter(fmt="%(levelname)-8s %(message)s") +consoleHandler = logging.StreamHandler(stdout) +consoleHandler.setFormatter(logFormatter) +LOGGER.addHandler(consoleHandler) + +# Define constants +TSTAT_DIR_NAME = "piped/" +CONTROLLER_IP = "192.168.165.78" # Change this to the IP of the controller +CONTEXT_ID = "admin" # Change this to the context ID to be used +CONTEXT_CHANNEL = f"{CONTROLLER_IP}:1010" +CENTRALIZED_ATTACK_DETECTOR = f"{CONTROLLER_IP}:10001" +JSON_BLANK = { + "ip_o": "", # Client IP + "port_o": "", # Client port + "ip_d": "", # Server ip + "port_d": "", # Server port + "flow_id": "", # Identifier: c_ip,c_port, s_ip,s_port, time_start + "protocol": "", # Connection protocol + "time_start": 0.0, # Start of connection + "time_end": 0.0, # Time of last packet +} +STOP = False +IGNORE_FIRST_LINE_TSTAT = True +PROFILING = False +SEND_DATA_IN_BATCHES = False +BATCH_SIZE = 10 + + +class l3_distributedattackdetector: + def __init__(self): + """ + Initializes a Distributed Attack Detector. + + This method initializes a Distributed Attack Detector by setting up instance variables, connecting to the Centralized Attack Detector, obtaining feature IDs, and starting the process traffic loop. It also sets up a signal handler for handling keyboard interrupts. + + Args: + None. + + Returns: + None. + """ + + LOGGER.info("Creating Distributed Attack Detector") + + self.feature_ids = [] + + self.cad_features = {} + self.conn_id = () + + self.connections_dict = {} # Dictionary for storing all connections data + self.new_connections = {} # Dictionary for storing new connections data + + self.known_attack_ips = self.read_kwnown_attack_ips() + + signal.signal(signal.SIGINT, self.handler) + + with grpc.insecure_channel(CENTRALIZED_ATTACK_DETECTOR) as channel: + self.cad = L3CentralizedattackdetectorStub(channel) + LOGGER.info("Connected to the Centralized Attack Detector") + + LOGGER.info("Obtaining features Ids. from the Centralized Attack Detector...") + self.feature_ids = self.get_features_ids() + LOGGER.info("Features Ids.: {:s}".format(str(self.feature_ids))) + + asyncio.run(self.process_traffic()) + + def read_kwnown_attack_ips(self): + """ + Reads a list of known attack IPs from a CSV file. + + This method reads a list of known attack IPs from a CSV file named "known_attack_ips.csv". The method returns a list of strings containing the IP addresses. + + Args: + None. + + Returns: + List[str]: A list of strings containing the IP addresses of known attack sources. + """ + + # Initialize an empty list to store the known attack IPs + known_attack_ips = [] + + # Open the known attack IPs CSV file + with open("known_attack_ips.csv", "r") as f: + # Read the contents of the file and split it into a list of strings + known_attack_ips = f.read().split(",") + + # Return the list of known attack IPs + return known_attack_ips + + def handler(self): + """ + Handles a keyboard interrupt signal. + + This method handles a keyboard interrupt signal by setting the `STOP` flag to `True` and logging a message indicating that the program is stopping gracefully. + + Args: + None. + + Returns: + None. + """ + + # Set the STOP flag to True + if STOP: + exit() + STOP = True + + # Log a message indicating that the program is stopping gracefully + LOGGER.info("Gracefully stopping...") + + def follow(self, logfile, time_sleep): + """ + Generator function that yields new lines in a log file. + + This method reads a file object and yields new lines as they are added to the file. The method uses an infinite loop to continuously read the last line of the file. If the file hasn't been updated, the method sleeps for the specified `time_sleep` interval. If the last line of the file doesn't end with a newline character, the method appends the line to a `chunk` variable. When a newline character is encountered, the method yields the line, possibly appending the `chunk` variable to the line if it contains a partial line. The method returns an iterator that yields lines from the file. + + Args: + file (TextIO): The file object to read from. + time_sleep (float): The time to sleep if the file hasn't been updated. + + Yields: + str: The next line in the file. + + Returns: + None. + """ + + # seek the end of the file + # logfile.seek(0, os.SEEK_END) + + chunk = "" + + # start an infinite loop + while True: + # read last line of the file + line = logfile.readline() + + # sleep if the file hasn't been updated + if not line: + time.sleep(time_sleep) + continue + + if line[-1] != "\n": + chunk += line + else: + if chunk != "": + line = chunk + line + chunk = "" + + yield line + + def load_file(self, dirname=TSTAT_DIR_NAME): + """ + Loads the latest Tstat log file. + + This method loads the latest Tstat log file by searching for the most recent directory in the specified `dirname` directory. If a directory is found, the method returns the path to the `log_tcp_temp_complete` file in that directory. If no directory is found, the method logs a message and waits for 5 seconds before trying again. + + Args: + dirname (str): The name of the directory to search for Tstat log files. Defaults to `TSTAT_DIR_NAME`. + + Returns: + str: The path to the latest Tstat log file. + """ + + while True: + # Get the path to the Tstat directory + here = os.path.dirname(os.path.abspath(__file__)) + tstat_piped = os.path.join(here, dirname) + + # Get a list of all directories in the Tstat directory + tstat_dirs = os.listdir(tstat_piped) + + # If there are directories in the Tstat directory, find the most recent one and return the path to the log file + if len(tstat_dirs) > 0: + tstat_dirs.sort() + new_dir = tstat_dirs[-1] + tstat_file = tstat_piped + new_dir + "/log_tcp_temp_complete" + + LOGGER.info("Following: {:s}".format(str(tstat_file))) + + return tstat_file + # If there are no directories in the Tstat directory, log a message and wait for 5 seconds before trying again + else: + LOGGER.info("No Tstat directory found. Waiting...") + time.sleep(5) + + def process_line(self, line): + """ + Processes a single line of input data and returns a list of feature values. + + Args: + line (str): A single line of input data containing feature values separated by spaces. + + Returns: + List[float]: A list of feature values extracted from the input line. + + Raises: + IndexError: If the input line does not contain enough feature values. + """ + + line = line.split(" ") + + try: + values = [] + for feature_id in self.feature_ids: + feature_id = int(feature_id) + feature = feature_id - 1 + values.append(float(line[feature])) + except IndexError: + LOGGER.error("IndexError: {0}".format(line)) + + return values + + def get_services(self, context_id_str): + """ + Gets the services for a given context ID. + + This method gets the services for a given context ID by calling the ListServices method of the ContextService gRPC stub. + + Args: + context_id_str (str): The context ID to get services for. + + Returns: + ListServicesResponse: A response object containing the services. + """ + + with grpc.insecure_channel(CONTEXT_CHANNEL) as channel: + stub = ContextServiceStub(channel) + context_id = ContextId() + context_id.context_uuid.uuid = context_id_str + + return stub.ListServices(context_id) + + def get_service_id(self, context_id): + """ + Gets the service ID for a given context ID. + + This method gets the service ID for a given context ID by calling the get_services method and searching for the first service in the list with the service type of SERVICETYPE_L3NM. + + Args: + context_id (str): The context ID to get the service ID for. + + Returns: + str: The service ID. + """ + + service_list = self.get_services(context_id) + service_id = None + + for s in service_list.services: + if s.service_type == ServiceTypeEnum.SERVICETYPE_L3NM: + service_id = s.service_id + break + else: + pass + + return service_id + + def get_endpoint_id(self, context_id): + """ + Gets the endpoint ID for a given context ID. + + This method gets the endpoint ID for a given context ID by calling the get_services method and searching for the first service in the list with the service type of SERVICETYPE_L3NM. + + Args: + context_id (str): The context ID to get the endpoint ID for. + + Returns: + str: The endpoint ID. + """ + + service_list = self.get_services(context_id) + endpoint_id = None + + for s in service_list.services: + if s.service_type == ServiceTypeEnum.SERVICETYPE_L3NM: + endpoint_id = s.service_endpoint_ids[0] + break + + return endpoint_id + + def get_features_ids(self): + """ + Gets the feature IDs used by the Centralized Attack Detector model. + + This method gets the feature IDs used by the Centralized Attack Detector model by calling the GetFeaturesIds method of the Centralized Attack Detector gRPC stub. + + Args: + None. + + Returns: + list: A list of feature IDs. + """ + + return self.cad.GetFeaturesIds(Empty()).auto_features + + def check_types(self): + """ + Checks the types of the features that will be sent to the Centralized Attack Detector. + + This method checks the types of the Centralized Attack Detector features to ensure that they are of the correct type. If any of the types are incorrect, the method raises an AssertionError. + + Args: + None. + + Returns: + None. + """ + + for feature in self.cad_features["features"]: + assert isinstance(feature, float) + + assert isinstance(self.cad_features["connection_metadata"]["ip_o"], str) + assert isinstance(self.cad_features["connection_metadata"]["port_o"], str) + assert isinstance(self.cad_features["connection_metadata"]["ip_d"], str) + assert isinstance(self.cad_features["connection_metadata"]["port_d"], str) + assert isinstance(self.cad_features["connection_metadata"]["flow_id"], str) + assert isinstance(self.cad_features["connection_metadata"]["protocol"], str) + assert isinstance(self.cad_features["connection_metadata"]["time_start"], float) + assert isinstance(self.cad_features["connection_metadata"]["time_end"], float) + + def insert_connection(self): + """ + Inserts a new connection into the `connections_dict` instance variable. + + This method inserts a new connection into the `connections_dict` instance variable. The method uses the `conn_id` instance variable to create a new dictionary entry for the connection. If the connection already exists in the dictionary, the method updates the `time_end` value of the existing entry. If the connection doesn't exist in the dictionary, the method creates a new entry with the following keys: + - "ip_o": The source IP address of the connection. + - "port_o": The source port of the connection. + - "ip_d": The destination IP address of the connection. + - "port_d": The destination port of the connection. + - "flow_id": The flow ID of the connection. + - "service_id": The service ID of the connection. + - "endpoint_id": The endpoint ID of the connection. + - "protocol": The protocol of the connection. + - "time_start": The start time of the connection. + - "time_end": The end time of the connection. + + Args: + None. + + Returns: + None. + """ + + try: + self.connections_dict[self.conn_id]["time_end"] = time.time() + except KeyError: + self.connections_dict[self.conn_id] = JSON_BLANK.copy() + self.connections_dict[self.conn_id]["time_start"] = time.time() + self.connections_dict[self.conn_id]["time_end"] = time.time() + self.connections_dict[self.conn_id]["ip_o"] = self.conn_id[0] + self.connections_dict[self.conn_id]["port_o"] = self.conn_id[1] + self.connections_dict[self.conn_id]["flow_id"] = ":".join(self.conn_id) + self.connections_dict[self.conn_id]["service_id"] = self.get_service_id(CONTEXT_ID) + self.connections_dict[self.conn_id]["endpoint_id"] = self.get_endpoint_id(CONTEXT_ID) + self.connections_dict[self.conn_id]["protocol"] = "TCP" + self.connections_dict[self.conn_id]["ip_d"] = self.conn_id[2] + self.connections_dict[self.conn_id]["port_d"] = self.conn_id[3] + + def check_if_connection_is_attack(self): + """ + Checks if a connection is an attack based on known attack IP addresses. + + This method checks if a connection is an attack based on known attack IP addresses. The method uses the `conn_id` and `known_attack_ips` instance variables to determine if the source or destination IP address of the connection is in the list of known attack IP addresses. If either IP address is in the list, the method logs a message indicating that an attack has been detected. + + Args: + None. + + Returns: + None. + """ + + if self.conn_id[0] in self.known_attack_ips or self.conn_id[2] in self.known_attack_ips: + LOGGER.info("Attack detected. Origin IP address: {0}, destination IP address: {1}".format(self.conn_id[0], self.conn_id[2])) + + def create_cad_features(self): + """ + Creates a dictionary of features and connection metadata for the Centralized Attack Detector. + + This method creates a dictionary of features and connection metadata for the Centralized Attack Detector. The method uses the `new_connections` and `connections_dict` instance variables to obtain the necessary data. The resulting dictionary contains the following keys: + - "features": A list of the first 10 features of the connection. + - "connection_metadata": A dictionary containing the following keys: + - "ip_o": The source IP address of the connection. + - "port_o": The source port of the connection. + - "ip_d": The destination IP address of the connection. + - "port_d": The destination port of the connection. + - "flow_id": The flow ID of the connection. + - "service_id": The service ID of the connection. + - "endpoint_id": The endpoint ID of the connection. + - "protocol": The protocol of the connection. + - "time_start": The start time of the connection. + - "time_end": The end time of the connection. + + Args: + None. + + Returns: + None. + """ + + self.cad_features = { + "features": self.new_connections[self.conn_id][0:10], + "connection_metadata": { + "ip_o": self.connections_dict[self.conn_id]["ip_o"], + "port_o": self.connections_dict[self.conn_id]["port_o"], + "ip_d": self.connections_dict[self.conn_id]["ip_d"], + "port_d": self.connections_dict[self.conn_id]["port_d"], + "flow_id": self.connections_dict[self.conn_id]["flow_id"], + "service_id": self.connections_dict[self.conn_id]["service_id"], + "endpoint_id": self.connections_dict[self.conn_id]["endpoint_id"], + "protocol": self.connections_dict[self.conn_id]["protocol"], + "time_start": self.connections_dict[self.conn_id]["time_start"], + "time_end": self.connections_dict[self.conn_id]["time_end"], + }, + } + + async def send_batch_async(self, metrics_list_pb): + """ + Sends a batch of traffic data to a Centralized Attack Detector. + + This method sends a batch of traffic data to a Centralized Attack Detector for analysis. The method creates a `L3CentralizedattackdetectorBatchInput` object from the provided `metrics_list_pb`, and sends the batch using an executor to run the `AnalyzeBatchConnectionStatistics` method in a separate thread. The method returns `None`. + + Args: + metrics_list_pb (List[L3CentralizedattackdetectorMetrics]): A list of traffic metrics to send to the Centralized Attack Detector. + + Returns: + None. + """ + + loop = asyncio.get_running_loop() + + # Create metrics batch + metrics_batch = L3CentralizedattackdetectorBatchInput() + metrics_batch.metrics.extend(metrics_list_pb) + + # Send batch + future = loop.run_in_executor(None, self.cad.AnalyzeBatchConnectionStatistics, metrics_batch) + + try: + await future + except Exception as e: + LOGGER.error(f"Error sending batch: {e}") + + async def send_data(self, metrics_list_pb, send_data_times): + """ + Sends traffic data to a Centralized Attack Detector. + + This method sends traffic data to a Centralized Attack Detector for analysis. If the `SEND_DATA_IN_BATCHES` flag is set to `True`, the data is sent in batches of size `BATCH_SIZE`. Otherwise, the data is sent one metric at a time. The method returns the updated `metrics_list_pb` and `send_data_times` arrays. + + Args: + metrics_list_pb (List[L3CentralizedattackdetectorMetrics]): A list of traffic metrics to send to the Centralized Attack Detector. + send_data_times (np.ndarray): An array of times it took to send each batch of data. + + Returns: + Tuple[List[L3CentralizedattackdetectorMetrics], np.ndarray]: A tuple containing the updated `metrics_list_pb` and `send_data_times` arrays. + """ + + if SEND_DATA_IN_BATCHES: + if len(metrics_list_pb) == BATCH_SIZE: + send_data_time_start = time.time() + await self.send_batch_async(metrics_list_pb) + metrics_list_pb = [] + + send_data_time_end = time.time() + send_data_time = send_data_time_end - send_data_time_start + send_data_times = np.append(send_data_times, send_data_time) + + else: + send_data_time_start = time.time() + self.cad.AnalyzeConnectionStatistics(metrics_list_pb[-1]) + + send_data_time_end = time.time() + send_data_time = send_data_time_end - send_data_time_start + send_data_times = np.append(send_data_times, send_data_time) + + return metrics_list_pb, send_data_times + + async def process_traffic(self): + """ Processes traffic data from a Tstat log file. + This method reads traffic data from a Tstat log file, processes each line of data, and sends the resulting metrics to a Centralized Attack Detector. It runs indefinitely until the `STOP` flag is set to `True`. + + Args: + None. + Returns: + None. + """ + + LOGGER.info("Loading Tstat log file...") + logfile = open(self.load_file(), "r") + + LOGGER.info("Following Tstat log file...") + loglines = self.follow(logfile, 5) + + process_time = [] + num_lines = 0 + + send_data_times = np.array([]) + metrics_list_pb = [] + + LOGGER.info("Starting to process data...") + + index = 0 + while True: + line = next(loglines, None) + + while line is None: + LOGGER.info("Waiting for new data...") + + time.sleep(1 / 100) + line = next(loglines, None) + + if index == 0 and IGNORE_FIRST_LINE_TSTAT: + index = index + 1 + continue + + if STOP: + break + + num_lines += 1 + start = time.time() + line_id = line.split(" ") + + self.conn_id = (line_id[0], line_id[1], line_id[14], line_id[15]) + self.new_connections[self.conn_id] = self.process_line(line) + + self.check_if_connection_is_attack() + self.insert_connection() + self.create_cad_features() + self.check_types() + + connection_metadata = ConnectionMetadata(**self.cad_features["connection_metadata"]) + metrics = L3CentralizedattackdetectorMetrics() + + for feature in self.cad_features["features"]: + feature_obj = Feature() + feature_obj.feature = feature + metrics.features.append(feature_obj) + + metrics.connection_metadata.CopyFrom(connection_metadata) + metrics_list_pb.append(metrics) + + metrics_list_pb, send_data_times = await self.send_data(metrics_list_pb, send_data_times) + + index += 1 + + process_time.append(time.time() - start) + + if num_lines % 10 == 0: + LOGGER.info(f"Number of lines: {num_lines} - Average processing time: {sum(process_time) / num_lines}") diff --git a/src/l3_distributedattackdetector/service/tstat b/src/l3_distributedattackdetector/service/tstat deleted file mode 100644 index 06c7fb082e12c8392b71d0ec2f7d74827d30e4a3..0000000000000000000000000000000000000000 Binary files a/src/l3_distributedattackdetector/service/tstat and /dev/null differ diff --git a/src/load_generator/requirements.in b/src/load_generator/requirements.in index 03a61d7a3fa8fa880d8877a33025401b95da9e25..44bd0ef1a321e9d08e253f01caca2d204d61fd6c 100644 --- a/src/load_generator/requirements.in +++ b/src/load_generator/requirements.in @@ -12,4 +12,4 @@ # See the License for the specific language governing permissions and # limitations under the License. -APScheduler==3.8.1 +APScheduler==3.10.1 diff --git a/src/monitoring/requirements.in b/src/monitoring/requirements.in index 981b4cdf291b6234d53de185ad83a1df2d1148a4..4e57dd0193485b3f7ed3ea346534fb1cb43c5538 100644 --- a/src/monitoring/requirements.in +++ b/src/monitoring/requirements.in @@ -13,7 +13,7 @@ # limitations under the License. anytree==2.8.0 -APScheduler==3.8.1 +APScheduler==3.10.1 #fastcache==1.1.0 #google-api-core #opencensus[stackdriver] @@ -26,7 +26,7 @@ APScheduler==3.8.1 influx-line-protocol==0.1.4 python-dateutil==2.8.2 python-json-logger==2.0.2 -pytz==2021.3 +#pytz==2021.3 #redis==4.1.2 requests==2.27.1 xmltodict==0.12.0 diff --git a/src/monitoring/service/EventTools.py b/src/monitoring/service/EventTools.py index 0d351eee968684f18571f0da9f094a806f577efd..468e0c58cc43d1c3ecf1232ebf2a9ed46a91e93b 100644 --- a/src/monitoring/service/EventTools.py +++ b/src/monitoring/service/EventTools.py @@ -12,12 +12,13 @@ # See the License for the specific language governing permissions and # limitations under the License. +import grpc, json, logging, queue, threading from typing import Dict -import grpc, logging, queue, threading from common.method_wrappers.ServiceExceptions import ServiceException from common.proto import monitoring_pb2 -from common.proto.context_pb2 import DeviceOperationalStatusEnum, Empty, EventTypeEnum +from common.proto.context_pb2 import ConfigActionEnum, DeviceOperationalStatusEnum, Empty, EventTypeEnum from common.proto.kpi_sample_types_pb2 import KpiSampleType +from common.tools.grpc.Tools import grpc_message_to_json_string from context.client.ContextClient import ContextClient from monitoring.client.MonitoringClient import MonitoringClient from monitoring.service.MonitoringServiceServicerImpl import LOGGER @@ -43,7 +44,8 @@ class EventsDeviceCollector: self._device_thread = threading.Thread(target=self._collect, args=(self._device_stream,), daemon=False) - self._device_to_state : Dict[str, DeviceOperationalStatusEnum] = dict() + #self._device_to_state : Dict[str, DeviceOperationalStatusEnum] = dict() + self._device_endpoint_monitored : Dict[str, Dict[str, bool]] = dict() self._name_mapping = name_mapping def grpc_server_on(self): @@ -79,50 +81,75 @@ class EventsDeviceCollector: kpi_id_list = [] while True: - # LOGGER.info('getting Kpi by KpiID') try: event = self.get_event(block=True, timeout=0.5) event_type = event.event.event_type device_uuid = event.device_id.device_uuid.uuid if event_type in {EventTypeEnum.EVENTTYPE_REMOVE}: - self._device_to_state.pop(device_uuid, None) + LOGGER.debug('Ignoring REMOVE event: {:s}'.format(grpc_message_to_json_string(event))) + self._device_endpoint_monitored.pop(device_uuid, None) continue if event_type not in {EventTypeEnum.EVENTTYPE_CREATE, EventTypeEnum.EVENTTYPE_UPDATE}: - # Unknown event type + LOGGER.debug('Ignoring UNKNOWN event type: {:s}'.format(grpc_message_to_json_string(event))) continue device = self._context_client.GetDevice(event.device_id) self._name_mapping.set_device_name(device_uuid, device.name) - old_operational_status = self._device_to_state.get(device_uuid, DEVICE_OP_STATUS_UNDEFINED) - device_was_not_enabled = (old_operational_status in DEVICE_OP_STATUS_NOT_ENABLED) - - new_operational_status = device.device_operational_status - device_is_enabled = (new_operational_status == DEVICE_OP_STATUS_ENABLED) - self._device_to_state[device_uuid] = new_operational_status - - activate_monitoring = device_was_not_enabled and device_is_enabled - if not activate_monitoring: - # device is not ready for monitoring + device_op_status = device.device_operational_status + if device_op_status != DEVICE_OP_STATUS_ENABLED: + LOGGER.debug('Ignoring Device not enabled: {:s}'.format(grpc_message_to_json_string(device))) continue + enabled_endpoint_names = set() + for config_rule in device.device_config.config_rules: + if config_rule.action != ConfigActionEnum.CONFIGACTION_SET: continue + if config_rule.WhichOneof('config_rule') != 'custom': continue + str_resource_key = str(config_rule.custom.resource_key) + if not str_resource_key.startswith('/interface['): continue + json_resource_value = json.loads(config_rule.custom.resource_value) + if 'name' not in json_resource_value: continue + if 'enabled' not in json_resource_value: continue + if not json_resource_value['enabled']: continue + enabled_endpoint_names.add(json_resource_value['name']) + + endpoints_monitored = self._device_endpoint_monitored.setdefault(device_uuid, dict()) for endpoint in device.device_endpoints: endpoint_uuid = endpoint.endpoint_id.endpoint_uuid.uuid - self._name_mapping.set_endpoint_name(endpoint_uuid, endpoint.name) + endpoint_name_or_uuid = endpoint.name + if endpoint_name_or_uuid is None or len(endpoint_name_or_uuid) == 0: + endpoint_name_or_uuid = endpoint_uuid - for value in endpoint.kpi_sample_types: - if value == KPISAMPLETYPE_UNKNOWN: continue + self._name_mapping.set_endpoint_name(endpoint_uuid, endpoint.name) - kpi_descriptor = monitoring_pb2.KpiDescriptor() - kpi_descriptor.kpi_description = device.device_type - kpi_descriptor.kpi_sample_type = value - kpi_descriptor.device_id.CopyFrom(device.device_id) # pylint: disable=no-member - kpi_descriptor.endpoint_id.CopyFrom(endpoint.endpoint_id) # pylint: disable=no-member + endpoint_was_monitored = endpoints_monitored.get(endpoint_uuid, False) + endpoint_is_enabled = (endpoint_name_or_uuid in enabled_endpoint_names) + + if not endpoint_was_monitored and endpoint_is_enabled: + # activate + for value in endpoint.kpi_sample_types: + if value == KPISAMPLETYPE_UNKNOWN: continue + + kpi_descriptor = monitoring_pb2.KpiDescriptor() + kpi_descriptor.kpi_description = device.device_type + kpi_descriptor.kpi_sample_type = value + kpi_descriptor.device_id.CopyFrom(device.device_id) # pylint: disable=no-member + kpi_descriptor.endpoint_id.CopyFrom(endpoint.endpoint_id) # pylint: disable=no-member + + kpi_id = self._monitoring_client.SetKpi(kpi_descriptor) + kpi_id_list.append(kpi_id) + endpoints_monitored[endpoint_uuid] = True + else: + MSG = 'Not implemented condition: event={:s} device={:s} endpoint={:s}' + \ + ' endpoint_was_monitored={:s} endpoint_is_enabled={:s}' + LOGGER.warning(MSG.format( + grpc_message_to_json_string(event), grpc_message_to_json_string(device), + grpc_message_to_json_string(endpoint), str(endpoint_was_monitored), + str(endpoint_is_enabled) + )) - kpi_id = self._monitoring_client.SetKpi(kpi_descriptor) - kpi_id_list.append(kpi_id) except queue.Empty: break diff --git a/src/monitoring/service/ManagementDBTools.py b/src/monitoring/service/ManagementDBTools.py index a2beddccd633a1961238a6affa4b8d069c26762e..6c0a69e0ec6ec22a9fff24a1de073f2df03e2115 100644 --- a/src/monitoring/service/ManagementDBTools.py +++ b/src/monitoring/service/ManagementDBTools.py @@ -261,10 +261,10 @@ class ManagementDB(): else: if data[0] == 1: return True - elif data[0] == 0: + elif data[0] == 0 or data[0] is None: return False else: - LOGGER.debug(f"KPI {kpi_id} is wrong") + LOGGER.debug(f"KPI {kpi_id} is wrong: {str(data)}") return None except sqlite3.Error as e: LOGGER.debug(f"KPI {kpi_id} cannot be checked from the ManagementDB: {e}") diff --git a/src/monitoring/service/MetricsDBTools.py b/src/monitoring/service/MetricsDBTools.py index 11574e8f6577db0bab4add96da8157496d40e6f5..fd9c092b2d061865cb8c3d625eef8b5d2ef0eab7 100644 --- a/src/monitoring/service/MetricsDBTools.py +++ b/src/monitoring/service/MetricsDBTools.py @@ -317,6 +317,7 @@ class MetricsDB(): elif (not inRange and kpiMinIsNone and not kpiMaxIsNone and not includeMaxValue): if (kpi_value > kpiMaxValue): alarm = True + if alarm: valid_kpi_list.append(kpi) if valid_kpi_list: diff --git a/src/monitoring/service/__main__.py b/src/monitoring/service/__main__.py index d0a132c70bed2c56bc9159ec3ad284120c0eb623..d242f0fc0add7afebed32178bfafde23552a7649 100644 --- a/src/monitoring/service/__main__.py +++ b/src/monitoring/service/__main__.py @@ -49,7 +49,7 @@ def start_monitoring(name_mapping : NameMapping): monitor_kpi_request = monitoring_pb2.MonitorKpiRequest() monitor_kpi_request.kpi_id.CopyFrom(kpi_id) monitor_kpi_request.monitoring_window_s = 86400 - monitor_kpi_request.sampling_rate_s = 30 + monitor_kpi_request.sampling_rate_s = 10 events_collector._monitoring_client.MonitorKpi(monitor_kpi_request) time.sleep(0.5) # let other tasks run; do not overload CPU diff --git a/src/monitoring/tests/Objects.py b/src/monitoring/tests/Objects.py index 447ed0d601bd7079e55dc30e5cab66d25eb1fd88..c5228981bd0c0a5c9104c286f7daa8fb38baf47b 100644 --- a/src/monitoring/tests/Objects.py +++ b/src/monitoring/tests/Objects.py @@ -15,6 +15,7 @@ from common.proto.kpi_sample_types_pb2 import KpiSampleType from common.tools.object_factory.Device import ( json_device_emulated_connect_rules, json_device_emulated_packet_router_disabled) +from common.tools.object_factory.EndPoint import json_endpoint_descriptor PACKET_PORT_SAMPLE_TYPES = [ KpiSampleType.KPISAMPLETYPE_PACKETS_TRANSMITTED, @@ -25,6 +26,8 @@ PACKET_PORT_SAMPLE_TYPES = [ DEVICE_DEV1_UUID = 'DEV1' ENDPOINT_END1_UUID = 'END1' -DEVICE_DEV1_ENDPOINT_DEFS = [(ENDPOINT_END1_UUID, 'copper', PACKET_PORT_SAMPLE_TYPES)] +DEVICE_DEV1_ENDPOINT_DEFS = [ + json_endpoint_descriptor(ENDPOINT_END1_UUID, 'copper', sample_types=PACKET_PORT_SAMPLE_TYPES) +] DEVICE_DEV1 = json_device_emulated_packet_router_disabled(DEVICE_DEV1_UUID) DEVICE_DEV1_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_DEV1_ENDPOINT_DEFS) diff --git a/src/monitoring/tests/test_unitary.py b/src/monitoring/tests/test_unitary.py index 4e84431a5438e1536c92ca644bd5005deba545a4..ff19e231e1e6dfee78d5bc1ae71f170990d11609 100644 --- a/src/monitoring/tests/test_unitary.py +++ b/src/monitoring/tests/test_unitary.py @@ -13,7 +13,7 @@ # limitations under the License. import copy, os, pytest #, threading, time -import logging +import logging, json #from queue import Queue from random import random from time import sleep @@ -25,12 +25,13 @@ from grpc._channel import _MultiThreadedRendezvous 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 common.proto.context_pb2 import DeviceOperationalStatusEnum, EventTypeEnum, DeviceEvent, Device, Empty +from common.proto.context_pb2 import ConfigActionEnum, DeviceOperationalStatusEnum, EventTypeEnum, DeviceEvent, Device, Empty from common.proto.context_pb2_grpc import add_ContextServiceServicer_to_server from common.proto.kpi_sample_types_pb2 import KpiSampleType from common.proto.monitoring_pb2 import KpiId, KpiDescriptor, SubsDescriptor, SubsList, AlarmID, \ AlarmDescriptor, AlarmList, KpiDescriptorList, SubsResponse, AlarmResponse, RawKpiTable #, Kpi, KpiList from common.tests.MockServicerImpl_Context import MockServicerImpl_Context +from common.tools.object_factory.ConfigRule import json_config_rule_set from common.tools.service.GenericGrpcService import GenericGrpcService from common.tools.timestamp.Converters import timestamp_utcnow_to_float #, timestamp_string_to_float from context.client.ContextClient import ContextClient @@ -48,7 +49,7 @@ from monitoring.service.NameMapping import NameMapping #from monitoring.service.SubscriptionManager import SubscriptionManager from monitoring.tests.Messages import create_kpi_request, create_kpi_request_d, include_kpi_request, monitor_kpi_request, \ create_kpi_request_c, kpi_query, subs_descriptor, alarm_descriptor, alarm_subscription #, create_kpi_request_b -from monitoring.tests.Objects import DEVICE_DEV1, DEVICE_DEV1_CONNECT_RULES, DEVICE_DEV1_UUID +from monitoring.tests.Objects import DEVICE_DEV1, DEVICE_DEV1_CONNECT_RULES, DEVICE_DEV1_UUID, ENDPOINT_END1_UUID os.environ['DEVICE_EMULATED_ONLY'] = 'TRUE' from device.service.drivers import DRIVERS # pylint: disable=wrong-import-position,ungrouped-imports @@ -605,11 +606,14 @@ def test_listen_events( assert response.device_uuid.uuid == DEVICE_DEV1_UUID LOGGER.info('Activating Device {:s}'.format(DEVICE_DEV1_UUID)) - device = context_client.GetDevice(response) device_with_op_state = Device() device_with_op_state.CopyFrom(device) device_with_op_state.device_operational_status = DeviceOperationalStatusEnum.DEVICEOPERATIONALSTATUS_ENABLED + config_rule = device_with_op_state.device_config.config_rules.add() + config_rule.action = ConfigActionEnum.CONFIGACTION_SET + config_rule.custom.resource_key = '/interface[{:s}]'.format(ENDPOINT_END1_UUID) + config_rule.custom.resource_value = json.dumps({'name': ENDPOINT_END1_UUID, 'enabled': True}) response = context_client.SetDevice(device_with_op_state) assert response.device_uuid.uuid == DEVICE_DEV1_UUID diff --git a/src/opticalattackdetector/.gitlab-ci.yml b/src/opticalattackdetector/.gitlab-ci.yml index b06725852a573a41b0cf97dd0bdfa527847fe6fc..2a89b5c54f49434d9703f833e2c72486c2394f9f 100644 --- a/src/opticalattackdetector/.gitlab-ci.yml +++ b/src/opticalattackdetector/.gitlab-ci.yml @@ -49,9 +49,26 @@ unit_test opticalattackdetector: - 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 + - if docker container ls | grep redis; then docker rm -f redis; else echo "redis image is not in the system"; fi + - if docker container ls | grep dbscanserving; then docker rm -f dbscanserving; else echo "dbscanserving image is not in the system"; fi script: + - export REDIS_PASSWORD=$(uuidgen) + - docker pull "redis:7.0-alpine" + - docker run --name redis -d --network=teraflowbridge -p 16379:6379 -e REDIS_PASSWORD=${REDIS_PASSWORD} --rm redis:7.0-alpine redis-server --requirepass ${REDIS_PASSWORD} + - docker logs redis + - REDIS_ADDRESS=$(docker inspect redis --format "{{.NetworkSettings.Networks.teraflowbridge.IPAddress}}") + - docker pull "$CI_REGISTRY_IMAGE/dbscanserving:$IMAGE_TAG" + - docker run --name dbscanserving -d -p 10008:10008 --network=teraflowbridge --rm $CI_REGISTRY_IMAGE/dbscanserving:$IMAGE_TAG "python -m dbscanserving.service" + - docker logs dbscanserving + - DBSCANSERVING_ADDRESS=$(docker inspect dbscanserving --format "{{.NetworkSettings.Networks.teraflowbridge.IPAddress}}") - docker pull "$CI_REGISTRY_IMAGE/$IMAGE_NAME:$IMAGE_TAG" - - docker run --name $IMAGE_NAME -d -p 10006:10006 --env-file "$PWD/src/$IMAGE_NAME/.env" -v "$PWD/src/$IMAGE_NAME/tests:/home/${IMAGE_NAME}/results" --network=teraflowbridge --rm $CI_REGISTRY_IMAGE/$IMAGE_NAME:$IMAGE_TAG + - > + docker run --name $IMAGE_NAME -d -p 10006:10006 + -v "$PWD/src/$IMAGE_NAME/tests:/home/${IMAGE_NAME}/results" + -e REDIS_PASSWORD=${REDIS_PASSWORD} + -e DBSCANSERVINGSERVICE_SERVICE_HOST=${DBSCANSERVING_ADDRESS} + -e CACHINGSERVICE_SERVICE_HOST=${REDIS_ADDRESS} + --network=teraflowbridge --rm $CI_REGISTRY_IMAGE/$IMAGE_NAME:$IMAGE_TAG - sleep 5 - docker ps -a - docker logs $IMAGE_NAME @@ -59,6 +76,8 @@ unit_test opticalattackdetector: coverage: '/TOTAL\s+\d+\s+\d+\s+(\d+%)/' after_script: - docker rm -f $IMAGE_NAME + - docker rm -f redis + - docker rm -f dbscanserving - 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)' diff --git a/src/opticalattackdetector/tests/test_unitary.py b/src/opticalattackdetector/tests/test_unitary.py index 72e3a4ac124bd034a76461baee316ab0f1139ed9..6c7579238a157a0f00e9eb0c9df53a04c1774ff6 100644 --- a/src/opticalattackdetector/tests/test_unitary.py +++ b/src/opticalattackdetector/tests/test_unitary.py @@ -13,88 +13,69 @@ # limitations under the License. import logging -import os +import uuid +import queue from unittest.mock import patch import pytest -from common.Constants import (DEFAULT_GRPC_GRACE_PERIOD, - DEFAULT_GRPC_MAX_WORKERS) + from common.proto import dbscanserving_pb2 as dbscan from common.proto.optical_attack_detector_pb2 import DetectionRequest +from common.tests.MockServicerImpl_Monitoring import MockServicerImpl_Monitoring from opticalattackdetector.client.OpticalAttackDetectorClient import \ OpticalAttackDetectorClient -from opticalattackdetector.Config import GRPC_SERVICE_PORT from opticalattackdetector.service.OpticalAttackDetectorService import \ OpticalAttackDetectorService # from .example_objects import CONTEXT_ID, CONTEXT_ID_2, SERVICE_DEV1_DEV2 -port = 10000 + GRPC_SERVICE_PORT # avoid privileged ports - LOGGER = logging.getLogger(__name__) -LOGGER.setLevel(logging.DEBUG) @pytest.fixture(scope="session") def optical_attack_detector_service(): - with patch.dict( - os.environ, - { - "OPTICALATTACKDETECTORSERVICE_SERVICE_HOST": "127.0.0.1", - "OPTICALATTACKDETECTORSERVICE_SERVICE_PORT_GRPC": str(port), - "DBSCANSERVINGSERVICE_SERVICE_HOST": "127.0.0.1", - "DBSCANSERVINGSERVICE_SERVICE_PORT_GRPC": str(port), - }, - clear=True, - ): - _service = OpticalAttackDetectorService( - port=port, - max_workers=DEFAULT_GRPC_MAX_WORKERS, - grace_period=DEFAULT_GRPC_GRACE_PERIOD, - ) - _service.start() - yield _service - _service.stop() + _service = OpticalAttackDetectorService() + _service.start() + yield _service + _service.stop() @pytest.fixture(scope="session") -def optical_attack_detector_client(optical_attack_detector_service): - with patch.dict( - os.environ, - { - "OPTICALATTACKDETECTORSERVICE_SERVICE_HOST": "127.0.0.1", - "OPTICALATTACKDETECTORSERVICE_SERVICE_PORT_GRPC": str(port), - "DBSCANSERVINGSERVICE_SERVICE_HOST": "127.0.0.1", - "DBSCANSERVINGSERVICE_SERVICE_PORT_GRPC": str(port), - }, - clear=True, - ): - _client = OpticalAttackDetectorClient() - yield _client +def optical_attack_detector_client(optical_attack_detector_service: OpticalAttackDetectorService): + _client = OpticalAttackDetectorClient( + host=optical_attack_detector_service.bind_address, + port=optical_attack_detector_service.bind_port, + ) + yield _client _client.close() def test_detect_attack( + optical_attack_detector_service: OpticalAttackDetectorService, optical_attack_detector_client: OpticalAttackDetectorClient, ): message = dbscan.DetectionResponse() message.cluster_indices.extend([0, 1, -1, -1, -1]) + + monitoring_mock = MockServicerImpl_Monitoring(queue_samples = queue.Queue()) with patch( "opticalattackdetector.service.OpticalAttackDetectorServiceServicerImpl.attack_mitigator_client" ) as mitigator, patch( - "opticalattackdetector.service.OpticalAttackDetectorServiceServicerImpl.monitoring_client" + "opticalattackdetector.service.OpticalAttackDetectorServiceServicerImpl.monitoring_client", + monitoring_mock, ) as monitoring, patch( "opticalattackdetector.service.OpticalAttackDetectorServiceServicerImpl.dbscanserving_client.Detect", # TODO: return dumb object with "cluster_indices" attribute # idea: create new response object return_value=message, ) as dbscanserving: - request: DetectionRequest = DetectionRequest() - request.service_id.context_id.context_uuid.uuid = "" - request.service_id.service_uuid.uuid = str("") - request.kpi_id.kpi_id.uuid = "" - optical_attack_detector_client.DetectAttack(request) - mitigator.NotifyAttack.assert_called_once() - monitoring.IncludeKpi.assert_called_once() - dbscanserving.assert_called_once() + for _ in range(10): + request: DetectionRequest = DetectionRequest() + request.service_id.context_id.context_uuid.uuid = str(uuid.uuid4()) + request.service_id.service_uuid.uuid = str(uuid.uuid4()) + request.kpi_id.kpi_id.uuid = "1" + optical_attack_detector_client.DetectAttack(request) + dbscanserving.assert_called_once() + monitoring.IncludeKpi.assert_called_once() + mitigator.NotifyAttack.assert_called() diff --git a/src/opticalattackmanager/.gitlab-ci.yml b/src/opticalattackmanager/.gitlab-ci.yml index 08136e4900d184d4923d9690322b76f7f2ef9fcc..1fe77d3159ba5d5f2d0bd99f23c4692e1f509d20 100644 --- a/src/opticalattackmanager/.gitlab-ci.yml +++ b/src/opticalattackmanager/.gitlab-ci.yml @@ -52,11 +52,11 @@ unit_test opticalattackmanager: - 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 10005:10005 -v "$PWD/src/$IMAGE_NAME/tests:/home/teraflow/$IMAGE_NAME/results" --network=teraflowbridge $CI_REGISTRY_IMAGE/$IMAGE_NAME:$IMAGE_TAG + - docker run --name $IMAGE_NAME -d -p 10005:10005 -e LOG_LEVEL=DEBUG -v "$PWD/src/$IMAGE_NAME/tests:/home/teraflow/controller/$IMAGE_NAME/results" --network=teraflowbridge $CI_REGISTRY_IMAGE/$IMAGE_NAME:$IMAGE_TAG - 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=/home/teraflow/$IMAGE_NAME/results/${IMAGE_NAME}_report.xml" - - docker exec -i $IMAGE_NAME bash -c "coverage report --include='${IMAGE_NAME}/*' --show-missing" + - docker exec -i $IMAGE_NAME bash -c "coverage run -m pytest --log-level=DEBUG --verbose $IMAGE_NAME/tests/test_unitary.py --junitxml=/home/teraflow/controller/$IMAGE_NAME/results/${IMAGE_NAME}_report.xml; coverage report --include='${IMAGE_NAME}/*' --show-missing" + - ls -la src/$IMAGE_NAME/tests coverage: '/TOTAL\s+\d+\s+\d+\s+(\d+%)/' after_script: - docker rm -f $IMAGE_NAME @@ -74,9 +74,9 @@ unit_test opticalattackmanager: - manifests/${IMAGE_NAME}service.yaml - .gitlab-ci.yml artifacts: - when: always - reports: - junit: src/$IMAGE_NAME/tests/${IMAGE_NAME}_report.xml + when: always + reports: + junit: src/$IMAGE_NAME/tests/${IMAGE_NAME}_report.xml # Deployment of the service in Kubernetes Cluster # deploy opticalattackmanager: diff --git a/src/opticalattackmanager/service/__main__.py b/src/opticalattackmanager/service/__main__.py index af38e02a0c4a3098ce9684822654a2494611661d..6ea636f42eb4b992bb7d722188ccbc945a6a153d 100644 --- a/src/opticalattackmanager/service/__main__.py +++ b/src/opticalattackmanager/service/__main__.py @@ -67,7 +67,7 @@ SERVICE_LIST_MODE = int( get_setting("OPTICALATTACKMANAGER_SERVICE_LIST_MODE", default=1) ) SERVICE_LIST_KEY = get_setting( - "OPTICALATTACKMANAGER_SERVICE_LIST_KEY", default="opt-sec:active-services" + "OPTICALATTACKMANAGER_SERVICE_LIST_KEY", default="opt-sec-active-services" ) MIN_NUMBER_WORKERS = int( get_setting("OPTICALATTACKMANAGERSERVICE_LOOP_MIN_WORKERS", default=2) @@ -295,6 +295,7 @@ async def monitor_services(terminate, service_list=None, cache=None): current_list = [] if SERVICE_LIST_MODE == LIST_REDIS_MODE: + LOGGER.debug(f"Services at the Redis DB: {cache.llen(SERVICE_LIST_KEY)}") current_list.extend( [ pickle.loads(service) @@ -332,22 +333,6 @@ async def monitor_services(terminate, service_list=None, cache=None): ) ) - # start standard implementation - # tasks = [] - # for service in current_list: - # aw = detect_attack( - # host, - # port, - # service["context"], - # service["service"], - # service["kpi"], - # # allow at most 90% of the monitoring interval to succeed - # monitoring_interval * 0.9, - # ) - # tasks.append(aw) - # [await aw for aw in tasks] - # end standard implementation - # start pool implementation if len(current_list) == 0: # guard clause to re-check if services still there LOGGER.info( @@ -385,7 +370,6 @@ async def monitor_services(terminate, service_list=None, cache=None): (i + 1) * k + min(i + 1, m), # last index host, port, - DROP_COUNTER, desired_monitoring_interval * 0.9, ) for i in range(cur_number_workers) @@ -476,6 +460,7 @@ def main(): if SERVICE_LIST_MODE == LIST_REDIS_MODE: cache = redis.Redis(host=redis_host, port=redis_port, password=redis_password) cache.ping() + LOGGER.info(f"Connecting to Redis: host={redis_host}, port={redis_port}, password={redis_password}") # clean the existing list that will be populated later on in this function cache.delete(SERVICE_LIST_KEY) @@ -544,7 +529,7 @@ def main(): # asyncio.create_task(monitor_services(service_list)) # Wait for Ctrl+C or termination signal - while not terminate.wait(timeout=1): + while not terminate.wait(timeout=10): pass LOGGER.info("Terminating...") diff --git a/src/opticalattackmanager/tests/test_unitary.py b/src/opticalattackmanager/tests/test_unitary.py index 5d29079d7c2c2bfbe1313c974c528e5211317e8f..0f50b333326a687f1c18e03ae6854561bb5501aa 100644 --- a/src/opticalattackmanager/tests/test_unitary.py +++ b/src/opticalattackmanager/tests/test_unitary.py @@ -13,108 +13,27 @@ # limitations under the License. import logging -import os -from unittest.mock import patch +import uuid -import pytest +from opticalattackmanager.utils.monitor import delegate_services -from common.Constants import (DEFAULT_GRPC_GRACE_PERIOD, - DEFAULT_GRPC_MAX_WORKERS, - DEFAULT_SERVICE_GRPC_PORTS, ServiceNameEnum) -from common.proto import dbscanserving_pb2 as dbscan -from common.proto.optical_attack_detector_pb2 import DetectionRequest -from opticalattackdetector.client.OpticalAttackDetectorClient import \ - OpticalAttackDetectorClient -from opticalattackdetector.Config import GRPC_SERVICE_PORT -from opticalattackdetector.service.OpticalAttackDetectorService import \ - OpticalAttackDetectorService - -# from .example_objects import CONTEXT_ID, CONTEXT_ID_2, SERVICE_DEV1_DEV2 - -port = 10000 + GRPC_SERVICE_PORT # avoid privileged ports LOGGER = logging.getLogger(__name__) -LOGGER.setLevel(logging.DEBUG) -@pytest.fixture(scope="session") -def optical_attack_detector_service(): - with patch.dict( - os.environ, +def test_delegate_services(): + service_list = [ { - "OPTICALATTACKDETECTORSERVICE_SERVICE_HOST": "127.0.0.1", - "OPTICALATTACKDETECTORSERVICE_SERVICE_PORT_GRPC": str( - 1000 - + DEFAULT_SERVICE_GRPC_PORTS.get( - ServiceNameEnum.OPTICALATTACKDETECTOR.value - ) - ), - "OPTICALATTACKMITIGATORSERVICE_SERVICE_HOST": "127.0.0.1", - "OPTICALATTACKMITIGATORSERVICE_SERVICE_PORT_GRPC": str( - 1000 - + DEFAULT_SERVICE_GRPC_PORTS.get( - ServiceNameEnum.OPTICALATTACKMITIGATOR.value - ) - ), - "DBSCANSERVINGSERVICE_SERVICE_HOST": "127.0.0.1", - "DBSCANSERVINGSERVICE_SERVICE_PORT_GRPC": str( - 1000 - + DEFAULT_SERVICE_GRPC_PORTS.get(ServiceNameEnum.DBSCANSERVING.value) - ), - }, - clear=True, - ): - _service = OpticalAttackDetectorService( - port=port, - max_workers=DEFAULT_GRPC_MAX_WORKERS, - grace_period=DEFAULT_GRPC_GRACE_PERIOD, - ) - # mocker_context_client = mock.patch('opticalattackdetector.service.OpticalAttackDetectorServiceServicerImpl.context_client') - # mocker_context_client.start() - - # mocker_influx_db = mock.patch('opticalattackdetector.service.OpticalAttackDetectorServiceServicerImpl.influxdb_client') - # mocker_influx_db.start() - - _service.start() - yield _service - _service.stop() - # mocker_context_client.stop() - # mocker_influx_db.stop() - - -@pytest.fixture(scope="session") -def optical_attack_detector_client(optical_attack_detector_service): - with patch.dict( - os.environ, - { - "OPTICALATTACKDETECTORSERVICE_SERVICE_HOST": "127.0.0.1", - "OPTICALATTACKDETECTORSERVICE_SERVICE_PORT_GRPC": str( - 1000 - + DEFAULT_SERVICE_GRPC_PORTS.get( - ServiceNameEnum.OPTICALATTACKDETECTOR.value - ) - ), - "OPTICALATTACKMITIGATORSERVICE_SERVICE_HOST": "127.0.0.1", - "OPTICALATTACKMITIGATORSERVICE_SERVICE_PORT_GRPC": str( - 1000 - + DEFAULT_SERVICE_GRPC_PORTS.get( - ServiceNameEnum.OPTICALATTACKMITIGATOR.value - ) - ), - "DBSCANSERVINGSERVICE_SERVICE_HOST": "127.0.0.1", - "DBSCANSERVINGSERVICE_SERVICE_PORT_GRPC": str( - 1000 - + DEFAULT_SERVICE_GRPC_PORTS.get(ServiceNameEnum.DBSCANSERVING.value) - ), - }, - clear=True, - ): - _client = OpticalAttackDetectorClient() - yield _client - _client.close() - - -def test_detect_attack( - optical_attack_detector_client: OpticalAttackDetectorClient, -): - LOGGER.info("placeholder") + "context": uuid.uuid4(), + "service": uuid.uuid4(), + "kpi": 10, + } + for _ in range(10)] + delegate_services( + service_list=service_list, + start_index=0, + end_index=9, + host="127.0.0.1", + port="10006", + monitoring_interval=10, + ) diff --git a/src/opticalattackmanager/utils/monitor.py b/src/opticalattackmanager/utils/monitor.py index 0d37cd0effdbb9cb10ca5454ef75d138a3d5fb4a..9889c0caf61129c30bc3f1681dceda1e1a4adfad 100644 --- a/src/opticalattackmanager/utils/monitor.py +++ b/src/opticalattackmanager/utils/monitor.py @@ -14,9 +14,9 @@ import asyncio import logging +import traceback from grpclib.client import Channel -from prometheus_client import Counter from common.proto.asyncio.optical_attack_detector_grpc import \ OpticalAttackDetectorServiceStub @@ -31,7 +31,6 @@ async def detect_attack( context_id: str, service_id: str, kpi_id: str, - drop_counter: Counter, timeout: float = 20.0, ) -> None: try: @@ -49,10 +48,9 @@ async def detect_attack( LOGGER.debug("Monitoring finished for {}/{}".format(service_id, kpi_id)) except Exception as e: LOGGER.warning( - "Exception while processing service_id {}/{}".format(service_id, kpi_id) + "Exception while processing service_id {}/{}: {}".format(service_id, kpi_id, e) ) - # LOGGER.exception(e) - drop_counter.inc() + traceback.print_exc() def delegate_services( @@ -61,7 +59,6 @@ def delegate_services( end_index: int, host: str, port: str, - drop_counter: Counter, monitoring_interval: float, ): async def run_internal_loop(): @@ -73,7 +70,6 @@ def delegate_services( service["context"], service["service"], service["kpi"], - drop_counter, # allow at most 90% of the monitoring interval to succeed monitoring_interval * 0.9, ) diff --git a/src/opticalattackmitigator/.gitlab-ci.yml b/src/opticalattackmitigator/.gitlab-ci.yml index 44f13aa20f0a19e24e3188bd0c2315f581b2e006..30eb94b1b5a765eb3dbfac3e544b9bd94a6e415b 100644 --- a/src/opticalattackmitigator/.gitlab-ci.yml +++ b/src/opticalattackmitigator/.gitlab-ci.yml @@ -33,7 +33,6 @@ build opticalattackmitigator: - 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 @@ -48,7 +47,7 @@ unit_test opticalattackmitigator: 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 + - if docker container ls | grep $IMAGE_NAME; then docker rm -f $IMAGE_NAME; else echo "$IMAGE_NAME container is not in the system"; fi script: - docker pull "$CI_REGISTRY_IMAGE/$IMAGE_NAME:$IMAGE_TAG" - docker run --name $IMAGE_NAME -d -p 10007:10007 -v "$PWD/src/$IMAGE_NAME/tests:/home/${IMAGE_NAME}/results" --network=teraflowbridge --rm $CI_REGISTRY_IMAGE/$IMAGE_NAME:$IMAGE_TAG @@ -66,8 +65,7 @@ unit_test opticalattackmitigator: - src/$IMAGE_NAME/**/*.{py,in,yml} - src/$IMAGE_NAME/Dockerfile - src/$IMAGE_NAME/tests/*.py - - src/$IMAGE_NAME/tests/Dockerfile - - manifests/$IMAGE_NAMEservice.yaml + - manifests/${IMAGE_NAME}service.yaml - .gitlab-ci.yml artifacts: when: always diff --git a/src/opticalattackmitigator/tests/test_unitary.py b/src/opticalattackmitigator/tests/test_unitary.py index 68836c4e81dd8e88b34cf85c9e2a29fd9f5e5678..76b31c3a853e64f87b30d9e2d27b9c98d44642b6 100644 --- a/src/opticalattackmitigator/tests/test_unitary.py +++ b/src/opticalattackmitigator/tests/test_unitary.py @@ -17,29 +17,20 @@ import os from unittest.mock import patch import pytest -from common.Constants import (DEFAULT_GRPC_GRACE_PERIOD, - DEFAULT_GRPC_MAX_WORKERS) from common.proto.optical_attack_mitigator_pb2 import AttackDescription from opticalattackmitigator.client.OpticalAttackMitigatorClient import \ OpticalAttackMitigatorClient -from opticalattackmitigator.Config import GRPC_SERVICE_PORT from opticalattackmitigator.service.OpticalAttackMitigatorService import \ OpticalAttackMitigatorService -port = 10000 + GRPC_SERVICE_PORT # avoid privileged ports - LOGGER = logging.getLogger(__name__) LOGGER.setLevel(logging.DEBUG) @pytest.fixture(scope="session") def optical_attack_mitigator_service(): - _service = OpticalAttackMitigatorService( - port=port, - max_workers=DEFAULT_GRPC_MAX_WORKERS, - grace_period=DEFAULT_GRPC_GRACE_PERIOD, - ) + _service = OpticalAttackMitigatorService() _service.start() yield _service _service.stop() @@ -51,7 +42,7 @@ def optical_attack_mitigator_client(optical_attack_mitigator_service): os.environ, { "OPTICALATTACKMITIGATORSERVICE_SERVICE_HOST": "127.0.0.1", - "OPTICALATTACKMITIGATORSERVICE_SERVICE_PORT_GRPC": str(port), + "OPTICALATTACKMITIGATORSERVICE_SERVICE_PORT_GRPC": str(optical_attack_mitigator_service.bind_port), }, clear=True, ): diff --git a/src/pathcomp/frontend/service/PathCompServiceServicerImpl.py b/src/pathcomp/frontend/service/PathCompServiceServicerImpl.py index 52f1cd3d584e14ca5dee1bc5e0511e014bdc8e73..784a09e32c2dbb6f6cfcbbbe51048e49ad9a7005 100644 --- a/src/pathcomp/frontend/service/PathCompServiceServicerImpl.py +++ b/src/pathcomp/frontend/service/PathCompServiceServicerImpl.py @@ -46,16 +46,18 @@ class PathCompServiceServicerImpl(PathCompServiceServicer): context_client = ContextClient() context_id = json_context_id(DEFAULT_CONTEXT_NAME) - if (len(request.services) == 1) and is_inter_domain(context_client, request.services[0].service_endpoint_ids): - #devices = get_devices_in_topology(context_client, ADMIN_CONTEXT_ID, INTERDOMAIN_TOPOLOGY_NAME) - #links = get_links_in_topology(context_client, ADMIN_CONTEXT_ID, INTERDOMAIN_TOPOLOGY_NAME) - topology_id = json_topology_id(INTERDOMAIN_TOPOLOGY_NAME, context_id) - else: - # TODO: improve filtering of devices and links - # TODO: add contexts, topologies, and membership of devices/links in topologies - #devices = context_client.ListDevices(Empty()) - #links = context_client.ListLinks(Empty()) - topology_id = json_topology_id(DEFAULT_TOPOLOGY_NAME, context_id) + # TODO: improve definition of topologies; for interdomain the current topology design might be not convenient + #if (len(request.services) == 1) and is_inter_domain(context_client, request.services[0].service_endpoint_ids): + # #devices = get_devices_in_topology(context_client, ADMIN_CONTEXT_ID, INTERDOMAIN_TOPOLOGY_NAME) + # #links = get_links_in_topology(context_client, ADMIN_CONTEXT_ID, INTERDOMAIN_TOPOLOGY_NAME) + # topology_id = json_topology_id(INTERDOMAIN_TOPOLOGY_NAME, context_id) + #else: + # # TODO: improve filtering of devices and links + # # TODO: add contexts, topologies, and membership of devices/links in topologies + # #devices = context_client.ListDevices(Empty()) + # #links = context_client.ListLinks(Empty()) + # topology_id = json_topology_id(DEFAULT_TOPOLOGY_NAME, context_id) + topology_id = json_topology_id(DEFAULT_TOPOLOGY_NAME, context_id) topology_details = context_client.GetTopologyDetails(TopologyId(**topology_id)) diff --git a/src/pathcomp/frontend/service/algorithms/_Algorithm.py b/src/pathcomp/frontend/service/algorithms/_Algorithm.py index 0eb01c1341421e379850f89d5671d9156c8a9fd6..0a1b62040a81ee964d373132763e964381cbc19e 100644 --- a/src/pathcomp/frontend/service/algorithms/_Algorithm.py +++ b/src/pathcomp/frontend/service/algorithms/_Algorithm.py @@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -import json, logging, requests +import json, logging, requests, uuid from typing import Dict, List, Optional, Tuple, Union from common.proto.context_pb2 import ( Connection, Device, DeviceList, EndPointId, Link, LinkList, Service, ServiceStatusEnum, ServiceTypeEnum) @@ -210,7 +210,7 @@ class _Algorithm: response_list = self.json_reply.get('response-list', []) reply = PathCompReply() grpc_services : Dict[Tuple[str, str], Service] = {} - grpc_connections : Dict[str, Connection] = {} + #grpc_connections : Dict[str, Connection] = {} for response in response_list: orig_service_id = response['serviceId'] context_uuid = orig_service_id['contextId'] @@ -251,23 +251,23 @@ class _Algorithm: self.logger.debug('BASIC connections = {:s}'.format(str(connections))) for connection in connections: - connection_uuid,service_type,path_hops,_ = connection - service_key = (context_uuid, connection_uuid) + service_uuid,service_type,path_hops,_ = connection + service_key = (context_uuid, service_uuid) if service_key in grpc_services: continue grpc_service = self.add_service_to_reply( - reply, context_uuid, connection_uuid, service_type, path_hops=path_hops, + reply, context_uuid, service_uuid, service_type, path_hops=path_hops, config_rules=orig_config_rules) grpc_services[service_key] = grpc_service for connection in connections: - connection_uuid,_,path_hops,dependencies = connection + service_uuid,_,path_hops,dependencies = connection - service_key = (context_uuid, connection_uuid) + service_key = (context_uuid, service_uuid) grpc_service = grpc_services.get(service_key) if grpc_service is None: raise Exception('Service({:s}) not found'.format(str(service_key))) #if connection_uuid in grpc_connections: continue - grpc_connection = self.add_connection_to_reply(reply, connection_uuid, grpc_service, path_hops) + grpc_connection = self.add_connection_to_reply(reply, str(uuid.uuid4()), grpc_service, path_hops) #grpc_connections[connection_uuid] = grpc_connection for sub_service_uuid in dependencies: diff --git a/src/pathcomp/frontend/service/algorithms/tools/ComposeConfigRules.py b/src/pathcomp/frontend/service/algorithms/tools/ComposeConfigRules.py index 91367e23f29a02aa3e9605fcd0d2864b9191d800..329552a914e478f0e927bd6f04fce6725bef0b5e 100644 --- a/src/pathcomp/frontend/service/algorithms/tools/ComposeConfigRules.py +++ b/src/pathcomp/frontend/service/algorithms/tools/ComposeConfigRules.py @@ -12,14 +12,18 @@ # See the License for the specific language governing permissions and # limitations under the License. -import itertools, json, re +import itertools, json, logging, re from typing import Dict, List, Optional, Tuple from common.proto.context_pb2 import ConfigRule +from common.tools.grpc.Tools import grpc_message_to_json_string from common.tools.object_factory.ConfigRule import json_config_rule_set +LOGGER = logging.getLogger(__name__) + SETTINGS_RULE_NAME = '/settings' -DEV_EP_SETTINGS = re.compile(r'\/device\[([^\]]+)\]\/endpoint\[([^\]]+)\]\/settings') +DEVICE_SETTINGS = re.compile(r'\/device\[([^\]]+)\]\/settings') +ENDPOINT_SETTINGS = re.compile(r'\/device\[([^\]]+)\]\/endpoint\[([^\]]+)\]\/settings') L2NM_SETTINGS_FIELD_DEFAULTS = { 'encapsulation_type': 'dot1q', @@ -75,27 +79,78 @@ def compose_device_config_rules( config_rules : List, subservice_config_rules : List, path_hops : List, device_name_mapping : Dict[str, str], endpoint_name_mapping : Dict[Tuple[str, str], str] ) -> None: + LOGGER.debug('[compose_device_config_rules] begin') + + LOGGER.debug('[compose_device_config_rules] device_name_mapping={:s}'.format(str(device_name_mapping))) + LOGGER.debug('[compose_device_config_rules] endpoint_name_mapping={:s}'.format(str(endpoint_name_mapping))) + devices_traversed = set() endpoints_traversed = set() for path_hop in path_hops: device_uuid_or_name = path_hop['device'] + devices_traversed.add(device_uuid_or_name) endpoints_traversed.add((device_uuid_or_name, path_hop['ingress_ep'])) endpoints_traversed.add((device_uuid_or_name, path_hop['egress_ep'])) - for config_rule in config_rules: - if config_rule.WhichOneof('config_rule') != 'custom': continue - match = DEV_EP_SETTINGS.match(config_rule.custom.resource_key) - if match is None: continue + LOGGER.debug('[compose_device_config_rules] devices_traversed={:s}'.format(str(devices_traversed))) + LOGGER.debug('[compose_device_config_rules] endpoints_traversed={:s}'.format(str(endpoints_traversed))) - device_uuid_or_name = match.group(1) - device_name_or_uuid = device_name_mapping[device_uuid_or_name] - device_keys = {device_uuid_or_name, device_name_or_uuid} - - endpoint_uuid_or_name = match.group(2) - endpoint_name_or_uuid_1 = endpoint_name_mapping[(device_uuid_or_name, endpoint_uuid_or_name)] - endpoint_name_or_uuid_2 = endpoint_name_mapping[(device_name_or_uuid, endpoint_uuid_or_name)] - endpoint_keys = {endpoint_uuid_or_name, endpoint_name_or_uuid_1, endpoint_name_or_uuid_2} - - device_endpoint_keys = set(itertools.product(device_keys, endpoint_keys)) - if len(device_endpoint_keys.intersection(endpoints_traversed)) == 0: continue - subservice_config_rules.append(config_rule) + for config_rule in config_rules: + LOGGER.debug('[compose_device_config_rules] processing config_rule: {:s}'.format( + grpc_message_to_json_string(config_rule))) + + if config_rule.WhichOneof('config_rule') == 'acl': + LOGGER.debug('[compose_device_config_rules] is acl') + endpoint_id = config_rule.acl.endpoint_id + device_uuid_or_name = endpoint_id.device_id.device_uuid.uuid + LOGGER.debug('[compose_device_config_rules] device_uuid_or_name={:s}'.format(str(device_uuid_or_name))) + device_name_or_uuid = device_name_mapping.get(device_uuid_or_name, device_uuid_or_name) + LOGGER.debug('[compose_device_config_rules] device_name_or_uuid={:s}'.format(str(device_name_or_uuid))) + device_keys = {device_uuid_or_name, device_name_or_uuid} + if len(device_keys.intersection(devices_traversed)) == 0: continue + + endpoint_uuid = endpoint_id.endpoint_uuid.uuid + LOGGER.debug('[compose_device_config_rules] endpoint_uuid={:s}'.format(str(endpoint_uuid))) + # given endpoint uuids link 'eth-1/0/20.533', remove last part after the '.' + endpoint_uuid_or_name = (endpoint_uuid[::-1].split('.', maxsplit=1)[-1])[::-1] + LOGGER.debug('[compose_device_config_rules] endpoint_uuid_or_name={:s}'.format(str(endpoint_uuid_or_name))) + endpoint_name_or_uuid_1 = endpoint_name_mapping[(device_uuid_or_name, endpoint_uuid_or_name)] + endpoint_name_or_uuid_2 = endpoint_name_mapping[(device_name_or_uuid, endpoint_uuid_or_name)] + endpoint_keys = {endpoint_uuid_or_name, endpoint_name_or_uuid_1, endpoint_name_or_uuid_2} + + device_endpoint_keys = set(itertools.product(device_keys, endpoint_keys)) + if len(device_endpoint_keys.intersection(endpoints_traversed)) == 0: continue + + LOGGER.debug('[compose_device_config_rules] adding acl config rule') + subservice_config_rules.append(config_rule) + + elif config_rule.WhichOneof('config_rule') == 'custom': + LOGGER.debug('[compose_device_config_rules] is custom') + + match = DEVICE_SETTINGS.match(config_rule.custom.resource_key) + if match is not None: + device_uuid_or_name = match.group(1) + device_name_or_uuid = device_name_mapping[device_uuid_or_name] + device_keys = {device_uuid_or_name, device_name_or_uuid} + + if len(device_keys.intersection(devices_traversed)) == 0: continue + subservice_config_rules.append(config_rule) + + match = ENDPOINT_SETTINGS.match(config_rule.custom.resource_key) + if match is not None: + device_uuid_or_name = match.group(1) + device_name_or_uuid = device_name_mapping[device_uuid_or_name] + device_keys = {device_uuid_or_name, device_name_or_uuid} + + endpoint_uuid_or_name = match.group(2) + endpoint_name_or_uuid_1 = endpoint_name_mapping[(device_uuid_or_name, endpoint_uuid_or_name)] + endpoint_name_or_uuid_2 = endpoint_name_mapping[(device_name_or_uuid, endpoint_uuid_or_name)] + endpoint_keys = {endpoint_uuid_or_name, endpoint_name_or_uuid_1, endpoint_name_or_uuid_2} + + device_endpoint_keys = set(itertools.product(device_keys, endpoint_keys)) + if len(device_endpoint_keys.intersection(endpoints_traversed)) == 0: continue + subservice_config_rules.append(config_rule) + else: + continue + + LOGGER.debug('[compose_device_config_rules] end') diff --git a/src/pathcomp/frontend/service/algorithms/tools/ComputeSubServices.py b/src/pathcomp/frontend/service/algorithms/tools/ComputeSubServices.py index 8ffdfaf3ed9d35b52e9c262a980e6e8e8fd234af..06b24031bd82b6b51add6569b9c35b360f0491fe 100644 --- a/src/pathcomp/frontend/service/algorithms/tools/ComputeSubServices.py +++ b/src/pathcomp/frontend/service/algorithms/tools/ComputeSubServices.py @@ -49,7 +49,7 @@ import logging, queue, uuid from typing import Dict, List, Optional, Tuple from common.DeviceTypes import DeviceTypeEnum from common.proto.context_pb2 import Device, ServiceTypeEnum -from .ResourceGroups import IGNORED_DEVICE_TYPES, get_resource_classification +from .ResourceGroups import IGNORED_DEVICE_TYPES, REMOTEDOMAIN_DEVICE_TYPES, get_resource_classification from .ServiceTypes import get_service_type LOGGER = logging.getLogger(__name__) @@ -81,17 +81,31 @@ def convert_explicit_path_hops_to_connections( LOGGER.debug(' ignored') continue - if prv_res_class[0] is None: + if res_class[1] in REMOTEDOMAIN_DEVICE_TYPES: + LOGGER.debug(' create and terminate underlying connection') + + # create underlying connection + sub_service_uuid = str(uuid.uuid4()) + prv_service_type = connection_stack.queue[-1][1] + service_type = get_service_type(res_class[1], prv_service_type) + connection_stack.put((sub_service_uuid, service_type, [path_hop], [])) + + # underlying connection ended + connection = connection_stack.get() + connections.append(connection) + connection_stack.queue[-1][3].append(connection[0]) + #connection_stack.queue[-1][2].append(path_hop) + elif prv_res_class[0] is None: # path ingress LOGGER.debug(' path ingress') connection_stack.put((main_service_uuid, main_service_type, [path_hop], [])) elif prv_res_class[0] > res_class[0]: # create underlying connection LOGGER.debug(' create underlying connection') - connection_uuid = str(uuid.uuid4()) + sub_service_uuid = str(uuid.uuid4()) prv_service_type = connection_stack.queue[-1][1] service_type = get_service_type(res_class[1], prv_service_type) - connection_stack.put((connection_uuid, service_type, [path_hop], [])) + connection_stack.put((sub_service_uuid, service_type, [path_hop], [])) elif prv_res_class[0] == res_class[0]: # same resource group kind LOGGER.debug(' same resource group kind') @@ -106,10 +120,10 @@ def convert_explicit_path_hops_to_connections( connections.append(connection) connection_stack.queue[-1][3].append(connection[0]) - connection_uuid = str(uuid.uuid4()) + sub_service_uuid = str(uuid.uuid4()) prv_service_type = connection_stack.queue[-1][1] service_type = get_service_type(res_class[1], prv_service_type) - connection_stack.put((connection_uuid, service_type, [path_hop], [])) + connection_stack.put((sub_service_uuid, service_type, [path_hop], [])) elif prv_res_class[0] < res_class[0]: # underlying connection ended LOGGER.debug(' underlying connection ended') diff --git a/src/pathcomp/frontend/service/algorithms/tools/EroPathToHops.py b/src/pathcomp/frontend/service/algorithms/tools/EroPathToHops.py index 670757d76b7d21ecf28f6ead4e8bc4e21951d18e..c3e1a0d5738bc2fe4706c336b587ece97746da85 100644 --- a/src/pathcomp/frontend/service/algorithms/tools/EroPathToHops.py +++ b/src/pathcomp/frontend/service/algorithms/tools/EroPathToHops.py @@ -48,9 +48,52 @@ from common.proto.context_pb2 import Link LOGGER = logging.getLogger(__name__) +MAP_TAPI_UUIDS = { + "c3dbaa44-9cda-5d54-8f99-0f282362be65": "5b835e46-53f7-52e8-9c8a-077322679e36", # node-1-port-13-input => node-1-port-13-output + "1fb9ac86-b7ad-5d6d-87b1-a09d995f1ddd": "c9df6ece-1650-5078-876a-1e488a453625", # node-1-port-14-input => node-1-port-14-output + "aa109937-8291-5a09-853a-97bff463e569": "b245480f-027c-53a0-9320-fca5b9d7a1e1", # node-1-port-15-input => node-1-port-15-output + "6653ae16-42a3-56b5-adf3-71adda024a61": "ac356900-ce2f-5c15-b038-1b05e6f50bf7", # node-1-port-17-input => node-1-port-17-output + "d782ef85-a473-50b4-93b5-2af86024a42a": "dcfeedd3-2d47-5bc8-b31c-ed9f973d8b76", # node-2-port-13-input => node-2-port-13-output + "bbbd83ef-6053-55dc-ab08-06fb0c2bd081": "57bcf45b-eb47-5a9c-86d1-d9cff0c910fd", # node-2-port-14-input => node-2-port-14-output + "27cdf70d-4e48-53ff-bc4f-20addf6524c0": "fd31eff5-392e-5fb5-a6f4-6dfca583344d", # node-2-port-15-input => node-2-port-15-output + "55ac2364-fad8-5a05-ac2b-5003997ff89e": "d12a2591-7f4a-575d-8fda-0bc3d6b7ca32", # node-2-port-17-input => node-2-port-17-output + "59f44a3c-32a5-5abf-af58-45e6fa7ca657": "1977ef5c-4383-5195-9221-0cdf8ee26cb7", # node-3-port-13-input => node-3-port-13-output + "1be3f905-d553-5291-9906-47c0772d45aa": "9def067b-9a75-54df-8867-853f35a42e87", # node-3-port-14-input => node-3-port-14-output + "fb4ece7a-2dd1-593a-b6ca-a787b3b59fc5": "1f294257-132a-54ad-b653-ef8b7517c9d8", # node-3-port-15-input => node-3-port-15-output + "a571d2fe-c7f8-5ac8-b2af-8e5b92a558b0": "5b60a688-deac-567a-8e36-0d52e56fd4fc", # node-3-port-16-input => node-3-port-16-output + "9ea9dc53-2d6a-5f28-b81a-e930f7cbedf9": "2aec14c1-3a84-5cba-8f22-783bd0273cd0", # node-3-port-17-input => node-3-port-17-output + "9ec8e0f3-3378-55e0-bed1-be1fe120a1a9": "ece2ed55-ce16-59d3-8137-3f4cf17e67ab", # node-3-port-18-input => node-3-port-18-output + "a7e114aa-a3b6-52ae-b7b7-0e5fe4dd4d1c": "0a05e43d-a13c-5276-9839-613600f3ff28", # node-4-port-13-input => node-4-port-13-output + "4ca8357a-3468-51e6-bba8-65137486666f": "18926fdf-de5c-5a52-be88-cccc065e5e03", # node-4-port-14-input => node-4-port-14-output + "a7e9f06f-6fd2-594e-8a0c-25bfe8c652d7": "1adb9e17-e499-58dc-8aa2-881ed5ce9670", # node-4-port-15-input => node-4-port-15-output + "9f6a23b2-c71c-5559-8fb3-f76421bea1d9": "049bb1f1-cc04-5b72-8c0f-43891d9637bf", # node-4-port-16-input => node-4-port-16-output + "f1d74c96-41f5-5eb9-a160-a38463184934": "2206440b-ef66-5d3e-8da5-40608fb00a10", # node-4-port-17-input => node-4-port-17-output + + "5b835e46-53f7-52e8-9c8a-077322679e36": "c3dbaa44-9cda-5d54-8f99-0f282362be65", # node-1-port-13-output => node-1-port-13-input + "c9df6ece-1650-5078-876a-1e488a453625": "1fb9ac86-b7ad-5d6d-87b1-a09d995f1ddd", # node-1-port-14-output => node-1-port-14-input + "b245480f-027c-53a0-9320-fca5b9d7a1e1": "aa109937-8291-5a09-853a-97bff463e569", # node-1-port-15-output => node-1-port-15-input + "ac356900-ce2f-5c15-b038-1b05e6f50bf7": "6653ae16-42a3-56b5-adf3-71adda024a61", # node-1-port-17-output => node-1-port-17-input + "dcfeedd3-2d47-5bc8-b31c-ed9f973d8b76": "d782ef85-a473-50b4-93b5-2af86024a42a", # node-2-port-13-output => node-2-port-13-input + "57bcf45b-eb47-5a9c-86d1-d9cff0c910fd": "bbbd83ef-6053-55dc-ab08-06fb0c2bd081", # node-2-port-14-output => node-2-port-14-input + "fd31eff5-392e-5fb5-a6f4-6dfca583344d": "27cdf70d-4e48-53ff-bc4f-20addf6524c0", # node-2-port-15-output => node-2-port-15-input + "d12a2591-7f4a-575d-8fda-0bc3d6b7ca32": "55ac2364-fad8-5a05-ac2b-5003997ff89e", # node-2-port-17-output => node-2-port-17-input + "1977ef5c-4383-5195-9221-0cdf8ee26cb7": "59f44a3c-32a5-5abf-af58-45e6fa7ca657", # node-3-port-13-output => node-3-port-13-input + "9def067b-9a75-54df-8867-853f35a42e87": "1be3f905-d553-5291-9906-47c0772d45aa", # node-3-port-14-output => node-3-port-14-input + "1f294257-132a-54ad-b653-ef8b7517c9d8": "fb4ece7a-2dd1-593a-b6ca-a787b3b59fc5", # node-3-port-15-output => node-3-port-15-input + "5b60a688-deac-567a-8e36-0d52e56fd4fc": "a571d2fe-c7f8-5ac8-b2af-8e5b92a558b0", # node-3-port-16-output => node-3-port-16-input + "2aec14c1-3a84-5cba-8f22-783bd0273cd0": "9ea9dc53-2d6a-5f28-b81a-e930f7cbedf9", # node-3-port-17-output => node-3-port-17-input + "ece2ed55-ce16-59d3-8137-3f4cf17e67ab": "9ec8e0f3-3378-55e0-bed1-be1fe120a1a9", # node-3-port-18-output => node-3-port-18-input + "0a05e43d-a13c-5276-9839-613600f3ff28": "a7e114aa-a3b6-52ae-b7b7-0e5fe4dd4d1c", # node-4-port-13-output => node-4-port-13-input + "18926fdf-de5c-5a52-be88-cccc065e5e03": "4ca8357a-3468-51e6-bba8-65137486666f", # node-4-port-14-output => node-4-port-14-input + "1adb9e17-e499-58dc-8aa2-881ed5ce9670": "a7e9f06f-6fd2-594e-8a0c-25bfe8c652d7", # node-4-port-15-output => node-4-port-15-input + "049bb1f1-cc04-5b72-8c0f-43891d9637bf": "9f6a23b2-c71c-5559-8fb3-f76421bea1d9", # node-4-port-16-output => node-4-port-16-input + "2206440b-ef66-5d3e-8da5-40608fb00a10": "f1d74c96-41f5-5eb9-a160-a38463184934", # node-4-port-17-output => node-4-port-17-input +} + def eropath_to_hops( ero_path : List[Dict], endpoint_to_link_dict : Dict[Tuple[str, str, str], Tuple[Dict, Link]] ) -> List[Dict]: + LOGGER.debug('ero_path = {:s}'.format(str(ero_path))) try: path_hops = [] num_ero_hops = len(ero_path) @@ -68,13 +111,24 @@ def eropath_to_hops( if num_ero_hops - 1 == len(path_hops): break - link_tuple = endpoint_to_link_dict[(device_uuid, endpoint_uuid, 'src')] + endpoint_key = (last_hop['device'], last_hop['egress_ep'], 'src') + link_tuple = endpoint_to_link_dict[endpoint_key] if link_tuple is None: raise Exception('Malformed path') - ingress = link_tuple[0]['link_endpoint_ids'][-1] + + ingress = next(iter([ + ep_id + for ep_id in link_tuple[0]['link_endpoint_ids'] + if ep_id['endpoint_id']['device_id'] != device_uuid + ]), None) + + ingress_ep = ingress['endpoint_id']['endpoint_uuid'] + ingress_ep = MAP_TAPI_UUIDS.get(ingress_ep, ingress_ep) path_hops.append({ 'device': ingress['endpoint_id']['device_id'], - 'ingress_ep': ingress['endpoint_id']['endpoint_uuid'] + 'ingress_ep': ingress_ep, + 'egress_ep': endpoint_uuid, }) + LOGGER.debug('path_hops = {:s}'.format(str(path_hops))) return path_hops except: LOGGER.exception('Unhandled exception: ero_path={:s} endpoint_to_link_dict={:s}'.format( diff --git a/src/pathcomp/frontend/service/algorithms/tools/ResourceGroups.py b/src/pathcomp/frontend/service/algorithms/tools/ResourceGroups.py index c1591dbeb7c71c950135b92446849569bcd781f8..843c41803805106e9f7575fb9ff6b1344d036994 100644 --- a/src/pathcomp/frontend/service/algorithms/tools/ResourceGroups.py +++ b/src/pathcomp/frontend/service/algorithms/tools/ResourceGroups.py @@ -22,7 +22,6 @@ from common.tools.grpc.Tools import grpc_message_to_json_string DEVICE_TYPE_TO_DEEPNESS = { DeviceTypeEnum.EMULATED_DATACENTER.value : 90, DeviceTypeEnum.DATACENTER.value : 90, - DeviceTypeEnum.NETWORK.value : 90, DeviceTypeEnum.TERAFLOWSDN_CONTROLLER.value : 80, DeviceTypeEnum.EMULATED_PACKET_ROUTER.value : 70, @@ -50,9 +49,11 @@ DEVICE_TYPE_TO_DEEPNESS = { DeviceTypeEnum.OPTICAL_ROADM.value : 10, DeviceTypeEnum.EMULATED_OPTICAL_SPLITTER.value : 0, + DeviceTypeEnum.NETWORK.value : 0, # network out of our control; always delegate } IGNORED_DEVICE_TYPES = {DeviceTypeEnum.EMULATED_OPTICAL_SPLITTER} +REMOTEDOMAIN_DEVICE_TYPES = {DeviceTypeEnum.NETWORK} def get_device_controller_uuid( device : Device diff --git a/src/pathcomp/frontend/service/algorithms/tools/ServiceTypes.py b/src/pathcomp/frontend/service/algorithms/tools/ServiceTypes.py index 463b8039b6c8c611b579bdb74933c06fb0f99507..73a741ae551c5179cb78268f6fb87040c8481c53 100644 --- a/src/pathcomp/frontend/service/algorithms/tools/ServiceTypes.py +++ b/src/pathcomp/frontend/service/algorithms/tools/ServiceTypes.py @@ -16,6 +16,10 @@ from common.DeviceTypes import DeviceTypeEnum from common.proto.context_pb2 import ServiceTypeEnum +NETWORK_DEVICE_TYPES = { + DeviceTypeEnum.NETWORK, +} + PACKET_DEVICE_TYPES = { DeviceTypeEnum.TERAFLOWSDN_CONTROLLER, DeviceTypeEnum.PACKET_ROUTER, DeviceTypeEnum.EMULATED_PACKET_ROUTER, @@ -45,6 +49,7 @@ def get_service_type(device_type : DeviceTypeEnum, prv_service_type : ServiceTyp if device_type in PACKET_DEVICE_TYPES and prv_service_type in SERVICE_TYPE_LXNM: return prv_service_type if device_type in L2_DEVICE_TYPES: return ServiceTypeEnum.SERVICETYPE_L2NM if device_type in OPTICAL_DEVICE_TYPES: return ServiceTypeEnum.SERVICETYPE_TAPI_CONNECTIVITY_SERVICE + if device_type in NETWORK_DEVICE_TYPES: return prv_service_type str_fields = ', '.join([ 'device_type={:s}'.format(str(device_type)), diff --git a/src/pathcomp/frontend/tests/Objects_A_B_C.py b/src/pathcomp/frontend/tests/Objects_A_B_C.py index 5290123b62251a58d8e0a7f273ea23c38ee2cc8a..4bd1907cd71530973424d623428d8318acdf8ea9 100644 --- a/src/pathcomp/frontend/tests/Objects_A_B_C.py +++ b/src/pathcomp/frontend/tests/Objects_A_B_C.py @@ -16,14 +16,14 @@ from common.Constants import DEFAULT_CONTEXT_NAME, DEFAULT_TOPOLOGY_NAME from common.tools.object_factory.Constraint import json_constraint_sla_capacity, json_constraint_sla_latency 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.EndPoint import json_endpoint_descriptor, 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, topology_id=None): device_id = json_device_id(device_uuid) - endpoints = [(endpoint_uuid, 'copper', []) for endpoint_uuid in endpoint_uuids] + endpoints = [json_endpoint_descriptor(endpoint_uuid, 'copper', []) for endpoint_uuid in endpoint_uuids] endpoints = json_endpoints(device_id, endpoints, topology_id=topology_id) device = json_device_emulated_packet_router_disabled(device_uuid, endpoints=endpoints) return device_id, endpoints, device diff --git a/src/pathcomp/frontend/tests/Objects_DC_CSGW_TN.py b/src/pathcomp/frontend/tests/Objects_DC_CSGW_TN.py index 053dfd4c45e3822914745905c71f9b64300e1a2f..38218e987a2aadf1d3a7152fa64125f606e3f947 100644 --- a/src/pathcomp/frontend/tests/Objects_DC_CSGW_TN.py +++ b/src/pathcomp/frontend/tests/Objects_DC_CSGW_TN.py @@ -18,7 +18,7 @@ from common.tools.object_factory.Context import json_context, json_context_id from common.tools.object_factory.Device import ( json_device_emulated_connect_rules, json_device_emulated_datacenter_disabled, json_device_emulated_packet_router_disabled, json_device_id) -from common.tools.object_factory.EndPoint import json_endpoints +from common.tools.object_factory.EndPoint import json_endpoint_descriptor, 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 @@ -29,7 +29,7 @@ ADD_CONNECT_RULES_TO_DEVICES = False def compose_router(device_uuid, endpoint_uuids, topology_id=None): device_id = json_device_id(device_uuid) - r_endpoints = [(endpoint_uuid, 'copper', []) for endpoint_uuid in endpoint_uuids] + r_endpoints = [json_endpoint_descriptor(endpoint_uuid, 'copper') for endpoint_uuid in endpoint_uuids] config_rules = json_device_emulated_connect_rules(r_endpoints) if ADD_CONNECT_RULES_TO_DEVICES else [] endpoints = json_endpoints(device_id, r_endpoints, topology_id=topology_id) j_endpoints = [] if ADD_CONNECT_RULES_TO_DEVICES else endpoints @@ -38,7 +38,7 @@ def compose_router(device_uuid, endpoint_uuids, topology_id=None): def compose_datacenter(device_uuid, endpoint_uuids, topology_id=None): device_id = json_device_id(device_uuid) - r_endpoints = [(endpoint_uuid, 'copper', []) for endpoint_uuid in endpoint_uuids] + r_endpoints = [json_endpoint_descriptor(endpoint_uuid, 'copper') for endpoint_uuid in endpoint_uuids] config_rules = json_device_emulated_connect_rules(r_endpoints) if ADD_CONNECT_RULES_TO_DEVICES else [] endpoints = json_endpoints(device_id, r_endpoints, topology_id=topology_id) j_endpoints = [] if ADD_CONNECT_RULES_TO_DEVICES else endpoints diff --git a/src/pathcomp/frontend/tests/Objects_DC_CSGW_TN_OLS.py b/src/pathcomp/frontend/tests/Objects_DC_CSGW_TN_OLS.py index 2c8428568c001a53cbf2c08aa13b61ad14a1bd51..3b385412038edfcfa8a1c7c8d5a805c867c69993 100644 --- a/src/pathcomp/frontend/tests/Objects_DC_CSGW_TN_OLS.py +++ b/src/pathcomp/frontend/tests/Objects_DC_CSGW_TN_OLS.py @@ -18,8 +18,9 @@ from common.tools.object_factory.Constraint import json_constraint_sla_capacity, from common.tools.object_factory.Context import json_context, json_context_id from common.tools.object_factory.Device import ( json_device_emulated_connect_rules, json_device_emulated_datacenter_disabled, - json_device_emulated_packet_router_disabled, json_device_emulated_tapi_disabled, json_device_id) -from common.tools.object_factory.EndPoint import json_endpoints + json_device_emulated_packet_router_disabled, json_device_emulated_tapi_disabled, + json_device_id) +from common.tools.object_factory.EndPoint import json_endpoint_descriptor, 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 @@ -30,7 +31,7 @@ ADD_CONNECT_RULES_TO_DEVICES = False def compose_router(device_uuid, endpoint_uuids, topology_id=None): device_id = json_device_id(device_uuid) - r_endpoints = [(endpoint_uuid, 'copper', []) for endpoint_uuid in endpoint_uuids] + r_endpoints = [json_endpoint_descriptor(endpoint_uuid, 'copper') for endpoint_uuid in endpoint_uuids] config_rules = json_device_emulated_connect_rules(r_endpoints) if ADD_CONNECT_RULES_TO_DEVICES else [] endpoints = json_endpoints(device_id, r_endpoints, topology_id=topology_id) j_endpoints = [] if ADD_CONNECT_RULES_TO_DEVICES else endpoints @@ -39,7 +40,7 @@ def compose_router(device_uuid, endpoint_uuids, topology_id=None): def compose_ols(device_uuid, endpoint_uuids, topology_id=None): device_id = json_device_id(device_uuid) - r_endpoints = [(endpoint_uuid, 'optical', []) for endpoint_uuid in endpoint_uuids] + r_endpoints = [json_endpoint_descriptor(endpoint_uuid, 'optical') for endpoint_uuid in endpoint_uuids] config_rules = json_device_emulated_connect_rules(r_endpoints) if ADD_CONNECT_RULES_TO_DEVICES else [] endpoints = json_endpoints(device_id, r_endpoints, topology_id=topology_id) j_endpoints = [] if ADD_CONNECT_RULES_TO_DEVICES else endpoints @@ -48,7 +49,7 @@ def compose_ols(device_uuid, endpoint_uuids, topology_id=None): def compose_datacenter(device_uuid, endpoint_uuids, topology_id=None): device_id = json_device_id(device_uuid) - r_endpoints = [(endpoint_uuid, 'copper', []) for endpoint_uuid in endpoint_uuids] + r_endpoints = [json_endpoint_descriptor(endpoint_uuid, 'copper') for endpoint_uuid in endpoint_uuids] config_rules = json_device_emulated_connect_rules(r_endpoints) if ADD_CONNECT_RULES_TO_DEVICES else [] endpoints = json_endpoints(device_id, r_endpoints, topology_id=topology_id) j_endpoints = [] if ADD_CONNECT_RULES_TO_DEVICES else endpoints diff --git a/src/pathcomp/frontend/tests/test_ero_path.py b/src/pathcomp/frontend/tests/test_ero_path.py new file mode 100644 index 0000000000000000000000000000000000000000..e263544a00e104065495fda3f2c85f1528ad8561 --- /dev/null +++ b/src/pathcomp/frontend/tests/test_ero_path.py @@ -0,0 +1,198 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 typing import Any, Dict, List, Tuple +#from common.proto.context_pb2 import Link + +logging.basicConfig(level=logging.DEBUG) +LOGGER = logging.getLogger(__name__) + +ERO_PATH = [ + {'device_id': 'DC1-GW', 'endpoint_uuid': 'int'}, + {'device_id': 'DC1-GW', 'endpoint_uuid': 'eth1'}, + {'device_id': 'CS1-GW1', 'endpoint_uuid': '1/2'}, + {'device_id': 'TN-R2', 'endpoint_uuid': '2/1'}, + {'device_id': 'TN-OLS', 'endpoint_uuid': '77486d5b0a15'}, + {'device_id': 'TN-R4', 'endpoint_uuid': '1/2'}, + {'device_id': 'CS2-GW1', 'endpoint_uuid': '10/1'}, + {'device_id': 'DC2-GW', 'endpoint_uuid': 'int'} +] + +ENDPOINT_TO_LINK_DICT = { + ('CS1-GW1', '1/1' , 'dst'): ({'link_Id': 'TN-R1/1/1==CS1-GW1/1/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-R1', 'endpoint_uuid': '1/1'}}, {'endpoint_id': {'device_id': 'CS1-GW1', 'endpoint_uuid': '1/1'}}]}, None), + ('CS1-GW1', '1/1' , 'src'): ({'link_Id': 'CS1-GW1/1/1==TN-R1/1/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'CS1-GW1', 'endpoint_uuid': '1/1'}}, {'endpoint_id': {'device_id': 'TN-R1', 'endpoint_uuid': '1/1'}}]}, None), + ('CS1-GW1', '1/2' , 'dst'): ({'link_Id': 'TN-R2/1/2==CS1-GW1/1/2', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-R2', 'endpoint_uuid': '1/2'}}, {'endpoint_id': {'device_id': 'CS1-GW1', 'endpoint_uuid': '1/2'}}]}, None), + ('CS1-GW1', '1/2' , 'src'): ({'link_Id': 'CS1-GW1/1/2==TN-R2/1/2', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'CS1-GW1', 'endpoint_uuid': '1/2'}}, {'endpoint_id': {'device_id': 'TN-R2', 'endpoint_uuid': '1/2'}}]}, None), + ('CS1-GW1', '10/1' , 'dst'): ({'link_Id': 'DC1-GW/eth1==CS1-GW1/10/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'DC1-GW', 'endpoint_uuid': 'eth1'}}, {'endpoint_id': {'device_id': 'CS1-GW1', 'endpoint_uuid': '10/1'}}]}, None), + ('CS1-GW1', '10/1' , 'src'): ({'link_Id': 'CS1-GW1/10/1==DC1-GW/eth1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'CS1-GW1', 'endpoint_uuid': '10/1'}}, {'endpoint_id': {'device_id': 'DC1-GW', 'endpoint_uuid': 'eth1'}}]}, None), + ('CS1-GW2', '1/1' , 'dst'): ({'link_Id': 'TN-R2/1/1==CS1-GW2/1/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-R2', 'endpoint_uuid': '1/1'}}, {'endpoint_id': {'device_id': 'CS1-GW2', 'endpoint_uuid': '1/1'}}]}, None), + ('CS1-GW2', '1/1' , 'src'): ({'link_Id': 'CS1-GW2/1/1==TN-R2/1/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'CS1-GW2', 'endpoint_uuid': '1/1'}}, {'endpoint_id': {'device_id': 'TN-R2', 'endpoint_uuid': '1/1'}}]}, None), + ('CS1-GW2', '1/2' , 'dst'): ({'link_Id': 'TN-R1/1/2==CS1-GW2/1/2', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-R1', 'endpoint_uuid': '1/2'}}, {'endpoint_id': {'device_id': 'CS1-GW2', 'endpoint_uuid': '1/2'}}]}, None), + ('CS1-GW2', '1/2' , 'src'): ({'link_Id': 'CS1-GW2/1/2==TN-R1/1/2', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'CS1-GW2', 'endpoint_uuid': '1/2'}}, {'endpoint_id': {'device_id': 'TN-R1', 'endpoint_uuid': '1/2'}}]}, None), + ('CS1-GW2', '10/1' , 'dst'): ({'link_Id': 'DC1-GW/eth2==CS1-GW2/10/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'DC1-GW', 'endpoint_uuid': 'eth2'}}, {'endpoint_id': {'device_id': 'CS1-GW2', 'endpoint_uuid': '10/1'}}]}, None), + ('CS1-GW2', '10/1' , 'src'): ({'link_Id': 'CS1-GW2/10/1==DC1-GW/eth2', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'CS1-GW2', 'endpoint_uuid': '10/1'}}, {'endpoint_id': {'device_id': 'DC1-GW', 'endpoint_uuid': 'eth2'}}]}, None), + ('CS2-GW1', '1/1' , 'dst'): ({'link_Id': 'TN-R3/1/1==CS2-GW1/1/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-R3', 'endpoint_uuid': '1/1'}}, {'endpoint_id': {'device_id': 'CS2-GW1', 'endpoint_uuid': '1/1'}}]}, None), + ('CS2-GW1', '1/1' , 'src'): ({'link_Id': 'CS2-GW1/1/1==TN-R3/1/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'CS2-GW1', 'endpoint_uuid': '1/1'}}, {'endpoint_id': {'device_id': 'TN-R3', 'endpoint_uuid': '1/1'}}]}, None), + ('CS2-GW1', '1/2' , 'dst'): ({'link_Id': 'TN-R4/1/2==CS2-GW1/1/2', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-R4', 'endpoint_uuid': '1/2'}}, {'endpoint_id': {'device_id': 'CS2-GW1', 'endpoint_uuid': '1/2'}}]}, None), + ('CS2-GW1', '1/2' , 'src'): ({'link_Id': 'CS2-GW1/1/2==TN-R4/1/2', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'CS2-GW1', 'endpoint_uuid': '1/2'}}, {'endpoint_id': {'device_id': 'TN-R4', 'endpoint_uuid': '1/2'}}]}, None), + ('CS2-GW1', '10/1' , 'dst'): ({'link_Id': 'DC2-GW/eth1==CS2-GW1/10/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'DC2-GW', 'endpoint_uuid': 'eth1'}}, {'endpoint_id': {'device_id': 'CS2-GW1', 'endpoint_uuid': '10/1'}}]}, None), + ('CS2-GW1', '10/1' , 'src'): ({'link_Id': 'CS2-GW1/10/1==DC2-GW/eth1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'CS2-GW1', 'endpoint_uuid': '10/1'}}, {'endpoint_id': {'device_id': 'DC2-GW', 'endpoint_uuid': 'eth1'}}]}, None), + ('CS2-GW2', '1/1' , 'dst'): ({'link_Id': 'TN-R4/1/1==CS2-GW2/1/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-R4', 'endpoint_uuid': '1/1'}}, {'endpoint_id': {'device_id': 'CS2-GW2', 'endpoint_uuid': '1/1'}}]}, None), + ('CS2-GW2', '1/1' , 'src'): ({'link_Id': 'CS2-GW2/1/1==TN-R4/1/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'CS2-GW2', 'endpoint_uuid': '1/1'}}, {'endpoint_id': {'device_id': 'TN-R4', 'endpoint_uuid': '1/1'}}]}, None), + ('CS2-GW2', '1/2' , 'dst'): ({'link_Id': 'TN-R3/1/2==CS2-GW2/1/2', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-R3', 'endpoint_uuid': '1/2'}}, {'endpoint_id': {'device_id': 'CS2-GW2', 'endpoint_uuid': '1/2'}}]}, None), + ('CS2-GW2', '1/2' , 'src'): ({'link_Id': 'CS2-GW2/1/2==TN-R3/1/2', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'CS2-GW2', 'endpoint_uuid': '1/2'}}, {'endpoint_id': {'device_id': 'TN-R3', 'endpoint_uuid': '1/2'}}]}, None), + ('CS2-GW2', '10/1' , 'dst'): ({'link_Id': 'DC2-GW/eth2==CS2-GW2/10/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'DC2-GW', 'endpoint_uuid': 'eth2'}}, {'endpoint_id': {'device_id': 'CS2-GW2', 'endpoint_uuid': '10/1'}}]}, None), + ('CS2-GW2', '10/1' , 'src'): ({'link_Id': 'CS2-GW2/10/1==DC2-GW/eth2', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'CS2-GW2', 'endpoint_uuid': '10/1'}}, {'endpoint_id': {'device_id': 'DC2-GW', 'endpoint_uuid': 'eth2'}}]}, None), + ('DC1-GW' , 'eth1' , 'dst'): ({'link_Id': 'CS1-GW1/10/1==DC1-GW/eth1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'CS1-GW1', 'endpoint_uuid': '10/1'}}, {'endpoint_id': {'device_id': 'DC1-GW', 'endpoint_uuid': 'eth1'}}]}, None), + ('DC1-GW' , 'eth1' , 'src'): ({'link_Id': 'DC1-GW/eth1==CS1-GW1/10/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'DC1-GW', 'endpoint_uuid': 'eth1'}}, {'endpoint_id': {'device_id': 'CS1-GW1', 'endpoint_uuid': '10/1'}}]}, None), + ('DC1-GW' , 'eth2' , 'dst'): ({'link_Id': 'CS1-GW2/10/1==DC1-GW/eth2', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'CS1-GW2', 'endpoint_uuid': '10/1'}}, {'endpoint_id': {'device_id': 'DC1-GW', 'endpoint_uuid': 'eth2'}}]}, None), + ('DC1-GW' , 'eth2' , 'src'): ({'link_Id': 'DC1-GW/eth2==CS1-GW2/10/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'DC1-GW', 'endpoint_uuid': 'eth2'}}, {'endpoint_id': {'device_id': 'CS1-GW2', 'endpoint_uuid': '10/1'}}]}, None), + ('DC2-GW' , 'eth1' , 'dst'): ({'link_Id': 'CS2-GW1/10/1==DC2-GW/eth1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'CS2-GW1', 'endpoint_uuid': '10/1'}}, {'endpoint_id': {'device_id': 'DC2-GW', 'endpoint_uuid': 'eth1'}}]}, None), + ('DC2-GW' , 'eth1' , 'src'): ({'link_Id': 'DC2-GW/eth1==CS2-GW1/10/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'DC2-GW', 'endpoint_uuid': 'eth1'}}, {'endpoint_id': {'device_id': 'CS2-GW1', 'endpoint_uuid': '10/1'}}]}, None), + ('DC2-GW' , 'eth2' , 'dst'): ({'link_Id': 'CS2-GW2/10/1==DC2-GW/eth2', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'CS2-GW2', 'endpoint_uuid': '10/1'}}, {'endpoint_id': {'device_id': 'DC2-GW', 'endpoint_uuid': 'eth2'}}]}, None), + ('DC2-GW' , 'eth2' , 'src'): ({'link_Id': 'DC2-GW/eth2==CS2-GW2/10/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'DC2-GW', 'endpoint_uuid': 'eth2'}}, {'endpoint_id': {'device_id': 'CS2-GW2', 'endpoint_uuid': '10/1'}}]}, None), + ('TN-OLS' , '3c5ace9aaf9f', 'dst'): ({'link_Id': 'TN-R1/2/1==TN-OLS/3c5ace9aaf9f', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-R1', 'endpoint_uuid': '2/1'}}, {'endpoint_id': {'device_id': 'TN-OLS', 'endpoint_uuid': '3c5ace9aaf9f'}}]}, None), + ('TN-OLS' , '3c5ace9aaf9f', 'src'): ({'link_Id': 'TN-OLS/3c5ace9aaf9f==TN-R1/2/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-OLS', 'endpoint_uuid': '3c5ace9aaf9f'}}, {'endpoint_id': {'device_id': 'TN-R1', 'endpoint_uuid': '2/1'}}]}, None), + ('TN-OLS' , '3c9fd5178cd5', 'dst'): ({'link_Id': 'TN-R2/2/1==TN-OLS/3c9fd5178cd5', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-R2', 'endpoint_uuid': '2/1'}}, {'endpoint_id': {'device_id': 'TN-OLS', 'endpoint_uuid': '3c9fd5178cd5'}}]}, None), + ('TN-OLS' , '3c9fd5178cd5', 'src'): ({'link_Id': 'TN-OLS/3c9fd5178cd5==TN-R2/2/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-OLS', 'endpoint_uuid': '3c9fd5178cd5'}}, {'endpoint_id': {'device_id': 'TN-R2', 'endpoint_uuid': '2/1'}}]}, None), + ('TN-OLS' , '77486d5b0a15', 'dst'): ({'link_Id': 'TN-R4/2/1==TN-OLS/77486d5b0a15', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-R4', 'endpoint_uuid': '2/1'}}, {'endpoint_id': {'device_id': 'TN-OLS', 'endpoint_uuid': '77486d5b0a15'}}]}, None), + ('TN-OLS' , '77486d5b0a15', 'src'): ({'link_Id': 'TN-OLS/77486d5b0a15==TN-R4/2/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-OLS', 'endpoint_uuid': '77486d5b0a15'}}, {'endpoint_id': {'device_id': 'TN-R4', 'endpoint_uuid': '2/1'}}]}, None), + ('TN-OLS' , 'e4072030a6d6', 'dst'): ({'link_Id': 'TN-R3/2/1==TN-OLS/e4072030a6d6', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-R3', 'endpoint_uuid': '2/1'}}, {'endpoint_id': {'device_id': 'TN-OLS', 'endpoint_uuid': 'e4072030a6d6'}}]}, None), + ('TN-OLS' , 'e4072030a6d6', 'src'): ({'link_Id': 'TN-OLS/e4072030a6d6==TN-R3/2/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-OLS', 'endpoint_uuid': 'e4072030a6d6'}}, {'endpoint_id': {'device_id': 'TN-R3', 'endpoint_uuid': '2/1'}}]}, None), + ('TN-R1' , '1/1' , 'dst'): ({'link_Id': 'CS1-GW1/1/1==TN-R1/1/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'CS1-GW1', 'endpoint_uuid': '1/1'}}, {'endpoint_id': {'device_id': 'TN-R1', 'endpoint_uuid': '1/1'}}]}, None), + ('TN-R1' , '1/1' , 'src'): ({'link_Id': 'TN-R1/1/1==CS1-GW1/1/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-R1', 'endpoint_uuid': '1/1'}}, {'endpoint_id': {'device_id': 'CS1-GW1', 'endpoint_uuid': '1/1'}}]}, None), + ('TN-R1' , '1/2' , 'dst'): ({'link_Id': 'CS1-GW2/1/2==TN-R1/1/2', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'CS1-GW2', 'endpoint_uuid': '1/2'}}, {'endpoint_id': {'device_id': 'TN-R1', 'endpoint_uuid': '1/2'}}]}, None), + ('TN-R1' , '1/2' , 'src'): ({'link_Id': 'TN-R1/1/2==CS1-GW2/1/2', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-R1', 'endpoint_uuid': '1/2'}}, {'endpoint_id': {'device_id': 'CS1-GW2', 'endpoint_uuid': '1/2'}}]}, None), + ('TN-R1' , '2/1' , 'dst'): ({'link_Id': 'TN-OLS/3c5ace9aaf9f==TN-R1/2/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-OLS', 'endpoint_uuid': '3c5ace9aaf9f'}}, {'endpoint_id': {'device_id': 'TN-R1', 'endpoint_uuid': '2/1'}}]}, None), + ('TN-R1' , '2/1' , 'src'): ({'link_Id': 'TN-R1/2/1==TN-OLS/3c5ace9aaf9f', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-R1', 'endpoint_uuid': '2/1'}}, {'endpoint_id': {'device_id': 'TN-OLS', 'endpoint_uuid': '3c5ace9aaf9f'}}]}, None), + ('TN-R2' , '1/1' , 'dst'): ({'link_Id': 'CS1-GW2/1/1==TN-R2/1/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'CS1-GW2', 'endpoint_uuid': '1/1'}}, {'endpoint_id': {'device_id': 'TN-R2', 'endpoint_uuid': '1/1'}}]}, None), + ('TN-R2' , '1/1' , 'src'): ({'link_Id': 'TN-R2/1/1==CS1-GW2/1/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-R2', 'endpoint_uuid': '1/1'}}, {'endpoint_id': {'device_id': 'CS1-GW2', 'endpoint_uuid': '1/1'}}]}, None), + ('TN-R2' , '1/2' , 'dst'): ({'link_Id': 'CS1-GW1/1/2==TN-R2/1/2', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'CS1-GW1', 'endpoint_uuid': '1/2'}}, {'endpoint_id': {'device_id': 'TN-R2', 'endpoint_uuid': '1/2'}}]}, None), + ('TN-R2' , '1/2' , 'src'): ({'link_Id': 'TN-R2/1/2==CS1-GW1/1/2', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-R2', 'endpoint_uuid': '1/2'}}, {'endpoint_id': {'device_id': 'CS1-GW1', 'endpoint_uuid': '1/2'}}]}, None), + ('TN-R2' , '2/1' , 'dst'): ({'link_Id': 'TN-OLS/3c9fd5178cd5==TN-R2/2/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-OLS', 'endpoint_uuid': '3c9fd5178cd5'}}, {'endpoint_id': {'device_id': 'TN-R2', 'endpoint_uuid': '2/1'}}]}, None), + ('TN-R2' , '2/1' , 'src'): ({'link_Id': 'TN-R2/2/1==TN-OLS/3c9fd5178cd5', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-R2', 'endpoint_uuid': '2/1'}}, {'endpoint_id': {'device_id': 'TN-OLS', 'endpoint_uuid': '3c9fd5178cd5'}}]}, None), + ('TN-R3' , '1/1' , 'dst'): ({'link_Id': 'CS2-GW1/1/1==TN-R3/1/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'CS2-GW1', 'endpoint_uuid': '1/1'}}, {'endpoint_id': {'device_id': 'TN-R3', 'endpoint_uuid': '1/1'}}]}, None), + ('TN-R3' , '1/1' , 'src'): ({'link_Id': 'TN-R3/1/1==CS2-GW1/1/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-R3', 'endpoint_uuid': '1/1'}}, {'endpoint_id': {'device_id': 'CS2-GW1', 'endpoint_uuid': '1/1'}}]}, None), + ('TN-R3' , '1/2' , 'dst'): ({'link_Id': 'CS2-GW2/1/2==TN-R3/1/2', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'CS2-GW2', 'endpoint_uuid': '1/2'}}, {'endpoint_id': {'device_id': 'TN-R3', 'endpoint_uuid': '1/2'}}]}, None), + ('TN-R3' , '1/2' , 'src'): ({'link_Id': 'TN-R3/1/2==CS2-GW2/1/2', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-R3', 'endpoint_uuid': '1/2'}}, {'endpoint_id': {'device_id': 'CS2-GW2', 'endpoint_uuid': '1/2'}}]}, None), + ('TN-R3' , '2/1' , 'dst'): ({'link_Id': 'TN-OLS/e4072030a6d6==TN-R3/2/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-OLS', 'endpoint_uuid': 'e4072030a6d6'}}, {'endpoint_id': {'device_id': 'TN-R3', 'endpoint_uuid': '2/1'}}]}, None), + ('TN-R3' , '2/1' , 'src'): ({'link_Id': 'TN-R3/2/1==TN-OLS/e4072030a6d6', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-R3', 'endpoint_uuid': '2/1'}}, {'endpoint_id': {'device_id': 'TN-OLS', 'endpoint_uuid': 'e4072030a6d6'}}]}, None), + ('TN-R4' , '1/1' , 'dst'): ({'link_Id': 'CS2-GW2/1/1==TN-R4/1/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'CS2-GW2', 'endpoint_uuid': '1/1'}}, {'endpoint_id': {'device_id': 'TN-R4', 'endpoint_uuid': '1/1'}}]}, None), + ('TN-R4' , '1/1' , 'src'): ({'link_Id': 'TN-R4/1/1==CS2-GW2/1/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-R4', 'endpoint_uuid': '1/1'}}, {'endpoint_id': {'device_id': 'CS2-GW2', 'endpoint_uuid': '1/1'}}]}, None), + ('TN-R4' , '1/2' , 'dst'): ({'link_Id': 'CS2-GW1/1/2==TN-R4/1/2', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'CS2-GW1', 'endpoint_uuid': '1/2'}}, {'endpoint_id': {'device_id': 'TN-R4', 'endpoint_uuid': '1/2'}}]}, None), + ('TN-R4' , '1/2' , 'src'): ({'link_Id': 'TN-R4/1/2==CS2-GW1/1/2', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-R4', 'endpoint_uuid': '1/2'}}, {'endpoint_id': {'device_id': 'CS2-GW1', 'endpoint_uuid': '1/2'}}]}, None), + ('TN-R4' , '2/1' , 'dst'): ({'link_Id': 'TN-OLS/77486d5b0a15==TN-R4/2/1', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-OLS', 'endpoint_uuid': '77486d5b0a15'}}, {'endpoint_id': {'device_id': 'TN-R4', 'endpoint_uuid': '2/1'}}]}, None), + ('TN-R4' , '2/1' , 'src'): ({'link_Id': 'TN-R4/2/1==TN-OLS/77486d5b0a15', 'link_endpoint_ids': [{'endpoint_id': {'device_id': 'TN-R4', 'endpoint_uuid': '2/1'}}, {'endpoint_id': {'device_id': 'TN-OLS', 'endpoint_uuid': '77486d5b0a15'}}]}, None), +} + +MAP_TAPI_UUIDS = { + "c3dbaa44-9cda-5d54-8f99-0f282362be65": "5b835e46-53f7-52e8-9c8a-077322679e36", # node-1-port-13-input => node-1-port-13-output + "1fb9ac86-b7ad-5d6d-87b1-a09d995f1ddd": "c9df6ece-1650-5078-876a-1e488a453625", # node-1-port-14-input => node-1-port-14-output + "aa109937-8291-5a09-853a-97bff463e569": "b245480f-027c-53a0-9320-fca5b9d7a1e1", # node-1-port-15-input => node-1-port-15-output + "6653ae16-42a3-56b5-adf3-71adda024a61": "ac356900-ce2f-5c15-b038-1b05e6f50bf7", # node-1-port-17-input => node-1-port-17-output + "d782ef85-a473-50b4-93b5-2af86024a42a": "dcfeedd3-2d47-5bc8-b31c-ed9f973d8b76", # node-2-port-13-input => node-2-port-13-output + "bbbd83ef-6053-55dc-ab08-06fb0c2bd081": "57bcf45b-eb47-5a9c-86d1-d9cff0c910fd", # node-2-port-14-input => node-2-port-14-output + "27cdf70d-4e48-53ff-bc4f-20addf6524c0": "fd31eff5-392e-5fb5-a6f4-6dfca583344d", # node-2-port-15-input => node-2-port-15-output + "55ac2364-fad8-5a05-ac2b-5003997ff89e": "d12a2591-7f4a-575d-8fda-0bc3d6b7ca32", # node-2-port-17-input => node-2-port-17-output + "59f44a3c-32a5-5abf-af58-45e6fa7ca657": "1977ef5c-4383-5195-9221-0cdf8ee26cb7", # node-3-port-13-input => node-3-port-13-output + "1be3f905-d553-5291-9906-47c0772d45aa": "9def067b-9a75-54df-8867-853f35a42e87", # node-3-port-14-input => node-3-port-14-output + "fb4ece7a-2dd1-593a-b6ca-a787b3b59fc5": "1f294257-132a-54ad-b653-ef8b7517c9d8", # node-3-port-15-input => node-3-port-15-output + "a571d2fe-c7f8-5ac8-b2af-8e5b92a558b0": "5b60a688-deac-567a-8e36-0d52e56fd4fc", # node-3-port-16-input => node-3-port-16-output + "9ea9dc53-2d6a-5f28-b81a-e930f7cbedf9": "2aec14c1-3a84-5cba-8f22-783bd0273cd0", # node-3-port-17-input => node-3-port-17-output + "9ec8e0f3-3378-55e0-bed1-be1fe120a1a9": "ece2ed55-ce16-59d3-8137-3f4cf17e67ab", # node-3-port-18-input => node-3-port-18-output + "a7e114aa-a3b6-52ae-b7b7-0e5fe4dd4d1c": "0a05e43d-a13c-5276-9839-613600f3ff28", # node-4-port-13-input => node-4-port-13-output + "4ca8357a-3468-51e6-bba8-65137486666f": "18926fdf-de5c-5a52-be88-cccc065e5e03", # node-4-port-14-input => node-4-port-14-output + "a7e9f06f-6fd2-594e-8a0c-25bfe8c652d7": "1adb9e17-e499-58dc-8aa2-881ed5ce9670", # node-4-port-15-input => node-4-port-15-output + "9f6a23b2-c71c-5559-8fb3-f76421bea1d9": "049bb1f1-cc04-5b72-8c0f-43891d9637bf", # node-4-port-16-input => node-4-port-16-output + "f1d74c96-41f5-5eb9-a160-a38463184934": "2206440b-ef66-5d3e-8da5-40608fb00a10", # node-4-port-17-input => node-4-port-17-output + + "5b835e46-53f7-52e8-9c8a-077322679e36": "c3dbaa44-9cda-5d54-8f99-0f282362be65", # node-1-port-13-output => node-1-port-13-input + "c9df6ece-1650-5078-876a-1e488a453625": "1fb9ac86-b7ad-5d6d-87b1-a09d995f1ddd", # node-1-port-14-output => node-1-port-14-input + "b245480f-027c-53a0-9320-fca5b9d7a1e1": "aa109937-8291-5a09-853a-97bff463e569", # node-1-port-15-output => node-1-port-15-input + "ac356900-ce2f-5c15-b038-1b05e6f50bf7": "6653ae16-42a3-56b5-adf3-71adda024a61", # node-1-port-17-output => node-1-port-17-input + "dcfeedd3-2d47-5bc8-b31c-ed9f973d8b76": "d782ef85-a473-50b4-93b5-2af86024a42a", # node-2-port-13-output => node-2-port-13-input + "57bcf45b-eb47-5a9c-86d1-d9cff0c910fd": "bbbd83ef-6053-55dc-ab08-06fb0c2bd081", # node-2-port-14-output => node-2-port-14-input + "fd31eff5-392e-5fb5-a6f4-6dfca583344d": "27cdf70d-4e48-53ff-bc4f-20addf6524c0", # node-2-port-15-output => node-2-port-15-input + "d12a2591-7f4a-575d-8fda-0bc3d6b7ca32": "55ac2364-fad8-5a05-ac2b-5003997ff89e", # node-2-port-17-output => node-2-port-17-input + "1977ef5c-4383-5195-9221-0cdf8ee26cb7": "59f44a3c-32a5-5abf-af58-45e6fa7ca657", # node-3-port-13-output => node-3-port-13-input + "9def067b-9a75-54df-8867-853f35a42e87": "1be3f905-d553-5291-9906-47c0772d45aa", # node-3-port-14-output => node-3-port-14-input + "1f294257-132a-54ad-b653-ef8b7517c9d8": "fb4ece7a-2dd1-593a-b6ca-a787b3b59fc5", # node-3-port-15-output => node-3-port-15-input + "5b60a688-deac-567a-8e36-0d52e56fd4fc": "a571d2fe-c7f8-5ac8-b2af-8e5b92a558b0", # node-3-port-16-output => node-3-port-16-input + "2aec14c1-3a84-5cba-8f22-783bd0273cd0": "9ea9dc53-2d6a-5f28-b81a-e930f7cbedf9", # node-3-port-17-output => node-3-port-17-input + "ece2ed55-ce16-59d3-8137-3f4cf17e67ab": "9ec8e0f3-3378-55e0-bed1-be1fe120a1a9", # node-3-port-18-output => node-3-port-18-input + "0a05e43d-a13c-5276-9839-613600f3ff28": "a7e114aa-a3b6-52ae-b7b7-0e5fe4dd4d1c", # node-4-port-13-output => node-4-port-13-input + "18926fdf-de5c-5a52-be88-cccc065e5e03": "4ca8357a-3468-51e6-bba8-65137486666f", # node-4-port-14-output => node-4-port-14-input + "1adb9e17-e499-58dc-8aa2-881ed5ce9670": "a7e9f06f-6fd2-594e-8a0c-25bfe8c652d7", # node-4-port-15-output => node-4-port-15-input + "049bb1f1-cc04-5b72-8c0f-43891d9637bf": "9f6a23b2-c71c-5559-8fb3-f76421bea1d9", # node-4-port-16-output => node-4-port-16-input + "2206440b-ef66-5d3e-8da5-40608fb00a10": "f1d74c96-41f5-5eb9-a160-a38463184934", # node-4-port-17-output => node-4-port-17-input +} + +def eropath_to_hops( + ero_path : List[Dict], endpoint_to_link_dict : Dict[Tuple[str, str, str], Tuple[Dict, Any]] +) -> List[Dict]: + LOGGER.debug('ero_path = {:s}'.format(str(ero_path))) + try: + path_hops = [] + num_ero_hops = len(ero_path) + for endpoint in ero_path: + LOGGER.info('endpoint={:s}'.format(str(endpoint))) + + device_uuid = endpoint['device_id'] + endpoint_uuid = endpoint['endpoint_uuid'] + + if len(path_hops) == 0: + LOGGER.info(' first hop') + path_hops.append({'device': device_uuid, 'ingress_ep': endpoint_uuid}) + continue + + LOGGER.info(' next hop') + last_hop = path_hops[-1] + LOGGER.info(' last_hop={:s}'.format(str(last_hop))) + if last_hop['device'] != device_uuid: raise Exception('Malformed path') + last_hop['egress_ep'] = endpoint_uuid + + if num_ero_hops - 1 == len(path_hops): break + + endpoint_key = (last_hop['device'], last_hop['egress_ep'], 'src') + LOGGER.info(' endpoint_key={:s}'.format(str(endpoint_key))) + link_tuple = endpoint_to_link_dict[endpoint_key] + LOGGER.info(' link_tuple={:s}'.format(str(link_tuple))) + if link_tuple is None: raise Exception('Malformed path') + + ingress = next(iter([ + ep_id + for ep_id in link_tuple[0]['link_endpoint_ids'] + if ep_id['endpoint_id']['device_id'] != device_uuid + ]), None) + LOGGER.info(' ingress={:s}'.format(str(ingress))) + #if ingress['endpoint_id']['device_id'] != device_uuid: + # raise Exception('Malformed path') + + ingress_ep = ingress['endpoint_id']['endpoint_uuid'] + ingress_ep = MAP_TAPI_UUIDS.get(ingress_ep, ingress_ep) + path_hops.append({ + 'device': ingress['endpoint_id']['device_id'], + 'ingress_ep': ingress_ep, + 'egress_ep': endpoint_uuid, + }) + LOGGER.debug('path_hops = {:s}'.format(str(path_hops))) + return path_hops + except: + #LOGGER.exception('Unhandled exception: ero_path={:s} endpoint_to_link_dict={:s}'.format( + # str(ero_path), str(endpoint_to_link_dict))) + raise + +res = eropath_to_hops(ERO_PATH, ENDPOINT_TO_LINK_DICT) +LOGGER.warning('res = {:s}'.format(str(res))) diff --git a/src/policy/mvnw b/src/policy/mvnw old mode 100644 new mode 100755 diff --git a/src/policy/src/main/java/eu/teraflow/policy/PolicyRuleConditionValidator.java b/src/policy/src/main/java/eu/teraflow/policy/PolicyRuleConditionValidator.java index 141821958eca02925bdebebdd8a34f46a5844a8a..a1556ffbd715e0065681dcfa6001dd041ff89ef0 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/PolicyRuleConditionValidator.java +++ b/src/policy/src/main/java/eu/teraflow/policy/PolicyRuleConditionValidator.java @@ -21,6 +21,7 @@ import eu.teraflow.policy.context.model.Device; import eu.teraflow.policy.context.model.EndPointId; import eu.teraflow.policy.context.model.Service; import eu.teraflow.policy.context.model.ServiceId; +import eu.teraflow.policy.model.PolicyRuleService; import io.smallrye.mutiny.Uni; import java.util.ArrayList; import java.util.List; @@ -42,73 +43,44 @@ public class PolicyRuleConditionValidator { this.contextService = contextService; } - public Uni<Boolean> validateDeviceId(String deviceId) { - final var isDeviceIdValid = isDeviceIdValid(deviceId); - - isDeviceIdValid - .subscribe() - .with( - deviceIdIdBooleanValue -> { - if (Boolean.FALSE.equals(deviceIdIdBooleanValue)) { - LOGGER.errorf(INVALID_MESSAGE, deviceId); - } - LOGGER.infof(VALID_MESSAGE, deviceId); - }); - - return isDeviceIdValid; - } - - public Uni<Boolean> validateServiceId(ServiceId serviceId) { - final var isServiceIdValid = isServiceIdValid(serviceId); - - isServiceIdValid - .subscribe() - .with( - serviceIdBooleanValue -> { - if (Boolean.FALSE.equals(serviceIdBooleanValue)) { - LOGGER.errorf(INVALID_MESSAGE, serviceId); - } - }); - - return isServiceIdValid; - } - - public Uni<Boolean> validateUpdatedPolicyRuleId(String updatedPolicyRuleId) { - final var isUpdatedPolicyRuleIdValid = isUpdatedPolicyRuleIdValid(updatedPolicyRuleId); - - isUpdatedPolicyRuleIdValid - .subscribe() - .with( - serviceIdBooleanValue -> { - if (Boolean.FALSE.equals(serviceIdBooleanValue)) { - LOGGER.errorf(INVALID_MESSAGE, updatedPolicyRuleId); - } - }); - - return isUpdatedPolicyRuleIdValid; - } - - private Uni<Boolean> isDeviceIdValid(String deviceId) { + public Uni<Boolean> isDeviceIdValid(String deviceId) { return contextService .getDevice(deviceId) + .onFailure() + .recoverWithItem((Device) null) .onItem() .transform(device -> checkIfDeviceIdExists(device, deviceId)); } private boolean checkIfDeviceIdExists(Device device, String deviceId) { - final var deviceDeviceId = device.getDeviceId(); + if (device == null) { + return false; + } + final var deviceDeviceId = device.getDeviceId(); return deviceDeviceId.equals(deviceId); } - private Uni<Boolean> isServiceIdValid(ServiceId serviceId) { + public Uni<Boolean> isServiceIdValid(ServiceId serviceId, List<String> deviceIds) { return contextService .getService(serviceId) + .onFailure() + .recoverWithItem((Service) null) .onItem() - .transform(service -> checkIfServiceIdExists(service, serviceId)); + .transform(service -> checkIfServiceIsValid(service, serviceId, deviceIds)); + } + + private boolean checkIfServiceIsValid( + Service service, ServiceId serviceId, List<String> deviceIds) { + return (checkIfServiceIdExists(service, serviceId) + && checkIfServicesDeviceIdsExist(service, deviceIds)); } private boolean checkIfServiceIdExists(Service service, ServiceId serviceId) { + if (service == null) { + return false; + } + final var serviceServiceIdServiceId = service.getServiceId(); final var serviceServiceIdContextId = serviceServiceIdServiceId.getContextId(); final var serviceServiceIdId = serviceServiceIdServiceId.getId(); @@ -117,14 +89,11 @@ public class PolicyRuleConditionValidator { && serviceServiceIdId.equals(serviceId.getId()); } - public Uni<Boolean> isServicesDeviceIdsValid(ServiceId serviceId, List<String> deviceIds) { - return contextService - .getService(serviceId) - .onItem() - .transform(service -> checkIfServicesDeviceIdsExist(service, deviceIds)); - } - private boolean checkIfServicesDeviceIdsExist(Service service, List<String> deviceIds) { + if (deviceIds.isEmpty()) { + return true; + } + List<String> serviceDeviceIds = new ArrayList<>(); for (EndPointId serviceEndPointId : service.getServiceEndPointIds()) { serviceDeviceIds.add(serviceEndPointId.getDeviceId()); @@ -133,7 +102,7 @@ public class PolicyRuleConditionValidator { return deviceIds.containsAll(serviceDeviceIds); } - private Uni<Boolean> isUpdatedPolicyRuleIdValid(String updatedPolicyRuleId) { + public Uni<Boolean> isUpdatedPolicyRuleIdValid(String updatedPolicyRuleId) { return contextService .getPolicyRule(updatedPolicyRuleId) .onItem() @@ -146,4 +115,25 @@ public class PolicyRuleConditionValidator { .ifNull() .continueWith(false); } + + public Uni<Boolean> isPolicyRuleServiceValid(String updatedPolicyRuleId, ServiceId serviceId) { + return contextService + .getPolicyRule(updatedPolicyRuleId) + .onItem() + .ifNotNull() + .transform( + policyRule -> { + var policyRuleService = + (PolicyRuleService) policyRule.getPolicyRuleType().getPolicyRuleType(); + if (policyRuleService.getServiceId().getId().equals(serviceId.getId())) { + return true; + } + return false; + }) + .onItem() + .ifNull() + .continueWith(false) + .onFailure() + .recoverWithItem(false); + } } 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 fba43c18a573115d279a251f4806834fdefa2129..8462e0b9d7ec875004cea0a1b2836dc92d3b6f15 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/PolicyServiceImpl.java +++ b/src/policy/src/main/java/eu/teraflow/policy/PolicyServiceImpl.java @@ -44,11 +44,10 @@ import eu.teraflow.policy.monitoring.model.AlarmDescriptor; import eu.teraflow.policy.monitoring.model.AlarmResponse; import eu.teraflow.policy.monitoring.model.AlarmSubscription; import eu.teraflow.policy.monitoring.model.KpiValueRange; -import eu.teraflow.policy.monitoring.model.MonitorKpiRequest; import eu.teraflow.policy.service.ServiceService; import io.smallrye.mutiny.Multi; import io.smallrye.mutiny.Uni; -import java.time.Duration; +import io.smallrye.mutiny.groups.UniJoin; import java.time.Instant; import java.util.ArrayList; import java.util.Arrays; @@ -56,7 +55,6 @@ import java.util.HashMap; import java.util.List; import java.util.Random; import java.util.concurrent.ConcurrentHashMap; -import java.util.stream.Collectors; import javax.enterprise.context.ApplicationScoped; import javax.inject.Inject; import org.jboss.logging.Logger; @@ -71,6 +69,9 @@ public class PolicyServiceImpl implements PolicyService { private static final int ACCEPTABLE_NUMBER_OF_ALARMS = 3; private static final int MONITORING_WINDOW_IN_SECONDS = 5; private static final int SAMPLING_RATE_PER_SECOND = 1; + // TODO: Find a better way to disregard alarms while reconfiguring path + // Temporary solution for not calling the same rpc more than it's needed + private static int noAlarms = 0; private static final PolicyRuleState INSERTED_POLICYRULE_STATE = new PolicyRuleState( @@ -160,94 +161,221 @@ public class PolicyServiceImpl implements PolicyService { final var policyRuleBasic = policyRuleService.getPolicyRuleBasic(); if (!policyRuleBasic.areArgumentsValid()) { LOGGER.error(policyRuleService.getExeceptionMessage()); - setPolicyRuleServiceToContext( - policyRuleService, + final var policyRuleState = new PolicyRuleState( - PolicyRuleStateEnum.POLICY_FAILED, policyRuleBasic.getExeceptionMessage())); - return Uni.createFrom().item(policyRuleBasic.getPolicyRuleState()); + PolicyRuleStateEnum.POLICY_FAILED, policyRuleBasic.getExeceptionMessage()); + return Uni.createFrom().item(policyRuleState); } - policyRuleBasic.setPolicyRuleState(INSERTED_POLICYRULE_STATE); - policyRuleService.setPolicyRuleBasic(policyRuleBasic); - final var policyRuleTypeService = new PolicyRuleTypeService(policyRuleService); - final var policyRule = new PolicyRule(policyRuleTypeService); + final var serviceId = policyRuleService.getServiceId(); + final var deviceIds = policyRuleService.getDeviceIds(); + final var isServiceValid = policyRuleConditionValidator.isServiceIdValid(serviceId, deviceIds); + + return isServiceValid + .onItem() + .transform( + isService -> { + if (!isService) { + var policyRuleState = + new PolicyRuleState( + PolicyRuleStateEnum.POLICY_FAILED, + String.format(INVALID_MESSAGE, serviceId)); + + return policyRuleState; + } - contextService - .setPolicyRule(policyRule) - .subscribe() - .with(id -> validateService(policyRuleService)); - return Uni.createFrom().item(policyRuleBasic.getPolicyRuleState()); + final var policyRuleTypeService = new PolicyRuleTypeService(policyRuleService); + final var policyRule = new PolicyRule(policyRuleTypeService); + final var alarmDescriptorList = createAlarmDescriptorList(policyRule); + + if (alarmDescriptorList.isEmpty()) { + var policyRuleState = + new PolicyRuleState( + PolicyRuleStateEnum.POLICY_FAILED, + String.format( + "Invalid PolicyRuleConditions in PolicyRule with ID: %s", + policyRuleBasic.getPolicyRuleId())); + return policyRuleState; + } + contextService.setPolicyRule(policyRule).subscribe().with(x -> {}); + setPolicyRuleServiceToContext(policyRuleService, VALIDATED_POLICYRULE_STATE); + noAlarms = 0; + + // Create an alarmIds list that contains the promised ids returned from setKpiAlarm + List<Uni<String>> alarmIds = new ArrayList<Uni<String>>(); + for (AlarmDescriptor alarmDescriptor : alarmDescriptorList) { + LOGGER.infof("alarmDescriptor:"); + LOGGER.infof(alarmDescriptor.toString()); + alarmIds.add(monitoringService.setKpiAlarm(alarmDescriptor)); + } + + // Transform the alarmIds into promised alarms returned from the + // getAlarmResponseStream + List<Multi<AlarmResponse>> alarmResponseStreamList = new ArrayList<>(); + for (Uni<String> alarmId : alarmIds) { + alarmResponseStreamList.add( + alarmId + .onItem() + .transformToMulti( + id -> { + alarmPolicyRuleServiceMap.put(id, policyRuleService); + + // TODO: Create infinite subscription + var alarmSubscription = new AlarmSubscription(id, 259200, 5000); + return monitoringService.getAlarmResponseStream(alarmSubscription); + })); + } + + // Merge the promised alarms into one stream (Multi Object) + final var multi = Multi.createBy().merging().streams(alarmResponseStreamList); + setPolicyRuleServiceToContext(policyRuleService, PROVISIONED_POLICYRULE_STATE); + + monitorAlarmResponseForService(multi); + + // TODO: Resubscribe to the stream, if it has ended + + // TODO: Redesign evaluation of action + // evaluateAction(policyRule, alarmDescriptorList, multi); + + return VALIDATED_POLICYRULE_STATE; + }); } @Override - public Uni<PolicyRuleState> updatePolicyService(PolicyRuleService policyRuleService) { - LOGGER.infof("Received %s", policyRuleService); + public Uni<PolicyRuleState> addPolicyDevice(PolicyRuleDevice policyRuleDevice) { + LOGGER.infof("Received %s", policyRuleDevice); - if (!policyRuleService.areArgumentsValid()) { - LOGGER.error(policyRuleService.getExeceptionMessage()); + if (!policyRuleDevice.areArgumentsValid()) { + LOGGER.error(policyRuleDevice.getExeceptionMessage()); final var policyRuleState = new PolicyRuleState( - PolicyRuleStateEnum.POLICY_FAILED, policyRuleService.getExeceptionMessage()); + PolicyRuleStateEnum.POLICY_FAILED, policyRuleDevice.getExeceptionMessage()); return Uni.createFrom().item(policyRuleState); } - final var policyRuleBasic = policyRuleService.getPolicyRuleBasic(); + final var policyRuleBasic = policyRuleDevice.getPolicyRuleBasic(); if (!policyRuleBasic.areArgumentsValid()) { - LOGGER.error(policyRuleService.getExeceptionMessage()); - setPolicyRuleServiceToContext( - policyRuleService, + LOGGER.error(policyRuleDevice.getExeceptionMessage()); + final var policyRuleState = new PolicyRuleState( - PolicyRuleStateEnum.POLICY_FAILED, policyRuleBasic.getExeceptionMessage())); - return Uni.createFrom().item(policyRuleBasic.getPolicyRuleState()); + PolicyRuleStateEnum.POLICY_FAILED, policyRuleBasic.getExeceptionMessage()); + return Uni.createFrom().item(policyRuleState); } - policyRuleBasic.setPolicyRuleState(UPDATED_POLICYRULE_STATE); - policyRuleService.setPolicyRuleBasic(policyRuleBasic); - final var policyRuleTypeService = new PolicyRuleTypeService(policyRuleService); - final var policyRule = new PolicyRule(policyRuleTypeService); + final var deviceIds = policyRuleDevice.getDeviceIds(); + final var areDevicesValid = returnInvalidDeviceIds(deviceIds); + + return areDevicesValid + .onItem() + .transform( + areDevices -> { + if (areDevices.contains(false)) { + var policyRuleState = + new PolicyRuleState( + PolicyRuleStateEnum.POLICY_FAILED, + String.format( + INVALID_MESSAGE, + policyRuleDevice.getPolicyRuleBasic().getPolicyRuleId())); + + return policyRuleState; + } - contextService - .setPolicyRule(policyRule) - .subscribe() - .with(id -> validateUpdatedPolicyService(policyRuleService)); + final var policyRuleTypeDevice = new PolicyRuleTypeDevice(policyRuleDevice); + final var policyRule = new PolicyRule(policyRuleTypeDevice); + + final var alarmDescriptorList = createAlarmDescriptorList(policyRule); + if (alarmDescriptorList.isEmpty()) { + var policyRuleState = + new PolicyRuleState( + PolicyRuleStateEnum.POLICY_FAILED, + String.format( + "Invalid PolicyRuleConditions in PolicyRule with ID: %s", + policyRuleBasic.getPolicyRuleId())); + return policyRuleState; + } + + contextService.setPolicyRule(policyRule).subscribe().with(x -> {}); + setPolicyRuleDeviceToContext(policyRuleDevice, VALIDATED_POLICYRULE_STATE); + noAlarms = 0; + + List<Uni<String>> alarmIds = new ArrayList<Uni<String>>(); + for (AlarmDescriptor alarmDescriptor : alarmDescriptorList) { + LOGGER.infof("alarmDescriptor:"); + LOGGER.infof(alarmDescriptor.toString()); + alarmIds.add(monitoringService.setKpiAlarm(alarmDescriptor)); + } + + // Transform the alarmIds into promised alarms returned from the + // getAlarmResponseStream + List<Multi<AlarmResponse>> alarmResponseStreamList = new ArrayList<>(); + for (Uni<String> alarmId : alarmIds) { + alarmResponseStreamList.add( + alarmId + .onItem() + .transformToMulti( + id -> { + alarmPolicyRuleDeviceMap.put(id, policyRuleDevice); + + // TODO: Create infinite subscription + var alarmSubscription = new AlarmSubscription(id, 259200, 5000); + return monitoringService.getAlarmResponseStream(alarmSubscription); + })); + } + + // Merge the promised alarms into one stream (Multi Object) + final var multi = Multi.createBy().merging().streams(alarmResponseStreamList); + setPolicyRuleDeviceToContext(policyRuleDevice, PROVISIONED_POLICYRULE_STATE); - return Uni.createFrom().item(policyRuleBasic.getPolicyRuleState()); + monitorAlarmResponseForDevice(multi); + + // TODO: Resubscribe to the stream, if it has ended + + // TODO: Redesign evaluation of action + // evaluateAction(policyRule, alarmDescriptorList, multi); + + return VALIDATED_POLICYRULE_STATE; + }); } @Override - public Uni<PolicyRuleState> addPolicyDevice(PolicyRuleDevice policyRuleDevice) { - LOGGER.infof("Received %s", policyRuleDevice); + public Uni<PolicyRuleState> updatePolicyService(PolicyRuleService policyRuleService) { + LOGGER.infof("Received %s", policyRuleService); - if (!policyRuleDevice.areArgumentsValid()) { - LOGGER.error(policyRuleDevice.getExeceptionMessage()); + if (!policyRuleService.areArgumentsValid()) { + LOGGER.error(policyRuleService.getExeceptionMessage()); final var policyRuleState = new PolicyRuleState( - PolicyRuleStateEnum.POLICY_FAILED, policyRuleDevice.getExeceptionMessage()); + PolicyRuleStateEnum.POLICY_FAILED, policyRuleService.getExeceptionMessage()); return Uni.createFrom().item(policyRuleState); } - final var policyRuleBasic = policyRuleDevice.getPolicyRuleBasic(); + final var policyRuleBasic = policyRuleService.getPolicyRuleBasic(); if (!policyRuleBasic.areArgumentsValid()) { - LOGGER.error(policyRuleDevice.getExeceptionMessage()); - setPolicyRuleDeviceToContext( - policyRuleDevice, + LOGGER.error(policyRuleService.getExeceptionMessage()); + final var policyRuleState = new PolicyRuleState( - PolicyRuleStateEnum.POLICY_FAILED, policyRuleBasic.getExeceptionMessage())); - return Uni.createFrom().item(policyRuleBasic.getPolicyRuleState()); + PolicyRuleStateEnum.POLICY_FAILED, policyRuleBasic.getExeceptionMessage()); + return Uni.createFrom().item(policyRuleState); } - policyRuleBasic.setPolicyRuleState(INSERTED_POLICYRULE_STATE); - policyRuleDevice.setPolicyRuleBasic(policyRuleBasic); - final var policyRuleTypeDevice = new PolicyRuleTypeDevice(policyRuleDevice); - final var policyRule = new PolicyRule(policyRuleTypeDevice); + final var serviceId = policyRuleService.getServiceId(); + final var policyRuleId = policyRuleBasic.getPolicyRuleId(); + final var isPolicyRuleServiceValid = + policyRuleConditionValidator.isPolicyRuleServiceValid(policyRuleId, serviceId); + + return isPolicyRuleServiceValid + .onItem() + .transform( + isPolicyRuleService -> { + if (!isPolicyRuleService) { + return new PolicyRuleState( + PolicyRuleStateEnum.POLICY_FAILED, String.format(INVALID_MESSAGE, serviceId)); + } - contextService - .setPolicyRule(policyRule) - .subscribe() - .with(id -> validateDevice(policyRuleDevice)); - return Uni.createFrom().item(policyRuleBasic.getPolicyRuleState()); + return VALIDATED_POLICYRULE_STATE; + }); } @Override @@ -265,153 +393,154 @@ public class PolicyServiceImpl implements PolicyService { final var policyRuleBasic = policyRuleDevice.getPolicyRuleBasic(); if (!policyRuleBasic.areArgumentsValid()) { - LOGGER.error(policyRuleDevice.getExeceptionMessage()); - setPolicyRuleDeviceToContext( - policyRuleDevice, + final var policyRuleState = new PolicyRuleState( - PolicyRuleStateEnum.POLICY_FAILED, policyRuleBasic.getExeceptionMessage())); - return Uni.createFrom().item(policyRuleBasic.getPolicyRuleState()); + PolicyRuleStateEnum.POLICY_FAILED, policyRuleBasic.getExeceptionMessage()); + return Uni.createFrom().item(policyRuleState); } - policyRuleBasic.setPolicyRuleState(UPDATED_POLICYRULE_STATE); - policyRuleDevice.setPolicyRuleBasic(policyRuleBasic); - final var policyRuleTypeDevice = new PolicyRuleTypeDevice(policyRuleDevice); - final var policyRule = new PolicyRule(policyRuleTypeDevice); + final var policyRuleId = policyRuleBasic.getPolicyRuleId(); + final var isPolicyRuleValid = + policyRuleConditionValidator.isUpdatedPolicyRuleIdValid(policyRuleId); - contextService - .setPolicyRule(policyRule) - .subscribe() - .with(id -> validateUpdatedPolicyDevice(policyRuleDevice)); + return isPolicyRuleValid + .onItem() + .transform( + isPolicyRuleService -> { + if (!isPolicyRuleService) { + return new PolicyRuleState( + PolicyRuleStateEnum.POLICY_FAILED, + String.format(INVALID_MESSAGE, policyRuleId)); + } - return Uni.createFrom().item(policyRuleBasic.getPolicyRuleState()); + return VALIDATED_POLICYRULE_STATE; + }); } @Override public Uni<PolicyRuleState> deletePolicy(String policyRuleId) { LOGGER.infof("Received %s", policyRuleId); - PolicyRule policyRule = contextService.getPolicyRule(policyRuleId).await().indefinitely(); - - final var policyRuleBasic = policyRule.getPolicyRuleType().getPolicyRuleBasic(); - List<PolicyRuleCondition> policyRuleConditions = policyRuleBasic.getPolicyRuleConditions(); - - for (PolicyRuleCondition policy : policyRuleConditions) { - var empty = monitoringService.deleteKpi(policy.getKpiId()); - empty - .subscribe() - .with(emptyMessage -> LOGGER.infof("Kpi [%s] has been deleted.\n", policyRuleId)); - } - - var empty = contextService.removePolicyRule(policyRuleId); - empty - .subscribe() - .with(emptyMessage -> LOGGER.infof("Policy [%s] has been removed.\n", policyRuleId)); - - setPolicyRuleToContext(policyRule, REMOVED_POLICYRULE_STATE); - return Uni.createFrom().item(policyRuleBasic.getPolicyRuleState()); + final var getPolicyRule = contextService.getPolicyRule(policyRuleId); + + return getPolicyRule + .onItem() + .transform( + policyRule -> { + var policyRuleBasic = policyRule.getPolicyRuleType().getPolicyRuleBasic(); + + policyRule + .getPolicyRuleType() + .getPolicyRuleBasic() + .setPolicyRuleState(REMOVED_POLICYRULE_STATE); + + contextService + .setPolicyRule(policyRule) + .subscribe() + .with( + tmp -> + LOGGER.infof( + "DeletePolicy with id: " + VALID_MESSAGE, + policyRuleBasic.getPolicyRuleId())); + + return policyRuleBasic.getPolicyRuleState(); + }); } - private void monitorKpi(List<AlarmDescriptor> alarmDescriptorList) { - - for (AlarmDescriptor alarmDescriptor : alarmDescriptorList) { - var monitorKpiRequest = - new MonitorKpiRequest( - alarmDescriptor.getKpiId(), MONITORING_WINDOW_IN_SECONDS, SAMPLING_RATE_PER_SECOND); - monitoringService - .monitorKpi(monitorKpiRequest) - .subscribe() - .with( - emptyMessage -> - LOGGER.infof( - "Kpi [%s] has started to be monitored.\n", alarmDescriptor.getKpiId())); + private Uni<List<Boolean>> returnInvalidDeviceIds(List<String> deviceIds) { + UniJoin.Builder<Boolean> builder = Uni.join().builder(); + for (String deviceId : deviceIds) { + final var validatedDeviceId = policyRuleConditionValidator.isDeviceIdValid(deviceId); + builder.add(validatedDeviceId); } + return builder.joinAll().andFailFast(); } - private void provisionAlarm( - PolicyRule policyRule, List<AlarmDescriptor> alarmDescriptorList, Boolean isService) { + private List<AlarmDescriptor> createAlarmDescriptorList(PolicyRule policyRule) { + final var policyRuleType = policyRule.getPolicyRuleType(); + final var policyRuleTypeSpecificType = policyRuleType.getPolicyRuleType(); - List<AlarmSubscription> alarmSubscriptionList = new ArrayList<>(); + List<AlarmDescriptor> alarmDescriptorList = new ArrayList<>(); + if (policyRuleTypeSpecificType instanceof PolicyRuleService) { + final var policyRuleService = (PolicyRuleService) policyRuleTypeSpecificType; + final var policyRuleBasic = policyRuleService.getPolicyRuleBasic(); - for (AlarmDescriptor alarmDescriptor : alarmDescriptorList) { - monitoringService - .setKpiAlarm(alarmDescriptor) - .subscribe() - .with(alarmId -> alarmSubscriptionList.add(new AlarmSubscription(alarmId, 0, 0))); - } + alarmDescriptorList = parsePolicyRuleCondition(policyRuleBasic); + if (alarmDescriptorList.isEmpty()) { + return List.of(); + } + } else { + final var policyRuleDevice = (PolicyRuleDevice) policyRuleTypeSpecificType; + final var policyRuleBasic = policyRuleDevice.getPolicyRuleBasic(); - setPolicyRuleToContext(policyRule, PROVISIONED_POLICYRULE_STATE); + alarmDescriptorList = parsePolicyRuleCondition(policyRuleBasic); + if (alarmDescriptorList.isEmpty()) { + return List.of(); + } + for (AlarmDescriptor alarmDescriptor : alarmDescriptorList) { + alarmPolicyRuleDeviceMap.put(alarmDescriptor.getAlarmId(), policyRuleDevice); + } + } - getAlarmResponseStream(policyRule, alarmDescriptorList, alarmSubscriptionList, isService); + return alarmDescriptorList; } - private void getAlarmResponseStream( - PolicyRule policyRule, - List<AlarmDescriptor> alarmDescriptorList, - List<AlarmSubscription> alarmSubscriptionList, - Boolean isService) { - - List<Multi<AlarmResponse>> alarmResponseStreamList = new ArrayList<>(); - for (AlarmSubscription alarmSubscription : alarmSubscriptionList) { - alarmResponseStreamList.add(monitoringService.getAlarmResponseStream(alarmSubscription)); - } - Multi<AlarmResponse> multi = Multi.createBy().merging().streams(alarmResponseStreamList); - + private void monitorAlarmResponseForService(Multi<AlarmResponse> multi) { multi - .select() - .first() .subscribe() .with( alarmResponse -> { + LOGGER.infof("**************************Received Alarm!**************************"); + LOGGER.infof("alarmResponse:"); LOGGER.info(alarmResponse); - if (isService) { - if (!alarmPolicyRuleServiceMap.containsKey(alarmResponse.getAlarmId())) { - return; - } - applyActionService(alarmResponse.getAlarmId()); - } else { - if (!alarmPolicyRuleDeviceMap.containsKey(alarmResponse.getAlarmId())) { - return; - } - applyActionDevice(alarmResponse.getAlarmId()); - } + LOGGER.info(alarmResponse.getAlarmId()); + applyActionService(alarmResponse.getAlarmId()); }); + } - Long count = - multi - .collect() - .with(Collectors.counting()) - .await() - .atMost(Duration.ofMinutes(POLICY_EVALUATION_TIMEOUT)); - - if (count > ACCEPTABLE_NUMBER_OF_ALARMS) { - for (AlarmDescriptor alarmDescriptor : alarmDescriptorList) { - monitoringService - .deleteAlarm(alarmDescriptor.getAlarmId()) - .subscribe() - .with( - emptyMessage -> - LOGGER.infof("Alarm [%s] has been deleted.\n", alarmDescriptor.getAlarmId())); - } - - setPolicyRuleToContext(policyRule, INEFFECTIVE_POLICYRULE_STATE); - - } else { - setPolicyRuleToContext(policyRule, EFFECTIVE_POLICYRULE_STATE); - - multi - .subscribe() - .with( - alarmResponse -> { - LOGGER.info(alarmResponse); - if (isService) { - applyActionService(alarmResponse.getAlarmId()); - } else { - applyActionDevice(alarmResponse.getAlarmId()); - } - }); - } + private void monitorAlarmResponseForDevice(Multi<AlarmResponse> multi) { + multi + .subscribe() + .with( + alarmResponse -> { + LOGGER.infof("**************************Received Alarm!**************************"); + LOGGER.infof("alarmResponse:"); + LOGGER.info(alarmResponse); + LOGGER.info(alarmResponse.getAlarmId()); + applyActionDevice(alarmResponse.getAlarmId()); + }); } + // TODO: To be refactored or deprecated + // private void evaluateAction( + // PolicyRule policyRule, + // List<AlarmDescriptor> alarmDescriptorList, + // Multi<AlarmResponse> multi) { + // + // Long count = + // multi + // .collect() + // .with(Collectors.counting()) + // .await() + // .atMost(Duration.ofMinutes(POLICY_EVALUATION_TIMEOUT)); + // + // if (count > ACCEPTABLE_NUMBER_OF_ALARMS) { + // for (AlarmDescriptor alarmDescriptor : alarmDescriptorList) { + // monitoringService + // .deleteAlarm(alarmDescriptor.getAlarmId()) + // .subscribe() + // .with( + // emptyMessage -> + // LOGGER.infof( + // "Alarm [%s] has been deleted as ineffective.\n", + // alarmDescriptor.getAlarmId())); + // } + // setPolicyRuleToContext(policyRule, INEFFECTIVE_POLICYRULE_STATE); + // } else { + // setPolicyRuleToContext(policyRule, EFFECTIVE_POLICYRULE_STATE); + // } + // } + private void applyActionDevice(String alarmId) { PolicyRuleDevice policyRuleDevice = alarmPolicyRuleDeviceMap.get(alarmId); @@ -526,190 +655,52 @@ public class PolicyServiceImpl implements PolicyService { }); } - private void applyActionService(String alarmId) { - PolicyRuleService policyRuleService = alarmPolicyRuleServiceMap.get(alarmId); - PolicyRuleAction policyRuleAction = policyRuleActionMap.get(alarmId); - - setPolicyRuleServiceToContext(policyRuleService, ACTIVE_POLICYRULE_STATE); - - switch (policyRuleAction.getPolicyRuleActionEnum()) { - case POLICY_RULE_ACTION_ADD_SERVICE_CONSTRAINT: - addServiceConstraint(policyRuleService, policyRuleAction); - case POLICY_RULE_ACTION_ADD_SERVICE_CONFIGRULE: - addServiceConfigRule(policyRuleService, policyRuleAction); - default: - LOGGER.errorf(INVALID_MESSAGE, policyRuleAction.getPolicyRuleActionEnum()); - return; - } - } - - private void validateDevice(PolicyRuleDevice policyRuleDevice) { - final var deviceIds = policyRuleDevice.getDeviceIds(); - final var policyRuleId = policyRuleDevice.getPolicyRuleBasic().getPolicyRuleId(); - - final var invalidDeviceIds = returnInvalidDeviceIds(deviceIds); - if (!invalidDeviceIds.isEmpty()) { - String ids = ""; - for (String id : invalidDeviceIds) { - ids += " ," + id; - } - - String message = - String.format( - "The following devices in PolicyRuleDevice with ID: %s are not valid: %s", - policyRuleId, ids); - setPolicyRuleDeviceToContext( - policyRuleDevice, new PolicyRuleState(PolicyRuleStateEnum.POLICY_FAILED, message)); - return; - } - - createAlarmDescriptorsForDevices(policyRuleDevice); - } - - private void createAlarmDescriptorsForDevices(PolicyRuleDevice policyRuleDevice) { - final var policyRuleBasic = policyRuleDevice.getPolicyRuleBasic(); - - List<AlarmDescriptor> alarmDescriptorList = - parsePolicyRuleCondition(policyRuleDevice.getPolicyRuleBasic()); - - if (alarmDescriptorList.isEmpty()) { - String message = - String.format( - "The devices of PolicyRuleDevice with ID: %s are not valid", - policyRuleBasic.getPolicyRuleId()); - setPolicyRuleDeviceToContext( - policyRuleDevice, new PolicyRuleState(PolicyRuleStateEnum.POLICY_FAILED, message)); - return; - } - - setPolicyRuleDeviceToContext(policyRuleDevice, VALIDATED_POLICYRULE_STATE); - for (AlarmDescriptor alarmDescriptor : alarmDescriptorList) { - alarmPolicyRuleDeviceMap.put(alarmDescriptor.getAlarmId(), policyRuleDevice); - } - - final var policyRuleTypeService = new PolicyRuleTypeDevice(policyRuleDevice); - final var policyRule = new PolicyRule(policyRuleTypeService); - monitorKpi(alarmDescriptorList); - provisionAlarm(policyRule, alarmDescriptorList, false); - return; - } - - private void validateUpdatedPolicyService(PolicyRuleService policyRuleService) { - - final var policyRuleBasic = policyRuleService.getPolicyRuleBasic(); - final var isUpdatedPolicyRuleValid = - policyRuleConditionValidator.validateUpdatedPolicyRuleId(policyRuleBasic.getPolicyRuleId()); - - isUpdatedPolicyRuleValid - .subscribe() - .with( - policyRuleBoolean -> { - if (Boolean.FALSE.equals(policyRuleBoolean)) { - - String message = - String.format( - "The PolicyRule with ID: %s was not found. PolicyUpdateService failed.", - policyRuleBasic.getPolicyRuleId()); - setPolicyRuleServiceToContext( - policyRuleService, - new PolicyRuleState(PolicyRuleStateEnum.POLICY_FAILED, message)); - return; - } - - validateService(policyRuleService); - }); - } - - private void validateUpdatedPolicyDevice(PolicyRuleDevice policyRuleDevice) { + private void callRecalculatePathRPC( + PolicyRuleService policyRuleService, PolicyRuleAction policyRuleAction) { - final var policyRuleBasic = policyRuleDevice.getPolicyRuleBasic(); - final var isUpdatedPolicyRuleValid = - policyRuleConditionValidator.validateUpdatedPolicyRuleId(policyRuleBasic.getPolicyRuleId()); + final var deserializedServiceUni = contextService.getService(policyRuleService.getServiceId()); - isUpdatedPolicyRuleValid + deserializedServiceUni .subscribe() .with( - policyRuleBoolean -> { - if (Boolean.FALSE.equals(policyRuleBoolean)) { - String message = - String.format( - "PolicyRule with ID: %s was not found. PolicyUpdateDevice failed", - policyRuleBasic.getPolicyRuleId()); - setPolicyRuleDeviceToContext( - policyRuleDevice, - new PolicyRuleState(PolicyRuleStateEnum.POLICY_FAILED, message)); - return; - } - validateDevice(policyRuleDevice); + deserializedService -> { + serviceService + .recomputeConnections(deserializedService) + .subscribe() + .with( + x -> { + LOGGER.info("called recomputeConnections with:"); + LOGGER.info(deserializedService); + setPolicyRuleServiceToContext(policyRuleService, ENFORCED_POLICYRULE_STATE); + }); }); } - private void validateService(PolicyRuleService policyRuleService) { - final var serviceId = policyRuleService.getServiceId(); - final var deviceIds = policyRuleService.getDeviceIds(); - final var policyRuleBasic = policyRuleService.getPolicyRuleBasic(); - - Boolean isServiceIdValid = - policyRuleConditionValidator.validateServiceId(serviceId).await().indefinitely(); - - if (!isServiceIdValid) { - String message = - String.format( - "Cannot provision/update a PolicyRule with invalid service ID: %s", - policyRuleBasic.getPolicyRuleId()); - setPolicyRuleServiceToContext( - policyRuleService, new PolicyRuleState(PolicyRuleStateEnum.POLICY_FAILED, message)); - return; - } - - Boolean isServicesDeviceIdsValid = - policyRuleConditionValidator - .isServicesDeviceIdsValid(serviceId, deviceIds) - .await() - .indefinitely(); - - if (!isServicesDeviceIdsValid) { - - String message = - String.format( - "Cannot provision/update a PolicyRule with invalid service ID: %s", - policyRuleBasic.getPolicyRuleId()); - setPolicyRuleServiceToContext( - policyRuleService, new PolicyRuleState(PolicyRuleStateEnum.POLICY_FAILED, message)); - return; - } - - setPolicyRuleServiceToContext(policyRuleService, VALIDATED_POLICYRULE_STATE); - - createAlarmDescriptorsForService(policyRuleService); - } - - private void createAlarmDescriptorsForService(PolicyRuleService policyRuleService) { - final var policyRuleBasic = policyRuleService.getPolicyRuleBasic(); - - List<AlarmDescriptor> alarmDescriptorList = - parsePolicyRuleCondition(policyRuleService.getPolicyRuleBasic()); - - if (alarmDescriptorList.isEmpty()) { - String message = - String.format( - "Invalid PolicyRuleConditions in PolicyRule with ID: %s", - policyRuleBasic.getPolicyRuleId()); - setPolicyRuleServiceToContext( - policyRuleService, new PolicyRuleState(PolicyRuleStateEnum.POLICY_FAILED, message)); - return; - } - - setPolicyRuleServiceToContext(policyRuleService, VALIDATED_POLICYRULE_STATE); - - for (AlarmDescriptor alarmDescriptor : alarmDescriptorList) { - alarmPolicyRuleServiceMap.put(alarmDescriptor.getAlarmId(), policyRuleService); + private void applyActionService(String alarmId) { + PolicyRuleService policyRuleService = alarmPolicyRuleServiceMap.get(alarmId); + PolicyRuleAction policyRuleAction = + policyRuleService.getPolicyRuleBasic().getPolicyRuleActions().get(0); + + if (noAlarms == 0) { + noAlarms++; + setPolicyRuleServiceToContext(policyRuleService, ACTIVE_POLICYRULE_STATE); + + switch (policyRuleAction.getPolicyRuleActionEnum()) { + case POLICY_RULE_ACTION_ADD_SERVICE_CONSTRAINT: + addServiceConstraint(policyRuleService, policyRuleAction); + case POLICY_RULE_ACTION_ADD_SERVICE_CONFIGRULE: + addServiceConfigRule(policyRuleService, policyRuleAction); + case POLICY_RULE_ACTION_RECALCULATE_PATH: + callRecalculatePathRPC(policyRuleService, policyRuleAction); + default: + LOGGER.errorf(INVALID_MESSAGE, policyRuleAction.getPolicyRuleActionEnum()); + return; + } + } else if (noAlarms == 2) { + noAlarms = 0; + } else { + noAlarms++; } - - final var policyRuleTypeService = new PolicyRuleTypeService(policyRuleService); - final var policyRule = new PolicyRule(policyRuleTypeService); - provisionAlarm(policyRule, alarmDescriptorList, true); - return; } private List<AlarmDescriptor> parsePolicyRuleCondition(PolicyRuleBasic policyRuleBasic) { @@ -833,16 +824,16 @@ public class PolicyServiceImpl implements PolicyService { false); case POLICY_RULE_CONDITION_NUMERICAL_GREATER_THAN: - return new KpiValueRange(policyRuleCondition.getKpiValue(), null, false, false, false); + return new KpiValueRange(null, policyRuleCondition.getKpiValue(), true, false, false); case POLICY_RULE_CONDITION_NUMERICAL_GREATER_THAN_EQUAL: - return new KpiValueRange(policyRuleCondition.getKpiValue(), null, false, true, false); + return new KpiValueRange(null, policyRuleCondition.getKpiValue(), true, true, false); case POLICY_RULE_CONDITION_NUMERICAL_LESS_THAN: - return new KpiValueRange(null, policyRuleCondition.getKpiValue(), false, false, false); + return new KpiValueRange(policyRuleCondition.getKpiValue(), null, true, false, false); case POLICY_RULE_CONDITION_NUMERICAL_LESS_THAN_EQUAL: - return new KpiValueRange(null, policyRuleCondition.getKpiValue(), false, false, true); + return new KpiValueRange(policyRuleCondition.getKpiValue(), null, true, false, true); default: return null; } @@ -885,31 +876,6 @@ public class PolicyServiceImpl implements PolicyService { return new KpiValueRange(kpiMinValue, kpiMaxValue, true, includeMinValue, includeMaxValue); } - private List<String> returnInvalidDeviceIds(List<String> deviceIds) { - var invalidDeviceIds = new ArrayList<String>(); - - if (!deviceIds.isEmpty()) { - - for (String deviceId : deviceIds) { - final var validatedDeviceId = policyRuleConditionValidator.validateDeviceId(deviceId); - - validatedDeviceId - .subscribe() - .with( - deviceIdBoolean -> { - if (Boolean.FALSE.equals(deviceIdBoolean)) { - invalidDeviceIds.add(deviceId); - } - }); - } - - } else { - LOGGER.warnf("No deviceIds found"); - } - - return invalidDeviceIds; - } - private void setPolicyRuleToContext(PolicyRule policyRule, PolicyRuleState policyRuleState) { final var policyRuleType = policyRule.getPolicyRuleType(); final var policyRuleTypeSpecificType = policyRuleType.getPolicyRuleType(); diff --git a/src/policy/src/main/java/eu/teraflow/policy/Serializer.java b/src/policy/src/main/java/eu/teraflow/policy/Serializer.java index 52d594ea4200c2ce4d775edf2f06cf7a9c9f9097..5a95f0e6edd200251a27b1e3571b719ebd102e1b 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/Serializer.java +++ b/src/policy/src/main/java/eu/teraflow/policy/Serializer.java @@ -1557,8 +1557,21 @@ public class Serializer { final var kpiValueMin = kpiValueRange.getKpiMinValue(); final var kpiValueMax = kpiValueRange.getKpiMaxValue(); - final var serializedKpiValueMin = serialize(kpiValueMin); - final var serializedKpiValueMax = serialize(kpiValueMax); + Monitoring.KpiValue serializedKpiValueMin; + Monitoring.KpiValue serializedKpiValueMax; + + if (kpiValueMin == null && kpiValueMax == null) { + throw new IllegalStateException("KPI value max and min cannot be both null"); + } else if (kpiValueMax == null) { + serializedKpiValueMin = serialize(kpiValueMin); + serializedKpiValueMax = serialize(new StringKpiValue("NaN")); + } else if (kpiValueMin == null) { + serializedKpiValueMin = serialize(new StringKpiValue("NaN")); + serializedKpiValueMax = serialize(kpiValueMax); + } else { + serializedKpiValueMin = serialize(kpiValueMin); + serializedKpiValueMax = serialize(kpiValueMax); + } builder.setKpiMinValue(serializedKpiValueMin); builder.setKpiMaxValue(serializedKpiValueMax); @@ -1824,6 +1837,10 @@ public class Serializer { return PolicyAction.PolicyRuleActionEnum.POLICYRULE_ACTION_ADD_SERVICE_CONSTRAINT; case POLICY_RULE_ACTION_NO_ACTION: return PolicyAction.PolicyRuleActionEnum.POLICYRULE_ACTION_NO_ACTION; + case POLICY_RULE_ACTION_CALL_SERVICE_RPC: + return PolicyAction.PolicyRuleActionEnum.POLICY_RULE_ACTION_CALL_SERVICE_RPC; + case POLICY_RULE_ACTION_RECALCULATE_PATH: + return PolicyAction.PolicyRuleActionEnum.POLICY_RULE_ACTION_RECALCULATE_PATH; default: return PolicyAction.PolicyRuleActionEnum.UNRECOGNIZED; } @@ -1838,6 +1855,10 @@ public class Serializer { return PolicyRuleActionEnum.POLICY_RULE_ACTION_ADD_SERVICE_CONFIGRULE; case POLICYRULE_ACTION_ADD_SERVICE_CONSTRAINT: return PolicyRuleActionEnum.POLICY_RULE_ACTION_ADD_SERVICE_CONSTRAINT; + case POLICY_RULE_ACTION_CALL_SERVICE_RPC: + return PolicyRuleActionEnum.POLICY_RULE_ACTION_CALL_SERVICE_RPC; + case POLICY_RULE_ACTION_RECALCULATE_PATH: + return PolicyRuleActionEnum.POLICY_RULE_ACTION_RECALCULATE_PATH; case POLICYRULE_ACTION_NO_ACTION: case UNRECOGNIZED: default: diff --git a/src/policy/src/main/java/eu/teraflow/policy/context/model/ServiceStatusEnum.java b/src/policy/src/main/java/eu/teraflow/policy/context/model/ServiceStatusEnum.java index 0a9115acd7cec634d1a4cf6dd096bf44adab141e..353b78eba1ad261d6c65561d1fe3e4f64a914420 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/context/model/ServiceStatusEnum.java +++ b/src/policy/src/main/java/eu/teraflow/policy/context/model/ServiceStatusEnum.java @@ -20,5 +20,7 @@ public enum ServiceStatusEnum { UNDEFINED, PLANNED, ACTIVE, - PENDING_REMOVAL + PENDING_REMOVAL, + SLA_VIOLATED, + UPDATING } 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 432c3834c1c2f3417540bb4e62d43a1dfc58a167..971dfbaf29bba86ce0043e2edc6bb1e21f181643 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 @@ -20,5 +20,8 @@ public enum PolicyRuleActionEnum { POLICY_RULE_ACTION_NO_ACTION, POLICY_RULE_ACTION_SET_DEVICE_STATUS, POLICY_RULE_ACTION_ADD_SERVICE_CONFIGRULE, - POLICY_RULE_ACTION_ADD_SERVICE_CONSTRAINT + POLICY_RULE_ACTION_ADD_SERVICE_CONSTRAINT, + POLICY_RULE_ACTION_CALL_SERVICE_RPC, + // This is temporary + POLICY_RULE_ACTION_RECALCULATE_PATH } diff --git a/src/policy/src/main/java/eu/teraflow/policy/monitoring/model/AlarmSubscription.java b/src/policy/src/main/java/eu/teraflow/policy/monitoring/model/AlarmSubscription.java index 532eed60868dfbd5fe1996c781964d3d49a368af..7b99c20456987b6c56a0af00821fb5ef33954ada 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/monitoring/model/AlarmSubscription.java +++ b/src/policy/src/main/java/eu/teraflow/policy/monitoring/model/AlarmSubscription.java @@ -22,6 +22,7 @@ public class AlarmSubscription { private final float subscriptionTimeoutS; private final float subscriptionFrequencyMs; + // TODO: Refactor the AlarmSubscription constructor to allow infinite subscriptionTimeoutS public AlarmSubscription( String alarmId, float subscriptionTimeoutS, float subscriptionFrequencyMs) { this.alarmId = alarmId; diff --git a/src/policy/src/main/java/eu/teraflow/policy/service/ServiceGateway.java b/src/policy/src/main/java/eu/teraflow/policy/service/ServiceGateway.java index a7483f4f62ac798932ea64a3351536ffb4e5155d..b8764efe312bae8b395beb3a22b1d2a57346b37d 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/service/ServiceGateway.java +++ b/src/policy/src/main/java/eu/teraflow/policy/service/ServiceGateway.java @@ -16,6 +16,7 @@ package eu.teraflow.policy.service; +import eu.teraflow.policy.context.model.Empty; import eu.teraflow.policy.context.model.Service; import eu.teraflow.policy.context.model.ServiceId; import io.smallrye.mutiny.Uni; @@ -23,4 +24,6 @@ import io.smallrye.mutiny.Uni; public interface ServiceGateway { Uni<ServiceId> updateService(Service service); + + Uni<Empty> recomputeConnections(Service service); } diff --git a/src/policy/src/main/java/eu/teraflow/policy/service/ServiceGatewayImpl.java b/src/policy/src/main/java/eu/teraflow/policy/service/ServiceGatewayImpl.java index d59330fd2b756749c333e70547989bb443bd19d8..f8f38f7520f608b52f432e41b96e46448234a68e 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/service/ServiceGatewayImpl.java +++ b/src/policy/src/main/java/eu/teraflow/policy/service/ServiceGatewayImpl.java @@ -17,16 +17,19 @@ package eu.teraflow.policy.service; import eu.teraflow.policy.Serializer; +import eu.teraflow.policy.context.model.Empty; import eu.teraflow.policy.context.model.Service; import eu.teraflow.policy.context.model.ServiceId; import io.quarkus.grpc.GrpcClient; import io.smallrye.mutiny.Uni; import javax.enterprise.context.ApplicationScoped; import javax.inject.Inject; +import org.jboss.logging.Logger; import service.MutinyServiceServiceGrpc.MutinyServiceServiceStub; @ApplicationScoped public class ServiceGatewayImpl implements ServiceGateway { + private static final Logger LOGGER = Logger.getLogger(ServiceGatewayImpl.class); @GrpcClient("service") MutinyServiceServiceStub streamingDelegateService; @@ -47,4 +50,23 @@ public class ServiceGatewayImpl implements ServiceGateway { .onItem() .transform(serializer::deserialize); } + + @Override + public Uni<Empty> recomputeConnections(Service service) { + service.getServiceEndPointIds().clear(); + service.getServiceConstraints().clear(); + final var serializedService = serializer.serialize(service); + LOGGER.info(serializedService); + + return streamingDelegateService + .recomputeConnections(serializedService) + .onItem() + .transform(serializer::deserializeEmpty) + .onFailure() + .invoke( + x -> { + LOGGER.info("recomputeConnections failed with:"); + LOGGER.info(x); + }); + } } diff --git a/src/policy/src/main/java/eu/teraflow/policy/service/ServiceService.java b/src/policy/src/main/java/eu/teraflow/policy/service/ServiceService.java index bbf91aff0c7ffeeb3f262fa3cebd582acda74502..aa4411ee9d79ea56c3d6f5b901f92b0125fe4b00 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/service/ServiceService.java +++ b/src/policy/src/main/java/eu/teraflow/policy/service/ServiceService.java @@ -16,6 +16,7 @@ package eu.teraflow.policy.service; +import eu.teraflow.policy.context.model.Empty; import eu.teraflow.policy.context.model.Service; import eu.teraflow.policy.context.model.ServiceId; import io.smallrye.mutiny.Uni; @@ -23,4 +24,6 @@ import io.smallrye.mutiny.Uni; public interface ServiceService { Uni<ServiceId> updateService(Service service); + + Uni<Empty> recomputeConnections(Service service); } diff --git a/src/policy/src/main/java/eu/teraflow/policy/service/ServiceServiceImpl.java b/src/policy/src/main/java/eu/teraflow/policy/service/ServiceServiceImpl.java index 74728924f70070e7651ac1af4ad75aba8b325c0e..109bcba261d4464313d5b6f21ee2bdde76b17879 100644 --- a/src/policy/src/main/java/eu/teraflow/policy/service/ServiceServiceImpl.java +++ b/src/policy/src/main/java/eu/teraflow/policy/service/ServiceServiceImpl.java @@ -16,6 +16,7 @@ package eu.teraflow.policy.service; +import eu.teraflow.policy.context.model.Empty; import eu.teraflow.policy.context.model.Service; import eu.teraflow.policy.context.model.ServiceId; import io.smallrye.mutiny.Uni; @@ -36,4 +37,9 @@ public class ServiceServiceImpl implements ServiceService { public Uni<ServiceId> updateService(Service service) { return serviceGateway.updateService(service); } + + @Override + public Uni<Empty> recomputeConnections(Service service) { + return serviceGateway.recomputeConnections(service); + } } diff --git a/src/policy/src/test/java/eu/teraflow/policy/PolicyRuleServiceValidationTest.java b/src/policy/src/test/java/eu/teraflow/policy/PolicyRuleServiceValidationTest.java index 057906d6528a165bdd9c958e8339ac8f5d59cc25..95819965e77a4ba61d13ee240594e37c1eb4cd74 100644 --- a/src/policy/src/test/java/eu/teraflow/policy/PolicyRuleServiceValidationTest.java +++ b/src/policy/src/test/java/eu/teraflow/policy/PolicyRuleServiceValidationTest.java @@ -17,8 +17,25 @@ package eu.teraflow.policy; import static org.assertj.core.api.Assertions.assertThat; - +import static org.mockito.ArgumentMatchers.anyString; +import static org.mockito.Mockito.when; + +import eu.teraflow.policy.context.ContextService; +import eu.teraflow.policy.context.model.ConfigActionEnum; +import eu.teraflow.policy.context.model.ConfigRule; +import eu.teraflow.policy.context.model.ConfigRuleCustom; +import eu.teraflow.policy.context.model.ConfigRuleTypeCustom; +import eu.teraflow.policy.context.model.Device; +import eu.teraflow.policy.context.model.DeviceConfig; +import eu.teraflow.policy.context.model.DeviceDriverEnum; +import eu.teraflow.policy.context.model.DeviceOperationalStatus; +import eu.teraflow.policy.context.model.EndPoint.EndPointBuilder; +import eu.teraflow.policy.context.model.EndPointId; +import eu.teraflow.policy.context.model.Location; +import eu.teraflow.policy.context.model.LocationTypeRegion; import eu.teraflow.policy.context.model.ServiceId; +import eu.teraflow.policy.context.model.TopologyId; +import eu.teraflow.policy.kpi_sample_types.model.KpiSampleType; import eu.teraflow.policy.model.BooleanOperator; import eu.teraflow.policy.model.NumericalOperator; import eu.teraflow.policy.model.PolicyRuleAction; @@ -32,13 +49,84 @@ import eu.teraflow.policy.model.PolicyRuleStateEnum; import eu.teraflow.policy.monitoring.model.IntegerKpiValue; import eu.teraflow.policy.monitoring.model.KpiValue; import io.quarkus.test.junit.QuarkusTest; +import io.smallrye.mutiny.Uni; import java.util.Collections; import java.util.List; import java.util.UUID; +import javax.inject.Inject; +import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; +import org.mockito.Mockito; @QuarkusTest class PolicyRuleServiceValidationTest { + @Inject Serializer serializer; + + private ContextService contextService; + private PolicyRuleConditionValidator policyRuleConditionValidator; + + @BeforeEach + void setUp() { + contextService = Mockito.mock(ContextService.class); + policyRuleConditionValidator = new PolicyRuleConditionValidator(contextService); + } + + @Test + void testIsDeviceIdValidReturnsTrue() { + String deviceId = "deviceId"; + Device device = createDevice(deviceId); + + when(contextService.getDevice(anyString())).thenReturn(Uni.createFrom().item(device)); + + Boolean result = policyRuleConditionValidator.isDeviceIdValid(deviceId).await().indefinitely(); + + assertThat(result).isEqualTo(true); + } + + @Test + void testIsDeviceIdValidReturnsFalse() { + String deviceId = "deviceId"; + + when(contextService.getDevice(anyString())) + .thenReturn(Uni.createFrom().failure(new RuntimeException("Failure"))); + + Boolean result = policyRuleConditionValidator.isDeviceIdValid(deviceId).await().indefinitely(); + + assertThat(result).isEqualTo(false); + } + + Device createDevice(String deviceId) { + + final var configRuleCustom = new ConfigRuleCustom("resourceKeyA", "resourceValueA"); + final var configRuleType = new ConfigRuleTypeCustom(configRuleCustom); + final var deviceConfig = + new DeviceConfig(List.of(new ConfigRule(ConfigActionEnum.SET, configRuleType))); + + final var deviceDrivers = List.of(DeviceDriverEnum.IETF_NETWORK_TOPOLOGY, DeviceDriverEnum.P4); + + final var expectedTopologyId = new TopologyId("contextId", "id"); + final var expectedDeviceId = "expectedDeviceId"; + final var expectedId = "expectedId"; + final var endPointId = new EndPointId(expectedTopologyId, expectedDeviceId, expectedId); + + final var endPointType = "endPointType"; + final var kpiSampleTypes = + List.of(KpiSampleType.BYTES_RECEIVED, KpiSampleType.BYTES_TRANSMITTED); + final var locationTypeRegion = new LocationTypeRegion("ATH"); + final var location = new Location(locationTypeRegion); + final var endPoint = + new EndPointBuilder(endPointId, endPointType, kpiSampleTypes).location(location).build(); + + final var endPoints = List.of(endPoint); + + return new Device( + deviceId, + "deviceType", + deviceConfig, + DeviceOperationalStatus.ENABLED, + deviceDrivers, + endPoints); + } private List<PolicyRuleCondition> createPolicyRuleConditions( String kpiId, NumericalOperator numericalOperator, KpiValue<?> kpiValue) { 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 eb7f4b96097efc7ed72c38051c9308a8db4413a0..2f5266c9591144fe4ab70bf38f7cc3943ef4cdd9 100644 --- a/src/policy/src/test/java/eu/teraflow/policy/PolicyServiceTest.java +++ b/src/policy/src/test/java/eu/teraflow/policy/PolicyServiceTest.java @@ -146,72 +146,79 @@ class PolicyServiceTest { .build(); } - @Test - void shouldAddPolicyService() throws ExecutionException, InterruptedException, TimeoutException { - CompletableFuture<String> message = new CompletableFuture<>(); - - final var policyRuleBasic = createPolicyRuleBasic(); + // @Test + // void shouldAddPolicyService() throws ExecutionException, InterruptedException, TimeoutException + // { + // CompletableFuture<String> message = new CompletableFuture<>(); - final var expectedPolicyRuleState = policyRuleBasic.getPolicyRuleState(); + // final var policyRuleBasic = createPolicyRuleBasic(); - final var serviceId = createContextServiceId(); + // final var expectedPolicyRuleState = policyRuleBasic.getPolicyRuleState(); - final var expectedDeviceIdUuid1 = - serializer.serializeUuid("20db867c-772d-4872-9179-244ecafb3257"); + // final var serviceId = createContextServiceId(); - final var expectedDeviceId1 = - ContextOuterClass.DeviceId.newBuilder().setDeviceUuid(expectedDeviceIdUuid1).build(); - - final var deviceIds = List.of(expectedDeviceId1); - final var policyRuleService = - Policy.PolicyRuleService.newBuilder() - .setPolicyRuleBasic(policyRuleBasic) - .setServiceId(serviceId) - .addAllDeviceList(deviceIds) - .build(); + // final var expectedDeviceIdUuid1 = + // serializer.serializeUuid("20db867c-772d-4872-9179-244ecafb3257"); - client - .policyAddService(policyRuleService) - .subscribe() - .with(policyRuleState -> message.complete(policyRuleState.getPolicyRuleState().toString())); + // final var expectedDeviceId1 = + // + // ContextOuterClass.DeviceId.newBuilder().setDeviceUuid(expectedDeviceIdUuid1).build(); + + // final var deviceIds = List.of(expectedDeviceId1); + // final var policyRuleService = + // Policy.PolicyRuleService.newBuilder() + // .setPolicyRuleBasic(policyRuleBasic) + // .setServiceId(serviceId) + // .addAllDeviceList(deviceIds) + // .build(); + + // client + // .policyAddService(policyRuleService) + // .subscribe() + // .with(policyRuleState -> + // message.complete(policyRuleState.getPolicyRuleState().toString())); - assertThat(message.get(5, TimeUnit.SECONDS)) - .isEqualTo(expectedPolicyRuleState.getPolicyRuleState().toString()); - } + // assertThat(message.get(5, TimeUnit.SECONDS)) + // .isEqualTo(expectedPolicyRuleState.getPolicyRuleState().toString()); + // } - @Test - void shouldAddPolicyDevice() throws ExecutionException, InterruptedException, TimeoutException { - CompletableFuture<String> message = new CompletableFuture<>(); + // @Test + // void shouldAddPolicyDevice() throws ExecutionException, InterruptedException, TimeoutException + // { + // CompletableFuture<String> message = new CompletableFuture<>(); - final var expectedDeviceIdUuid1 = - serializer.serializeUuid("20db867c-772d-4872-9179-244ecafb3257"); - final var expectedDeviceIdUuid2 = - serializer.serializeUuid("095974ac-d757-412d-b317-bcf355220aa9"); + // final var expectedDeviceIdUuid1 = + // serializer.serializeUuid("20db867c-772d-4872-9179-244ecafb3257"); + // final var expectedDeviceIdUuid2 = + // serializer.serializeUuid("095974ac-d757-412d-b317-bcf355220aa9"); - final var expectedDeviceId1 = - ContextOuterClass.DeviceId.newBuilder().setDeviceUuid(expectedDeviceIdUuid1).build(); - final var expectedDeviceId2 = - ContextOuterClass.DeviceId.newBuilder().setDeviceUuid(expectedDeviceIdUuid2).build(); + // final var expectedDeviceId1 = + // + // ContextOuterClass.DeviceId.newBuilder().setDeviceUuid(expectedDeviceIdUuid1).build(); + // final var expectedDeviceId2 = + // + // ContextOuterClass.DeviceId.newBuilder().setDeviceUuid(expectedDeviceIdUuid2).build(); - final var policyRuleBasic = createPolicyRuleBasic(); - final var deviceIds = List.of(expectedDeviceId1, expectedDeviceId2); + // final var policyRuleBasic = createPolicyRuleBasic(); + // final var deviceIds = List.of(expectedDeviceId1, expectedDeviceId2); - final var expectedPolicyRuleState = policyRuleBasic.getPolicyRuleState(); + // final var expectedPolicyRuleState = policyRuleBasic.getPolicyRuleState(); - final var policyRuleDevice = - Policy.PolicyRuleDevice.newBuilder() - .setPolicyRuleBasic(policyRuleBasic) - .addAllDeviceList(deviceIds) - .build(); + // final var policyRuleDevice = + // Policy.PolicyRuleDevice.newBuilder() + // .setPolicyRuleBasic(policyRuleBasic) + // .addAllDeviceList(deviceIds) + // .build(); - client - .policyAddDevice(policyRuleDevice) - .subscribe() - .with(policyRuleState -> message.complete(policyRuleState.getPolicyRuleState().toString())); + // client + // .policyAddDevice(policyRuleDevice) + // .subscribe() + // .with(policyRuleState -> + // message.complete(policyRuleState.getPolicyRuleState().toString())); - assertThat(message.get(5, TimeUnit.SECONDS)) - .isEqualTo(expectedPolicyRuleState.getPolicyRuleState().toString()); - } + // assertThat(message.get(5, TimeUnit.SECONDS)) + // .isEqualTo(expectedPolicyRuleState.getPolicyRuleState().toString()); + // } @Test void shouldUpdatePolicyServiceReturnFailedState() diff --git a/src/policy/src/test/java/eu/teraflow/policy/SerializerTest.java b/src/policy/src/test/java/eu/teraflow/policy/SerializerTest.java index f06c30204b874cd6be30cd1a906c5087412e9640..32055a1820365ffc0f048fa70e99df5f3369fd81 100644 --- a/src/policy/src/test/java/eu/teraflow/policy/SerializerTest.java +++ b/src/policy/src/test/java/eu/teraflow/policy/SerializerTest.java @@ -4,7 +4,7 @@ * 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 -*provideKpiValueRanges +* * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software @@ -1914,8 +1914,7 @@ class SerializerTest { ServiceStatusEnum.SLA_VIOLATED, ContextOuterClass.ServiceStatusEnum.SERVICESTATUS_SLA_VIOLATED), Arguments.of( - ServiceStatusEnum.UPDATING, - ContextOuterClass.ServiceStatusEnum.SERVICESTATUS_UPDATING), + ServiceStatusEnum.UPDATING, ContextOuterClass.ServiceStatusEnum.SERVICESTATUS_UPDATING), Arguments.of( ServiceStatusEnum.UNDEFINED, ContextOuterClass.ServiceStatusEnum.SERVICESTATUS_UNDEFINED)); diff --git a/src/policy/target/generated-sources/grpc/context/ContextOuterClass.java b/src/policy/target/generated-sources/grpc/context/ContextOuterClass.java index 53252341b30dc093c79d5a54baf98b82e6a24b75..a605e30de68ae66866a78d53863412937ceea890 100644 --- a/src/policy/target/generated-sources/grpc/context/ContextOuterClass.java +++ b/src/policy/target/generated-sources/grpc/context/ContextOuterClass.java @@ -181,6 +181,10 @@ public final class ContextOuterClass { * <code>DEVICEDRIVER_IETF_L2VPN = 7;</code> */ DEVICEDRIVER_IETF_L2VPN(7), + /** + * <code>DEVICEDRIVER_GNMI_OPENCONFIG = 8;</code> + */ + DEVICEDRIVER_GNMI_OPENCONFIG(8), UNRECOGNIZED(-1), ; @@ -220,6 +224,10 @@ public final class ContextOuterClass { * <code>DEVICEDRIVER_IETF_L2VPN = 7;</code> */ public static final int DEVICEDRIVER_IETF_L2VPN_VALUE = 7; + /** + * <code>DEVICEDRIVER_GNMI_OPENCONFIG = 8;</code> + */ + public static final int DEVICEDRIVER_GNMI_OPENCONFIG_VALUE = 8; public final int getNumber() { @@ -254,6 +262,7 @@ public final class ContextOuterClass { case 5: return DEVICEDRIVER_ONF_TR_352; case 6: return DEVICEDRIVER_XR; case 7: return DEVICEDRIVER_IETF_L2VPN; + case 8: return DEVICEDRIVER_GNMI_OPENCONFIG; default: return null; } } @@ -571,13 +580,17 @@ public final class ContextOuterClass { */ SERVICESTATUS_ACTIVE(2), /** - * <code>SERVICESTATUS_PENDING_REMOVAL = 3;</code> + * <code>SERVICESTATUS_UPDATING = 3;</code> */ - SERVICESTATUS_PENDING_REMOVAL(3), + SERVICESTATUS_UPDATING(3), /** - * <code>SERVICESTATUS_SLA_VIOLATED = 4;</code> + * <code>SERVICESTATUS_PENDING_REMOVAL = 4;</code> */ - SERVICESTATUS_SLA_VIOLATED(4), + SERVICESTATUS_PENDING_REMOVAL(4), + /** + * <code>SERVICESTATUS_SLA_VIOLATED = 5;</code> + */ + SERVICESTATUS_SLA_VIOLATED(5), UNRECOGNIZED(-1), ; @@ -594,13 +607,17 @@ public final class ContextOuterClass { */ public static final int SERVICESTATUS_ACTIVE_VALUE = 2; /** - * <code>SERVICESTATUS_PENDING_REMOVAL = 3;</code> + * <code>SERVICESTATUS_UPDATING = 3;</code> + */ + public static final int SERVICESTATUS_UPDATING_VALUE = 3; + /** + * <code>SERVICESTATUS_PENDING_REMOVAL = 4;</code> */ - public static final int SERVICESTATUS_PENDING_REMOVAL_VALUE = 3; + public static final int SERVICESTATUS_PENDING_REMOVAL_VALUE = 4; /** - * <code>SERVICESTATUS_SLA_VIOLATED = 4;</code> + * <code>SERVICESTATUS_SLA_VIOLATED = 5;</code> */ - public static final int SERVICESTATUS_SLA_VIOLATED_VALUE = 4; + public static final int SERVICESTATUS_SLA_VIOLATED_VALUE = 5; public final int getNumber() { @@ -630,8 +647,9 @@ public final class ContextOuterClass { case 0: return SERVICESTATUS_UNDEFINED; case 1: return SERVICESTATUS_PLANNED; case 2: return SERVICESTATUS_ACTIVE; - case 3: return SERVICESTATUS_PENDING_REMOVAL; - case 4: return SERVICESTATUS_SLA_VIOLATED; + case 3: return SERVICESTATUS_UPDATING; + case 4: return SERVICESTATUS_PENDING_REMOVAL; + case 5: return SERVICESTATUS_SLA_VIOLATED; default: return null; } } @@ -953,6 +971,127 @@ public final class ContextOuterClass { // @@protoc_insertion_point(enum_scope:context.ConfigActionEnum) } + /** + * <pre> + * ----- Constraint ---------------------------------------------------------------------------------------------------- + * </pre> + * + * Protobuf enum {@code context.ConstraintActionEnum} + */ + public enum ConstraintActionEnum + implements com.google.protobuf.ProtocolMessageEnum { + /** + * <code>CONSTRAINTACTION_UNDEFINED = 0;</code> + */ + CONSTRAINTACTION_UNDEFINED(0), + /** + * <code>CONSTRAINTACTION_SET = 1;</code> + */ + CONSTRAINTACTION_SET(1), + /** + * <code>CONSTRAINTACTION_DELETE = 2;</code> + */ + CONSTRAINTACTION_DELETE(2), + UNRECOGNIZED(-1), + ; + + /** + * <code>CONSTRAINTACTION_UNDEFINED = 0;</code> + */ + public static final int CONSTRAINTACTION_UNDEFINED_VALUE = 0; + /** + * <code>CONSTRAINTACTION_SET = 1;</code> + */ + public static final int CONSTRAINTACTION_SET_VALUE = 1; + /** + * <code>CONSTRAINTACTION_DELETE = 2;</code> + */ + public static final int CONSTRAINTACTION_DELETE_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; + } + + /** + * @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. + */ + @java.lang.Deprecated + public static ConstraintActionEnum valueOf(int value) { + return forNumber(value); + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + */ + public static ConstraintActionEnum forNumber(int value) { + switch (value) { + case 0: return CONSTRAINTACTION_UNDEFINED; + case 1: return CONSTRAINTACTION_SET; + case 2: return CONSTRAINTACTION_DELETE; + default: return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap<ConstraintActionEnum> + internalGetValueMap() { + return internalValueMap; + } + private static final com.google.protobuf.Internal.EnumLiteMap< + ConstraintActionEnum> internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap<ConstraintActionEnum>() { + public ConstraintActionEnum findValueByNumber(int number) { + return ConstraintActionEnum.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 context.ContextOuterClass.getDescriptor().getEnumTypes().get(7); + } + + private static final ConstraintActionEnum[] VALUES = values(); + + public static ConstraintActionEnum 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 ConstraintActionEnum(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:context.ConstraintActionEnum) + } + /** * Protobuf enum {@code context.IsolationLevelEnum} */ @@ -1098,7 +1237,7 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { - return context.ContextOuterClass.getDescriptor().getEnumTypes().get(7); + return context.ContextOuterClass.getDescriptor().getEnumTypes().get(8); } private static final IsolationLevelEnum[] VALUES = values(); @@ -3985,65 +4124,101 @@ public final class ContextOuterClass { context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder(); /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>string name = 2;</code> + * @return The name. + */ + java.lang.String getName(); + /** + * <code>string name = 2;</code> + * @return The bytes for name. + */ + com.google.protobuf.ByteString + getNameBytes(); + + /** + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ java.util.List<context.ContextOuterClass.TopologyId> getTopologyIdsList(); /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ context.ContextOuterClass.TopologyId getTopologyIds(int index); /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ int getTopologyIdsCount(); /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ java.util.List<? extends context.ContextOuterClass.TopologyIdOrBuilder> getTopologyIdsOrBuilderList(); /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdsOrBuilder( int index); /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ java.util.List<context.ContextOuterClass.ServiceId> getServiceIdsList(); /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ context.ContextOuterClass.ServiceId getServiceIds(int index); /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ int getServiceIdsCount(); /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> getServiceIdsOrBuilderList(); /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ context.ContextOuterClass.ServiceIdOrBuilder getServiceIdsOrBuilder( int index); /** - * <code>.context.TeraFlowController controller = 4;</code> + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + java.util.List<context.ContextOuterClass.SliceId> + getSliceIdsList(); + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + context.ContextOuterClass.SliceId getSliceIds(int index); + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + int getSliceIdsCount(); + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> + getSliceIdsOrBuilderList(); + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + context.ContextOuterClass.SliceIdOrBuilder getSliceIdsOrBuilder( + int index); + + /** + * <code>.context.TeraFlowController controller = 6;</code> * @return Whether the controller field is set. */ boolean hasController(); /** - * <code>.context.TeraFlowController controller = 4;</code> + * <code>.context.TeraFlowController controller = 6;</code> * @return The controller. */ context.ContextOuterClass.TeraFlowController getController(); /** - * <code>.context.TeraFlowController controller = 4;</code> + * <code>.context.TeraFlowController controller = 6;</code> */ context.ContextOuterClass.TeraFlowControllerOrBuilder getControllerOrBuilder(); } @@ -4060,8 +4235,10 @@ public final class ContextOuterClass { super(builder); } private Context() { + name_ = ""; topologyIds_ = java.util.Collections.emptyList(); serviceIds_ = java.util.Collections.emptyList(); + sliceIds_ = java.util.Collections.emptyList(); } @java.lang.Override @@ -4109,6 +4286,12 @@ public final class ContextOuterClass { break; } case 18: { + java.lang.String s = input.readStringRequireUtf8(); + + name_ = s; + break; + } + case 26: { if (!((mutable_bitField0_ & 0x00000001) != 0)) { topologyIds_ = new java.util.ArrayList<context.ContextOuterClass.TopologyId>(); mutable_bitField0_ |= 0x00000001; @@ -4117,7 +4300,7 @@ public final class ContextOuterClass { input.readMessage(context.ContextOuterClass.TopologyId.parser(), extensionRegistry)); break; } - case 26: { + case 34: { if (!((mutable_bitField0_ & 0x00000002) != 0)) { serviceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(); mutable_bitField0_ |= 0x00000002; @@ -4126,7 +4309,16 @@ public final class ContextOuterClass { input.readMessage(context.ContextOuterClass.ServiceId.parser(), extensionRegistry)); break; } - case 34: { + case 42: { + if (!((mutable_bitField0_ & 0x00000004) != 0)) { + sliceIds_ = new java.util.ArrayList<context.ContextOuterClass.SliceId>(); + mutable_bitField0_ |= 0x00000004; + } + sliceIds_.add( + input.readMessage(context.ContextOuterClass.SliceId.parser(), extensionRegistry)); + break; + } + case 50: { context.ContextOuterClass.TeraFlowController.Builder subBuilder = null; if (controller_ != null) { subBuilder = controller_.toBuilder(); @@ -4160,6 +4352,9 @@ public final class ContextOuterClass { if (((mutable_bitField0_ & 0x00000002) != 0)) { serviceIds_ = java.util.Collections.unmodifiableList(serviceIds_); } + if (((mutable_bitField0_ & 0x00000004) != 0)) { + sliceIds_ = java.util.Collections.unmodifiableList(sliceIds_); + } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } @@ -4203,17 +4398,55 @@ public final class ContextOuterClass { return getContextId(); } - public static final int TOPOLOGY_IDS_FIELD_NUMBER = 2; + public static final int NAME_FIELD_NUMBER = 2; + private volatile java.lang.Object name_; + /** + * <code>string name = 2;</code> + * @return The name. + */ + @java.lang.Override + public java.lang.String getName() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } + } + /** + * <code>string name = 2;</code> + * @return The bytes for name. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int TOPOLOGY_IDS_FIELD_NUMBER = 3; private java.util.List<context.ContextOuterClass.TopologyId> topologyIds_; /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ @java.lang.Override public java.util.List<context.ContextOuterClass.TopologyId> getTopologyIdsList() { return topologyIds_; } /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ @java.lang.Override public java.util.List<? extends context.ContextOuterClass.TopologyIdOrBuilder> @@ -4221,21 +4454,21 @@ public final class ContextOuterClass { return topologyIds_; } /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ @java.lang.Override public int getTopologyIdsCount() { return topologyIds_.size(); } /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ @java.lang.Override public context.ContextOuterClass.TopologyId getTopologyIds(int index) { return topologyIds_.get(index); } /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ @java.lang.Override public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdsOrBuilder( @@ -4243,17 +4476,17 @@ public final class ContextOuterClass { return topologyIds_.get(index); } - public static final int SERVICE_IDS_FIELD_NUMBER = 3; + public static final int SERVICE_IDS_FIELD_NUMBER = 4; private java.util.List<context.ContextOuterClass.ServiceId> serviceIds_; /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ @java.lang.Override public java.util.List<context.ContextOuterClass.ServiceId> getServiceIdsList() { return serviceIds_; } /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ @java.lang.Override public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> @@ -4261,21 +4494,21 @@ public final class ContextOuterClass { return serviceIds_; } /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ @java.lang.Override public int getServiceIdsCount() { return serviceIds_.size(); } /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ @java.lang.Override public context.ContextOuterClass.ServiceId getServiceIds(int index) { return serviceIds_.get(index); } /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ @java.lang.Override public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdsOrBuilder( @@ -4283,10 +4516,50 @@ public final class ContextOuterClass { return serviceIds_.get(index); } - public static final int CONTROLLER_FIELD_NUMBER = 4; + public static final int SLICE_IDS_FIELD_NUMBER = 5; + private java.util.List<context.ContextOuterClass.SliceId> sliceIds_; + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + @java.lang.Override + public java.util.List<context.ContextOuterClass.SliceId> getSliceIdsList() { + return sliceIds_; + } + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> + getSliceIdsOrBuilderList() { + return sliceIds_; + } + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + @java.lang.Override + public int getSliceIdsCount() { + return sliceIds_.size(); + } + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + @java.lang.Override + public context.ContextOuterClass.SliceId getSliceIds(int index) { + return sliceIds_.get(index); + } + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + @java.lang.Override + public context.ContextOuterClass.SliceIdOrBuilder getSliceIdsOrBuilder( + int index) { + return sliceIds_.get(index); + } + + public static final int CONTROLLER_FIELD_NUMBER = 6; private context.ContextOuterClass.TeraFlowController controller_; /** - * <code>.context.TeraFlowController controller = 4;</code> + * <code>.context.TeraFlowController controller = 6;</code> * @return Whether the controller field is set. */ @java.lang.Override @@ -4294,7 +4567,7 @@ public final class ContextOuterClass { return controller_ != null; } /** - * <code>.context.TeraFlowController controller = 4;</code> + * <code>.context.TeraFlowController controller = 6;</code> * @return The controller. */ @java.lang.Override @@ -4302,7 +4575,7 @@ public final class ContextOuterClass { return controller_ == null ? context.ContextOuterClass.TeraFlowController.getDefaultInstance() : controller_; } /** - * <code>.context.TeraFlowController controller = 4;</code> + * <code>.context.TeraFlowController controller = 6;</code> */ @java.lang.Override public context.ContextOuterClass.TeraFlowControllerOrBuilder getControllerOrBuilder() { @@ -4326,14 +4599,20 @@ public final class ContextOuterClass { if (contextId_ != null) { output.writeMessage(1, getContextId()); } + if (!getNameBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_); + } for (int i = 0; i < topologyIds_.size(); i++) { - output.writeMessage(2, topologyIds_.get(i)); + output.writeMessage(3, topologyIds_.get(i)); } for (int i = 0; i < serviceIds_.size(); i++) { - output.writeMessage(3, serviceIds_.get(i)); + output.writeMessage(4, serviceIds_.get(i)); + } + for (int i = 0; i < sliceIds_.size(); i++) { + output.writeMessage(5, sliceIds_.get(i)); } if (controller_ != null) { - output.writeMessage(4, getController()); + output.writeMessage(6, getController()); } unknownFields.writeTo(output); } @@ -4348,17 +4627,24 @@ public final class ContextOuterClass { size += com.google.protobuf.CodedOutputStream .computeMessageSize(1, getContextId()); } + if (!getNameBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_); + } for (int i = 0; i < topologyIds_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, topologyIds_.get(i)); + .computeMessageSize(3, topologyIds_.get(i)); } for (int i = 0; i < serviceIds_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(3, serviceIds_.get(i)); + .computeMessageSize(4, serviceIds_.get(i)); + } + for (int i = 0; i < sliceIds_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(5, sliceIds_.get(i)); } if (controller_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(4, getController()); + .computeMessageSize(6, getController()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -4380,10 +4666,14 @@ public final class ContextOuterClass { if (!getContextId() .equals(other.getContextId())) return false; } + if (!getName() + .equals(other.getName())) return false; if (!getTopologyIdsList() .equals(other.getTopologyIdsList())) return false; if (!getServiceIdsList() .equals(other.getServiceIdsList())) return false; + if (!getSliceIdsList() + .equals(other.getSliceIdsList())) return false; if (hasController() != other.hasController()) return false; if (hasController()) { if (!getController() @@ -4404,6 +4694,8 @@ public final class ContextOuterClass { hash = (37 * hash) + CONTEXT_ID_FIELD_NUMBER; hash = (53 * hash) + getContextId().hashCode(); } + hash = (37 * hash) + NAME_FIELD_NUMBER; + hash = (53 * hash) + getName().hashCode(); if (getTopologyIdsCount() > 0) { hash = (37 * hash) + TOPOLOGY_IDS_FIELD_NUMBER; hash = (53 * hash) + getTopologyIdsList().hashCode(); @@ -4412,6 +4704,10 @@ public final class ContextOuterClass { hash = (37 * hash) + SERVICE_IDS_FIELD_NUMBER; hash = (53 * hash) + getServiceIdsList().hashCode(); } + if (getSliceIdsCount() > 0) { + hash = (37 * hash) + SLICE_IDS_FIELD_NUMBER; + hash = (53 * hash) + getSliceIdsList().hashCode(); + } if (hasController()) { hash = (37 * hash) + CONTROLLER_FIELD_NUMBER; hash = (53 * hash) + getController().hashCode(); @@ -4546,6 +4842,7 @@ public final class ContextOuterClass { .alwaysUseFieldBuilders) { getTopologyIdsFieldBuilder(); getServiceIdsFieldBuilder(); + getSliceIdsFieldBuilder(); } } @java.lang.Override @@ -4557,6 +4854,8 @@ public final class ContextOuterClass { contextId_ = null; contextIdBuilder_ = null; } + name_ = ""; + if (topologyIdsBuilder_ == null) { topologyIds_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); @@ -4569,6 +4868,12 @@ public final class ContextOuterClass { } else { serviceIdsBuilder_.clear(); } + if (sliceIdsBuilder_ == null) { + sliceIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + } else { + sliceIdsBuilder_.clear(); + } if (controllerBuilder_ == null) { controller_ = null; } else { @@ -4607,6 +4912,7 @@ public final class ContextOuterClass { } else { result.contextId_ = contextIdBuilder_.build(); } + result.name_ = name_; if (topologyIdsBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { topologyIds_ = java.util.Collections.unmodifiableList(topologyIds_); @@ -4625,6 +4931,15 @@ public final class ContextOuterClass { } else { result.serviceIds_ = serviceIdsBuilder_.build(); } + if (sliceIdsBuilder_ == null) { + if (((bitField0_ & 0x00000004) != 0)) { + sliceIds_ = java.util.Collections.unmodifiableList(sliceIds_); + bitField0_ = (bitField0_ & ~0x00000004); + } + result.sliceIds_ = sliceIds_; + } else { + result.sliceIds_ = sliceIdsBuilder_.build(); + } if (controllerBuilder_ == null) { result.controller_ = controller_; } else { @@ -4681,6 +4996,10 @@ public final class ContextOuterClass { if (other.hasContextId()) { mergeContextId(other.getContextId()); } + if (!other.getName().isEmpty()) { + name_ = other.name_; + onChanged(); + } if (topologyIdsBuilder_ == null) { if (!other.topologyIds_.isEmpty()) { if (topologyIds_.isEmpty()) { @@ -4733,6 +5052,32 @@ public final class ContextOuterClass { } } } + if (sliceIdsBuilder_ == null) { + if (!other.sliceIds_.isEmpty()) { + if (sliceIds_.isEmpty()) { + sliceIds_ = other.sliceIds_; + bitField0_ = (bitField0_ & ~0x00000004); + } else { + ensureSliceIdsIsMutable(); + sliceIds_.addAll(other.sliceIds_); + } + onChanged(); + } + } else { + if (!other.sliceIds_.isEmpty()) { + if (sliceIdsBuilder_.isEmpty()) { + sliceIdsBuilder_.dispose(); + sliceIdsBuilder_ = null; + sliceIds_ = other.sliceIds_; + bitField0_ = (bitField0_ & ~0x00000004); + sliceIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getSliceIdsFieldBuilder() : null; + } else { + sliceIdsBuilder_.addAllMessages(other.sliceIds_); + } + } + } if (other.hasController()) { mergeController(other.getController()); } @@ -4885,6 +5230,82 @@ public final class ContextOuterClass { return contextIdBuilder_; } + private java.lang.Object name_ = ""; + /** + * <code>string name = 2;</code> + * @return The name. + */ + public java.lang.String getName() { + java.lang.Object ref = name_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * <code>string name = 2;</code> + * @return The bytes for name. + */ + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * <code>string name = 2;</code> + * @param value The name to set. + * @return This builder for chaining. + */ + public Builder setName( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + name_ = value; + onChanged(); + return this; + } + /** + * <code>string name = 2;</code> + * @return This builder for chaining. + */ + public Builder clearName() { + + name_ = getDefaultInstance().getName(); + onChanged(); + return this; + } + /** + * <code>string name = 2;</code> + * @param value The bytes for name to set. + * @return This builder for chaining. + */ + public Builder setNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + name_ = value; + onChanged(); + return this; + } + private java.util.List<context.ContextOuterClass.TopologyId> topologyIds_ = java.util.Collections.emptyList(); private void ensureTopologyIdsIsMutable() { @@ -4898,7 +5319,7 @@ public final class ContextOuterClass { context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> topologyIdsBuilder_; /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ public java.util.List<context.ContextOuterClass.TopologyId> getTopologyIdsList() { if (topologyIdsBuilder_ == null) { @@ -4908,7 +5329,7 @@ public final class ContextOuterClass { } } /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ public int getTopologyIdsCount() { if (topologyIdsBuilder_ == null) { @@ -4918,7 +5339,7 @@ public final class ContextOuterClass { } } /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ public context.ContextOuterClass.TopologyId getTopologyIds(int index) { if (topologyIdsBuilder_ == null) { @@ -4928,7 +5349,7 @@ public final class ContextOuterClass { } } /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ public Builder setTopologyIds( int index, context.ContextOuterClass.TopologyId value) { @@ -4945,7 +5366,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ public Builder setTopologyIds( int index, context.ContextOuterClass.TopologyId.Builder builderForValue) { @@ -4959,7 +5380,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ public Builder addTopologyIds(context.ContextOuterClass.TopologyId value) { if (topologyIdsBuilder_ == null) { @@ -4975,7 +5396,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ public Builder addTopologyIds( int index, context.ContextOuterClass.TopologyId value) { @@ -4992,7 +5413,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ public Builder addTopologyIds( context.ContextOuterClass.TopologyId.Builder builderForValue) { @@ -5006,7 +5427,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ public Builder addTopologyIds( int index, context.ContextOuterClass.TopologyId.Builder builderForValue) { @@ -5020,7 +5441,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ public Builder addAllTopologyIds( java.lang.Iterable<? extends context.ContextOuterClass.TopologyId> values) { @@ -5035,7 +5456,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ public Builder clearTopologyIds() { if (topologyIdsBuilder_ == null) { @@ -5048,7 +5469,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ public Builder removeTopologyIds(int index) { if (topologyIdsBuilder_ == null) { @@ -5061,14 +5482,14 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ public context.ContextOuterClass.TopologyId.Builder getTopologyIdsBuilder( int index) { return getTopologyIdsFieldBuilder().getBuilder(index); } /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdsOrBuilder( int index) { @@ -5078,7 +5499,7 @@ public final class ContextOuterClass { } } /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ public java.util.List<? extends context.ContextOuterClass.TopologyIdOrBuilder> getTopologyIdsOrBuilderList() { @@ -5089,14 +5510,14 @@ public final class ContextOuterClass { } } /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ public context.ContextOuterClass.TopologyId.Builder addTopologyIdsBuilder() { return getTopologyIdsFieldBuilder().addBuilder( context.ContextOuterClass.TopologyId.getDefaultInstance()); } /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ public context.ContextOuterClass.TopologyId.Builder addTopologyIdsBuilder( int index) { @@ -5104,7 +5525,7 @@ public final class ContextOuterClass { index, context.ContextOuterClass.TopologyId.getDefaultInstance()); } /** - * <code>repeated .context.TopologyId topology_ids = 2;</code> + * <code>repeated .context.TopologyId topology_ids = 3;</code> */ public java.util.List<context.ContextOuterClass.TopologyId.Builder> getTopologyIdsBuilderList() { @@ -5138,7 +5559,7 @@ public final class ContextOuterClass { context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> serviceIdsBuilder_; /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ public java.util.List<context.ContextOuterClass.ServiceId> getServiceIdsList() { if (serviceIdsBuilder_ == null) { @@ -5148,7 +5569,7 @@ public final class ContextOuterClass { } } /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ public int getServiceIdsCount() { if (serviceIdsBuilder_ == null) { @@ -5158,7 +5579,7 @@ public final class ContextOuterClass { } } /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ public context.ContextOuterClass.ServiceId getServiceIds(int index) { if (serviceIdsBuilder_ == null) { @@ -5168,7 +5589,7 @@ public final class ContextOuterClass { } } /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ public Builder setServiceIds( int index, context.ContextOuterClass.ServiceId value) { @@ -5185,7 +5606,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ public Builder setServiceIds( int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { @@ -5199,7 +5620,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ public Builder addServiceIds(context.ContextOuterClass.ServiceId value) { if (serviceIdsBuilder_ == null) { @@ -5215,7 +5636,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ public Builder addServiceIds( int index, context.ContextOuterClass.ServiceId value) { @@ -5232,7 +5653,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ public Builder addServiceIds( context.ContextOuterClass.ServiceId.Builder builderForValue) { @@ -5246,7 +5667,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ public Builder addServiceIds( int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { @@ -5260,7 +5681,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ public Builder addAllServiceIds( java.lang.Iterable<? extends context.ContextOuterClass.ServiceId> values) { @@ -5275,7 +5696,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ public Builder clearServiceIds() { if (serviceIdsBuilder_ == null) { @@ -5288,7 +5709,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ public Builder removeServiceIds(int index) { if (serviceIdsBuilder_ == null) { @@ -5301,14 +5722,14 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ public context.ContextOuterClass.ServiceId.Builder getServiceIdsBuilder( int index) { return getServiceIdsFieldBuilder().getBuilder(index); } /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdsOrBuilder( int index) { @@ -5318,7 +5739,7 @@ public final class ContextOuterClass { } } /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> getServiceIdsOrBuilderList() { @@ -5329,14 +5750,14 @@ public final class ContextOuterClass { } } /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ public context.ContextOuterClass.ServiceId.Builder addServiceIdsBuilder() { return getServiceIdsFieldBuilder().addBuilder( context.ContextOuterClass.ServiceId.getDefaultInstance()); } /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ public context.ContextOuterClass.ServiceId.Builder addServiceIdsBuilder( int index) { @@ -5344,7 +5765,7 @@ public final class ContextOuterClass { index, context.ContextOuterClass.ServiceId.getDefaultInstance()); } /** - * <code>repeated .context.ServiceId service_ids = 3;</code> + * <code>repeated .context.ServiceId service_ids = 4;</code> */ public java.util.List<context.ContextOuterClass.ServiceId.Builder> getServiceIdsBuilderList() { @@ -5365,18 +5786,258 @@ public final class ContextOuterClass { return serviceIdsBuilder_; } + private java.util.List<context.ContextOuterClass.SliceId> sliceIds_ = + java.util.Collections.emptyList(); + private void ensureSliceIdsIsMutable() { + if (!((bitField0_ & 0x00000004) != 0)) { + sliceIds_ = new java.util.ArrayList<context.ContextOuterClass.SliceId>(sliceIds_); + bitField0_ |= 0x00000004; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> sliceIdsBuilder_; + + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + public java.util.List<context.ContextOuterClass.SliceId> getSliceIdsList() { + if (sliceIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(sliceIds_); + } else { + return sliceIdsBuilder_.getMessageList(); + } + } + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + public int getSliceIdsCount() { + if (sliceIdsBuilder_ == null) { + return sliceIds_.size(); + } else { + return sliceIdsBuilder_.getCount(); + } + } + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + public context.ContextOuterClass.SliceId getSliceIds(int index) { + if (sliceIdsBuilder_ == null) { + return sliceIds_.get(index); + } else { + return sliceIdsBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + public Builder setSliceIds( + int index, context.ContextOuterClass.SliceId value) { + if (sliceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSliceIdsIsMutable(); + sliceIds_.set(index, value); + onChanged(); + } else { + sliceIdsBuilder_.setMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + public Builder setSliceIds( + int index, context.ContextOuterClass.SliceId.Builder builderForValue) { + if (sliceIdsBuilder_ == null) { + ensureSliceIdsIsMutable(); + sliceIds_.set(index, builderForValue.build()); + onChanged(); + } else { + sliceIdsBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + public Builder addSliceIds(context.ContextOuterClass.SliceId value) { + if (sliceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSliceIdsIsMutable(); + sliceIds_.add(value); + onChanged(); + } else { + sliceIdsBuilder_.addMessage(value); + } + return this; + } + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + public Builder addSliceIds( + int index, context.ContextOuterClass.SliceId value) { + if (sliceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSliceIdsIsMutable(); + sliceIds_.add(index, value); + onChanged(); + } else { + sliceIdsBuilder_.addMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + public Builder addSliceIds( + context.ContextOuterClass.SliceId.Builder builderForValue) { + if (sliceIdsBuilder_ == null) { + ensureSliceIdsIsMutable(); + sliceIds_.add(builderForValue.build()); + onChanged(); + } else { + sliceIdsBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + public Builder addSliceIds( + int index, context.ContextOuterClass.SliceId.Builder builderForValue) { + if (sliceIdsBuilder_ == null) { + ensureSliceIdsIsMutable(); + sliceIds_.add(index, builderForValue.build()); + onChanged(); + } else { + sliceIdsBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + public Builder addAllSliceIds( + java.lang.Iterable<? extends context.ContextOuterClass.SliceId> values) { + if (sliceIdsBuilder_ == null) { + ensureSliceIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, sliceIds_); + onChanged(); + } else { + sliceIdsBuilder_.addAllMessages(values); + } + return this; + } + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + public Builder clearSliceIds() { + if (sliceIdsBuilder_ == null) { + sliceIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + } else { + sliceIdsBuilder_.clear(); + } + return this; + } + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + public Builder removeSliceIds(int index) { + if (sliceIdsBuilder_ == null) { + ensureSliceIdsIsMutable(); + sliceIds_.remove(index); + onChanged(); + } else { + sliceIdsBuilder_.remove(index); + } + return this; + } + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + public context.ContextOuterClass.SliceId.Builder getSliceIdsBuilder( + int index) { + return getSliceIdsFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + public context.ContextOuterClass.SliceIdOrBuilder getSliceIdsOrBuilder( + int index) { + if (sliceIdsBuilder_ == null) { + return sliceIds_.get(index); } else { + return sliceIdsBuilder_.getMessageOrBuilder(index); + } + } + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + public java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> + getSliceIdsOrBuilderList() { + if (sliceIdsBuilder_ != null) { + return sliceIdsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(sliceIds_); + } + } + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + public context.ContextOuterClass.SliceId.Builder addSliceIdsBuilder() { + return getSliceIdsFieldBuilder().addBuilder( + context.ContextOuterClass.SliceId.getDefaultInstance()); + } + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + public context.ContextOuterClass.SliceId.Builder addSliceIdsBuilder( + int index) { + return getSliceIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.SliceId.getDefaultInstance()); + } + /** + * <code>repeated .context.SliceId slice_ids = 5;</code> + */ + public java.util.List<context.ContextOuterClass.SliceId.Builder> + getSliceIdsBuilderList() { + return getSliceIdsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> + getSliceIdsFieldBuilder() { + if (sliceIdsBuilder_ == null) { + sliceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder>( + sliceIds_, + ((bitField0_ & 0x00000004) != 0), + getParentForChildren(), + isClean()); + sliceIds_ = null; + } + return sliceIdsBuilder_; + } + private context.ContextOuterClass.TeraFlowController controller_; private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.TeraFlowController, context.ContextOuterClass.TeraFlowController.Builder, context.ContextOuterClass.TeraFlowControllerOrBuilder> controllerBuilder_; /** - * <code>.context.TeraFlowController controller = 4;</code> + * <code>.context.TeraFlowController controller = 6;</code> * @return Whether the controller field is set. */ public boolean hasController() { return controllerBuilder_ != null || controller_ != null; } /** - * <code>.context.TeraFlowController controller = 4;</code> + * <code>.context.TeraFlowController controller = 6;</code> * @return The controller. */ public context.ContextOuterClass.TeraFlowController getController() { @@ -5387,7 +6048,7 @@ public final class ContextOuterClass { } } /** - * <code>.context.TeraFlowController controller = 4;</code> + * <code>.context.TeraFlowController controller = 6;</code> */ public Builder setController(context.ContextOuterClass.TeraFlowController value) { if (controllerBuilder_ == null) { @@ -5403,7 +6064,7 @@ public final class ContextOuterClass { return this; } /** - * <code>.context.TeraFlowController controller = 4;</code> + * <code>.context.TeraFlowController controller = 6;</code> */ public Builder setController( context.ContextOuterClass.TeraFlowController.Builder builderForValue) { @@ -5417,7 +6078,7 @@ public final class ContextOuterClass { return this; } /** - * <code>.context.TeraFlowController controller = 4;</code> + * <code>.context.TeraFlowController controller = 6;</code> */ public Builder mergeController(context.ContextOuterClass.TeraFlowController value) { if (controllerBuilder_ == null) { @@ -5435,7 +6096,7 @@ public final class ContextOuterClass { return this; } /** - * <code>.context.TeraFlowController controller = 4;</code> + * <code>.context.TeraFlowController controller = 6;</code> */ public Builder clearController() { if (controllerBuilder_ == null) { @@ -5449,7 +6110,7 @@ public final class ContextOuterClass { return this; } /** - * <code>.context.TeraFlowController controller = 4;</code> + * <code>.context.TeraFlowController controller = 6;</code> */ public context.ContextOuterClass.TeraFlowController.Builder getControllerBuilder() { @@ -5457,7 +6118,7 @@ public final class ContextOuterClass { return getControllerFieldBuilder().getBuilder(); } /** - * <code>.context.TeraFlowController controller = 4;</code> + * <code>.context.TeraFlowController controller = 6;</code> */ public context.ContextOuterClass.TeraFlowControllerOrBuilder getControllerOrBuilder() { if (controllerBuilder_ != null) { @@ -5468,7 +6129,7 @@ public final class ContextOuterClass { } } /** - * <code>.context.TeraFlowController controller = 4;</code> + * <code>.context.TeraFlowController controller = 6;</code> */ private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.TeraFlowController, context.ContextOuterClass.TeraFlowController.Builder, context.ContextOuterClass.TeraFlowControllerOrBuilder> @@ -8798,49 +9459,61 @@ public final class ContextOuterClass { context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder(); /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>string name = 2;</code> + * @return The name. + */ + java.lang.String getName(); + /** + * <code>string name = 2;</code> + * @return The bytes for name. + */ + com.google.protobuf.ByteString + getNameBytes(); + + /** + * <code>repeated .context.DeviceId device_ids = 3;</code> */ java.util.List<context.ContextOuterClass.DeviceId> getDeviceIdsList(); /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ context.ContextOuterClass.DeviceId getDeviceIds(int index); /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ int getDeviceIdsCount(); /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> getDeviceIdsOrBuilderList(); /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdsOrBuilder( int index); /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ java.util.List<context.ContextOuterClass.LinkId> getLinkIdsList(); /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ context.ContextOuterClass.LinkId getLinkIds(int index); /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ int getLinkIdsCount(); /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> getLinkIdsOrBuilderList(); /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder( int index); @@ -8858,6 +9531,7 @@ public final class ContextOuterClass { super(builder); } private Topology() { + name_ = ""; deviceIds_ = java.util.Collections.emptyList(); linkIds_ = java.util.Collections.emptyList(); } @@ -8907,6 +9581,12 @@ public final class ContextOuterClass { break; } case 18: { + java.lang.String s = input.readStringRequireUtf8(); + + name_ = s; + break; + } + case 26: { if (!((mutable_bitField0_ & 0x00000001) != 0)) { deviceIds_ = new java.util.ArrayList<context.ContextOuterClass.DeviceId>(); mutable_bitField0_ |= 0x00000001; @@ -8915,7 +9595,7 @@ public final class ContextOuterClass { input.readMessage(context.ContextOuterClass.DeviceId.parser(), extensionRegistry)); break; } - case 26: { + case 34: { if (!((mutable_bitField0_ & 0x00000002) != 0)) { linkIds_ = new java.util.ArrayList<context.ContextOuterClass.LinkId>(); mutable_bitField0_ |= 0x00000002; @@ -8988,17 +9668,55 @@ public final class ContextOuterClass { return getTopologyId(); } - public static final int DEVICE_IDS_FIELD_NUMBER = 2; + public static final int NAME_FIELD_NUMBER = 2; + private volatile java.lang.Object name_; + /** + * <code>string name = 2;</code> + * @return The name. + */ + @java.lang.Override + public java.lang.String getName() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } + } + /** + * <code>string name = 2;</code> + * @return The bytes for name. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int DEVICE_IDS_FIELD_NUMBER = 3; private java.util.List<context.ContextOuterClass.DeviceId> deviceIds_; /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ @java.lang.Override public java.util.List<context.ContextOuterClass.DeviceId> getDeviceIdsList() { return deviceIds_; } /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ @java.lang.Override public java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> @@ -9006,21 +9724,21 @@ public final class ContextOuterClass { return deviceIds_; } /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ @java.lang.Override public int getDeviceIdsCount() { return deviceIds_.size(); } /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ @java.lang.Override public context.ContextOuterClass.DeviceId getDeviceIds(int index) { return deviceIds_.get(index); } /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ @java.lang.Override public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdsOrBuilder( @@ -9028,17 +9746,17 @@ public final class ContextOuterClass { return deviceIds_.get(index); } - public static final int LINK_IDS_FIELD_NUMBER = 3; + public static final int LINK_IDS_FIELD_NUMBER = 4; private java.util.List<context.ContextOuterClass.LinkId> linkIds_; /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ @java.lang.Override public java.util.List<context.ContextOuterClass.LinkId> getLinkIdsList() { return linkIds_; } /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ @java.lang.Override public java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> @@ -9046,21 +9764,21 @@ public final class ContextOuterClass { return linkIds_; } /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ @java.lang.Override public int getLinkIdsCount() { return linkIds_.size(); } /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ @java.lang.Override public context.ContextOuterClass.LinkId getLinkIds(int index) { return linkIds_.get(index); } /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ @java.lang.Override public context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder( @@ -9085,11 +9803,14 @@ public final class ContextOuterClass { if (topologyId_ != null) { output.writeMessage(1, getTopologyId()); } + if (!getNameBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_); + } for (int i = 0; i < deviceIds_.size(); i++) { - output.writeMessage(2, deviceIds_.get(i)); + output.writeMessage(3, deviceIds_.get(i)); } for (int i = 0; i < linkIds_.size(); i++) { - output.writeMessage(3, linkIds_.get(i)); + output.writeMessage(4, linkIds_.get(i)); } unknownFields.writeTo(output); } @@ -9104,13 +9825,16 @@ public final class ContextOuterClass { size += com.google.protobuf.CodedOutputStream .computeMessageSize(1, getTopologyId()); } + if (!getNameBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_); + } for (int i = 0; i < deviceIds_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, deviceIds_.get(i)); + .computeMessageSize(3, deviceIds_.get(i)); } for (int i = 0; i < linkIds_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(3, linkIds_.get(i)); + .computeMessageSize(4, linkIds_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -9132,6 +9856,8 @@ public final class ContextOuterClass { if (!getTopologyId() .equals(other.getTopologyId())) return false; } + if (!getName() + .equals(other.getName())) return false; if (!getDeviceIdsList() .equals(other.getDeviceIdsList())) return false; if (!getLinkIdsList() @@ -9151,6 +9877,8 @@ public final class ContextOuterClass { hash = (37 * hash) + TOPOLOGY_ID_FIELD_NUMBER; hash = (53 * hash) + getTopologyId().hashCode(); } + hash = (37 * hash) + NAME_FIELD_NUMBER; + hash = (53 * hash) + getName().hashCode(); if (getDeviceIdsCount() > 0) { hash = (37 * hash) + DEVICE_IDS_FIELD_NUMBER; hash = (53 * hash) + getDeviceIdsList().hashCode(); @@ -9300,6 +10028,8 @@ public final class ContextOuterClass { topologyId_ = null; topologyIdBuilder_ = null; } + name_ = ""; + if (deviceIdsBuilder_ == null) { deviceIds_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); @@ -9344,6 +10074,7 @@ public final class ContextOuterClass { } else { result.topologyId_ = topologyIdBuilder_.build(); } + result.name_ = name_; if (deviceIdsBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { deviceIds_ = java.util.Collections.unmodifiableList(deviceIds_); @@ -9413,6 +10144,10 @@ public final class ContextOuterClass { if (other.hasTopologyId()) { mergeTopologyId(other.getTopologyId()); } + if (!other.getName().isEmpty()) { + name_ = other.name_; + onChanged(); + } if (deviceIdsBuilder_ == null) { if (!other.deviceIds_.isEmpty()) { if (deviceIds_.isEmpty()) { @@ -9614,6 +10349,82 @@ public final class ContextOuterClass { return topologyIdBuilder_; } + private java.lang.Object name_ = ""; + /** + * <code>string name = 2;</code> + * @return The name. + */ + public java.lang.String getName() { + java.lang.Object ref = name_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * <code>string name = 2;</code> + * @return The bytes for name. + */ + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * <code>string name = 2;</code> + * @param value The name to set. + * @return This builder for chaining. + */ + public Builder setName( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + name_ = value; + onChanged(); + return this; + } + /** + * <code>string name = 2;</code> + * @return This builder for chaining. + */ + public Builder clearName() { + + name_ = getDefaultInstance().getName(); + onChanged(); + return this; + } + /** + * <code>string name = 2;</code> + * @param value The bytes for name to set. + * @return This builder for chaining. + */ + public Builder setNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + name_ = value; + onChanged(); + return this; + } + private java.util.List<context.ContextOuterClass.DeviceId> deviceIds_ = java.util.Collections.emptyList(); private void ensureDeviceIdsIsMutable() { @@ -9627,7 +10438,7 @@ public final class ContextOuterClass { context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> deviceIdsBuilder_; /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ public java.util.List<context.ContextOuterClass.DeviceId> getDeviceIdsList() { if (deviceIdsBuilder_ == null) { @@ -9637,7 +10448,7 @@ public final class ContextOuterClass { } } /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ public int getDeviceIdsCount() { if (deviceIdsBuilder_ == null) { @@ -9647,7 +10458,7 @@ public final class ContextOuterClass { } } /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ public context.ContextOuterClass.DeviceId getDeviceIds(int index) { if (deviceIdsBuilder_ == null) { @@ -9657,7 +10468,7 @@ public final class ContextOuterClass { } } /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ public Builder setDeviceIds( int index, context.ContextOuterClass.DeviceId value) { @@ -9674,7 +10485,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ public Builder setDeviceIds( int index, context.ContextOuterClass.DeviceId.Builder builderForValue) { @@ -9688,7 +10499,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ public Builder addDeviceIds(context.ContextOuterClass.DeviceId value) { if (deviceIdsBuilder_ == null) { @@ -9704,7 +10515,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ public Builder addDeviceIds( int index, context.ContextOuterClass.DeviceId value) { @@ -9721,7 +10532,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ public Builder addDeviceIds( context.ContextOuterClass.DeviceId.Builder builderForValue) { @@ -9735,7 +10546,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ public Builder addDeviceIds( int index, context.ContextOuterClass.DeviceId.Builder builderForValue) { @@ -9749,7 +10560,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ public Builder addAllDeviceIds( java.lang.Iterable<? extends context.ContextOuterClass.DeviceId> values) { @@ -9764,7 +10575,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ public Builder clearDeviceIds() { if (deviceIdsBuilder_ == null) { @@ -9777,7 +10588,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ public Builder removeDeviceIds(int index) { if (deviceIdsBuilder_ == null) { @@ -9790,14 +10601,14 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ public context.ContextOuterClass.DeviceId.Builder getDeviceIdsBuilder( int index) { return getDeviceIdsFieldBuilder().getBuilder(index); } /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdsOrBuilder( int index) { @@ -9807,7 +10618,7 @@ public final class ContextOuterClass { } } /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ public java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> getDeviceIdsOrBuilderList() { @@ -9818,14 +10629,14 @@ public final class ContextOuterClass { } } /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ public context.ContextOuterClass.DeviceId.Builder addDeviceIdsBuilder() { return getDeviceIdsFieldBuilder().addBuilder( context.ContextOuterClass.DeviceId.getDefaultInstance()); } /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ public context.ContextOuterClass.DeviceId.Builder addDeviceIdsBuilder( int index) { @@ -9833,7 +10644,7 @@ public final class ContextOuterClass { index, context.ContextOuterClass.DeviceId.getDefaultInstance()); } /** - * <code>repeated .context.DeviceId device_ids = 2;</code> + * <code>repeated .context.DeviceId device_ids = 3;</code> */ public java.util.List<context.ContextOuterClass.DeviceId.Builder> getDeviceIdsBuilderList() { @@ -9867,7 +10678,7 @@ public final class ContextOuterClass { context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> linkIdsBuilder_; /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ public java.util.List<context.ContextOuterClass.LinkId> getLinkIdsList() { if (linkIdsBuilder_ == null) { @@ -9877,7 +10688,7 @@ public final class ContextOuterClass { } } /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ public int getLinkIdsCount() { if (linkIdsBuilder_ == null) { @@ -9887,7 +10698,7 @@ public final class ContextOuterClass { } } /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ public context.ContextOuterClass.LinkId getLinkIds(int index) { if (linkIdsBuilder_ == null) { @@ -9897,7 +10708,7 @@ public final class ContextOuterClass { } } /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ public Builder setLinkIds( int index, context.ContextOuterClass.LinkId value) { @@ -9914,7 +10725,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ public Builder setLinkIds( int index, context.ContextOuterClass.LinkId.Builder builderForValue) { @@ -9928,7 +10739,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ public Builder addLinkIds(context.ContextOuterClass.LinkId value) { if (linkIdsBuilder_ == null) { @@ -9944,7 +10755,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ public Builder addLinkIds( int index, context.ContextOuterClass.LinkId value) { @@ -9961,7 +10772,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ public Builder addLinkIds( context.ContextOuterClass.LinkId.Builder builderForValue) { @@ -9975,7 +10786,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ public Builder addLinkIds( int index, context.ContextOuterClass.LinkId.Builder builderForValue) { @@ -9989,7 +10800,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ public Builder addAllLinkIds( java.lang.Iterable<? extends context.ContextOuterClass.LinkId> values) { @@ -10004,7 +10815,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ public Builder clearLinkIds() { if (linkIdsBuilder_ == null) { @@ -10017,7 +10828,7 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ public Builder removeLinkIds(int index) { if (linkIdsBuilder_ == null) { @@ -10030,14 +10841,14 @@ public final class ContextOuterClass { return this; } /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ public context.ContextOuterClass.LinkId.Builder getLinkIdsBuilder( int index) { return getLinkIdsFieldBuilder().getBuilder(index); } /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ public context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder( int index) { @@ -10047,7 +10858,7 @@ public final class ContextOuterClass { } } /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ public java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> getLinkIdsOrBuilderList() { @@ -10058,14 +10869,14 @@ public final class ContextOuterClass { } } /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ public context.ContextOuterClass.LinkId.Builder addLinkIdsBuilder() { return getLinkIdsFieldBuilder().addBuilder( context.ContextOuterClass.LinkId.getDefaultInstance()); } /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ public context.ContextOuterClass.LinkId.Builder addLinkIdsBuilder( int index) { @@ -10073,7 +10884,7 @@ public final class ContextOuterClass { index, context.ContextOuterClass.LinkId.getDefaultInstance()); } /** - * <code>repeated .context.LinkId link_ids = 3;</code> + * <code>repeated .context.LinkId link_ids = 4;</code> */ public java.util.List<context.ContextOuterClass.LinkId.Builder> getLinkIdsBuilderList() { @@ -10146,55 +10957,108 @@ public final class ContextOuterClass { } - public interface TopologyIdListOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.TopologyIdList) + public interface TopologyDetailsOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.TopologyDetails) com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>.context.TopologyId topology_id = 1;</code> + * @return Whether the topologyId field is set. */ - java.util.List<context.ContextOuterClass.TopologyId> - getTopologyIdsList(); + boolean hasTopologyId(); /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>.context.TopologyId topology_id = 1;</code> + * @return The topologyId. */ - context.ContextOuterClass.TopologyId getTopologyIds(int index); + context.ContextOuterClass.TopologyId getTopologyId(); /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>.context.TopologyId topology_id = 1;</code> */ - int getTopologyIdsCount(); + context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder(); + /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>string name = 2;</code> + * @return The name. */ - java.util.List<? extends context.ContextOuterClass.TopologyIdOrBuilder> - getTopologyIdsOrBuilderList(); + java.lang.String getName(); /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>string name = 2;</code> + * @return The bytes for name. */ - context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdsOrBuilder( + com.google.protobuf.ByteString + getNameBytes(); + + /** + * <code>repeated .context.Device devices = 3;</code> + */ + java.util.List<context.ContextOuterClass.Device> + getDevicesList(); + /** + * <code>repeated .context.Device devices = 3;</code> + */ + context.ContextOuterClass.Device getDevices(int index); + /** + * <code>repeated .context.Device devices = 3;</code> + */ + int getDevicesCount(); + /** + * <code>repeated .context.Device devices = 3;</code> + */ + java.util.List<? extends context.ContextOuterClass.DeviceOrBuilder> + getDevicesOrBuilderList(); + /** + * <code>repeated .context.Device devices = 3;</code> + */ + context.ContextOuterClass.DeviceOrBuilder getDevicesOrBuilder( + int index); + + /** + * <code>repeated .context.Link links = 4;</code> + */ + java.util.List<context.ContextOuterClass.Link> + getLinksList(); + /** + * <code>repeated .context.Link links = 4;</code> + */ + context.ContextOuterClass.Link getLinks(int index); + /** + * <code>repeated .context.Link links = 4;</code> + */ + int getLinksCount(); + /** + * <code>repeated .context.Link links = 4;</code> + */ + java.util.List<? extends context.ContextOuterClass.LinkOrBuilder> + getLinksOrBuilderList(); + /** + * <code>repeated .context.Link links = 4;</code> + */ + context.ContextOuterClass.LinkOrBuilder getLinksOrBuilder( int index); } /** - * Protobuf type {@code context.TopologyIdList} + * Protobuf type {@code context.TopologyDetails} */ - public static final class TopologyIdList extends + public static final class TopologyDetails extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.TopologyIdList) - TopologyIdListOrBuilder { + // @@protoc_insertion_point(message_implements:context.TopologyDetails) + TopologyDetailsOrBuilder { private static final long serialVersionUID = 0L; - // Use TopologyIdList.newBuilder() to construct. - private TopologyIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use TopologyDetails.newBuilder() to construct. + private TopologyDetails(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private TopologyIdList() { - topologyIds_ = java.util.Collections.emptyList(); + private TopologyDetails() { + name_ = ""; + devices_ = java.util.Collections.emptyList(); + links_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new TopologyIdList(); + return new TopologyDetails(); } @java.lang.Override @@ -10202,7 +11066,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private TopologyIdList( + private TopologyDetails( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -10222,12 +11086,40 @@ public final class ContextOuterClass { done = true; break; case 10: { + context.ContextOuterClass.TopologyId.Builder subBuilder = null; + if (topologyId_ != null) { + subBuilder = topologyId_.toBuilder(); + } + topologyId_ = input.readMessage(context.ContextOuterClass.TopologyId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(topologyId_); + topologyId_ = subBuilder.buildPartial(); + } + + break; + } + case 18: { + java.lang.String s = input.readStringRequireUtf8(); + + name_ = s; + break; + } + case 26: { if (!((mutable_bitField0_ & 0x00000001) != 0)) { - topologyIds_ = new java.util.ArrayList<context.ContextOuterClass.TopologyId>(); + devices_ = new java.util.ArrayList<context.ContextOuterClass.Device>(); mutable_bitField0_ |= 0x00000001; } - topologyIds_.add( - input.readMessage(context.ContextOuterClass.TopologyId.parser(), extensionRegistry)); + devices_.add( + input.readMessage(context.ContextOuterClass.Device.parser(), extensionRegistry)); + break; + } + case 34: { + if (!((mutable_bitField0_ & 0x00000002) != 0)) { + links_ = new java.util.ArrayList<context.ContextOuterClass.Link>(); + mutable_bitField0_ |= 0x00000002; + } + links_.add( + input.readMessage(context.ContextOuterClass.Link.parser(), extensionRegistry)); break; } default: { @@ -10246,7 +11138,10 @@ public final class ContextOuterClass { e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { - topologyIds_ = java.util.Collections.unmodifiableList(topologyIds_); + devices_ = java.util.Collections.unmodifiableList(devices_); + } + if (((mutable_bitField0_ & 0x00000002) != 0)) { + links_ = java.util.Collections.unmodifiableList(links_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); @@ -10254,55 +11149,159 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_TopologyIdList_descriptor; + return context.ContextOuterClass.internal_static_context_TopologyDetails_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_TopologyIdList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_TopologyDetails_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.TopologyIdList.class, context.ContextOuterClass.TopologyIdList.Builder.class); + context.ContextOuterClass.TopologyDetails.class, context.ContextOuterClass.TopologyDetails.Builder.class); } - public static final int TOPOLOGY_IDS_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.TopologyId> topologyIds_; + public static final int TOPOLOGY_ID_FIELD_NUMBER = 1; + private context.ContextOuterClass.TopologyId topologyId_; /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>.context.TopologyId topology_id = 1;</code> + * @return Whether the topologyId field is set. */ @java.lang.Override - public java.util.List<context.ContextOuterClass.TopologyId> getTopologyIdsList() { - return topologyIds_; + public boolean hasTopologyId() { + return topologyId_ != null; } /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>.context.TopologyId topology_id = 1;</code> + * @return The topologyId. */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.TopologyIdOrBuilder> - getTopologyIdsOrBuilderList() { - return topologyIds_; + public context.ContextOuterClass.TopologyId getTopologyId() { + return topologyId_ == null ? context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_; } /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>.context.TopologyId topology_id = 1;</code> */ @java.lang.Override - public int getTopologyIdsCount() { - return topologyIds_.size(); + public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder() { + return getTopologyId(); + } + + public static final int NAME_FIELD_NUMBER = 2; + private volatile java.lang.Object name_; + /** + * <code>string name = 2;</code> + * @return The name. + */ + @java.lang.Override + public java.lang.String getName() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } } /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>string name = 2;</code> + * @return The bytes for name. */ @java.lang.Override - public context.ContextOuterClass.TopologyId getTopologyIds(int index) { - return topologyIds_.get(index); + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } + + public static final int DEVICES_FIELD_NUMBER = 3; + private java.util.List<context.ContextOuterClass.Device> devices_; /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>repeated .context.Device devices = 3;</code> */ @java.lang.Override - public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdsOrBuilder( + public java.util.List<context.ContextOuterClass.Device> getDevicesList() { + return devices_; + } + /** + * <code>repeated .context.Device devices = 3;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.DeviceOrBuilder> + getDevicesOrBuilderList() { + return devices_; + } + /** + * <code>repeated .context.Device devices = 3;</code> + */ + @java.lang.Override + public int getDevicesCount() { + return devices_.size(); + } + /** + * <code>repeated .context.Device devices = 3;</code> + */ + @java.lang.Override + public context.ContextOuterClass.Device getDevices(int index) { + return devices_.get(index); + } + /** + * <code>repeated .context.Device devices = 3;</code> + */ + @java.lang.Override + public context.ContextOuterClass.DeviceOrBuilder getDevicesOrBuilder( int index) { - return topologyIds_.get(index); + return devices_.get(index); + } + + public static final int LINKS_FIELD_NUMBER = 4; + private java.util.List<context.ContextOuterClass.Link> links_; + /** + * <code>repeated .context.Link links = 4;</code> + */ + @java.lang.Override + public java.util.List<context.ContextOuterClass.Link> getLinksList() { + return links_; + } + /** + * <code>repeated .context.Link links = 4;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.LinkOrBuilder> + getLinksOrBuilderList() { + return links_; + } + /** + * <code>repeated .context.Link links = 4;</code> + */ + @java.lang.Override + public int getLinksCount() { + return links_.size(); + } + /** + * <code>repeated .context.Link links = 4;</code> + */ + @java.lang.Override + public context.ContextOuterClass.Link getLinks(int index) { + return links_.get(index); + } + /** + * <code>repeated .context.Link links = 4;</code> + */ + @java.lang.Override + public context.ContextOuterClass.LinkOrBuilder getLinksOrBuilder( + int index) { + return links_.get(index); } private byte memoizedIsInitialized = -1; @@ -10319,8 +11318,17 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < topologyIds_.size(); i++) { - output.writeMessage(1, topologyIds_.get(i)); + if (topologyId_ != null) { + output.writeMessage(1, getTopologyId()); + } + if (!getNameBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_); + } + for (int i = 0; i < devices_.size(); i++) { + output.writeMessage(3, devices_.get(i)); + } + for (int i = 0; i < links_.size(); i++) { + output.writeMessage(4, links_.get(i)); } unknownFields.writeTo(output); } @@ -10331,9 +11339,20 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < topologyIds_.size(); i++) { + if (topologyId_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, topologyIds_.get(i)); + .computeMessageSize(1, getTopologyId()); + } + if (!getNameBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_); + } + for (int i = 0; i < devices_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(3, devices_.get(i)); + } + for (int i = 0; i < links_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(4, links_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -10345,13 +11364,22 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.TopologyIdList)) { + if (!(obj instanceof context.ContextOuterClass.TopologyDetails)) { return super.equals(obj); } - context.ContextOuterClass.TopologyIdList other = (context.ContextOuterClass.TopologyIdList) obj; + context.ContextOuterClass.TopologyDetails other = (context.ContextOuterClass.TopologyDetails) obj; - if (!getTopologyIdsList() - .equals(other.getTopologyIdsList())) return false; + if (hasTopologyId() != other.hasTopologyId()) return false; + if (hasTopologyId()) { + if (!getTopologyId() + .equals(other.getTopologyId())) return false; + } + if (!getName() + .equals(other.getName())) return false; + if (!getDevicesList() + .equals(other.getDevicesList())) return false; + if (!getLinksList() + .equals(other.getLinksList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -10363,78 +11391,88 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getTopologyIdsCount() > 0) { - hash = (37 * hash) + TOPOLOGY_IDS_FIELD_NUMBER; - hash = (53 * hash) + getTopologyIdsList().hashCode(); + if (hasTopologyId()) { + hash = (37 * hash) + TOPOLOGY_ID_FIELD_NUMBER; + hash = (53 * hash) + getTopologyId().hashCode(); + } + hash = (37 * hash) + NAME_FIELD_NUMBER; + hash = (53 * hash) + getName().hashCode(); + if (getDevicesCount() > 0) { + hash = (37 * hash) + DEVICES_FIELD_NUMBER; + hash = (53 * hash) + getDevicesList().hashCode(); + } + if (getLinksCount() > 0) { + hash = (37 * hash) + LINKS_FIELD_NUMBER; + hash = (53 * hash) + getLinksList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.TopologyIdList parseFrom( + public static context.ContextOuterClass.TopologyDetails parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.TopologyIdList parseFrom( + public static context.ContextOuterClass.TopologyDetails parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.TopologyIdList parseFrom( + public static context.ContextOuterClass.TopologyDetails parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.TopologyIdList parseFrom( + public static context.ContextOuterClass.TopologyDetails parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.TopologyIdList parseFrom(byte[] data) + public static context.ContextOuterClass.TopologyDetails parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.TopologyIdList parseFrom( + public static context.ContextOuterClass.TopologyDetails parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.TopologyIdList parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.TopologyDetails parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.TopologyIdList parseFrom( + public static context.ContextOuterClass.TopologyDetails 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 context.ContextOuterClass.TopologyIdList parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.TopologyDetails parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.TopologyIdList parseDelimitedFrom( + public static context.ContextOuterClass.TopologyDetails 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 context.ContextOuterClass.TopologyIdList parseFrom( + public static context.ContextOuterClass.TopologyDetails parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.TopologyIdList parseFrom( + public static context.ContextOuterClass.TopologyDetails parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -10447,7 +11485,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.TopologyIdList prototype) { + public static Builder newBuilder(context.ContextOuterClass.TopologyDetails prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -10463,26 +11501,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.TopologyIdList} + * Protobuf type {@code context.TopologyDetails} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.TopologyIdList) - context.ContextOuterClass.TopologyIdListOrBuilder { + // @@protoc_insertion_point(builder_implements:context.TopologyDetails) + context.ContextOuterClass.TopologyDetailsOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_TopologyIdList_descriptor; + return context.ContextOuterClass.internal_static_context_TopologyDetails_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_TopologyIdList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_TopologyDetails_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.TopologyIdList.class, context.ContextOuterClass.TopologyIdList.Builder.class); + context.ContextOuterClass.TopologyDetails.class, context.ContextOuterClass.TopologyDetails.Builder.class); } - // Construct using context.ContextOuterClass.TopologyIdList.newBuilder() + // Construct using context.ContextOuterClass.TopologyDetails.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -10495,17 +11533,32 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getTopologyIdsFieldBuilder(); + getDevicesFieldBuilder(); + getLinksFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (topologyIdsBuilder_ == null) { - topologyIds_ = java.util.Collections.emptyList(); + if (topologyIdBuilder_ == null) { + topologyId_ = null; + } else { + topologyId_ = null; + topologyIdBuilder_ = null; + } + name_ = ""; + + if (devicesBuilder_ == null) { + devices_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); } else { - topologyIdsBuilder_.clear(); + devicesBuilder_.clear(); + } + if (linksBuilder_ == null) { + links_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + } else { + linksBuilder_.clear(); } return this; } @@ -10513,17 +11566,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_TopologyIdList_descriptor; + return context.ContextOuterClass.internal_static_context_TopologyDetails_descriptor; } @java.lang.Override - public context.ContextOuterClass.TopologyIdList getDefaultInstanceForType() { - return context.ContextOuterClass.TopologyIdList.getDefaultInstance(); + public context.ContextOuterClass.TopologyDetails getDefaultInstanceForType() { + return context.ContextOuterClass.TopologyDetails.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.TopologyIdList build() { - context.ContextOuterClass.TopologyIdList result = buildPartial(); + public context.ContextOuterClass.TopologyDetails build() { + context.ContextOuterClass.TopologyDetails result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -10531,17 +11584,32 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.TopologyIdList buildPartial() { - context.ContextOuterClass.TopologyIdList result = new context.ContextOuterClass.TopologyIdList(this); + public context.ContextOuterClass.TopologyDetails buildPartial() { + context.ContextOuterClass.TopologyDetails result = new context.ContextOuterClass.TopologyDetails(this); int from_bitField0_ = bitField0_; - if (topologyIdsBuilder_ == null) { + if (topologyIdBuilder_ == null) { + result.topologyId_ = topologyId_; + } else { + result.topologyId_ = topologyIdBuilder_.build(); + } + result.name_ = name_; + if (devicesBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { - topologyIds_ = java.util.Collections.unmodifiableList(topologyIds_); + devices_ = java.util.Collections.unmodifiableList(devices_); bitField0_ = (bitField0_ & ~0x00000001); } - result.topologyIds_ = topologyIds_; + result.devices_ = devices_; } else { - result.topologyIds_ = topologyIdsBuilder_.build(); + result.devices_ = devicesBuilder_.build(); + } + if (linksBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0)) { + links_ = java.util.Collections.unmodifiableList(links_); + bitField0_ = (bitField0_ & ~0x00000002); + } + result.links_ = links_; + } else { + result.links_ = linksBuilder_.build(); } onBuilt(); return result; @@ -10581,39 +11649,72 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.TopologyIdList) { - return mergeFrom((context.ContextOuterClass.TopologyIdList)other); + if (other instanceof context.ContextOuterClass.TopologyDetails) { + return mergeFrom((context.ContextOuterClass.TopologyDetails)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.TopologyIdList other) { - if (other == context.ContextOuterClass.TopologyIdList.getDefaultInstance()) return this; - if (topologyIdsBuilder_ == null) { - if (!other.topologyIds_.isEmpty()) { - if (topologyIds_.isEmpty()) { - topologyIds_ = other.topologyIds_; + public Builder mergeFrom(context.ContextOuterClass.TopologyDetails other) { + if (other == context.ContextOuterClass.TopologyDetails.getDefaultInstance()) return this; + if (other.hasTopologyId()) { + mergeTopologyId(other.getTopologyId()); + } + if (!other.getName().isEmpty()) { + name_ = other.name_; + onChanged(); + } + if (devicesBuilder_ == null) { + if (!other.devices_.isEmpty()) { + if (devices_.isEmpty()) { + devices_ = other.devices_; bitField0_ = (bitField0_ & ~0x00000001); } else { - ensureTopologyIdsIsMutable(); - topologyIds_.addAll(other.topologyIds_); + ensureDevicesIsMutable(); + devices_.addAll(other.devices_); } onChanged(); } } else { - if (!other.topologyIds_.isEmpty()) { - if (topologyIdsBuilder_.isEmpty()) { - topologyIdsBuilder_.dispose(); - topologyIdsBuilder_ = null; - topologyIds_ = other.topologyIds_; + if (!other.devices_.isEmpty()) { + if (devicesBuilder_.isEmpty()) { + devicesBuilder_.dispose(); + devicesBuilder_ = null; + devices_ = other.devices_; bitField0_ = (bitField0_ & ~0x00000001); - topologyIdsBuilder_ = + devicesBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getTopologyIdsFieldBuilder() : null; + getDevicesFieldBuilder() : null; } else { - topologyIdsBuilder_.addAllMessages(other.topologyIds_); + devicesBuilder_.addAllMessages(other.devices_); + } + } + } + if (linksBuilder_ == null) { + if (!other.links_.isEmpty()) { + if (links_.isEmpty()) { + links_ = other.links_; + bitField0_ = (bitField0_ & ~0x00000002); + } else { + ensureLinksIsMutable(); + links_.addAll(other.links_); + } + onChanged(); + } + } else { + if (!other.links_.isEmpty()) { + if (linksBuilder_.isEmpty()) { + linksBuilder_.dispose(); + linksBuilder_ = null; + links_ = other.links_; + bitField0_ = (bitField0_ & ~0x00000002); + linksBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getLinksFieldBuilder() : null; + } else { + linksBuilder_.addAllMessages(other.links_); } } } @@ -10632,11 +11733,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.TopologyIdList parsedMessage = null; + context.ContextOuterClass.TopologyDetails parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.TopologyIdList) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.TopologyDetails) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -10647,347 +11748,782 @@ public final class ContextOuterClass { } private int bitField0_; - private java.util.List<context.ContextOuterClass.TopologyId> topologyIds_ = + private context.ContextOuterClass.TopologyId topologyId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> topologyIdBuilder_; + /** + * <code>.context.TopologyId topology_id = 1;</code> + * @return Whether the topologyId field is set. + */ + public boolean hasTopologyId() { + return topologyIdBuilder_ != null || topologyId_ != null; + } + /** + * <code>.context.TopologyId topology_id = 1;</code> + * @return The topologyId. + */ + public context.ContextOuterClass.TopologyId getTopologyId() { + if (topologyIdBuilder_ == null) { + return topologyId_ == null ? context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_; + } else { + return topologyIdBuilder_.getMessage(); + } + } + /** + * <code>.context.TopologyId topology_id = 1;</code> + */ + public Builder setTopologyId(context.ContextOuterClass.TopologyId value) { + if (topologyIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + topologyId_ = value; + onChanged(); + } else { + topologyIdBuilder_.setMessage(value); + } + + return this; + } + /** + * <code>.context.TopologyId topology_id = 1;</code> + */ + public Builder setTopologyId( + context.ContextOuterClass.TopologyId.Builder builderForValue) { + if (topologyIdBuilder_ == null) { + topologyId_ = builderForValue.build(); + onChanged(); + } else { + topologyIdBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.TopologyId topology_id = 1;</code> + */ + public Builder mergeTopologyId(context.ContextOuterClass.TopologyId value) { + if (topologyIdBuilder_ == null) { + if (topologyId_ != null) { + topologyId_ = + context.ContextOuterClass.TopologyId.newBuilder(topologyId_).mergeFrom(value).buildPartial(); + } else { + topologyId_ = value; + } + onChanged(); + } else { + topologyIdBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.context.TopologyId topology_id = 1;</code> + */ + public Builder clearTopologyId() { + if (topologyIdBuilder_ == null) { + topologyId_ = null; + onChanged(); + } else { + topologyId_ = null; + topologyIdBuilder_ = null; + } + + return this; + } + /** + * <code>.context.TopologyId topology_id = 1;</code> + */ + public context.ContextOuterClass.TopologyId.Builder getTopologyIdBuilder() { + + onChanged(); + return getTopologyIdFieldBuilder().getBuilder(); + } + /** + * <code>.context.TopologyId topology_id = 1;</code> + */ + public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder() { + if (topologyIdBuilder_ != null) { + return topologyIdBuilder_.getMessageOrBuilder(); + } else { + return topologyId_ == null ? + context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_; + } + } + /** + * <code>.context.TopologyId topology_id = 1;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> + getTopologyIdFieldBuilder() { + if (topologyIdBuilder_ == null) { + topologyIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder>( + getTopologyId(), + getParentForChildren(), + isClean()); + topologyId_ = null; + } + return topologyIdBuilder_; + } + + private java.lang.Object name_ = ""; + /** + * <code>string name = 2;</code> + * @return The name. + */ + public java.lang.String getName() { + java.lang.Object ref = name_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * <code>string name = 2;</code> + * @return The bytes for name. + */ + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * <code>string name = 2;</code> + * @param value The name to set. + * @return This builder for chaining. + */ + public Builder setName( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + name_ = value; + onChanged(); + return this; + } + /** + * <code>string name = 2;</code> + * @return This builder for chaining. + */ + public Builder clearName() { + + name_ = getDefaultInstance().getName(); + onChanged(); + return this; + } + /** + * <code>string name = 2;</code> + * @param value The bytes for name to set. + * @return This builder for chaining. + */ + public Builder setNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + name_ = value; + onChanged(); + return this; + } + + private java.util.List<context.ContextOuterClass.Device> devices_ = java.util.Collections.emptyList(); - private void ensureTopologyIdsIsMutable() { + private void ensureDevicesIsMutable() { if (!((bitField0_ & 0x00000001) != 0)) { - topologyIds_ = new java.util.ArrayList<context.ContextOuterClass.TopologyId>(topologyIds_); + devices_ = new java.util.ArrayList<context.ContextOuterClass.Device>(devices_); bitField0_ |= 0x00000001; } } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> topologyIdsBuilder_; + context.ContextOuterClass.Device, context.ContextOuterClass.Device.Builder, context.ContextOuterClass.DeviceOrBuilder> devicesBuilder_; /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>repeated .context.Device devices = 3;</code> */ - public java.util.List<context.ContextOuterClass.TopologyId> getTopologyIdsList() { - if (topologyIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(topologyIds_); + public java.util.List<context.ContextOuterClass.Device> getDevicesList() { + if (devicesBuilder_ == null) { + return java.util.Collections.unmodifiableList(devices_); } else { - return topologyIdsBuilder_.getMessageList(); + return devicesBuilder_.getMessageList(); } } /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>repeated .context.Device devices = 3;</code> */ - public int getTopologyIdsCount() { - if (topologyIdsBuilder_ == null) { - return topologyIds_.size(); + public int getDevicesCount() { + if (devicesBuilder_ == null) { + return devices_.size(); } else { - return topologyIdsBuilder_.getCount(); + return devicesBuilder_.getCount(); } } /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>repeated .context.Device devices = 3;</code> */ - public context.ContextOuterClass.TopologyId getTopologyIds(int index) { - if (topologyIdsBuilder_ == null) { - return topologyIds_.get(index); + public context.ContextOuterClass.Device getDevices(int index) { + if (devicesBuilder_ == null) { + return devices_.get(index); } else { - return topologyIdsBuilder_.getMessage(index); + return devicesBuilder_.getMessage(index); } } /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>repeated .context.Device devices = 3;</code> */ - public Builder setTopologyIds( - int index, context.ContextOuterClass.TopologyId value) { - if (topologyIdsBuilder_ == null) { + public Builder setDevices( + int index, context.ContextOuterClass.Device value) { + if (devicesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureTopologyIdsIsMutable(); - topologyIds_.set(index, value); + ensureDevicesIsMutable(); + devices_.set(index, value); onChanged(); } else { - topologyIdsBuilder_.setMessage(index, value); + devicesBuilder_.setMessage(index, value); } return this; } /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>repeated .context.Device devices = 3;</code> */ - public Builder setTopologyIds( - int index, context.ContextOuterClass.TopologyId.Builder builderForValue) { - if (topologyIdsBuilder_ == null) { - ensureTopologyIdsIsMutable(); - topologyIds_.set(index, builderForValue.build()); + public Builder setDevices( + int index, context.ContextOuterClass.Device.Builder builderForValue) { + if (devicesBuilder_ == null) { + ensureDevicesIsMutable(); + devices_.set(index, builderForValue.build()); onChanged(); } else { - topologyIdsBuilder_.setMessage(index, builderForValue.build()); + devicesBuilder_.setMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>repeated .context.Device devices = 3;</code> */ - public Builder addTopologyIds(context.ContextOuterClass.TopologyId value) { - if (topologyIdsBuilder_ == null) { + public Builder addDevices(context.ContextOuterClass.Device value) { + if (devicesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureTopologyIdsIsMutable(); - topologyIds_.add(value); + ensureDevicesIsMutable(); + devices_.add(value); onChanged(); } else { - topologyIdsBuilder_.addMessage(value); + devicesBuilder_.addMessage(value); } return this; } /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>repeated .context.Device devices = 3;</code> */ - public Builder addTopologyIds( - int index, context.ContextOuterClass.TopologyId value) { - if (topologyIdsBuilder_ == null) { + public Builder addDevices( + int index, context.ContextOuterClass.Device value) { + if (devicesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureTopologyIdsIsMutable(); - topologyIds_.add(index, value); + ensureDevicesIsMutable(); + devices_.add(index, value); onChanged(); } else { - topologyIdsBuilder_.addMessage(index, value); + devicesBuilder_.addMessage(index, value); } return this; } /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>repeated .context.Device devices = 3;</code> */ - public Builder addTopologyIds( - context.ContextOuterClass.TopologyId.Builder builderForValue) { - if (topologyIdsBuilder_ == null) { - ensureTopologyIdsIsMutable(); - topologyIds_.add(builderForValue.build()); + public Builder addDevices( + context.ContextOuterClass.Device.Builder builderForValue) { + if (devicesBuilder_ == null) { + ensureDevicesIsMutable(); + devices_.add(builderForValue.build()); onChanged(); } else { - topologyIdsBuilder_.addMessage(builderForValue.build()); + devicesBuilder_.addMessage(builderForValue.build()); } return this; } /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>repeated .context.Device devices = 3;</code> */ - public Builder addTopologyIds( - int index, context.ContextOuterClass.TopologyId.Builder builderForValue) { - if (topologyIdsBuilder_ == null) { - ensureTopologyIdsIsMutable(); - topologyIds_.add(index, builderForValue.build()); + public Builder addDevices( + int index, context.ContextOuterClass.Device.Builder builderForValue) { + if (devicesBuilder_ == null) { + ensureDevicesIsMutable(); + devices_.add(index, builderForValue.build()); onChanged(); } else { - topologyIdsBuilder_.addMessage(index, builderForValue.build()); + devicesBuilder_.addMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>repeated .context.Device devices = 3;</code> */ - public Builder addAllTopologyIds( - java.lang.Iterable<? extends context.ContextOuterClass.TopologyId> values) { - if (topologyIdsBuilder_ == null) { - ensureTopologyIdsIsMutable(); + public Builder addAllDevices( + java.lang.Iterable<? extends context.ContextOuterClass.Device> values) { + if (devicesBuilder_ == null) { + ensureDevicesIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, topologyIds_); + values, devices_); onChanged(); } else { - topologyIdsBuilder_.addAllMessages(values); + devicesBuilder_.addAllMessages(values); } return this; } /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>repeated .context.Device devices = 3;</code> */ - public Builder clearTopologyIds() { - if (topologyIdsBuilder_ == null) { - topologyIds_ = java.util.Collections.emptyList(); + public Builder clearDevices() { + if (devicesBuilder_ == null) { + devices_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { - topologyIdsBuilder_.clear(); + devicesBuilder_.clear(); } return this; } /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>repeated .context.Device devices = 3;</code> */ - public Builder removeTopologyIds(int index) { - if (topologyIdsBuilder_ == null) { - ensureTopologyIdsIsMutable(); - topologyIds_.remove(index); + public Builder removeDevices(int index) { + if (devicesBuilder_ == null) { + ensureDevicesIsMutable(); + devices_.remove(index); onChanged(); } else { - topologyIdsBuilder_.remove(index); + devicesBuilder_.remove(index); } return this; } /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>repeated .context.Device devices = 3;</code> */ - public context.ContextOuterClass.TopologyId.Builder getTopologyIdsBuilder( + public context.ContextOuterClass.Device.Builder getDevicesBuilder( int index) { - return getTopologyIdsFieldBuilder().getBuilder(index); + return getDevicesFieldBuilder().getBuilder(index); } /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>repeated .context.Device devices = 3;</code> */ - public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdsOrBuilder( + public context.ContextOuterClass.DeviceOrBuilder getDevicesOrBuilder( int index) { - if (topologyIdsBuilder_ == null) { - return topologyIds_.get(index); } else { - return topologyIdsBuilder_.getMessageOrBuilder(index); + if (devicesBuilder_ == null) { + return devices_.get(index); } else { + return devicesBuilder_.getMessageOrBuilder(index); } } /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>repeated .context.Device devices = 3;</code> */ - public java.util.List<? extends context.ContextOuterClass.TopologyIdOrBuilder> - getTopologyIdsOrBuilderList() { - if (topologyIdsBuilder_ != null) { - return topologyIdsBuilder_.getMessageOrBuilderList(); + public java.util.List<? extends context.ContextOuterClass.DeviceOrBuilder> + getDevicesOrBuilderList() { + if (devicesBuilder_ != null) { + return devicesBuilder_.getMessageOrBuilderList(); } else { - return java.util.Collections.unmodifiableList(topologyIds_); + return java.util.Collections.unmodifiableList(devices_); } } /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>repeated .context.Device devices = 3;</code> */ - public context.ContextOuterClass.TopologyId.Builder addTopologyIdsBuilder() { - return getTopologyIdsFieldBuilder().addBuilder( - context.ContextOuterClass.TopologyId.getDefaultInstance()); + public context.ContextOuterClass.Device.Builder addDevicesBuilder() { + return getDevicesFieldBuilder().addBuilder( + context.ContextOuterClass.Device.getDefaultInstance()); } /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>repeated .context.Device devices = 3;</code> */ - public context.ContextOuterClass.TopologyId.Builder addTopologyIdsBuilder( + public context.ContextOuterClass.Device.Builder addDevicesBuilder( int index) { - return getTopologyIdsFieldBuilder().addBuilder( - index, context.ContextOuterClass.TopologyId.getDefaultInstance()); + return getDevicesFieldBuilder().addBuilder( + index, context.ContextOuterClass.Device.getDefaultInstance()); } /** - * <code>repeated .context.TopologyId topology_ids = 1;</code> + * <code>repeated .context.Device devices = 3;</code> */ - public java.util.List<context.ContextOuterClass.TopologyId.Builder> - getTopologyIdsBuilderList() { - return getTopologyIdsFieldBuilder().getBuilderList(); + public java.util.List<context.ContextOuterClass.Device.Builder> + getDevicesBuilderList() { + return getDevicesFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> - getTopologyIdsFieldBuilder() { - if (topologyIdsBuilder_ == null) { - topologyIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder>( - topologyIds_, + context.ContextOuterClass.Device, context.ContextOuterClass.Device.Builder, context.ContextOuterClass.DeviceOrBuilder> + getDevicesFieldBuilder() { + if (devicesBuilder_ == null) { + devicesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Device, context.ContextOuterClass.Device.Builder, context.ContextOuterClass.DeviceOrBuilder>( + devices_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); - topologyIds_ = null; + devices_ = null; } - return topologyIdsBuilder_; - } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); + return devicesBuilder_; } - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); + private java.util.List<context.ContextOuterClass.Link> links_ = + java.util.Collections.emptyList(); + private void ensureLinksIsMutable() { + if (!((bitField0_ & 0x00000002) != 0)) { + links_ = new java.util.ArrayList<context.ContextOuterClass.Link>(links_); + bitField0_ |= 0x00000002; + } } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Link, context.ContextOuterClass.Link.Builder, context.ContextOuterClass.LinkOrBuilder> linksBuilder_; - // @@protoc_insertion_point(builder_scope:context.TopologyIdList) - } - - // @@protoc_insertion_point(class_scope:context.TopologyIdList) - private static final context.ContextOuterClass.TopologyIdList DEFAULT_INSTANCE; - static { - DEFAULT_INSTANCE = new context.ContextOuterClass.TopologyIdList(); - } - - public static context.ContextOuterClass.TopologyIdList getDefaultInstance() { - return DEFAULT_INSTANCE; - } - - private static final com.google.protobuf.Parser<TopologyIdList> - PARSER = new com.google.protobuf.AbstractParser<TopologyIdList>() { - @java.lang.Override - public TopologyIdList parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return new TopologyIdList(input, extensionRegistry); + /** + * <code>repeated .context.Link links = 4;</code> + */ + public java.util.List<context.ContextOuterClass.Link> getLinksList() { + if (linksBuilder_ == null) { + return java.util.Collections.unmodifiableList(links_); + } else { + return linksBuilder_.getMessageList(); + } } - }; - - public static com.google.protobuf.Parser<TopologyIdList> parser() { - return PARSER; - } - - @java.lang.Override - public com.google.protobuf.Parser<TopologyIdList> getParserForType() { - return PARSER; - } - - @java.lang.Override - public context.ContextOuterClass.TopologyIdList getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - - } - - public interface TopologyListOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.TopologyList) - com.google.protobuf.MessageOrBuilder { + /** + * <code>repeated .context.Link links = 4;</code> + */ + public int getLinksCount() { + if (linksBuilder_ == null) { + return links_.size(); + } else { + return linksBuilder_.getCount(); + } + } + /** + * <code>repeated .context.Link links = 4;</code> + */ + public context.ContextOuterClass.Link getLinks(int index) { + if (linksBuilder_ == null) { + return links_.get(index); + } else { + return linksBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.Link links = 4;</code> + */ + public Builder setLinks( + int index, context.ContextOuterClass.Link value) { + if (linksBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLinksIsMutable(); + links_.set(index, value); + onChanged(); + } else { + linksBuilder_.setMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.Link links = 4;</code> + */ + public Builder setLinks( + int index, context.ContextOuterClass.Link.Builder builderForValue) { + if (linksBuilder_ == null) { + ensureLinksIsMutable(); + links_.set(index, builderForValue.build()); + onChanged(); + } else { + linksBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.Link links = 4;</code> + */ + public Builder addLinks(context.ContextOuterClass.Link value) { + if (linksBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLinksIsMutable(); + links_.add(value); + onChanged(); + } else { + linksBuilder_.addMessage(value); + } + return this; + } + /** + * <code>repeated .context.Link links = 4;</code> + */ + public Builder addLinks( + int index, context.ContextOuterClass.Link value) { + if (linksBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLinksIsMutable(); + links_.add(index, value); + onChanged(); + } else { + linksBuilder_.addMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.Link links = 4;</code> + */ + public Builder addLinks( + context.ContextOuterClass.Link.Builder builderForValue) { + if (linksBuilder_ == null) { + ensureLinksIsMutable(); + links_.add(builderForValue.build()); + onChanged(); + } else { + linksBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.Link links = 4;</code> + */ + public Builder addLinks( + int index, context.ContextOuterClass.Link.Builder builderForValue) { + if (linksBuilder_ == null) { + ensureLinksIsMutable(); + links_.add(index, builderForValue.build()); + onChanged(); + } else { + linksBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.Link links = 4;</code> + */ + public Builder addAllLinks( + java.lang.Iterable<? extends context.ContextOuterClass.Link> values) { + if (linksBuilder_ == null) { + ensureLinksIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, links_); + onChanged(); + } else { + linksBuilder_.addAllMessages(values); + } + return this; + } + /** + * <code>repeated .context.Link links = 4;</code> + */ + public Builder clearLinks() { + if (linksBuilder_ == null) { + links_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + } else { + linksBuilder_.clear(); + } + return this; + } + /** + * <code>repeated .context.Link links = 4;</code> + */ + public Builder removeLinks(int index) { + if (linksBuilder_ == null) { + ensureLinksIsMutable(); + links_.remove(index); + onChanged(); + } else { + linksBuilder_.remove(index); + } + return this; + } + /** + * <code>repeated .context.Link links = 4;</code> + */ + public context.ContextOuterClass.Link.Builder getLinksBuilder( + int index) { + return getLinksFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .context.Link links = 4;</code> + */ + public context.ContextOuterClass.LinkOrBuilder getLinksOrBuilder( + int index) { + if (linksBuilder_ == null) { + return links_.get(index); } else { + return linksBuilder_.getMessageOrBuilder(index); + } + } + /** + * <code>repeated .context.Link links = 4;</code> + */ + public java.util.List<? extends context.ContextOuterClass.LinkOrBuilder> + getLinksOrBuilderList() { + if (linksBuilder_ != null) { + return linksBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(links_); + } + } + /** + * <code>repeated .context.Link links = 4;</code> + */ + public context.ContextOuterClass.Link.Builder addLinksBuilder() { + return getLinksFieldBuilder().addBuilder( + context.ContextOuterClass.Link.getDefaultInstance()); + } + /** + * <code>repeated .context.Link links = 4;</code> + */ + public context.ContextOuterClass.Link.Builder addLinksBuilder( + int index) { + return getLinksFieldBuilder().addBuilder( + index, context.ContextOuterClass.Link.getDefaultInstance()); + } + /** + * <code>repeated .context.Link links = 4;</code> + */ + public java.util.List<context.ContextOuterClass.Link.Builder> + getLinksBuilderList() { + return getLinksFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Link, context.ContextOuterClass.Link.Builder, context.ContextOuterClass.LinkOrBuilder> + getLinksFieldBuilder() { + if (linksBuilder_ == null) { + linksBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Link, context.ContextOuterClass.Link.Builder, context.ContextOuterClass.LinkOrBuilder>( + links_, + ((bitField0_ & 0x00000002) != 0), + getParentForChildren(), + isClean()); + links_ = null; + } + return linksBuilder_; + } + @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:context.TopologyDetails) + } + + // @@protoc_insertion_point(class_scope:context.TopologyDetails) + private static final context.ContextOuterClass.TopologyDetails DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new context.ContextOuterClass.TopologyDetails(); + } + + public static context.ContextOuterClass.TopologyDetails getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<TopologyDetails> + PARSER = new com.google.protobuf.AbstractParser<TopologyDetails>() { + @java.lang.Override + public TopologyDetails parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new TopologyDetails(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<TopologyDetails> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<TopologyDetails> getParserForType() { + return PARSER; + } + + @java.lang.Override + public context.ContextOuterClass.TopologyDetails getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface TopologyIdListOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.TopologyIdList) + com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ - java.util.List<context.ContextOuterClass.Topology> - getTopologiesList(); + java.util.List<context.ContextOuterClass.TopologyId> + getTopologyIdsList(); /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ - context.ContextOuterClass.Topology getTopologies(int index); + context.ContextOuterClass.TopologyId getTopologyIds(int index); /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ - int getTopologiesCount(); + int getTopologyIdsCount(); /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ - java.util.List<? extends context.ContextOuterClass.TopologyOrBuilder> - getTopologiesOrBuilderList(); + java.util.List<? extends context.ContextOuterClass.TopologyIdOrBuilder> + getTopologyIdsOrBuilderList(); /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ - context.ContextOuterClass.TopologyOrBuilder getTopologiesOrBuilder( + context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdsOrBuilder( int index); } /** - * Protobuf type {@code context.TopologyList} + * Protobuf type {@code context.TopologyIdList} */ - public static final class TopologyList extends + public static final class TopologyIdList extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.TopologyList) - TopologyListOrBuilder { + // @@protoc_insertion_point(message_implements:context.TopologyIdList) + TopologyIdListOrBuilder { private static final long serialVersionUID = 0L; - // Use TopologyList.newBuilder() to construct. - private TopologyList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use TopologyIdList.newBuilder() to construct. + private TopologyIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private TopologyList() { - topologies_ = java.util.Collections.emptyList(); + private TopologyIdList() { + topologyIds_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new TopologyList(); + return new TopologyIdList(); } @java.lang.Override @@ -10995,7 +12531,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private TopologyList( + private TopologyIdList( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -11016,11 +12552,11 @@ public final class ContextOuterClass { break; case 10: { if (!((mutable_bitField0_ & 0x00000001) != 0)) { - topologies_ = new java.util.ArrayList<context.ContextOuterClass.Topology>(); + topologyIds_ = new java.util.ArrayList<context.ContextOuterClass.TopologyId>(); mutable_bitField0_ |= 0x00000001; } - topologies_.add( - input.readMessage(context.ContextOuterClass.Topology.parser(), extensionRegistry)); + topologyIds_.add( + input.readMessage(context.ContextOuterClass.TopologyId.parser(), extensionRegistry)); break; } default: { @@ -11039,7 +12575,7 @@ public final class ContextOuterClass { e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { - topologies_ = java.util.Collections.unmodifiableList(topologies_); + topologyIds_ = java.util.Collections.unmodifiableList(topologyIds_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); @@ -11047,55 +12583,55 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_TopologyList_descriptor; + return context.ContextOuterClass.internal_static_context_TopologyIdList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_TopologyList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_TopologyIdList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.TopologyList.class, context.ContextOuterClass.TopologyList.Builder.class); + context.ContextOuterClass.TopologyIdList.class, context.ContextOuterClass.TopologyIdList.Builder.class); } - public static final int TOPOLOGIES_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.Topology> topologies_; + public static final int TOPOLOGY_IDS_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.TopologyId> topologyIds_; /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ @java.lang.Override - public java.util.List<context.ContextOuterClass.Topology> getTopologiesList() { - return topologies_; + public java.util.List<context.ContextOuterClass.TopologyId> getTopologyIdsList() { + return topologyIds_; } /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.TopologyOrBuilder> - getTopologiesOrBuilderList() { - return topologies_; + public java.util.List<? extends context.ContextOuterClass.TopologyIdOrBuilder> + getTopologyIdsOrBuilderList() { + return topologyIds_; } /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ @java.lang.Override - public int getTopologiesCount() { - return topologies_.size(); + public int getTopologyIdsCount() { + return topologyIds_.size(); } /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.Topology getTopologies(int index) { - return topologies_.get(index); + public context.ContextOuterClass.TopologyId getTopologyIds(int index) { + return topologyIds_.get(index); } /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.TopologyOrBuilder getTopologiesOrBuilder( + public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdsOrBuilder( int index) { - return topologies_.get(index); + return topologyIds_.get(index); } private byte memoizedIsInitialized = -1; @@ -11112,8 +12648,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < topologies_.size(); i++) { - output.writeMessage(1, topologies_.get(i)); + for (int i = 0; i < topologyIds_.size(); i++) { + output.writeMessage(1, topologyIds_.get(i)); } unknownFields.writeTo(output); } @@ -11124,9 +12660,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < topologies_.size(); i++) { + for (int i = 0; i < topologyIds_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, topologies_.get(i)); + .computeMessageSize(1, topologyIds_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -11138,13 +12674,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.TopologyList)) { + if (!(obj instanceof context.ContextOuterClass.TopologyIdList)) { return super.equals(obj); } - context.ContextOuterClass.TopologyList other = (context.ContextOuterClass.TopologyList) obj; + context.ContextOuterClass.TopologyIdList other = (context.ContextOuterClass.TopologyIdList) obj; - if (!getTopologiesList() - .equals(other.getTopologiesList())) return false; + if (!getTopologyIdsList() + .equals(other.getTopologyIdsList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -11156,78 +12692,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getTopologiesCount() > 0) { - hash = (37 * hash) + TOPOLOGIES_FIELD_NUMBER; - hash = (53 * hash) + getTopologiesList().hashCode(); + if (getTopologyIdsCount() > 0) { + hash = (37 * hash) + TOPOLOGY_IDS_FIELD_NUMBER; + hash = (53 * hash) + getTopologyIdsList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.TopologyList parseFrom( + public static context.ContextOuterClass.TopologyIdList parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.TopologyList parseFrom( + public static context.ContextOuterClass.TopologyIdList parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.TopologyList parseFrom( + public static context.ContextOuterClass.TopologyIdList parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.TopologyList parseFrom( + public static context.ContextOuterClass.TopologyIdList parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.TopologyList parseFrom(byte[] data) + public static context.ContextOuterClass.TopologyIdList parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.TopologyList parseFrom( + public static context.ContextOuterClass.TopologyIdList parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.TopologyList parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.TopologyIdList parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.TopologyList parseFrom( + public static context.ContextOuterClass.TopologyIdList 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 context.ContextOuterClass.TopologyList parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.TopologyIdList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.TopologyList parseDelimitedFrom( + public static context.ContextOuterClass.TopologyIdList 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 context.ContextOuterClass.TopologyList parseFrom( + public static context.ContextOuterClass.TopologyIdList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.TopologyList parseFrom( + public static context.ContextOuterClass.TopologyIdList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -11240,7 +12776,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.TopologyList prototype) { + public static Builder newBuilder(context.ContextOuterClass.TopologyIdList prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -11256,26 +12792,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.TopologyList} + * Protobuf type {@code context.TopologyIdList} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.TopologyList) - context.ContextOuterClass.TopologyListOrBuilder { + // @@protoc_insertion_point(builder_implements:context.TopologyIdList) + context.ContextOuterClass.TopologyIdListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_TopologyList_descriptor; + return context.ContextOuterClass.internal_static_context_TopologyIdList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_TopologyList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_TopologyIdList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.TopologyList.class, context.ContextOuterClass.TopologyList.Builder.class); + context.ContextOuterClass.TopologyIdList.class, context.ContextOuterClass.TopologyIdList.Builder.class); } - // Construct using context.ContextOuterClass.TopologyList.newBuilder() + // Construct using context.ContextOuterClass.TopologyIdList.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -11288,17 +12824,17 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getTopologiesFieldBuilder(); + getTopologyIdsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (topologiesBuilder_ == null) { - topologies_ = java.util.Collections.emptyList(); + if (topologyIdsBuilder_ == null) { + topologyIds_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); } else { - topologiesBuilder_.clear(); + topologyIdsBuilder_.clear(); } return this; } @@ -11306,17 +12842,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_TopologyList_descriptor; + return context.ContextOuterClass.internal_static_context_TopologyIdList_descriptor; } @java.lang.Override - public context.ContextOuterClass.TopologyList getDefaultInstanceForType() { - return context.ContextOuterClass.TopologyList.getDefaultInstance(); + public context.ContextOuterClass.TopologyIdList getDefaultInstanceForType() { + return context.ContextOuterClass.TopologyIdList.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.TopologyList build() { - context.ContextOuterClass.TopologyList result = buildPartial(); + public context.ContextOuterClass.TopologyIdList build() { + context.ContextOuterClass.TopologyIdList result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -11324,17 +12860,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.TopologyList buildPartial() { - context.ContextOuterClass.TopologyList result = new context.ContextOuterClass.TopologyList(this); + public context.ContextOuterClass.TopologyIdList buildPartial() { + context.ContextOuterClass.TopologyIdList result = new context.ContextOuterClass.TopologyIdList(this); int from_bitField0_ = bitField0_; - if (topologiesBuilder_ == null) { + if (topologyIdsBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { - topologies_ = java.util.Collections.unmodifiableList(topologies_); + topologyIds_ = java.util.Collections.unmodifiableList(topologyIds_); bitField0_ = (bitField0_ & ~0x00000001); } - result.topologies_ = topologies_; + result.topologyIds_ = topologyIds_; } else { - result.topologies_ = topologiesBuilder_.build(); + result.topologyIds_ = topologyIdsBuilder_.build(); } onBuilt(); return result; @@ -11374,39 +12910,39 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.TopologyList) { - return mergeFrom((context.ContextOuterClass.TopologyList)other); + if (other instanceof context.ContextOuterClass.TopologyIdList) { + return mergeFrom((context.ContextOuterClass.TopologyIdList)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.TopologyList other) { - if (other == context.ContextOuterClass.TopologyList.getDefaultInstance()) return this; - if (topologiesBuilder_ == null) { - if (!other.topologies_.isEmpty()) { - if (topologies_.isEmpty()) { - topologies_ = other.topologies_; + public Builder mergeFrom(context.ContextOuterClass.TopologyIdList other) { + if (other == context.ContextOuterClass.TopologyIdList.getDefaultInstance()) return this; + if (topologyIdsBuilder_ == null) { + if (!other.topologyIds_.isEmpty()) { + if (topologyIds_.isEmpty()) { + topologyIds_ = other.topologyIds_; bitField0_ = (bitField0_ & ~0x00000001); } else { - ensureTopologiesIsMutable(); - topologies_.addAll(other.topologies_); + ensureTopologyIdsIsMutable(); + topologyIds_.addAll(other.topologyIds_); } onChanged(); } } else { - if (!other.topologies_.isEmpty()) { - if (topologiesBuilder_.isEmpty()) { - topologiesBuilder_.dispose(); - topologiesBuilder_ = null; - topologies_ = other.topologies_; + if (!other.topologyIds_.isEmpty()) { + if (topologyIdsBuilder_.isEmpty()) { + topologyIdsBuilder_.dispose(); + topologyIdsBuilder_ = null; + topologyIds_ = other.topologyIds_; bitField0_ = (bitField0_ & ~0x00000001); - topologiesBuilder_ = + topologyIdsBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getTopologiesFieldBuilder() : null; + getTopologyIdsFieldBuilder() : null; } else { - topologiesBuilder_.addAllMessages(other.topologies_); + topologyIdsBuilder_.addAllMessages(other.topologyIds_); } } } @@ -11425,11 +12961,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.TopologyList parsedMessage = null; + context.ContextOuterClass.TopologyIdList parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.TopologyList) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.TopologyIdList) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -11440,244 +12976,244 @@ public final class ContextOuterClass { } private int bitField0_; - private java.util.List<context.ContextOuterClass.Topology> topologies_ = + private java.util.List<context.ContextOuterClass.TopologyId> topologyIds_ = java.util.Collections.emptyList(); - private void ensureTopologiesIsMutable() { + private void ensureTopologyIdsIsMutable() { if (!((bitField0_ & 0x00000001) != 0)) { - topologies_ = new java.util.ArrayList<context.ContextOuterClass.Topology>(topologies_); + topologyIds_ = new java.util.ArrayList<context.ContextOuterClass.TopologyId>(topologyIds_); bitField0_ |= 0x00000001; } } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Topology, context.ContextOuterClass.Topology.Builder, context.ContextOuterClass.TopologyOrBuilder> topologiesBuilder_; + context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> topologyIdsBuilder_; /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ - public java.util.List<context.ContextOuterClass.Topology> getTopologiesList() { - if (topologiesBuilder_ == null) { - return java.util.Collections.unmodifiableList(topologies_); + public java.util.List<context.ContextOuterClass.TopologyId> getTopologyIdsList() { + if (topologyIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(topologyIds_); } else { - return topologiesBuilder_.getMessageList(); + return topologyIdsBuilder_.getMessageList(); } } /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ - public int getTopologiesCount() { - if (topologiesBuilder_ == null) { - return topologies_.size(); + public int getTopologyIdsCount() { + if (topologyIdsBuilder_ == null) { + return topologyIds_.size(); } else { - return topologiesBuilder_.getCount(); + return topologyIdsBuilder_.getCount(); } } /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ - public context.ContextOuterClass.Topology getTopologies(int index) { - if (topologiesBuilder_ == null) { - return topologies_.get(index); + public context.ContextOuterClass.TopologyId getTopologyIds(int index) { + if (topologyIdsBuilder_ == null) { + return topologyIds_.get(index); } else { - return topologiesBuilder_.getMessage(index); + return topologyIdsBuilder_.getMessage(index); } } /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ - public Builder setTopologies( - int index, context.ContextOuterClass.Topology value) { - if (topologiesBuilder_ == null) { + public Builder setTopologyIds( + int index, context.ContextOuterClass.TopologyId value) { + if (topologyIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureTopologiesIsMutable(); - topologies_.set(index, value); + ensureTopologyIdsIsMutable(); + topologyIds_.set(index, value); onChanged(); } else { - topologiesBuilder_.setMessage(index, value); + topologyIdsBuilder_.setMessage(index, value); } return this; } /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ - public Builder setTopologies( - int index, context.ContextOuterClass.Topology.Builder builderForValue) { - if (topologiesBuilder_ == null) { - ensureTopologiesIsMutable(); - topologies_.set(index, builderForValue.build()); + public Builder setTopologyIds( + int index, context.ContextOuterClass.TopologyId.Builder builderForValue) { + if (topologyIdsBuilder_ == null) { + ensureTopologyIdsIsMutable(); + topologyIds_.set(index, builderForValue.build()); onChanged(); } else { - topologiesBuilder_.setMessage(index, builderForValue.build()); + topologyIdsBuilder_.setMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ - public Builder addTopologies(context.ContextOuterClass.Topology value) { - if (topologiesBuilder_ == null) { + public Builder addTopologyIds(context.ContextOuterClass.TopologyId value) { + if (topologyIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureTopologiesIsMutable(); - topologies_.add(value); + ensureTopologyIdsIsMutable(); + topologyIds_.add(value); onChanged(); } else { - topologiesBuilder_.addMessage(value); + topologyIdsBuilder_.addMessage(value); } return this; } /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ - public Builder addTopologies( - int index, context.ContextOuterClass.Topology value) { - if (topologiesBuilder_ == null) { + public Builder addTopologyIds( + int index, context.ContextOuterClass.TopologyId value) { + if (topologyIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureTopologiesIsMutable(); - topologies_.add(index, value); + ensureTopologyIdsIsMutable(); + topologyIds_.add(index, value); onChanged(); } else { - topologiesBuilder_.addMessage(index, value); + topologyIdsBuilder_.addMessage(index, value); } return this; } /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ - public Builder addTopologies( - context.ContextOuterClass.Topology.Builder builderForValue) { - if (topologiesBuilder_ == null) { - ensureTopologiesIsMutable(); - topologies_.add(builderForValue.build()); + public Builder addTopologyIds( + context.ContextOuterClass.TopologyId.Builder builderForValue) { + if (topologyIdsBuilder_ == null) { + ensureTopologyIdsIsMutable(); + topologyIds_.add(builderForValue.build()); onChanged(); } else { - topologiesBuilder_.addMessage(builderForValue.build()); + topologyIdsBuilder_.addMessage(builderForValue.build()); } return this; } /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ - public Builder addTopologies( - int index, context.ContextOuterClass.Topology.Builder builderForValue) { - if (topologiesBuilder_ == null) { - ensureTopologiesIsMutable(); - topologies_.add(index, builderForValue.build()); + public Builder addTopologyIds( + int index, context.ContextOuterClass.TopologyId.Builder builderForValue) { + if (topologyIdsBuilder_ == null) { + ensureTopologyIdsIsMutable(); + topologyIds_.add(index, builderForValue.build()); onChanged(); } else { - topologiesBuilder_.addMessage(index, builderForValue.build()); + topologyIdsBuilder_.addMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ - public Builder addAllTopologies( - java.lang.Iterable<? extends context.ContextOuterClass.Topology> values) { - if (topologiesBuilder_ == null) { - ensureTopologiesIsMutable(); + public Builder addAllTopologyIds( + java.lang.Iterable<? extends context.ContextOuterClass.TopologyId> values) { + if (topologyIdsBuilder_ == null) { + ensureTopologyIdsIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, topologies_); + values, topologyIds_); onChanged(); } else { - topologiesBuilder_.addAllMessages(values); + topologyIdsBuilder_.addAllMessages(values); } return this; } /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ - public Builder clearTopologies() { - if (topologiesBuilder_ == null) { - topologies_ = java.util.Collections.emptyList(); + public Builder clearTopologyIds() { + if (topologyIdsBuilder_ == null) { + topologyIds_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { - topologiesBuilder_.clear(); + topologyIdsBuilder_.clear(); } return this; } /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ - public Builder removeTopologies(int index) { - if (topologiesBuilder_ == null) { - ensureTopologiesIsMutable(); - topologies_.remove(index); + public Builder removeTopologyIds(int index) { + if (topologyIdsBuilder_ == null) { + ensureTopologyIdsIsMutable(); + topologyIds_.remove(index); onChanged(); } else { - topologiesBuilder_.remove(index); + topologyIdsBuilder_.remove(index); } return this; } /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ - public context.ContextOuterClass.Topology.Builder getTopologiesBuilder( + public context.ContextOuterClass.TopologyId.Builder getTopologyIdsBuilder( int index) { - return getTopologiesFieldBuilder().getBuilder(index); + return getTopologyIdsFieldBuilder().getBuilder(index); } /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ - public context.ContextOuterClass.TopologyOrBuilder getTopologiesOrBuilder( + public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdsOrBuilder( int index) { - if (topologiesBuilder_ == null) { - return topologies_.get(index); } else { - return topologiesBuilder_.getMessageOrBuilder(index); + if (topologyIdsBuilder_ == null) { + return topologyIds_.get(index); } else { + return topologyIdsBuilder_.getMessageOrBuilder(index); } } /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ - public java.util.List<? extends context.ContextOuterClass.TopologyOrBuilder> - getTopologiesOrBuilderList() { - if (topologiesBuilder_ != null) { - return topologiesBuilder_.getMessageOrBuilderList(); + public java.util.List<? extends context.ContextOuterClass.TopologyIdOrBuilder> + getTopologyIdsOrBuilderList() { + if (topologyIdsBuilder_ != null) { + return topologyIdsBuilder_.getMessageOrBuilderList(); } else { - return java.util.Collections.unmodifiableList(topologies_); + return java.util.Collections.unmodifiableList(topologyIds_); } } /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ - public context.ContextOuterClass.Topology.Builder addTopologiesBuilder() { - return getTopologiesFieldBuilder().addBuilder( - context.ContextOuterClass.Topology.getDefaultInstance()); + public context.ContextOuterClass.TopologyId.Builder addTopologyIdsBuilder() { + return getTopologyIdsFieldBuilder().addBuilder( + context.ContextOuterClass.TopologyId.getDefaultInstance()); } /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ - public context.ContextOuterClass.Topology.Builder addTopologiesBuilder( + public context.ContextOuterClass.TopologyId.Builder addTopologyIdsBuilder( int index) { - return getTopologiesFieldBuilder().addBuilder( - index, context.ContextOuterClass.Topology.getDefaultInstance()); + return getTopologyIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.TopologyId.getDefaultInstance()); } /** - * <code>repeated .context.Topology topologies = 1;</code> + * <code>repeated .context.TopologyId topology_ids = 1;</code> */ - public java.util.List<context.ContextOuterClass.Topology.Builder> - getTopologiesBuilderList() { - return getTopologiesFieldBuilder().getBuilderList(); + public java.util.List<context.ContextOuterClass.TopologyId.Builder> + getTopologyIdsBuilderList() { + return getTopologyIdsFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Topology, context.ContextOuterClass.Topology.Builder, context.ContextOuterClass.TopologyOrBuilder> - getTopologiesFieldBuilder() { - if (topologiesBuilder_ == null) { - topologiesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Topology, context.ContextOuterClass.Topology.Builder, context.ContextOuterClass.TopologyOrBuilder>( - topologies_, + context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> + getTopologyIdsFieldBuilder() { + if (topologyIdsBuilder_ == null) { + topologyIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder>( + topologyIds_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); - topologies_ = null; + topologyIds_ = null; } - return topologiesBuilder_; + return topologyIdsBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -11692,100 +13228,95 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.TopologyList) + // @@protoc_insertion_point(builder_scope:context.TopologyIdList) } - // @@protoc_insertion_point(class_scope:context.TopologyList) - private static final context.ContextOuterClass.TopologyList DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.TopologyIdList) + private static final context.ContextOuterClass.TopologyIdList DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.TopologyList(); + DEFAULT_INSTANCE = new context.ContextOuterClass.TopologyIdList(); } - public static context.ContextOuterClass.TopologyList getDefaultInstance() { + public static context.ContextOuterClass.TopologyIdList getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<TopologyList> - PARSER = new com.google.protobuf.AbstractParser<TopologyList>() { + private static final com.google.protobuf.Parser<TopologyIdList> + PARSER = new com.google.protobuf.AbstractParser<TopologyIdList>() { @java.lang.Override - public TopologyList parsePartialFrom( + public TopologyIdList parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new TopologyList(input, extensionRegistry); + return new TopologyIdList(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<TopologyList> parser() { + public static com.google.protobuf.Parser<TopologyIdList> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<TopologyList> getParserForType() { + public com.google.protobuf.Parser<TopologyIdList> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.TopologyList getDefaultInstanceForType() { + public context.ContextOuterClass.TopologyIdList getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface TopologyEventOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.TopologyEvent) + public interface TopologyListOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.TopologyList) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. - */ - boolean hasEvent(); - /** - * <code>.context.Event event = 1;</code> - * @return The event. + * <code>repeated .context.Topology topologies = 1;</code> */ - context.ContextOuterClass.Event getEvent(); + java.util.List<context.ContextOuterClass.Topology> + getTopologiesList(); /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.Topology topologies = 1;</code> */ - context.ContextOuterClass.EventOrBuilder getEventOrBuilder(); - + context.ContextOuterClass.Topology getTopologies(int index); /** - * <code>.context.TopologyId topology_id = 2;</code> - * @return Whether the topologyId field is set. + * <code>repeated .context.Topology topologies = 1;</code> */ - boolean hasTopologyId(); + int getTopologiesCount(); /** - * <code>.context.TopologyId topology_id = 2;</code> - * @return The topologyId. + * <code>repeated .context.Topology topologies = 1;</code> */ - context.ContextOuterClass.TopologyId getTopologyId(); + java.util.List<? extends context.ContextOuterClass.TopologyOrBuilder> + getTopologiesOrBuilderList(); /** - * <code>.context.TopologyId topology_id = 2;</code> + * <code>repeated .context.Topology topologies = 1;</code> */ - context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder(); + context.ContextOuterClass.TopologyOrBuilder getTopologiesOrBuilder( + int index); } /** - * Protobuf type {@code context.TopologyEvent} + * Protobuf type {@code context.TopologyList} */ - public static final class TopologyEvent extends + public static final class TopologyList extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.TopologyEvent) - TopologyEventOrBuilder { + // @@protoc_insertion_point(message_implements:context.TopologyList) + TopologyListOrBuilder { private static final long serialVersionUID = 0L; - // Use TopologyEvent.newBuilder() to construct. - private TopologyEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use TopologyList.newBuilder() to construct. + private TopologyList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private TopologyEvent() { + private TopologyList() { + topologies_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new TopologyEvent(); + return new TopologyList(); } @java.lang.Override @@ -11793,7 +13324,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private TopologyEvent( + private TopologyList( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -11801,6 +13332,7 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } + int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -11812,29 +13344,12 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.Event.Builder subBuilder = null; - if (event_ != null) { - subBuilder = event_.toBuilder(); - } - event_ = input.readMessage(context.ContextOuterClass.Event.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(event_); - event_ = subBuilder.buildPartial(); - } - - break; - } - case 18: { - context.ContextOuterClass.TopologyId.Builder subBuilder = null; - if (topologyId_ != null) { - subBuilder = topologyId_.toBuilder(); - } - topologyId_ = input.readMessage(context.ContextOuterClass.TopologyId.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(topologyId_); - topologyId_ = subBuilder.buildPartial(); + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + topologies_ = new java.util.ArrayList<context.ContextOuterClass.Topology>(); + mutable_bitField0_ |= 0x00000001; } - + topologies_.add( + input.readMessage(context.ContextOuterClass.Topology.parser(), extensionRegistry)); break; } default: { @@ -11852,73 +13367,64 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { + if (((mutable_bitField0_ & 0x00000001) != 0)) { + topologies_ = java.util.Collections.unmodifiableList(topologies_); + } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_TopologyEvent_descriptor; + return context.ContextOuterClass.internal_static_context_TopologyList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_TopologyEvent_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_TopologyList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.TopologyEvent.class, context.ContextOuterClass.TopologyEvent.Builder.class); + context.ContextOuterClass.TopologyList.class, context.ContextOuterClass.TopologyList.Builder.class); } - public static final int EVENT_FIELD_NUMBER = 1; - private context.ContextOuterClass.Event event_; - /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. - */ - @java.lang.Override - public boolean hasEvent() { - return event_ != null; - } + public static final int TOPOLOGIES_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.Topology> topologies_; /** - * <code>.context.Event event = 1;</code> - * @return The event. + * <code>repeated .context.Topology topologies = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.Event getEvent() { - return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; + public java.util.List<context.ContextOuterClass.Topology> getTopologiesList() { + return topologies_; } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.Topology topologies = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { - return getEvent(); + public java.util.List<? extends context.ContextOuterClass.TopologyOrBuilder> + getTopologiesOrBuilderList() { + return topologies_; } - - public static final int TOPOLOGY_ID_FIELD_NUMBER = 2; - private context.ContextOuterClass.TopologyId topologyId_; /** - * <code>.context.TopologyId topology_id = 2;</code> - * @return Whether the topologyId field is set. + * <code>repeated .context.Topology topologies = 1;</code> */ @java.lang.Override - public boolean hasTopologyId() { - return topologyId_ != null; + public int getTopologiesCount() { + return topologies_.size(); } /** - * <code>.context.TopologyId topology_id = 2;</code> - * @return The topologyId. + * <code>repeated .context.Topology topologies = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.TopologyId getTopologyId() { - return topologyId_ == null ? context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_; + public context.ContextOuterClass.Topology getTopologies(int index) { + return topologies_.get(index); } /** - * <code>.context.TopologyId topology_id = 2;</code> + * <code>repeated .context.Topology topologies = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder() { - return getTopologyId(); + public context.ContextOuterClass.TopologyOrBuilder getTopologiesOrBuilder( + int index) { + return topologies_.get(index); } private byte memoizedIsInitialized = -1; @@ -11935,11 +13441,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (event_ != null) { - output.writeMessage(1, getEvent()); - } - if (topologyId_ != null) { - output.writeMessage(2, getTopologyId()); + for (int i = 0; i < topologies_.size(); i++) { + output.writeMessage(1, topologies_.get(i)); } unknownFields.writeTo(output); } @@ -11950,13 +13453,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (event_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getEvent()); - } - if (topologyId_ != null) { + for (int i = 0; i < topologies_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, getTopologyId()); + .computeMessageSize(1, topologies_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -11968,21 +13467,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.TopologyEvent)) { + if (!(obj instanceof context.ContextOuterClass.TopologyList)) { return super.equals(obj); } - context.ContextOuterClass.TopologyEvent other = (context.ContextOuterClass.TopologyEvent) obj; + context.ContextOuterClass.TopologyList other = (context.ContextOuterClass.TopologyList) obj; - if (hasEvent() != other.hasEvent()) return false; - if (hasEvent()) { - if (!getEvent() - .equals(other.getEvent())) return false; - } - if (hasTopologyId() != other.hasTopologyId()) return false; - if (hasTopologyId()) { - if (!getTopologyId() - .equals(other.getTopologyId())) return false; - } + if (!getTopologiesList() + .equals(other.getTopologiesList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -11994,82 +13485,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasEvent()) { - hash = (37 * hash) + EVENT_FIELD_NUMBER; - hash = (53 * hash) + getEvent().hashCode(); - } - if (hasTopologyId()) { - hash = (37 * hash) + TOPOLOGY_ID_FIELD_NUMBER; - hash = (53 * hash) + getTopologyId().hashCode(); + if (getTopologiesCount() > 0) { + hash = (37 * hash) + TOPOLOGIES_FIELD_NUMBER; + hash = (53 * hash) + getTopologiesList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.TopologyEvent parseFrom( + public static context.ContextOuterClass.TopologyList parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.TopologyEvent parseFrom( + public static context.ContextOuterClass.TopologyList parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.TopologyEvent parseFrom( + public static context.ContextOuterClass.TopologyList parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.TopologyEvent parseFrom( + public static context.ContextOuterClass.TopologyList parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.TopologyEvent parseFrom(byte[] data) + public static context.ContextOuterClass.TopologyList parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.TopologyEvent parseFrom( + public static context.ContextOuterClass.TopologyList parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.TopologyEvent parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.TopologyList parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.TopologyEvent parseFrom( + public static context.ContextOuterClass.TopologyList 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 context.ContextOuterClass.TopologyEvent parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.TopologyList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.TopologyEvent parseDelimitedFrom( + public static context.ContextOuterClass.TopologyList 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 context.ContextOuterClass.TopologyEvent parseFrom( + public static context.ContextOuterClass.TopologyList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.TopologyEvent parseFrom( + public static context.ContextOuterClass.TopologyList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -12082,7 +13569,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.TopologyEvent prototype) { + public static Builder newBuilder(context.ContextOuterClass.TopologyList prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -12098,26 +13585,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.TopologyEvent} + * Protobuf type {@code context.TopologyList} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.TopologyEvent) - context.ContextOuterClass.TopologyEventOrBuilder { + // @@protoc_insertion_point(builder_implements:context.TopologyList) + context.ContextOuterClass.TopologyListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_TopologyEvent_descriptor; + return context.ContextOuterClass.internal_static_context_TopologyList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_TopologyEvent_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_TopologyList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.TopologyEvent.class, context.ContextOuterClass.TopologyEvent.Builder.class); + context.ContextOuterClass.TopologyList.class, context.ContextOuterClass.TopologyList.Builder.class); } - // Construct using context.ContextOuterClass.TopologyEvent.newBuilder() + // Construct using context.ContextOuterClass.TopologyList.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -12130,22 +13617,17 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { + getTopologiesFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (eventBuilder_ == null) { - event_ = null; - } else { - event_ = null; - eventBuilder_ = null; - } - if (topologyIdBuilder_ == null) { - topologyId_ = null; + if (topologiesBuilder_ == null) { + topologies_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); } else { - topologyId_ = null; - topologyIdBuilder_ = null; + topologiesBuilder_.clear(); } return this; } @@ -12153,17 +13635,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_TopologyEvent_descriptor; + return context.ContextOuterClass.internal_static_context_TopologyList_descriptor; } @java.lang.Override - public context.ContextOuterClass.TopologyEvent getDefaultInstanceForType() { - return context.ContextOuterClass.TopologyEvent.getDefaultInstance(); + public context.ContextOuterClass.TopologyList getDefaultInstanceForType() { + return context.ContextOuterClass.TopologyList.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.TopologyEvent build() { - context.ContextOuterClass.TopologyEvent result = buildPartial(); + public context.ContextOuterClass.TopologyList build() { + context.ContextOuterClass.TopologyList result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -12171,17 +13653,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.TopologyEvent buildPartial() { - context.ContextOuterClass.TopologyEvent result = new context.ContextOuterClass.TopologyEvent(this); - if (eventBuilder_ == null) { - result.event_ = event_; - } else { - result.event_ = eventBuilder_.build(); - } - if (topologyIdBuilder_ == null) { - result.topologyId_ = topologyId_; + public context.ContextOuterClass.TopologyList buildPartial() { + context.ContextOuterClass.TopologyList result = new context.ContextOuterClass.TopologyList(this); + int from_bitField0_ = bitField0_; + if (topologiesBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + topologies_ = java.util.Collections.unmodifiableList(topologies_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.topologies_ = topologies_; } else { - result.topologyId_ = topologyIdBuilder_.build(); + result.topologies_ = topologiesBuilder_.build(); } onBuilt(); return result; @@ -12221,21 +13703,41 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.TopologyEvent) { - return mergeFrom((context.ContextOuterClass.TopologyEvent)other); + if (other instanceof context.ContextOuterClass.TopologyList) { + return mergeFrom((context.ContextOuterClass.TopologyList)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.TopologyEvent other) { - if (other == context.ContextOuterClass.TopologyEvent.getDefaultInstance()) return this; - if (other.hasEvent()) { - mergeEvent(other.getEvent()); - } - if (other.hasTopologyId()) { - mergeTopologyId(other.getTopologyId()); + public Builder mergeFrom(context.ContextOuterClass.TopologyList other) { + if (other == context.ContextOuterClass.TopologyList.getDefaultInstance()) return this; + if (topologiesBuilder_ == null) { + if (!other.topologies_.isEmpty()) { + if (topologies_.isEmpty()) { + topologies_ = other.topologies_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureTopologiesIsMutable(); + topologies_.addAll(other.topologies_); + } + onChanged(); + } + } else { + if (!other.topologies_.isEmpty()) { + if (topologiesBuilder_.isEmpty()) { + topologiesBuilder_.dispose(); + topologiesBuilder_ = null; + topologies_ = other.topologies_; + bitField0_ = (bitField0_ & ~0x00000001); + topologiesBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getTopologiesFieldBuilder() : null; + } else { + topologiesBuilder_.addAllMessages(other.topologies_); + } + } } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -12252,11 +13754,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.TopologyEvent parsedMessage = null; + context.ContextOuterClass.TopologyList parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.TopologyEvent) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.TopologyList) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -12265,243 +13767,246 @@ public final class ContextOuterClass { } return this; } + private int bitField0_; + + private java.util.List<context.ContextOuterClass.Topology> topologies_ = + java.util.Collections.emptyList(); + private void ensureTopologiesIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + topologies_ = new java.util.ArrayList<context.ContextOuterClass.Topology>(topologies_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Topology, context.ContextOuterClass.Topology.Builder, context.ContextOuterClass.TopologyOrBuilder> topologiesBuilder_; - private context.ContextOuterClass.Event event_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> eventBuilder_; /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. + * <code>repeated .context.Topology topologies = 1;</code> */ - public boolean hasEvent() { - return eventBuilder_ != null || event_ != null; + public java.util.List<context.ContextOuterClass.Topology> getTopologiesList() { + if (topologiesBuilder_ == null) { + return java.util.Collections.unmodifiableList(topologies_); + } else { + return topologiesBuilder_.getMessageList(); + } } /** - * <code>.context.Event event = 1;</code> - * @return The event. + * <code>repeated .context.Topology topologies = 1;</code> */ - public context.ContextOuterClass.Event getEvent() { - if (eventBuilder_ == null) { - return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; + public int getTopologiesCount() { + if (topologiesBuilder_ == null) { + return topologies_.size(); } else { - return eventBuilder_.getMessage(); + return topologiesBuilder_.getCount(); } } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.Topology topologies = 1;</code> */ - public Builder setEvent(context.ContextOuterClass.Event value) { - if (eventBuilder_ == null) { + public context.ContextOuterClass.Topology getTopologies(int index) { + if (topologiesBuilder_ == null) { + return topologies_.get(index); + } else { + return topologiesBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.Topology topologies = 1;</code> + */ + public Builder setTopologies( + int index, context.ContextOuterClass.Topology value) { + if (topologiesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - event_ = value; + ensureTopologiesIsMutable(); + topologies_.set(index, value); onChanged(); } else { - eventBuilder_.setMessage(value); + topologiesBuilder_.setMessage(index, value); } - return this; } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.Topology topologies = 1;</code> */ - public Builder setEvent( - context.ContextOuterClass.Event.Builder builderForValue) { - if (eventBuilder_ == null) { - event_ = builderForValue.build(); + public Builder setTopologies( + int index, context.ContextOuterClass.Topology.Builder builderForValue) { + if (topologiesBuilder_ == null) { + ensureTopologiesIsMutable(); + topologies_.set(index, builderForValue.build()); onChanged(); } else { - eventBuilder_.setMessage(builderForValue.build()); + topologiesBuilder_.setMessage(index, builderForValue.build()); } - return this; } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.Topology topologies = 1;</code> */ - public Builder mergeEvent(context.ContextOuterClass.Event value) { - if (eventBuilder_ == null) { - if (event_ != null) { - event_ = - context.ContextOuterClass.Event.newBuilder(event_).mergeFrom(value).buildPartial(); - } else { - event_ = value; + public Builder addTopologies(context.ContextOuterClass.Topology value) { + if (topologiesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + ensureTopologiesIsMutable(); + topologies_.add(value); onChanged(); } else { - eventBuilder_.mergeFrom(value); + topologiesBuilder_.addMessage(value); } - return this; } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.Topology topologies = 1;</code> */ - public Builder clearEvent() { - if (eventBuilder_ == null) { - event_ = null; + public Builder addTopologies( + int index, context.ContextOuterClass.Topology value) { + if (topologiesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureTopologiesIsMutable(); + topologies_.add(index, value); onChanged(); } else { - event_ = null; - eventBuilder_ = null; + topologiesBuilder_.addMessage(index, value); } - return this; } /** - * <code>.context.Event event = 1;</code> - */ - public context.ContextOuterClass.Event.Builder getEventBuilder() { - - onChanged(); - return getEventFieldBuilder().getBuilder(); - } - /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.Topology topologies = 1;</code> */ - public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { - if (eventBuilder_ != null) { - return eventBuilder_.getMessageOrBuilder(); + public Builder addTopologies( + context.ContextOuterClass.Topology.Builder builderForValue) { + if (topologiesBuilder_ == null) { + ensureTopologiesIsMutable(); + topologies_.add(builderForValue.build()); + onChanged(); } else { - return event_ == null ? - context.ContextOuterClass.Event.getDefaultInstance() : event_; + topologiesBuilder_.addMessage(builderForValue.build()); } + return this; } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.Topology topologies = 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(), - getParentForChildren(), - isClean()); - event_ = null; + public Builder addTopologies( + int index, context.ContextOuterClass.Topology.Builder builderForValue) { + if (topologiesBuilder_ == null) { + ensureTopologiesIsMutable(); + topologies_.add(index, builderForValue.build()); + onChanged(); + } else { + topologiesBuilder_.addMessage(index, builderForValue.build()); } - return eventBuilder_; - } - - private context.ContextOuterClass.TopologyId topologyId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> topologyIdBuilder_; - /** - * <code>.context.TopologyId topology_id = 2;</code> - * @return Whether the topologyId field is set. - */ - public boolean hasTopologyId() { - return topologyIdBuilder_ != null || topologyId_ != null; + return this; } /** - * <code>.context.TopologyId topology_id = 2;</code> - * @return The topologyId. + * <code>repeated .context.Topology topologies = 1;</code> */ - public context.ContextOuterClass.TopologyId getTopologyId() { - if (topologyIdBuilder_ == null) { - return topologyId_ == null ? context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_; + public Builder addAllTopologies( + java.lang.Iterable<? extends context.ContextOuterClass.Topology> values) { + if (topologiesBuilder_ == null) { + ensureTopologiesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, topologies_); + onChanged(); } else { - return topologyIdBuilder_.getMessage(); + topologiesBuilder_.addAllMessages(values); } + return this; } /** - * <code>.context.TopologyId topology_id = 2;</code> + * <code>repeated .context.Topology topologies = 1;</code> */ - public Builder setTopologyId(context.ContextOuterClass.TopologyId value) { - if (topologyIdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - topologyId_ = value; + public Builder clearTopologies() { + if (topologiesBuilder_ == null) { + topologies_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { - topologyIdBuilder_.setMessage(value); + topologiesBuilder_.clear(); } - return this; } /** - * <code>.context.TopologyId topology_id = 2;</code> + * <code>repeated .context.Topology topologies = 1;</code> */ - public Builder setTopologyId( - context.ContextOuterClass.TopologyId.Builder builderForValue) { - if (topologyIdBuilder_ == null) { - topologyId_ = builderForValue.build(); + public Builder removeTopologies(int index) { + if (topologiesBuilder_ == null) { + ensureTopologiesIsMutable(); + topologies_.remove(index); onChanged(); } else { - topologyIdBuilder_.setMessage(builderForValue.build()); + topologiesBuilder_.remove(index); } - return this; } /** - * <code>.context.TopologyId topology_id = 2;</code> + * <code>repeated .context.Topology topologies = 1;</code> */ - public Builder mergeTopologyId(context.ContextOuterClass.TopologyId value) { - if (topologyIdBuilder_ == null) { - if (topologyId_ != null) { - topologyId_ = - context.ContextOuterClass.TopologyId.newBuilder(topologyId_).mergeFrom(value).buildPartial(); - } else { - topologyId_ = value; - } - onChanged(); - } else { - topologyIdBuilder_.mergeFrom(value); + public context.ContextOuterClass.Topology.Builder getTopologiesBuilder( + int index) { + return getTopologiesFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .context.Topology topologies = 1;</code> + */ + public context.ContextOuterClass.TopologyOrBuilder getTopologiesOrBuilder( + int index) { + if (topologiesBuilder_ == null) { + return topologies_.get(index); } else { + return topologiesBuilder_.getMessageOrBuilder(index); } - - return this; } /** - * <code>.context.TopologyId topology_id = 2;</code> + * <code>repeated .context.Topology topologies = 1;</code> */ - public Builder clearTopologyId() { - if (topologyIdBuilder_ == null) { - topologyId_ = null; - onChanged(); + public java.util.List<? extends context.ContextOuterClass.TopologyOrBuilder> + getTopologiesOrBuilderList() { + if (topologiesBuilder_ != null) { + return topologiesBuilder_.getMessageOrBuilderList(); } else { - topologyId_ = null; - topologyIdBuilder_ = null; + return java.util.Collections.unmodifiableList(topologies_); } - - return this; } /** - * <code>.context.TopologyId topology_id = 2;</code> + * <code>repeated .context.Topology topologies = 1;</code> */ - public context.ContextOuterClass.TopologyId.Builder getTopologyIdBuilder() { - - onChanged(); - return getTopologyIdFieldBuilder().getBuilder(); + public context.ContextOuterClass.Topology.Builder addTopologiesBuilder() { + return getTopologiesFieldBuilder().addBuilder( + context.ContextOuterClass.Topology.getDefaultInstance()); } /** - * <code>.context.TopologyId topology_id = 2;</code> + * <code>repeated .context.Topology topologies = 1;</code> */ - public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder() { - if (topologyIdBuilder_ != null) { - return topologyIdBuilder_.getMessageOrBuilder(); - } else { - return topologyId_ == null ? - context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_; - } + public context.ContextOuterClass.Topology.Builder addTopologiesBuilder( + int index) { + return getTopologiesFieldBuilder().addBuilder( + index, context.ContextOuterClass.Topology.getDefaultInstance()); } /** - * <code>.context.TopologyId topology_id = 2;</code> + * <code>repeated .context.Topology topologies = 1;</code> */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> - getTopologyIdFieldBuilder() { - if (topologyIdBuilder_ == null) { - topologyIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder>( - getTopologyId(), + public java.util.List<context.ContextOuterClass.Topology.Builder> + getTopologiesBuilderList() { + return getTopologiesFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Topology, context.ContextOuterClass.Topology.Builder, context.ContextOuterClass.TopologyOrBuilder> + getTopologiesFieldBuilder() { + if (topologiesBuilder_ == null) { + topologiesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Topology, context.ContextOuterClass.Topology.Builder, context.ContextOuterClass.TopologyOrBuilder>( + topologies_, + ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); - topologyId_ = null; + topologies_ = null; } - return topologyIdBuilder_; + return topologiesBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -12516,89 +14021,100 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.TopologyEvent) + // @@protoc_insertion_point(builder_scope:context.TopologyList) } - // @@protoc_insertion_point(class_scope:context.TopologyEvent) - private static final context.ContextOuterClass.TopologyEvent DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.TopologyList) + private static final context.ContextOuterClass.TopologyList DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.TopologyEvent(); + DEFAULT_INSTANCE = new context.ContextOuterClass.TopologyList(); } - public static context.ContextOuterClass.TopologyEvent getDefaultInstance() { + public static context.ContextOuterClass.TopologyList getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<TopologyEvent> - PARSER = new com.google.protobuf.AbstractParser<TopologyEvent>() { + private static final com.google.protobuf.Parser<TopologyList> + PARSER = new com.google.protobuf.AbstractParser<TopologyList>() { @java.lang.Override - public TopologyEvent parsePartialFrom( + public TopologyList parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new TopologyEvent(input, extensionRegistry); + return new TopologyList(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<TopologyEvent> parser() { + public static com.google.protobuf.Parser<TopologyList> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<TopologyEvent> getParserForType() { + public com.google.protobuf.Parser<TopologyList> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.TopologyEvent getDefaultInstanceForType() { + public context.ContextOuterClass.TopologyList getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface DeviceIdOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.DeviceId) + public interface TopologyEventOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.TopologyEvent) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.Uuid device_uuid = 1;</code> - * @return Whether the deviceUuid field is set. + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. */ - boolean hasDeviceUuid(); + boolean hasEvent(); /** - * <code>.context.Uuid device_uuid = 1;</code> - * @return The deviceUuid. + * <code>.context.Event event = 1;</code> + * @return The event. */ - context.ContextOuterClass.Uuid getDeviceUuid(); + context.ContextOuterClass.Event getEvent(); /** - * <code>.context.Uuid device_uuid = 1;</code> + * <code>.context.Event event = 1;</code> */ - context.ContextOuterClass.UuidOrBuilder getDeviceUuidOrBuilder(); + context.ContextOuterClass.EventOrBuilder getEventOrBuilder(); + + /** + * <code>.context.TopologyId topology_id = 2;</code> + * @return Whether the topologyId field is set. + */ + boolean hasTopologyId(); + /** + * <code>.context.TopologyId topology_id = 2;</code> + * @return The topologyId. + */ + context.ContextOuterClass.TopologyId getTopologyId(); + /** + * <code>.context.TopologyId topology_id = 2;</code> + */ + context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder(); } /** - * <pre> - * ----- Device -------------------------------------------------------------------------------------------------------- - * </pre> - * - * Protobuf type {@code context.DeviceId} + * Protobuf type {@code context.TopologyEvent} */ - public static final class DeviceId extends + public static final class TopologyEvent extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.DeviceId) - DeviceIdOrBuilder { + // @@protoc_insertion_point(message_implements:context.TopologyEvent) + TopologyEventOrBuilder { private static final long serialVersionUID = 0L; - // Use DeviceId.newBuilder() to construct. - private DeviceId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use TopologyEvent.newBuilder() to construct. + private TopologyEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private DeviceId() { + private TopologyEvent() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new DeviceId(); + return new TopologyEvent(); } @java.lang.Override @@ -12606,7 +14122,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private DeviceId( + private TopologyEvent( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -12625,14 +14141,27 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.Uuid.Builder subBuilder = null; - if (deviceUuid_ != null) { - subBuilder = deviceUuid_.toBuilder(); + context.ContextOuterClass.Event.Builder subBuilder = null; + if (event_ != null) { + subBuilder = event_.toBuilder(); } - deviceUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); + event_ = input.readMessage(context.ContextOuterClass.Event.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(deviceUuid_); - deviceUuid_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(event_); + event_ = subBuilder.buildPartial(); + } + + break; + } + case 18: { + context.ContextOuterClass.TopologyId.Builder subBuilder = null; + if (topologyId_ != null) { + subBuilder = topologyId_.toBuilder(); + } + topologyId_ = input.readMessage(context.ContextOuterClass.TopologyId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(topologyId_); + topologyId_ = subBuilder.buildPartial(); } break; @@ -12658,41 +14187,67 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_DeviceId_descriptor; + return context.ContextOuterClass.internal_static_context_TopologyEvent_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_DeviceId_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_TopologyEvent_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.DeviceId.class, context.ContextOuterClass.DeviceId.Builder.class); + context.ContextOuterClass.TopologyEvent.class, context.ContextOuterClass.TopologyEvent.Builder.class); } - public static final int DEVICE_UUID_FIELD_NUMBER = 1; - private context.ContextOuterClass.Uuid deviceUuid_; + public static final int EVENT_FIELD_NUMBER = 1; + private context.ContextOuterClass.Event event_; /** - * <code>.context.Uuid device_uuid = 1;</code> - * @return Whether the deviceUuid field is set. + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. */ @java.lang.Override - public boolean hasDeviceUuid() { - return deviceUuid_ != null; + public boolean hasEvent() { + return event_ != null; } /** - * <code>.context.Uuid device_uuid = 1;</code> - * @return The deviceUuid. + * <code>.context.Event event = 1;</code> + * @return The event. */ @java.lang.Override - public context.ContextOuterClass.Uuid getDeviceUuid() { - return deviceUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : deviceUuid_; + public context.ContextOuterClass.Event getEvent() { + return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; } /** - * <code>.context.Uuid device_uuid = 1;</code> + * <code>.context.Event event = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.UuidOrBuilder getDeviceUuidOrBuilder() { - return getDeviceUuid(); + public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { + return getEvent(); + } + + public static final int TOPOLOGY_ID_FIELD_NUMBER = 2; + private context.ContextOuterClass.TopologyId topologyId_; + /** + * <code>.context.TopologyId topology_id = 2;</code> + * @return Whether the topologyId field is set. + */ + @java.lang.Override + public boolean hasTopologyId() { + return topologyId_ != null; + } + /** + * <code>.context.TopologyId topology_id = 2;</code> + * @return The topologyId. + */ + @java.lang.Override + public context.ContextOuterClass.TopologyId getTopologyId() { + return topologyId_ == null ? context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_; + } + /** + * <code>.context.TopologyId topology_id = 2;</code> + */ + @java.lang.Override + public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder() { + return getTopologyId(); } private byte memoizedIsInitialized = -1; @@ -12709,8 +14264,11 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (deviceUuid_ != null) { - output.writeMessage(1, getDeviceUuid()); + if (event_ != null) { + output.writeMessage(1, getEvent()); + } + if (topologyId_ != null) { + output.writeMessage(2, getTopologyId()); } unknownFields.writeTo(output); } @@ -12721,9 +14279,13 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (deviceUuid_ != null) { + if (event_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getDeviceUuid()); + .computeMessageSize(1, getEvent()); + } + if (topologyId_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, getTopologyId()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -12735,15 +14297,20 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.DeviceId)) { + if (!(obj instanceof context.ContextOuterClass.TopologyEvent)) { return super.equals(obj); } - context.ContextOuterClass.DeviceId other = (context.ContextOuterClass.DeviceId) obj; + context.ContextOuterClass.TopologyEvent other = (context.ContextOuterClass.TopologyEvent) obj; - if (hasDeviceUuid() != other.hasDeviceUuid()) return false; - if (hasDeviceUuid()) { - if (!getDeviceUuid() - .equals(other.getDeviceUuid())) return false; + if (hasEvent() != other.hasEvent()) return false; + if (hasEvent()) { + if (!getEvent() + .equals(other.getEvent())) return false; + } + if (hasTopologyId() != other.hasTopologyId()) return false; + if (hasTopologyId()) { + if (!getTopologyId() + .equals(other.getTopologyId())) return false; } if (!unknownFields.equals(other.unknownFields)) return false; return true; @@ -12756,78 +14323,82 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasDeviceUuid()) { - hash = (37 * hash) + DEVICE_UUID_FIELD_NUMBER; - hash = (53 * hash) + getDeviceUuid().hashCode(); + if (hasEvent()) { + hash = (37 * hash) + EVENT_FIELD_NUMBER; + hash = (53 * hash) + getEvent().hashCode(); + } + if (hasTopologyId()) { + hash = (37 * hash) + TOPOLOGY_ID_FIELD_NUMBER; + hash = (53 * hash) + getTopologyId().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.DeviceId parseFrom( + public static context.ContextOuterClass.TopologyEvent parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.DeviceId parseFrom( + public static context.ContextOuterClass.TopologyEvent parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.DeviceId parseFrom( + public static context.ContextOuterClass.TopologyEvent parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.DeviceId parseFrom( + public static context.ContextOuterClass.TopologyEvent parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.DeviceId parseFrom(byte[] data) + public static context.ContextOuterClass.TopologyEvent parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.DeviceId parseFrom( + public static context.ContextOuterClass.TopologyEvent parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.DeviceId parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.TopologyEvent parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.DeviceId parseFrom( + public static context.ContextOuterClass.TopologyEvent 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 context.ContextOuterClass.DeviceId parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.TopologyEvent parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.DeviceId parseDelimitedFrom( + public static context.ContextOuterClass.TopologyEvent 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 context.ContextOuterClass.DeviceId parseFrom( + public static context.ContextOuterClass.TopologyEvent parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.DeviceId parseFrom( + public static context.ContextOuterClass.TopologyEvent parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -12840,7 +14411,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.DeviceId prototype) { + public static Builder newBuilder(context.ContextOuterClass.TopologyEvent prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -12856,30 +14427,26 @@ public final class ContextOuterClass { return builder; } /** - * <pre> - * ----- Device -------------------------------------------------------------------------------------------------------- - * </pre> - * - * Protobuf type {@code context.DeviceId} + * Protobuf type {@code context.TopologyEvent} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.DeviceId) - context.ContextOuterClass.DeviceIdOrBuilder { + // @@protoc_insertion_point(builder_implements:context.TopologyEvent) + context.ContextOuterClass.TopologyEventOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_DeviceId_descriptor; + return context.ContextOuterClass.internal_static_context_TopologyEvent_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_DeviceId_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_TopologyEvent_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.DeviceId.class, context.ContextOuterClass.DeviceId.Builder.class); + context.ContextOuterClass.TopologyEvent.class, context.ContextOuterClass.TopologyEvent.Builder.class); } - // Construct using context.ContextOuterClass.DeviceId.newBuilder() + // Construct using context.ContextOuterClass.TopologyEvent.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -12897,11 +14464,17 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - if (deviceUuidBuilder_ == null) { - deviceUuid_ = null; + if (eventBuilder_ == null) { + event_ = null; } else { - deviceUuid_ = null; - deviceUuidBuilder_ = null; + event_ = null; + eventBuilder_ = null; + } + if (topologyIdBuilder_ == null) { + topologyId_ = null; + } else { + topologyId_ = null; + topologyIdBuilder_ = null; } return this; } @@ -12909,17 +14482,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_DeviceId_descriptor; + return context.ContextOuterClass.internal_static_context_TopologyEvent_descriptor; } @java.lang.Override - public context.ContextOuterClass.DeviceId getDefaultInstanceForType() { - return context.ContextOuterClass.DeviceId.getDefaultInstance(); + public context.ContextOuterClass.TopologyEvent getDefaultInstanceForType() { + return context.ContextOuterClass.TopologyEvent.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.DeviceId build() { - context.ContextOuterClass.DeviceId result = buildPartial(); + public context.ContextOuterClass.TopologyEvent build() { + context.ContextOuterClass.TopologyEvent result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -12927,12 +14500,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.DeviceId buildPartial() { - context.ContextOuterClass.DeviceId result = new context.ContextOuterClass.DeviceId(this); - if (deviceUuidBuilder_ == null) { - result.deviceUuid_ = deviceUuid_; + public context.ContextOuterClass.TopologyEvent buildPartial() { + context.ContextOuterClass.TopologyEvent result = new context.ContextOuterClass.TopologyEvent(this); + if (eventBuilder_ == null) { + result.event_ = event_; } else { - result.deviceUuid_ = deviceUuidBuilder_.build(); + result.event_ = eventBuilder_.build(); + } + if (topologyIdBuilder_ == null) { + result.topologyId_ = topologyId_; + } else { + result.topologyId_ = topologyIdBuilder_.build(); } onBuilt(); return result; @@ -12972,18 +14550,21 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.DeviceId) { - return mergeFrom((context.ContextOuterClass.DeviceId)other); + if (other instanceof context.ContextOuterClass.TopologyEvent) { + return mergeFrom((context.ContextOuterClass.TopologyEvent)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.DeviceId other) { - if (other == context.ContextOuterClass.DeviceId.getDefaultInstance()) return this; - if (other.hasDeviceUuid()) { - mergeDeviceUuid(other.getDeviceUuid()); + public Builder mergeFrom(context.ContextOuterClass.TopologyEvent other) { + if (other == context.ContextOuterClass.TopologyEvent.getDefaultInstance()) return this; + if (other.hasEvent()) { + mergeEvent(other.getEvent()); + } + if (other.hasTopologyId()) { + mergeTopologyId(other.getTopologyId()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -13000,11 +14581,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.DeviceId parsedMessage = null; + context.ContextOuterClass.TopologyEvent parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.DeviceId) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.TopologyEvent) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -13014,123 +14595,242 @@ public final class ContextOuterClass { return this; } - private context.ContextOuterClass.Uuid deviceUuid_; + private context.ContextOuterClass.Event event_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> deviceUuidBuilder_; + context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> eventBuilder_; /** - * <code>.context.Uuid device_uuid = 1;</code> - * @return Whether the deviceUuid field is set. + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. */ - public boolean hasDeviceUuid() { - return deviceUuidBuilder_ != null || deviceUuid_ != null; + public boolean hasEvent() { + return eventBuilder_ != null || event_ != null; } /** - * <code>.context.Uuid device_uuid = 1;</code> - * @return The deviceUuid. + * <code>.context.Event event = 1;</code> + * @return The event. */ - public context.ContextOuterClass.Uuid getDeviceUuid() { - if (deviceUuidBuilder_ == null) { - return deviceUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : deviceUuid_; + public context.ContextOuterClass.Event getEvent() { + if (eventBuilder_ == null) { + return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; } else { - return deviceUuidBuilder_.getMessage(); + return eventBuilder_.getMessage(); } } /** - * <code>.context.Uuid device_uuid = 1;</code> + * <code>.context.Event event = 1;</code> */ - public Builder setDeviceUuid(context.ContextOuterClass.Uuid value) { - if (deviceUuidBuilder_ == null) { + public Builder setEvent(context.ContextOuterClass.Event value) { + if (eventBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - deviceUuid_ = value; + event_ = value; onChanged(); } else { - deviceUuidBuilder_.setMessage(value); + eventBuilder_.setMessage(value); } return this; } /** - * <code>.context.Uuid device_uuid = 1;</code> + * <code>.context.Event event = 1;</code> */ - public Builder setDeviceUuid( - context.ContextOuterClass.Uuid.Builder builderForValue) { - if (deviceUuidBuilder_ == null) { - deviceUuid_ = builderForValue.build(); + public Builder setEvent( + context.ContextOuterClass.Event.Builder builderForValue) { + if (eventBuilder_ == null) { + event_ = builderForValue.build(); onChanged(); } else { - deviceUuidBuilder_.setMessage(builderForValue.build()); + eventBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.Uuid device_uuid = 1;</code> + * <code>.context.Event event = 1;</code> */ - public Builder mergeDeviceUuid(context.ContextOuterClass.Uuid value) { - if (deviceUuidBuilder_ == null) { - if (deviceUuid_ != null) { - deviceUuid_ = - context.ContextOuterClass.Uuid.newBuilder(deviceUuid_).mergeFrom(value).buildPartial(); + public Builder mergeEvent(context.ContextOuterClass.Event value) { + if (eventBuilder_ == null) { + if (event_ != null) { + event_ = + context.ContextOuterClass.Event.newBuilder(event_).mergeFrom(value).buildPartial(); } else { - deviceUuid_ = value; + event_ = value; } onChanged(); } else { - deviceUuidBuilder_.mergeFrom(value); + eventBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.Uuid device_uuid = 1;</code> + * <code>.context.Event event = 1;</code> */ - public Builder clearDeviceUuid() { - if (deviceUuidBuilder_ == null) { - deviceUuid_ = null; + public Builder clearEvent() { + if (eventBuilder_ == null) { + event_ = null; onChanged(); } else { - deviceUuid_ = null; - deviceUuidBuilder_ = null; + event_ = null; + eventBuilder_ = null; } return this; } /** - * <code>.context.Uuid device_uuid = 1;</code> + * <code>.context.Event event = 1;</code> */ - public context.ContextOuterClass.Uuid.Builder getDeviceUuidBuilder() { + public context.ContextOuterClass.Event.Builder getEventBuilder() { onChanged(); - return getDeviceUuidFieldBuilder().getBuilder(); + return getEventFieldBuilder().getBuilder(); } /** - * <code>.context.Uuid device_uuid = 1;</code> + * <code>.context.Event event = 1;</code> */ - public context.ContextOuterClass.UuidOrBuilder getDeviceUuidOrBuilder() { - if (deviceUuidBuilder_ != null) { - return deviceUuidBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { + if (eventBuilder_ != null) { + return eventBuilder_.getMessageOrBuilder(); } else { - return deviceUuid_ == null ? - context.ContextOuterClass.Uuid.getDefaultInstance() : deviceUuid_; + return event_ == null ? + context.ContextOuterClass.Event.getDefaultInstance() : event_; } } /** - * <code>.context.Uuid device_uuid = 1;</code> + * <code>.context.Event event = 1;</code> */ private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> - getDeviceUuidFieldBuilder() { - if (deviceUuidBuilder_ == null) { - deviceUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>( - getDeviceUuid(), + 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(), getParentForChildren(), isClean()); - deviceUuid_ = null; + event_ = null; } - return deviceUuidBuilder_; + return eventBuilder_; + } + + private context.ContextOuterClass.TopologyId topologyId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> topologyIdBuilder_; + /** + * <code>.context.TopologyId topology_id = 2;</code> + * @return Whether the topologyId field is set. + */ + public boolean hasTopologyId() { + return topologyIdBuilder_ != null || topologyId_ != null; + } + /** + * <code>.context.TopologyId topology_id = 2;</code> + * @return The topologyId. + */ + public context.ContextOuterClass.TopologyId getTopologyId() { + if (topologyIdBuilder_ == null) { + return topologyId_ == null ? context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_; + } else { + return topologyIdBuilder_.getMessage(); + } + } + /** + * <code>.context.TopologyId topology_id = 2;</code> + */ + public Builder setTopologyId(context.ContextOuterClass.TopologyId value) { + if (topologyIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + topologyId_ = value; + onChanged(); + } else { + topologyIdBuilder_.setMessage(value); + } + + return this; + } + /** + * <code>.context.TopologyId topology_id = 2;</code> + */ + public Builder setTopologyId( + context.ContextOuterClass.TopologyId.Builder builderForValue) { + if (topologyIdBuilder_ == null) { + topologyId_ = builderForValue.build(); + onChanged(); + } else { + topologyIdBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.TopologyId topology_id = 2;</code> + */ + public Builder mergeTopologyId(context.ContextOuterClass.TopologyId value) { + if (topologyIdBuilder_ == null) { + if (topologyId_ != null) { + topologyId_ = + context.ContextOuterClass.TopologyId.newBuilder(topologyId_).mergeFrom(value).buildPartial(); + } else { + topologyId_ = value; + } + onChanged(); + } else { + topologyIdBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.context.TopologyId topology_id = 2;</code> + */ + public Builder clearTopologyId() { + if (topologyIdBuilder_ == null) { + topologyId_ = null; + onChanged(); + } else { + topologyId_ = null; + topologyIdBuilder_ = null; + } + + return this; + } + /** + * <code>.context.TopologyId topology_id = 2;</code> + */ + public context.ContextOuterClass.TopologyId.Builder getTopologyIdBuilder() { + + onChanged(); + return getTopologyIdFieldBuilder().getBuilder(); + } + /** + * <code>.context.TopologyId topology_id = 2;</code> + */ + public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder() { + if (topologyIdBuilder_ != null) { + return topologyIdBuilder_.getMessageOrBuilder(); + } else { + return topologyId_ == null ? + context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_; + } + } + /** + * <code>.context.TopologyId topology_id = 2;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> + getTopologyIdFieldBuilder() { + if (topologyIdBuilder_ == null) { + topologyIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder>( + getTopologyId(), + getParentForChildren(), + isClean()); + topologyId_ = null; + } + return topologyIdBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -13145,180 +14845,89 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.DeviceId) + // @@protoc_insertion_point(builder_scope:context.TopologyEvent) } - // @@protoc_insertion_point(class_scope:context.DeviceId) - private static final context.ContextOuterClass.DeviceId DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.TopologyEvent) + private static final context.ContextOuterClass.TopologyEvent DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.DeviceId(); + DEFAULT_INSTANCE = new context.ContextOuterClass.TopologyEvent(); } - public static context.ContextOuterClass.DeviceId getDefaultInstance() { + public static context.ContextOuterClass.TopologyEvent getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<DeviceId> - PARSER = new com.google.protobuf.AbstractParser<DeviceId>() { + private static final com.google.protobuf.Parser<TopologyEvent> + PARSER = new com.google.protobuf.AbstractParser<TopologyEvent>() { @java.lang.Override - public DeviceId parsePartialFrom( + public TopologyEvent parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new DeviceId(input, extensionRegistry); + return new TopologyEvent(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<DeviceId> parser() { + public static com.google.protobuf.Parser<TopologyEvent> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<DeviceId> getParserForType() { + public com.google.protobuf.Parser<TopologyEvent> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.DeviceId getDefaultInstanceForType() { + public context.ContextOuterClass.TopologyEvent getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface DeviceOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Device) + public interface DeviceIdOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.DeviceId) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.DeviceId device_id = 1;</code> - * @return Whether the deviceId field is set. - */ - boolean hasDeviceId(); - /** - * <code>.context.DeviceId device_id = 1;</code> - * @return The deviceId. - */ - context.ContextOuterClass.DeviceId getDeviceId(); - /** - * <code>.context.DeviceId device_id = 1;</code> - */ - context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder(); - - /** - * <code>string device_type = 2;</code> - * @return The deviceType. - */ - java.lang.String getDeviceType(); - /** - * <code>string device_type = 2;</code> - * @return The bytes for deviceType. - */ - com.google.protobuf.ByteString - getDeviceTypeBytes(); - - /** - * <code>.context.DeviceConfig device_config = 3;</code> - * @return Whether the deviceConfig field is set. - */ - boolean hasDeviceConfig(); - /** - * <code>.context.DeviceConfig device_config = 3;</code> - * @return The deviceConfig. - */ - context.ContextOuterClass.DeviceConfig getDeviceConfig(); - /** - * <code>.context.DeviceConfig device_config = 3;</code> - */ - context.ContextOuterClass.DeviceConfigOrBuilder getDeviceConfigOrBuilder(); - - /** - * <code>.context.DeviceOperationalStatusEnum device_operational_status = 4;</code> - * @return The enum numeric value on the wire for deviceOperationalStatus. - */ - int getDeviceOperationalStatusValue(); - /** - * <code>.context.DeviceOperationalStatusEnum device_operational_status = 4;</code> - * @return The deviceOperationalStatus. - */ - context.ContextOuterClass.DeviceOperationalStatusEnum getDeviceOperationalStatus(); - - /** - * <code>repeated .context.DeviceDriverEnum device_drivers = 5;</code> - * @return A list containing the deviceDrivers. - */ - java.util.List<context.ContextOuterClass.DeviceDriverEnum> getDeviceDriversList(); - /** - * <code>repeated .context.DeviceDriverEnum device_drivers = 5;</code> - * @return The count of deviceDrivers. - */ - int getDeviceDriversCount(); - /** - * <code>repeated .context.DeviceDriverEnum device_drivers = 5;</code> - * @param index The index of the element to return. - * @return The deviceDrivers at the given index. - */ - context.ContextOuterClass.DeviceDriverEnum getDeviceDrivers(int index); - /** - * <code>repeated .context.DeviceDriverEnum device_drivers = 5;</code> - * @return A list containing the enum numeric values on the wire for deviceDrivers. - */ - java.util.List<java.lang.Integer> - getDeviceDriversValueList(); - /** - * <code>repeated .context.DeviceDriverEnum device_drivers = 5;</code> - * @param index The index of the value to return. - * @return The enum numeric value on the wire of deviceDrivers at the given index. - */ - int getDeviceDriversValue(int index); - - /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> - */ - java.util.List<context.ContextOuterClass.EndPoint> - getDeviceEndpointsList(); - /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> - */ - context.ContextOuterClass.EndPoint getDeviceEndpoints(int index); - /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> + * <code>.context.Uuid device_uuid = 1;</code> + * @return Whether the deviceUuid field is set. */ - int getDeviceEndpointsCount(); + boolean hasDeviceUuid(); /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> + * <code>.context.Uuid device_uuid = 1;</code> + * @return The deviceUuid. */ - java.util.List<? extends context.ContextOuterClass.EndPointOrBuilder> - getDeviceEndpointsOrBuilderList(); + context.ContextOuterClass.Uuid getDeviceUuid(); /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> + * <code>.context.Uuid device_uuid = 1;</code> */ - context.ContextOuterClass.EndPointOrBuilder getDeviceEndpointsOrBuilder( - int index); + context.ContextOuterClass.UuidOrBuilder getDeviceUuidOrBuilder(); } /** - * Protobuf type {@code context.Device} + * <pre> + * ----- Device -------------------------------------------------------------------------------------------------------- + * </pre> + * + * Protobuf type {@code context.DeviceId} */ - public static final class Device extends + public static final class DeviceId extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Device) - DeviceOrBuilder { + // @@protoc_insertion_point(message_implements:context.DeviceId) + DeviceIdOrBuilder { private static final long serialVersionUID = 0L; - // Use Device.newBuilder() to construct. - private Device(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use DeviceId.newBuilder() to construct. + private DeviceId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private Device() { - deviceType_ = ""; - deviceOperationalStatus_ = 0; - deviceDrivers_ = java.util.Collections.emptyList(); - deviceEndpoints_ = java.util.Collections.emptyList(); + private DeviceId() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new Device(); + return new DeviceId(); } @java.lang.Override @@ -13326,7 +14935,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private Device( + private DeviceId( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -13334,7 +14943,6 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } - int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -13346,79 +14954,22 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.DeviceId.Builder subBuilder = null; - if (deviceId_ != null) { - subBuilder = deviceId_.toBuilder(); + context.ContextOuterClass.Uuid.Builder subBuilder = null; + if (deviceUuid_ != null) { + subBuilder = deviceUuid_.toBuilder(); } - deviceId_ = input.readMessage(context.ContextOuterClass.DeviceId.parser(), extensionRegistry); + deviceUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(deviceId_); - deviceId_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(deviceUuid_); + deviceUuid_ = subBuilder.buildPartial(); } break; } - case 18: { - java.lang.String s = input.readStringRequireUtf8(); - - deviceType_ = s; - break; - } - case 26: { - context.ContextOuterClass.DeviceConfig.Builder subBuilder = null; - if (deviceConfig_ != null) { - subBuilder = deviceConfig_.toBuilder(); - } - deviceConfig_ = input.readMessage(context.ContextOuterClass.DeviceConfig.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(deviceConfig_); - deviceConfig_ = subBuilder.buildPartial(); - } - - break; - } - case 32: { - int rawValue = input.readEnum(); - - deviceOperationalStatus_ = rawValue; - break; - } - case 40: { - int rawValue = input.readEnum(); - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - deviceDrivers_ = new java.util.ArrayList<java.lang.Integer>(); - mutable_bitField0_ |= 0x00000001; - } - deviceDrivers_.add(rawValue); - break; - } - case 42: { - int length = input.readRawVarint32(); - int oldLimit = input.pushLimit(length); - while(input.getBytesUntilLimit() > 0) { - int rawValue = input.readEnum(); - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - deviceDrivers_ = new java.util.ArrayList<java.lang.Integer>(); - mutable_bitField0_ |= 0x00000001; - } - deviceDrivers_.add(rawValue); - } - input.popLimit(oldLimit); - break; - } - case 50: { - if (!((mutable_bitField0_ & 0x00000002) != 0)) { - deviceEndpoints_ = new java.util.ArrayList<context.ContextOuterClass.EndPoint>(); - mutable_bitField0_ |= 0x00000002; - } - deviceEndpoints_.add( - input.readMessage(context.ContextOuterClass.EndPoint.parser(), extensionRegistry)); - break; - } - default: { - if (!parseUnknownField( - input, unknownFields, extensionRegistry, tag)) { - done = true; + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; } break; } @@ -13430,234 +14981,47 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { - if (((mutable_bitField0_ & 0x00000001) != 0)) { - deviceDrivers_ = java.util.Collections.unmodifiableList(deviceDrivers_); - } - if (((mutable_bitField0_ & 0x00000002) != 0)) { - deviceEndpoints_ = java.util.Collections.unmodifiableList(deviceEndpoints_); - } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Device_descriptor; + return context.ContextOuterClass.internal_static_context_DeviceId_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Device_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_DeviceId_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Device.class, context.ContextOuterClass.Device.Builder.class); - } - - public static final int DEVICE_ID_FIELD_NUMBER = 1; - private context.ContextOuterClass.DeviceId deviceId_; - /** - * <code>.context.DeviceId device_id = 1;</code> - * @return Whether the deviceId field is set. - */ - @java.lang.Override - public boolean hasDeviceId() { - return deviceId_ != null; - } - /** - * <code>.context.DeviceId device_id = 1;</code> - * @return The deviceId. - */ - @java.lang.Override - public context.ContextOuterClass.DeviceId getDeviceId() { - return deviceId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; - } - /** - * <code>.context.DeviceId device_id = 1;</code> - */ - @java.lang.Override - public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder() { - return getDeviceId(); - } - - public static final int DEVICE_TYPE_FIELD_NUMBER = 2; - private volatile java.lang.Object deviceType_; - /** - * <code>string device_type = 2;</code> - * @return The deviceType. - */ - @java.lang.Override - public java.lang.String getDeviceType() { - java.lang.Object ref = deviceType_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - deviceType_ = s; - return s; - } - } - /** - * <code>string device_type = 2;</code> - * @return The bytes for deviceType. - */ - @java.lang.Override - public com.google.protobuf.ByteString - getDeviceTypeBytes() { - java.lang.Object ref = deviceType_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - deviceType_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - - public static final int DEVICE_CONFIG_FIELD_NUMBER = 3; - private context.ContextOuterClass.DeviceConfig deviceConfig_; - /** - * <code>.context.DeviceConfig device_config = 3;</code> - * @return Whether the deviceConfig field is set. - */ - @java.lang.Override - public boolean hasDeviceConfig() { - return deviceConfig_ != null; - } - /** - * <code>.context.DeviceConfig device_config = 3;</code> - * @return The deviceConfig. - */ - @java.lang.Override - public context.ContextOuterClass.DeviceConfig getDeviceConfig() { - return deviceConfig_ == null ? context.ContextOuterClass.DeviceConfig.getDefaultInstance() : deviceConfig_; - } - /** - * <code>.context.DeviceConfig device_config = 3;</code> - */ - @java.lang.Override - public context.ContextOuterClass.DeviceConfigOrBuilder getDeviceConfigOrBuilder() { - return getDeviceConfig(); - } - - public static final int DEVICE_OPERATIONAL_STATUS_FIELD_NUMBER = 4; - private int deviceOperationalStatus_; - /** - * <code>.context.DeviceOperationalStatusEnum device_operational_status = 4;</code> - * @return The enum numeric value on the wire for deviceOperationalStatus. - */ - @java.lang.Override public int getDeviceOperationalStatusValue() { - return deviceOperationalStatus_; - } - /** - * <code>.context.DeviceOperationalStatusEnum device_operational_status = 4;</code> - * @return The deviceOperationalStatus. - */ - @java.lang.Override public context.ContextOuterClass.DeviceOperationalStatusEnum getDeviceOperationalStatus() { - @SuppressWarnings("deprecation") - context.ContextOuterClass.DeviceOperationalStatusEnum result = context.ContextOuterClass.DeviceOperationalStatusEnum.valueOf(deviceOperationalStatus_); - return result == null ? context.ContextOuterClass.DeviceOperationalStatusEnum.UNRECOGNIZED : result; - } - - public static final int DEVICE_DRIVERS_FIELD_NUMBER = 5; - private java.util.List<java.lang.Integer> deviceDrivers_; - private static final com.google.protobuf.Internal.ListAdapter.Converter< - java.lang.Integer, context.ContextOuterClass.DeviceDriverEnum> deviceDrivers_converter_ = - new com.google.protobuf.Internal.ListAdapter.Converter< - java.lang.Integer, context.ContextOuterClass.DeviceDriverEnum>() { - public context.ContextOuterClass.DeviceDriverEnum convert(java.lang.Integer from) { - @SuppressWarnings("deprecation") - context.ContextOuterClass.DeviceDriverEnum result = context.ContextOuterClass.DeviceDriverEnum.valueOf(from); - return result == null ? context.ContextOuterClass.DeviceDriverEnum.UNRECOGNIZED : result; - } - }; - /** - * <code>repeated .context.DeviceDriverEnum device_drivers = 5;</code> - * @return A list containing the deviceDrivers. - */ - @java.lang.Override - public java.util.List<context.ContextOuterClass.DeviceDriverEnum> getDeviceDriversList() { - return new com.google.protobuf.Internal.ListAdapter< - java.lang.Integer, context.ContextOuterClass.DeviceDriverEnum>(deviceDrivers_, deviceDrivers_converter_); - } - /** - * <code>repeated .context.DeviceDriverEnum device_drivers = 5;</code> - * @return The count of deviceDrivers. - */ - @java.lang.Override - public int getDeviceDriversCount() { - return deviceDrivers_.size(); - } - /** - * <code>repeated .context.DeviceDriverEnum device_drivers = 5;</code> - * @param index The index of the element to return. - * @return The deviceDrivers at the given index. - */ - @java.lang.Override - public context.ContextOuterClass.DeviceDriverEnum getDeviceDrivers(int index) { - return deviceDrivers_converter_.convert(deviceDrivers_.get(index)); - } - /** - * <code>repeated .context.DeviceDriverEnum device_drivers = 5;</code> - * @return A list containing the enum numeric values on the wire for deviceDrivers. - */ - @java.lang.Override - public java.util.List<java.lang.Integer> - getDeviceDriversValueList() { - return deviceDrivers_; - } - /** - * <code>repeated .context.DeviceDriverEnum device_drivers = 5;</code> - * @param index The index of the value to return. - * @return The enum numeric value on the wire of deviceDrivers at the given index. - */ - @java.lang.Override - public int getDeviceDriversValue(int index) { - return deviceDrivers_.get(index); + context.ContextOuterClass.DeviceId.class, context.ContextOuterClass.DeviceId.Builder.class); } - private int deviceDriversMemoizedSerializedSize; - public static final int DEVICE_ENDPOINTS_FIELD_NUMBER = 6; - private java.util.List<context.ContextOuterClass.EndPoint> deviceEndpoints_; - /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> - */ - @java.lang.Override - public java.util.List<context.ContextOuterClass.EndPoint> getDeviceEndpointsList() { - return deviceEndpoints_; - } - /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> - */ - @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.EndPointOrBuilder> - getDeviceEndpointsOrBuilderList() { - return deviceEndpoints_; - } + public static final int DEVICE_UUID_FIELD_NUMBER = 1; + private context.ContextOuterClass.Uuid deviceUuid_; /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> + * <code>.context.Uuid device_uuid = 1;</code> + * @return Whether the deviceUuid field is set. */ @java.lang.Override - public int getDeviceEndpointsCount() { - return deviceEndpoints_.size(); + public boolean hasDeviceUuid() { + return deviceUuid_ != null; } /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> + * <code>.context.Uuid device_uuid = 1;</code> + * @return The deviceUuid. */ @java.lang.Override - public context.ContextOuterClass.EndPoint getDeviceEndpoints(int index) { - return deviceEndpoints_.get(index); + public context.ContextOuterClass.Uuid getDeviceUuid() { + return deviceUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : deviceUuid_; } /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> + * <code>.context.Uuid device_uuid = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.EndPointOrBuilder getDeviceEndpointsOrBuilder( - int index) { - return deviceEndpoints_.get(index); + public context.ContextOuterClass.UuidOrBuilder getDeviceUuidOrBuilder() { + return getDeviceUuid(); } private byte memoizedIsInitialized = -1; @@ -13674,28 +15038,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - getSerializedSize(); - if (deviceId_ != null) { - output.writeMessage(1, getDeviceId()); - } - if (!getDeviceTypeBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, deviceType_); - } - if (deviceConfig_ != null) { - output.writeMessage(3, getDeviceConfig()); - } - if (deviceOperationalStatus_ != context.ContextOuterClass.DeviceOperationalStatusEnum.DEVICEOPERATIONALSTATUS_UNDEFINED.getNumber()) { - output.writeEnum(4, deviceOperationalStatus_); - } - if (getDeviceDriversList().size() > 0) { - output.writeUInt32NoTag(42); - output.writeUInt32NoTag(deviceDriversMemoizedSerializedSize); - } - for (int i = 0; i < deviceDrivers_.size(); i++) { - output.writeEnumNoTag(deviceDrivers_.get(i)); - } - for (int i = 0; i < deviceEndpoints_.size(); i++) { - output.writeMessage(6, deviceEndpoints_.get(i)); + if (deviceUuid_ != null) { + output.writeMessage(1, getDeviceUuid()); } unknownFields.writeTo(output); } @@ -13706,36 +15050,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (deviceId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getDeviceId()); - } - if (!getDeviceTypeBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, deviceType_); - } - if (deviceConfig_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(3, getDeviceConfig()); - } - if (deviceOperationalStatus_ != context.ContextOuterClass.DeviceOperationalStatusEnum.DEVICEOPERATIONALSTATUS_UNDEFINED.getNumber()) { - size += com.google.protobuf.CodedOutputStream - .computeEnumSize(4, deviceOperationalStatus_); - } - { - int dataSize = 0; - for (int i = 0; i < deviceDrivers_.size(); i++) { - dataSize += com.google.protobuf.CodedOutputStream - .computeEnumSizeNoTag(deviceDrivers_.get(i)); - } - size += dataSize; - if (!getDeviceDriversList().isEmpty()) { size += 1; - size += com.google.protobuf.CodedOutputStream - .computeUInt32SizeNoTag(dataSize); - }deviceDriversMemoizedSerializedSize = dataSize; - } - for (int i = 0; i < deviceEndpoints_.size(); i++) { + if (deviceUuid_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(6, deviceEndpoints_.get(i)); + .computeMessageSize(1, getDeviceUuid()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -13747,27 +15064,16 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.Device)) { + if (!(obj instanceof context.ContextOuterClass.DeviceId)) { return super.equals(obj); } - context.ContextOuterClass.Device other = (context.ContextOuterClass.Device) obj; + context.ContextOuterClass.DeviceId other = (context.ContextOuterClass.DeviceId) obj; - if (hasDeviceId() != other.hasDeviceId()) return false; - if (hasDeviceId()) { - if (!getDeviceId() - .equals(other.getDeviceId())) return false; - } - if (!getDeviceType() - .equals(other.getDeviceType())) return false; - if (hasDeviceConfig() != other.hasDeviceConfig()) return false; - if (hasDeviceConfig()) { - if (!getDeviceConfig() - .equals(other.getDeviceConfig())) return false; + if (hasDeviceUuid() != other.hasDeviceUuid()) return false; + if (hasDeviceUuid()) { + if (!getDeviceUuid() + .equals(other.getDeviceUuid())) return false; } - if (deviceOperationalStatus_ != other.deviceOperationalStatus_) return false; - if (!deviceDrivers_.equals(other.deviceDrivers_)) return false; - if (!getDeviceEndpointsList() - .equals(other.getDeviceEndpointsList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -13779,94 +15085,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasDeviceId()) { - hash = (37 * hash) + DEVICE_ID_FIELD_NUMBER; - hash = (53 * hash) + getDeviceId().hashCode(); - } - hash = (37 * hash) + DEVICE_TYPE_FIELD_NUMBER; - hash = (53 * hash) + getDeviceType().hashCode(); - if (hasDeviceConfig()) { - hash = (37 * hash) + DEVICE_CONFIG_FIELD_NUMBER; - hash = (53 * hash) + getDeviceConfig().hashCode(); - } - hash = (37 * hash) + DEVICE_OPERATIONAL_STATUS_FIELD_NUMBER; - hash = (53 * hash) + deviceOperationalStatus_; - if (getDeviceDriversCount() > 0) { - hash = (37 * hash) + DEVICE_DRIVERS_FIELD_NUMBER; - hash = (53 * hash) + deviceDrivers_.hashCode(); - } - if (getDeviceEndpointsCount() > 0) { - hash = (37 * hash) + DEVICE_ENDPOINTS_FIELD_NUMBER; - hash = (53 * hash) + getDeviceEndpointsList().hashCode(); + if (hasDeviceUuid()) { + hash = (37 * hash) + DEVICE_UUID_FIELD_NUMBER; + hash = (53 * hash) + getDeviceUuid().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.Device parseFrom( + public static context.ContextOuterClass.DeviceId parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Device parseFrom( + public static context.ContextOuterClass.DeviceId parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Device parseFrom( + public static context.ContextOuterClass.DeviceId parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Device parseFrom( + public static context.ContextOuterClass.DeviceId parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Device parseFrom(byte[] data) + public static context.ContextOuterClass.DeviceId parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Device parseFrom( + public static context.ContextOuterClass.DeviceId parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Device parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.DeviceId parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Device parseFrom( + public static context.ContextOuterClass.DeviceId 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 context.ContextOuterClass.Device parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.DeviceId parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.Device parseDelimitedFrom( + public static context.ContextOuterClass.DeviceId 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 context.ContextOuterClass.Device parseFrom( + public static context.ContextOuterClass.DeviceId parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Device parseFrom( + public static context.ContextOuterClass.DeviceId parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -13879,7 +15169,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.Device prototype) { + public static Builder newBuilder(context.ContextOuterClass.DeviceId prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -13895,26 +15185,30 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.Device} + * <pre> + * ----- Device -------------------------------------------------------------------------------------------------------- + * </pre> + * + * Protobuf type {@code context.DeviceId} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Device) - context.ContextOuterClass.DeviceOrBuilder { + // @@protoc_insertion_point(builder_implements:context.DeviceId) + context.ContextOuterClass.DeviceIdOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Device_descriptor; + return context.ContextOuterClass.internal_static_context_DeviceId_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Device_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_DeviceId_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Device.class, context.ContextOuterClass.Device.Builder.class); + context.ContextOuterClass.DeviceId.class, context.ContextOuterClass.DeviceId.Builder.class); } - // Construct using context.ContextOuterClass.Device.newBuilder() + // Construct using context.ContextOuterClass.DeviceId.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -13927,35 +15221,16 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getDeviceEndpointsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (deviceIdBuilder_ == null) { - deviceId_ = null; - } else { - deviceId_ = null; - deviceIdBuilder_ = null; - } - deviceType_ = ""; - - if (deviceConfigBuilder_ == null) { - deviceConfig_ = null; - } else { - deviceConfig_ = null; - deviceConfigBuilder_ = null; - } - deviceOperationalStatus_ = 0; - - deviceDrivers_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - if (deviceEndpointsBuilder_ == null) { - deviceEndpoints_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000002); + if (deviceUuidBuilder_ == null) { + deviceUuid_ = null; } else { - deviceEndpointsBuilder_.clear(); + deviceUuid_ = null; + deviceUuidBuilder_ = null; } return this; } @@ -13963,17 +15238,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Device_descriptor; + return context.ContextOuterClass.internal_static_context_DeviceId_descriptor; } @java.lang.Override - public context.ContextOuterClass.Device getDefaultInstanceForType() { - return context.ContextOuterClass.Device.getDefaultInstance(); + public context.ContextOuterClass.DeviceId getDefaultInstanceForType() { + return context.ContextOuterClass.DeviceId.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.Device build() { - context.ContextOuterClass.Device result = buildPartial(); + public context.ContextOuterClass.DeviceId build() { + context.ContextOuterClass.DeviceId result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -13981,34 +15256,12 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.Device buildPartial() { - context.ContextOuterClass.Device result = new context.ContextOuterClass.Device(this); - int from_bitField0_ = bitField0_; - if (deviceIdBuilder_ == null) { - result.deviceId_ = deviceId_; - } else { - result.deviceId_ = deviceIdBuilder_.build(); - } - result.deviceType_ = deviceType_; - if (deviceConfigBuilder_ == null) { - result.deviceConfig_ = deviceConfig_; - } else { - result.deviceConfig_ = deviceConfigBuilder_.build(); - } - result.deviceOperationalStatus_ = deviceOperationalStatus_; - if (((bitField0_ & 0x00000001) != 0)) { - deviceDrivers_ = java.util.Collections.unmodifiableList(deviceDrivers_); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.deviceDrivers_ = deviceDrivers_; - if (deviceEndpointsBuilder_ == null) { - if (((bitField0_ & 0x00000002) != 0)) { - deviceEndpoints_ = java.util.Collections.unmodifiableList(deviceEndpoints_); - bitField0_ = (bitField0_ & ~0x00000002); - } - result.deviceEndpoints_ = deviceEndpoints_; + public context.ContextOuterClass.DeviceId buildPartial() { + context.ContextOuterClass.DeviceId result = new context.ContextOuterClass.DeviceId(this); + if (deviceUuidBuilder_ == null) { + result.deviceUuid_ = deviceUuid_; } else { - result.deviceEndpoints_ = deviceEndpointsBuilder_.build(); + result.deviceUuid_ = deviceUuidBuilder_.build(); } onBuilt(); return result; @@ -14048,64 +15301,18 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.Device) { - return mergeFrom((context.ContextOuterClass.Device)other); + if (other instanceof context.ContextOuterClass.DeviceId) { + return mergeFrom((context.ContextOuterClass.DeviceId)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.Device other) { - if (other == context.ContextOuterClass.Device.getDefaultInstance()) return this; - if (other.hasDeviceId()) { - mergeDeviceId(other.getDeviceId()); - } - if (!other.getDeviceType().isEmpty()) { - deviceType_ = other.deviceType_; - onChanged(); - } - if (other.hasDeviceConfig()) { - mergeDeviceConfig(other.getDeviceConfig()); - } - if (other.deviceOperationalStatus_ != 0) { - setDeviceOperationalStatusValue(other.getDeviceOperationalStatusValue()); - } - if (!other.deviceDrivers_.isEmpty()) { - if (deviceDrivers_.isEmpty()) { - deviceDrivers_ = other.deviceDrivers_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureDeviceDriversIsMutable(); - deviceDrivers_.addAll(other.deviceDrivers_); - } - onChanged(); - } - if (deviceEndpointsBuilder_ == null) { - if (!other.deviceEndpoints_.isEmpty()) { - if (deviceEndpoints_.isEmpty()) { - deviceEndpoints_ = other.deviceEndpoints_; - bitField0_ = (bitField0_ & ~0x00000002); - } else { - ensureDeviceEndpointsIsMutable(); - deviceEndpoints_.addAll(other.deviceEndpoints_); - } - onChanged(); - } - } else { - if (!other.deviceEndpoints_.isEmpty()) { - if (deviceEndpointsBuilder_.isEmpty()) { - deviceEndpointsBuilder_.dispose(); - deviceEndpointsBuilder_ = null; - deviceEndpoints_ = other.deviceEndpoints_; - bitField0_ = (bitField0_ & ~0x00000002); - deviceEndpointsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getDeviceEndpointsFieldBuilder() : null; - } else { - deviceEndpointsBuilder_.addAllMessages(other.deviceEndpoints_); - } - } + public Builder mergeFrom(context.ContextOuterClass.DeviceId other) { + if (other == context.ContextOuterClass.DeviceId.getDefaultInstance()) return this; + if (other.hasDeviceUuid()) { + mergeDeviceUuid(other.getDeviceUuid()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -14122,11 +15329,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.Device parsedMessage = null; + context.ContextOuterClass.DeviceId parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Device) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.DeviceId) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -14135,857 +15342,397 @@ public final class ContextOuterClass { } return this; } - private int bitField0_; - private context.ContextOuterClass.DeviceId deviceId_; + private context.ContextOuterClass.Uuid deviceUuid_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> deviceIdBuilder_; + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> deviceUuidBuilder_; /** - * <code>.context.DeviceId device_id = 1;</code> - * @return Whether the deviceId field is set. + * <code>.context.Uuid device_uuid = 1;</code> + * @return Whether the deviceUuid field is set. */ - public boolean hasDeviceId() { - return deviceIdBuilder_ != null || deviceId_ != null; + public boolean hasDeviceUuid() { + return deviceUuidBuilder_ != null || deviceUuid_ != null; } /** - * <code>.context.DeviceId device_id = 1;</code> - * @return The deviceId. + * <code>.context.Uuid device_uuid = 1;</code> + * @return The deviceUuid. */ - public context.ContextOuterClass.DeviceId getDeviceId() { - if (deviceIdBuilder_ == null) { - return deviceId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; + public context.ContextOuterClass.Uuid getDeviceUuid() { + if (deviceUuidBuilder_ == null) { + return deviceUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : deviceUuid_; } else { - return deviceIdBuilder_.getMessage(); + return deviceUuidBuilder_.getMessage(); } } /** - * <code>.context.DeviceId device_id = 1;</code> + * <code>.context.Uuid device_uuid = 1;</code> */ - public Builder setDeviceId(context.ContextOuterClass.DeviceId value) { - if (deviceIdBuilder_ == null) { + public Builder setDeviceUuid(context.ContextOuterClass.Uuid value) { + if (deviceUuidBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - deviceId_ = value; + deviceUuid_ = value; onChanged(); } else { - deviceIdBuilder_.setMessage(value); + deviceUuidBuilder_.setMessage(value); } return this; } /** - * <code>.context.DeviceId device_id = 1;</code> + * <code>.context.Uuid device_uuid = 1;</code> */ - public Builder setDeviceId( - context.ContextOuterClass.DeviceId.Builder builderForValue) { - if (deviceIdBuilder_ == null) { - deviceId_ = builderForValue.build(); + public Builder setDeviceUuid( + context.ContextOuterClass.Uuid.Builder builderForValue) { + if (deviceUuidBuilder_ == null) { + deviceUuid_ = builderForValue.build(); onChanged(); } else { - deviceIdBuilder_.setMessage(builderForValue.build()); + deviceUuidBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.DeviceId device_id = 1;</code> + * <code>.context.Uuid device_uuid = 1;</code> */ - public Builder mergeDeviceId(context.ContextOuterClass.DeviceId value) { - if (deviceIdBuilder_ == null) { - if (deviceId_ != null) { - deviceId_ = - context.ContextOuterClass.DeviceId.newBuilder(deviceId_).mergeFrom(value).buildPartial(); + public Builder mergeDeviceUuid(context.ContextOuterClass.Uuid value) { + if (deviceUuidBuilder_ == null) { + if (deviceUuid_ != null) { + deviceUuid_ = + context.ContextOuterClass.Uuid.newBuilder(deviceUuid_).mergeFrom(value).buildPartial(); } else { - deviceId_ = value; + deviceUuid_ = value; } onChanged(); } else { - deviceIdBuilder_.mergeFrom(value); + deviceUuidBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.DeviceId device_id = 1;</code> + * <code>.context.Uuid device_uuid = 1;</code> */ - public Builder clearDeviceId() { - if (deviceIdBuilder_ == null) { - deviceId_ = null; + public Builder clearDeviceUuid() { + if (deviceUuidBuilder_ == null) { + deviceUuid_ = null; onChanged(); } else { - deviceId_ = null; - deviceIdBuilder_ = null; + deviceUuid_ = null; + deviceUuidBuilder_ = null; } return this; } /** - * <code>.context.DeviceId device_id = 1;</code> + * <code>.context.Uuid device_uuid = 1;</code> */ - public context.ContextOuterClass.DeviceId.Builder getDeviceIdBuilder() { + public context.ContextOuterClass.Uuid.Builder getDeviceUuidBuilder() { onChanged(); - return getDeviceIdFieldBuilder().getBuilder(); + return getDeviceUuidFieldBuilder().getBuilder(); } /** - * <code>.context.DeviceId device_id = 1;</code> + * <code>.context.Uuid device_uuid = 1;</code> */ - public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder() { - if (deviceIdBuilder_ != null) { - return deviceIdBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.UuidOrBuilder getDeviceUuidOrBuilder() { + if (deviceUuidBuilder_ != null) { + return deviceUuidBuilder_.getMessageOrBuilder(); } else { - return deviceId_ == null ? - context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; + return deviceUuid_ == null ? + context.ContextOuterClass.Uuid.getDefaultInstance() : deviceUuid_; } } /** - * <code>.context.DeviceId device_id = 1;</code> + * <code>.context.Uuid device_uuid = 1;</code> */ private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> - getDeviceIdFieldBuilder() { - if (deviceIdBuilder_ == null) { - deviceIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder>( - getDeviceId(), + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> + getDeviceUuidFieldBuilder() { + if (deviceUuidBuilder_ == null) { + deviceUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>( + getDeviceUuid(), getParentForChildren(), isClean()); - deviceId_ = null; - } - return deviceIdBuilder_; - } - - private java.lang.Object deviceType_ = ""; - /** - * <code>string device_type = 2;</code> - * @return The deviceType. - */ - public java.lang.String getDeviceType() { - java.lang.Object ref = deviceType_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - deviceType_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - /** - * <code>string device_type = 2;</code> - * @return The bytes for deviceType. - */ - public com.google.protobuf.ByteString - getDeviceTypeBytes() { - java.lang.Object ref = deviceType_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - deviceType_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + deviceUuid_ = null; } + return deviceUuidBuilder_; } - /** - * <code>string device_type = 2;</code> - * @param value The deviceType to set. - * @return This builder for chaining. - */ - public Builder setDeviceType( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - deviceType_ = value; - onChanged(); - return this; - } - /** - * <code>string device_type = 2;</code> - * @return This builder for chaining. - */ - public Builder clearDeviceType() { - - deviceType_ = getDefaultInstance().getDeviceType(); - onChanged(); - return this; - } - /** - * <code>string device_type = 2;</code> - * @param value The bytes for deviceType to set. - * @return This builder for chaining. - */ - public Builder setDeviceTypeBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - deviceType_ = value; - onChanged(); - return this; + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); } - private context.ContextOuterClass.DeviceConfig deviceConfig_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.DeviceConfig, context.ContextOuterClass.DeviceConfig.Builder, context.ContextOuterClass.DeviceConfigOrBuilder> deviceConfigBuilder_; - /** - * <code>.context.DeviceConfig device_config = 3;</code> - * @return Whether the deviceConfig field is set. - */ - public boolean hasDeviceConfig() { - return deviceConfigBuilder_ != null || deviceConfig_ != null; - } - /** - * <code>.context.DeviceConfig device_config = 3;</code> - * @return The deviceConfig. - */ - public context.ContextOuterClass.DeviceConfig getDeviceConfig() { - if (deviceConfigBuilder_ == null) { - return deviceConfig_ == null ? context.ContextOuterClass.DeviceConfig.getDefaultInstance() : deviceConfig_; - } else { - return deviceConfigBuilder_.getMessage(); - } + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); } - /** - * <code>.context.DeviceConfig device_config = 3;</code> - */ - public Builder setDeviceConfig(context.ContextOuterClass.DeviceConfig value) { - if (deviceConfigBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - deviceConfig_ = value; - onChanged(); - } else { - deviceConfigBuilder_.setMessage(value); - } - return this; - } - /** - * <code>.context.DeviceConfig device_config = 3;</code> - */ - public Builder setDeviceConfig( - context.ContextOuterClass.DeviceConfig.Builder builderForValue) { - if (deviceConfigBuilder_ == null) { - deviceConfig_ = builderForValue.build(); - onChanged(); - } else { - deviceConfigBuilder_.setMessage(builderForValue.build()); - } - return this; - } - /** - * <code>.context.DeviceConfig device_config = 3;</code> - */ - public Builder mergeDeviceConfig(context.ContextOuterClass.DeviceConfig value) { - if (deviceConfigBuilder_ == null) { - if (deviceConfig_ != null) { - deviceConfig_ = - context.ContextOuterClass.DeviceConfig.newBuilder(deviceConfig_).mergeFrom(value).buildPartial(); - } else { - deviceConfig_ = value; - } - onChanged(); - } else { - deviceConfigBuilder_.mergeFrom(value); - } + // @@protoc_insertion_point(builder_scope:context.DeviceId) + } - return this; - } - /** - * <code>.context.DeviceConfig device_config = 3;</code> - */ - public Builder clearDeviceConfig() { - if (deviceConfigBuilder_ == null) { - deviceConfig_ = null; - onChanged(); - } else { - deviceConfig_ = null; - deviceConfigBuilder_ = null; - } + // @@protoc_insertion_point(class_scope:context.DeviceId) + private static final context.ContextOuterClass.DeviceId DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new context.ContextOuterClass.DeviceId(); + } - return this; - } - /** - * <code>.context.DeviceConfig device_config = 3;</code> - */ - public context.ContextOuterClass.DeviceConfig.Builder getDeviceConfigBuilder() { - - onChanged(); - return getDeviceConfigFieldBuilder().getBuilder(); - } - /** - * <code>.context.DeviceConfig device_config = 3;</code> - */ - public context.ContextOuterClass.DeviceConfigOrBuilder getDeviceConfigOrBuilder() { - if (deviceConfigBuilder_ != null) { - return deviceConfigBuilder_.getMessageOrBuilder(); - } else { - return deviceConfig_ == null ? - context.ContextOuterClass.DeviceConfig.getDefaultInstance() : deviceConfig_; - } - } - /** - * <code>.context.DeviceConfig device_config = 3;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.DeviceConfig, context.ContextOuterClass.DeviceConfig.Builder, context.ContextOuterClass.DeviceConfigOrBuilder> - getDeviceConfigFieldBuilder() { - if (deviceConfigBuilder_ == null) { - deviceConfigBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.DeviceConfig, context.ContextOuterClass.DeviceConfig.Builder, context.ContextOuterClass.DeviceConfigOrBuilder>( - getDeviceConfig(), - getParentForChildren(), - isClean()); - deviceConfig_ = null; - } - return deviceConfigBuilder_; - } + public static context.ContextOuterClass.DeviceId getDefaultInstance() { + return DEFAULT_INSTANCE; + } - private int deviceOperationalStatus_ = 0; - /** - * <code>.context.DeviceOperationalStatusEnum device_operational_status = 4;</code> - * @return The enum numeric value on the wire for deviceOperationalStatus. - */ - @java.lang.Override public int getDeviceOperationalStatusValue() { - return deviceOperationalStatus_; - } - /** - * <code>.context.DeviceOperationalStatusEnum device_operational_status = 4;</code> - * @param value The enum numeric value on the wire for deviceOperationalStatus to set. - * @return This builder for chaining. - */ - public Builder setDeviceOperationalStatusValue(int value) { - - deviceOperationalStatus_ = value; - onChanged(); - return this; - } - /** - * <code>.context.DeviceOperationalStatusEnum device_operational_status = 4;</code> - * @return The deviceOperationalStatus. - */ + private static final com.google.protobuf.Parser<DeviceId> + PARSER = new com.google.protobuf.AbstractParser<DeviceId>() { @java.lang.Override - public context.ContextOuterClass.DeviceOperationalStatusEnum getDeviceOperationalStatus() { - @SuppressWarnings("deprecation") - context.ContextOuterClass.DeviceOperationalStatusEnum result = context.ContextOuterClass.DeviceOperationalStatusEnum.valueOf(deviceOperationalStatus_); - return result == null ? context.ContextOuterClass.DeviceOperationalStatusEnum.UNRECOGNIZED : result; - } - /** - * <code>.context.DeviceOperationalStatusEnum device_operational_status = 4;</code> - * @param value The deviceOperationalStatus to set. - * @return This builder for chaining. - */ - public Builder setDeviceOperationalStatus(context.ContextOuterClass.DeviceOperationalStatusEnum value) { - if (value == null) { - throw new NullPointerException(); - } - - deviceOperationalStatus_ = value.getNumber(); - onChanged(); - return this; - } - /** - * <code>.context.DeviceOperationalStatusEnum device_operational_status = 4;</code> - * @return This builder for chaining. - */ - public Builder clearDeviceOperationalStatus() { - - deviceOperationalStatus_ = 0; - onChanged(); - return this; + public DeviceId parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new DeviceId(input, extensionRegistry); } + }; - private java.util.List<java.lang.Integer> deviceDrivers_ = - java.util.Collections.emptyList(); - private void ensureDeviceDriversIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - deviceDrivers_ = new java.util.ArrayList<java.lang.Integer>(deviceDrivers_); - bitField0_ |= 0x00000001; - } - } - /** - * <code>repeated .context.DeviceDriverEnum device_drivers = 5;</code> - * @return A list containing the deviceDrivers. - */ - public java.util.List<context.ContextOuterClass.DeviceDriverEnum> getDeviceDriversList() { - return new com.google.protobuf.Internal.ListAdapter< - java.lang.Integer, context.ContextOuterClass.DeviceDriverEnum>(deviceDrivers_, deviceDrivers_converter_); - } - /** - * <code>repeated .context.DeviceDriverEnum device_drivers = 5;</code> - * @return The count of deviceDrivers. - */ - public int getDeviceDriversCount() { - return deviceDrivers_.size(); - } - /** - * <code>repeated .context.DeviceDriverEnum device_drivers = 5;</code> - * @param index The index of the element to return. - * @return The deviceDrivers at the given index. - */ - public context.ContextOuterClass.DeviceDriverEnum getDeviceDrivers(int index) { - return deviceDrivers_converter_.convert(deviceDrivers_.get(index)); - } - /** - * <code>repeated .context.DeviceDriverEnum device_drivers = 5;</code> - * @param index The index to set the value at. - * @param value The deviceDrivers to set. - * @return This builder for chaining. - */ - public Builder setDeviceDrivers( - int index, context.ContextOuterClass.DeviceDriverEnum value) { - if (value == null) { - throw new NullPointerException(); - } - ensureDeviceDriversIsMutable(); - deviceDrivers_.set(index, value.getNumber()); - onChanged(); - return this; - } - /** - * <code>repeated .context.DeviceDriverEnum device_drivers = 5;</code> - * @param value The deviceDrivers to add. - * @return This builder for chaining. - */ - public Builder addDeviceDrivers(context.ContextOuterClass.DeviceDriverEnum value) { - if (value == null) { - throw new NullPointerException(); - } - ensureDeviceDriversIsMutable(); - deviceDrivers_.add(value.getNumber()); - onChanged(); - return this; - } - /** - * <code>repeated .context.DeviceDriverEnum device_drivers = 5;</code> - * @param values The deviceDrivers to add. - * @return This builder for chaining. - */ - public Builder addAllDeviceDrivers( - java.lang.Iterable<? extends context.ContextOuterClass.DeviceDriverEnum> values) { - ensureDeviceDriversIsMutable(); - for (context.ContextOuterClass.DeviceDriverEnum value : values) { - deviceDrivers_.add(value.getNumber()); - } - onChanged(); - return this; - } - /** - * <code>repeated .context.DeviceDriverEnum device_drivers = 5;</code> - * @return This builder for chaining. - */ - public Builder clearDeviceDrivers() { - deviceDrivers_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - return this; - } - /** - * <code>repeated .context.DeviceDriverEnum device_drivers = 5;</code> - * @return A list containing the enum numeric values on the wire for deviceDrivers. - */ - public java.util.List<java.lang.Integer> - getDeviceDriversValueList() { - return java.util.Collections.unmodifiableList(deviceDrivers_); - } - /** - * <code>repeated .context.DeviceDriverEnum device_drivers = 5;</code> - * @param index The index of the value to return. - * @return The enum numeric value on the wire of deviceDrivers at the given index. - */ - public int getDeviceDriversValue(int index) { - return deviceDrivers_.get(index); - } - /** - * <code>repeated .context.DeviceDriverEnum device_drivers = 5;</code> - * @param index The index of the value to return. - * @return The enum numeric value on the wire of deviceDrivers at the given index. - * @return This builder for chaining. - */ - public Builder setDeviceDriversValue( - int index, int value) { - ensureDeviceDriversIsMutable(); - deviceDrivers_.set(index, value); - onChanged(); - return this; - } - /** - * <code>repeated .context.DeviceDriverEnum device_drivers = 5;</code> - * @param value The enum numeric value on the wire for deviceDrivers to add. - * @return This builder for chaining. - */ - public Builder addDeviceDriversValue(int value) { - ensureDeviceDriversIsMutable(); - deviceDrivers_.add(value); - onChanged(); - return this; - } - /** - * <code>repeated .context.DeviceDriverEnum device_drivers = 5;</code> - * @param values The enum numeric values on the wire for deviceDrivers to add. - * @return This builder for chaining. - */ - public Builder addAllDeviceDriversValue( - java.lang.Iterable<java.lang.Integer> values) { - ensureDeviceDriversIsMutable(); - for (int value : values) { - deviceDrivers_.add(value); - } - onChanged(); - return this; - } + public static com.google.protobuf.Parser<DeviceId> parser() { + return PARSER; + } - private java.util.List<context.ContextOuterClass.EndPoint> deviceEndpoints_ = - java.util.Collections.emptyList(); - private void ensureDeviceEndpointsIsMutable() { - if (!((bitField0_ & 0x00000002) != 0)) { - deviceEndpoints_ = new java.util.ArrayList<context.ContextOuterClass.EndPoint>(deviceEndpoints_); - bitField0_ |= 0x00000002; - } - } + @java.lang.Override + public com.google.protobuf.Parser<DeviceId> getParserForType() { + return PARSER; + } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPoint, context.ContextOuterClass.EndPoint.Builder, context.ContextOuterClass.EndPointOrBuilder> deviceEndpointsBuilder_; + @java.lang.Override + public context.ContextOuterClass.DeviceId getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } - /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> - */ - public java.util.List<context.ContextOuterClass.EndPoint> getDeviceEndpointsList() { - if (deviceEndpointsBuilder_ == null) { - return java.util.Collections.unmodifiableList(deviceEndpoints_); - } else { - return deviceEndpointsBuilder_.getMessageList(); - } - } - /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> - */ - public int getDeviceEndpointsCount() { - if (deviceEndpointsBuilder_ == null) { - return deviceEndpoints_.size(); - } else { - return deviceEndpointsBuilder_.getCount(); - } - } - /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> - */ - public context.ContextOuterClass.EndPoint getDeviceEndpoints(int index) { - if (deviceEndpointsBuilder_ == null) { - return deviceEndpoints_.get(index); - } else { - return deviceEndpointsBuilder_.getMessage(index); - } - } - /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> - */ - public Builder setDeviceEndpoints( - int index, context.ContextOuterClass.EndPoint value) { - if (deviceEndpointsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureDeviceEndpointsIsMutable(); - deviceEndpoints_.set(index, value); - onChanged(); - } else { - deviceEndpointsBuilder_.setMessage(index, value); - } - return this; - } - /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> - */ - public Builder setDeviceEndpoints( - int index, context.ContextOuterClass.EndPoint.Builder builderForValue) { - if (deviceEndpointsBuilder_ == null) { - ensureDeviceEndpointsIsMutable(); - deviceEndpoints_.set(index, builderForValue.build()); - onChanged(); - } else { - deviceEndpointsBuilder_.setMessage(index, builderForValue.build()); - } - return this; - } - /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> - */ - public Builder addDeviceEndpoints(context.ContextOuterClass.EndPoint value) { - if (deviceEndpointsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureDeviceEndpointsIsMutable(); - deviceEndpoints_.add(value); - onChanged(); - } else { - deviceEndpointsBuilder_.addMessage(value); - } - return this; - } - /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> - */ - public Builder addDeviceEndpoints( - int index, context.ContextOuterClass.EndPoint value) { - if (deviceEndpointsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureDeviceEndpointsIsMutable(); - deviceEndpoints_.add(index, value); - onChanged(); - } else { - deviceEndpointsBuilder_.addMessage(index, value); - } - return this; - } - /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> - */ - public Builder addDeviceEndpoints( - context.ContextOuterClass.EndPoint.Builder builderForValue) { - if (deviceEndpointsBuilder_ == null) { - ensureDeviceEndpointsIsMutable(); - deviceEndpoints_.add(builderForValue.build()); - onChanged(); - } else { - deviceEndpointsBuilder_.addMessage(builderForValue.build()); - } - return this; - } - /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> - */ - public Builder addDeviceEndpoints( - int index, context.ContextOuterClass.EndPoint.Builder builderForValue) { - if (deviceEndpointsBuilder_ == null) { - ensureDeviceEndpointsIsMutable(); - deviceEndpoints_.add(index, builderForValue.build()); - onChanged(); - } else { - deviceEndpointsBuilder_.addMessage(index, builderForValue.build()); - } - return this; - } - /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> - */ - public Builder addAllDeviceEndpoints( - java.lang.Iterable<? extends context.ContextOuterClass.EndPoint> values) { - if (deviceEndpointsBuilder_ == null) { - ensureDeviceEndpointsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, deviceEndpoints_); - onChanged(); - } else { - deviceEndpointsBuilder_.addAllMessages(values); - } - return this; - } - /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> - */ - public Builder clearDeviceEndpoints() { - if (deviceEndpointsBuilder_ == null) { - deviceEndpoints_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000002); - onChanged(); - } else { - deviceEndpointsBuilder_.clear(); - } - return this; - } - /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> - */ - public Builder removeDeviceEndpoints(int index) { - if (deviceEndpointsBuilder_ == null) { - ensureDeviceEndpointsIsMutable(); - deviceEndpoints_.remove(index); - onChanged(); - } else { - deviceEndpointsBuilder_.remove(index); - } - return this; - } - /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> - */ - public context.ContextOuterClass.EndPoint.Builder getDeviceEndpointsBuilder( - int index) { - return getDeviceEndpointsFieldBuilder().getBuilder(index); - } - /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> - */ - public context.ContextOuterClass.EndPointOrBuilder getDeviceEndpointsOrBuilder( - int index) { - if (deviceEndpointsBuilder_ == null) { - return deviceEndpoints_.get(index); } else { - return deviceEndpointsBuilder_.getMessageOrBuilder(index); - } - } - /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> - */ - public java.util.List<? extends context.ContextOuterClass.EndPointOrBuilder> - getDeviceEndpointsOrBuilderList() { - if (deviceEndpointsBuilder_ != null) { - return deviceEndpointsBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(deviceEndpoints_); - } - } - /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> - */ - public context.ContextOuterClass.EndPoint.Builder addDeviceEndpointsBuilder() { - return getDeviceEndpointsFieldBuilder().addBuilder( - context.ContextOuterClass.EndPoint.getDefaultInstance()); - } - /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> - */ - public context.ContextOuterClass.EndPoint.Builder addDeviceEndpointsBuilder( - int index) { - return getDeviceEndpointsFieldBuilder().addBuilder( - index, context.ContextOuterClass.EndPoint.getDefaultInstance()); - } - /** - * <code>repeated .context.EndPoint device_endpoints = 6;</code> - */ - public java.util.List<context.ContextOuterClass.EndPoint.Builder> - getDeviceEndpointsBuilderList() { - return getDeviceEndpointsFieldBuilder().getBuilderList(); - } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPoint, context.ContextOuterClass.EndPoint.Builder, context.ContextOuterClass.EndPointOrBuilder> - getDeviceEndpointsFieldBuilder() { - if (deviceEndpointsBuilder_ == null) { - deviceEndpointsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPoint, context.ContextOuterClass.EndPoint.Builder, context.ContextOuterClass.EndPointOrBuilder>( - deviceEndpoints_, - ((bitField0_ & 0x00000002) != 0), - getParentForChildren(), - isClean()); - deviceEndpoints_ = null; - } - return deviceEndpointsBuilder_; - } - @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:context.Device) - } + } - // @@protoc_insertion_point(class_scope:context.Device) - private static final context.ContextOuterClass.Device DEFAULT_INSTANCE; - static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Device(); - } + public interface DeviceOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Device) + com.google.protobuf.MessageOrBuilder { - public static context.ContextOuterClass.Device getDefaultInstance() { - return DEFAULT_INSTANCE; - } + /** + * <code>.context.DeviceId device_id = 1;</code> + * @return Whether the deviceId field is set. + */ + boolean hasDeviceId(); + /** + * <code>.context.DeviceId device_id = 1;</code> + * @return The deviceId. + */ + context.ContextOuterClass.DeviceId getDeviceId(); + /** + * <code>.context.DeviceId device_id = 1;</code> + */ + context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder(); - private static final com.google.protobuf.Parser<Device> - PARSER = new com.google.protobuf.AbstractParser<Device>() { - @java.lang.Override - public Device parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return new Device(input, extensionRegistry); - } - }; + /** + * <code>string name = 2;</code> + * @return The name. + */ + java.lang.String getName(); + /** + * <code>string name = 2;</code> + * @return The bytes for name. + */ + com.google.protobuf.ByteString + getNameBytes(); - public static com.google.protobuf.Parser<Device> parser() { - return PARSER; - } + /** + * <code>string device_type = 3;</code> + * @return The deviceType. + */ + java.lang.String getDeviceType(); + /** + * <code>string device_type = 3;</code> + * @return The bytes for deviceType. + */ + com.google.protobuf.ByteString + getDeviceTypeBytes(); - @java.lang.Override - public com.google.protobuf.Parser<Device> getParserForType() { - return PARSER; - } + /** + * <code>.context.DeviceConfig device_config = 4;</code> + * @return Whether the deviceConfig field is set. + */ + boolean hasDeviceConfig(); + /** + * <code>.context.DeviceConfig device_config = 4;</code> + * @return The deviceConfig. + */ + context.ContextOuterClass.DeviceConfig getDeviceConfig(); + /** + * <code>.context.DeviceConfig device_config = 4;</code> + */ + context.ContextOuterClass.DeviceConfigOrBuilder getDeviceConfigOrBuilder(); - @java.lang.Override - public context.ContextOuterClass.Device getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } + /** + * <code>.context.DeviceOperationalStatusEnum device_operational_status = 5;</code> + * @return The enum numeric value on the wire for deviceOperationalStatus. + */ + int getDeviceOperationalStatusValue(); + /** + * <code>.context.DeviceOperationalStatusEnum device_operational_status = 5;</code> + * @return The deviceOperationalStatus. + */ + context.ContextOuterClass.DeviceOperationalStatusEnum getDeviceOperationalStatus(); - } + /** + * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code> + * @return A list containing the deviceDrivers. + */ + java.util.List<context.ContextOuterClass.DeviceDriverEnum> getDeviceDriversList(); + /** + * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code> + * @return The count of deviceDrivers. + */ + int getDeviceDriversCount(); + /** + * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code> + * @param index The index of the element to return. + * @return The deviceDrivers at the given index. + */ + context.ContextOuterClass.DeviceDriverEnum getDeviceDrivers(int index); + /** + * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code> + * @return A list containing the enum numeric values on the wire for deviceDrivers. + */ + java.util.List<java.lang.Integer> + getDeviceDriversValueList(); + /** + * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code> + * @param index The index of the value to return. + * @return The enum numeric value on the wire of deviceDrivers at the given index. + */ + int getDeviceDriversValue(int index); - public interface DeviceConfigOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.DeviceConfig) - com.google.protobuf.MessageOrBuilder { + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + java.util.List<context.ContextOuterClass.EndPoint> + getDeviceEndpointsList(); + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + context.ContextOuterClass.EndPoint getDeviceEndpoints(int index); + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + int getDeviceEndpointsCount(); + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + java.util.List<? extends context.ContextOuterClass.EndPointOrBuilder> + getDeviceEndpointsOrBuilderList(); + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + context.ContextOuterClass.EndPointOrBuilder getDeviceEndpointsOrBuilder( + int index); /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> */ - java.util.List<context.ContextOuterClass.ConfigRule> - getConfigRulesList(); + java.util.List<context.ContextOuterClass.Component> + getComponentList(); /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> */ - context.ContextOuterClass.ConfigRule getConfigRules(int index); + context.ContextOuterClass.Component getComponent(int index); /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> */ - int getConfigRulesCount(); + int getComponentCount(); /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> */ - java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> - getConfigRulesOrBuilderList(); + java.util.List<? extends context.ContextOuterClass.ComponentOrBuilder> + getComponentOrBuilderList(); /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> */ - context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( + context.ContextOuterClass.ComponentOrBuilder getComponentOrBuilder( int index); + + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + * @return Whether the controllerId field is set. + */ + boolean hasControllerId(); + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + * @return The controllerId. + */ + context.ContextOuterClass.DeviceId getControllerId(); + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + */ + context.ContextOuterClass.DeviceIdOrBuilder getControllerIdOrBuilder(); } /** - * Protobuf type {@code context.DeviceConfig} + * Protobuf type {@code context.Device} */ - public static final class DeviceConfig extends + public static final class Device extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.DeviceConfig) - DeviceConfigOrBuilder { + // @@protoc_insertion_point(message_implements:context.Device) + DeviceOrBuilder { private static final long serialVersionUID = 0L; - // Use DeviceConfig.newBuilder() to construct. - private DeviceConfig(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Device.newBuilder() to construct. + private Device(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private DeviceConfig() { - configRules_ = java.util.Collections.emptyList(); + private Device() { + name_ = ""; + deviceType_ = ""; + deviceOperationalStatus_ = 0; + deviceDrivers_ = java.util.Collections.emptyList(); + deviceEndpoints_ = java.util.Collections.emptyList(); + component_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new DeviceConfig(); + return new Device(); } @java.lang.Override @@ -14993,7 +15740,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private DeviceConfig( + private Device( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -15013,12 +15760,101 @@ public final class ContextOuterClass { done = true; break; case 10: { + context.ContextOuterClass.DeviceId.Builder subBuilder = null; + if (deviceId_ != null) { + subBuilder = deviceId_.toBuilder(); + } + deviceId_ = input.readMessage(context.ContextOuterClass.DeviceId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(deviceId_); + deviceId_ = subBuilder.buildPartial(); + } + + break; + } + case 18: { + java.lang.String s = input.readStringRequireUtf8(); + + name_ = s; + break; + } + case 26: { + java.lang.String s = input.readStringRequireUtf8(); + + deviceType_ = s; + break; + } + case 34: { + context.ContextOuterClass.DeviceConfig.Builder subBuilder = null; + if (deviceConfig_ != null) { + subBuilder = deviceConfig_.toBuilder(); + } + deviceConfig_ = input.readMessage(context.ContextOuterClass.DeviceConfig.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(deviceConfig_); + deviceConfig_ = subBuilder.buildPartial(); + } + + break; + } + case 40: { + int rawValue = input.readEnum(); + + deviceOperationalStatus_ = rawValue; + break; + } + case 48: { + int rawValue = input.readEnum(); if (!((mutable_bitField0_ & 0x00000001) != 0)) { - configRules_ = new java.util.ArrayList<context.ContextOuterClass.ConfigRule>(); + deviceDrivers_ = new java.util.ArrayList<java.lang.Integer>(); mutable_bitField0_ |= 0x00000001; } - configRules_.add( - input.readMessage(context.ContextOuterClass.ConfigRule.parser(), extensionRegistry)); + deviceDrivers_.add(rawValue); + break; + } + case 50: { + int length = input.readRawVarint32(); + int oldLimit = input.pushLimit(length); + while(input.getBytesUntilLimit() > 0) { + int rawValue = input.readEnum(); + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + deviceDrivers_ = new java.util.ArrayList<java.lang.Integer>(); + mutable_bitField0_ |= 0x00000001; + } + deviceDrivers_.add(rawValue); + } + input.popLimit(oldLimit); + break; + } + case 58: { + if (!((mutable_bitField0_ & 0x00000002) != 0)) { + deviceEndpoints_ = new java.util.ArrayList<context.ContextOuterClass.EndPoint>(); + mutable_bitField0_ |= 0x00000002; + } + deviceEndpoints_.add( + input.readMessage(context.ContextOuterClass.EndPoint.parser(), extensionRegistry)); + break; + } + case 66: { + if (!((mutable_bitField0_ & 0x00000004) != 0)) { + component_ = new java.util.ArrayList<context.ContextOuterClass.Component>(); + mutable_bitField0_ |= 0x00000004; + } + component_.add( + input.readMessage(context.ContextOuterClass.Component.parser(), extensionRegistry)); + break; + } + case 74: { + context.ContextOuterClass.DeviceId.Builder subBuilder = null; + if (controllerId_ != null) { + subBuilder = controllerId_.toBuilder(); + } + controllerId_ = input.readMessage(context.ContextOuterClass.DeviceId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(controllerId_); + controllerId_ = subBuilder.buildPartial(); + } + break; } default: { @@ -15037,7 +15873,13 @@ public final class ContextOuterClass { e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { - configRules_ = java.util.Collections.unmodifiableList(configRules_); + deviceDrivers_ = java.util.Collections.unmodifiableList(deviceDrivers_); + } + if (((mutable_bitField0_ & 0x00000002) != 0)) { + deviceEndpoints_ = java.util.Collections.unmodifiableList(deviceEndpoints_); + } + if (((mutable_bitField0_ & 0x00000004) != 0)) { + component_ = java.util.Collections.unmodifiableList(component_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); @@ -15045,55 +15887,358 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_DeviceConfig_descriptor; + return context.ContextOuterClass.internal_static_context_Device_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_DeviceConfig_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Device_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.DeviceConfig.class, context.ContextOuterClass.DeviceConfig.Builder.class); + context.ContextOuterClass.Device.class, context.ContextOuterClass.Device.Builder.class); } - public static final int CONFIG_RULES_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.ConfigRule> configRules_; + public static final int DEVICE_ID_FIELD_NUMBER = 1; + private context.ContextOuterClass.DeviceId deviceId_; /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.DeviceId device_id = 1;</code> + * @return Whether the deviceId field is set. */ @java.lang.Override - public java.util.List<context.ContextOuterClass.ConfigRule> getConfigRulesList() { - return configRules_; + public boolean hasDeviceId() { + return deviceId_ != null; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.DeviceId device_id = 1;</code> + * @return The deviceId. */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> - getConfigRulesOrBuilderList() { - return configRules_; + public context.ContextOuterClass.DeviceId getDeviceId() { + return deviceId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.DeviceId device_id = 1;</code> */ @java.lang.Override - public int getConfigRulesCount() { - return configRules_.size(); + public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder() { + return getDeviceId(); } + + public static final int NAME_FIELD_NUMBER = 2; + private volatile java.lang.Object name_; /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>string name = 2;</code> + * @return The name. */ @java.lang.Override - public context.ContextOuterClass.ConfigRule getConfigRules(int index) { - return configRules_.get(index); + public java.lang.String getName() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>string name = 2;</code> + * @return The bytes for name. */ @java.lang.Override - public context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int DEVICE_TYPE_FIELD_NUMBER = 3; + private volatile java.lang.Object deviceType_; + /** + * <code>string device_type = 3;</code> + * @return The deviceType. + */ + @java.lang.Override + public java.lang.String getDeviceType() { + java.lang.Object ref = deviceType_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + deviceType_ = s; + return s; + } + } + /** + * <code>string device_type = 3;</code> + * @return The bytes for deviceType. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getDeviceTypeBytes() { + java.lang.Object ref = deviceType_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + deviceType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int DEVICE_CONFIG_FIELD_NUMBER = 4; + private context.ContextOuterClass.DeviceConfig deviceConfig_; + /** + * <code>.context.DeviceConfig device_config = 4;</code> + * @return Whether the deviceConfig field is set. + */ + @java.lang.Override + public boolean hasDeviceConfig() { + return deviceConfig_ != null; + } + /** + * <code>.context.DeviceConfig device_config = 4;</code> + * @return The deviceConfig. + */ + @java.lang.Override + public context.ContextOuterClass.DeviceConfig getDeviceConfig() { + return deviceConfig_ == null ? context.ContextOuterClass.DeviceConfig.getDefaultInstance() : deviceConfig_; + } + /** + * <code>.context.DeviceConfig device_config = 4;</code> + */ + @java.lang.Override + public context.ContextOuterClass.DeviceConfigOrBuilder getDeviceConfigOrBuilder() { + return getDeviceConfig(); + } + + public static final int DEVICE_OPERATIONAL_STATUS_FIELD_NUMBER = 5; + private int deviceOperationalStatus_; + /** + * <code>.context.DeviceOperationalStatusEnum device_operational_status = 5;</code> + * @return The enum numeric value on the wire for deviceOperationalStatus. + */ + @java.lang.Override public int getDeviceOperationalStatusValue() { + return deviceOperationalStatus_; + } + /** + * <code>.context.DeviceOperationalStatusEnum device_operational_status = 5;</code> + * @return The deviceOperationalStatus. + */ + @java.lang.Override public context.ContextOuterClass.DeviceOperationalStatusEnum getDeviceOperationalStatus() { + @SuppressWarnings("deprecation") + context.ContextOuterClass.DeviceOperationalStatusEnum result = context.ContextOuterClass.DeviceOperationalStatusEnum.valueOf(deviceOperationalStatus_); + return result == null ? context.ContextOuterClass.DeviceOperationalStatusEnum.UNRECOGNIZED : result; + } + + public static final int DEVICE_DRIVERS_FIELD_NUMBER = 6; + private java.util.List<java.lang.Integer> deviceDrivers_; + private static final com.google.protobuf.Internal.ListAdapter.Converter< + java.lang.Integer, context.ContextOuterClass.DeviceDriverEnum> deviceDrivers_converter_ = + new com.google.protobuf.Internal.ListAdapter.Converter< + java.lang.Integer, context.ContextOuterClass.DeviceDriverEnum>() { + public context.ContextOuterClass.DeviceDriverEnum convert(java.lang.Integer from) { + @SuppressWarnings("deprecation") + context.ContextOuterClass.DeviceDriverEnum result = context.ContextOuterClass.DeviceDriverEnum.valueOf(from); + return result == null ? context.ContextOuterClass.DeviceDriverEnum.UNRECOGNIZED : result; + } + }; + /** + * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code> + * @return A list containing the deviceDrivers. + */ + @java.lang.Override + public java.util.List<context.ContextOuterClass.DeviceDriverEnum> getDeviceDriversList() { + return new com.google.protobuf.Internal.ListAdapter< + java.lang.Integer, context.ContextOuterClass.DeviceDriverEnum>(deviceDrivers_, deviceDrivers_converter_); + } + /** + * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code> + * @return The count of deviceDrivers. + */ + @java.lang.Override + public int getDeviceDriversCount() { + return deviceDrivers_.size(); + } + /** + * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code> + * @param index The index of the element to return. + * @return The deviceDrivers at the given index. + */ + @java.lang.Override + public context.ContextOuterClass.DeviceDriverEnum getDeviceDrivers(int index) { + return deviceDrivers_converter_.convert(deviceDrivers_.get(index)); + } + /** + * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code> + * @return A list containing the enum numeric values on the wire for deviceDrivers. + */ + @java.lang.Override + public java.util.List<java.lang.Integer> + getDeviceDriversValueList() { + return deviceDrivers_; + } + /** + * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code> + * @param index The index of the value to return. + * @return The enum numeric value on the wire of deviceDrivers at the given index. + */ + @java.lang.Override + public int getDeviceDriversValue(int index) { + return deviceDrivers_.get(index); + } + private int deviceDriversMemoizedSerializedSize; + + public static final int DEVICE_ENDPOINTS_FIELD_NUMBER = 7; + private java.util.List<context.ContextOuterClass.EndPoint> deviceEndpoints_; + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + @java.lang.Override + public java.util.List<context.ContextOuterClass.EndPoint> getDeviceEndpointsList() { + return deviceEndpoints_; + } + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.EndPointOrBuilder> + getDeviceEndpointsOrBuilderList() { + return deviceEndpoints_; + } + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + @java.lang.Override + public int getDeviceEndpointsCount() { + return deviceEndpoints_.size(); + } + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + @java.lang.Override + public context.ContextOuterClass.EndPoint getDeviceEndpoints(int index) { + return deviceEndpoints_.get(index); + } + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + @java.lang.Override + public context.ContextOuterClass.EndPointOrBuilder getDeviceEndpointsOrBuilder( int index) { - return configRules_.get(index); + return deviceEndpoints_.get(index); + } + + public static final int COMPONENT_FIELD_NUMBER = 8; + private java.util.List<context.ContextOuterClass.Component> component_; + /** + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> + */ + @java.lang.Override + public java.util.List<context.ContextOuterClass.Component> getComponentList() { + return component_; + } + /** + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.ComponentOrBuilder> + getComponentOrBuilderList() { + return component_; + } + /** + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> + */ + @java.lang.Override + public int getComponentCount() { + return component_.size(); + } + /** + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> + */ + @java.lang.Override + public context.ContextOuterClass.Component getComponent(int index) { + return component_.get(index); + } + /** + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ComponentOrBuilder getComponentOrBuilder( + int index) { + return component_.get(index); + } + + public static final int CONTROLLER_ID_FIELD_NUMBER = 9; + private context.ContextOuterClass.DeviceId controllerId_; + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + * @return Whether the controllerId field is set. + */ + @java.lang.Override + public boolean hasControllerId() { + return controllerId_ != null; + } + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + * @return The controllerId. + */ + @java.lang.Override + public context.ContextOuterClass.DeviceId getControllerId() { + return controllerId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : controllerId_; + } + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + */ + @java.lang.Override + public context.ContextOuterClass.DeviceIdOrBuilder getControllerIdOrBuilder() { + return getControllerId(); } private byte memoizedIsInitialized = -1; @@ -15110,8 +16255,37 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < configRules_.size(); i++) { - output.writeMessage(1, configRules_.get(i)); + getSerializedSize(); + if (deviceId_ != null) { + output.writeMessage(1, getDeviceId()); + } + if (!getNameBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_); + } + if (!getDeviceTypeBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, deviceType_); + } + if (deviceConfig_ != null) { + output.writeMessage(4, getDeviceConfig()); + } + if (deviceOperationalStatus_ != context.ContextOuterClass.DeviceOperationalStatusEnum.DEVICEOPERATIONALSTATUS_UNDEFINED.getNumber()) { + output.writeEnum(5, deviceOperationalStatus_); + } + if (getDeviceDriversList().size() > 0) { + output.writeUInt32NoTag(50); + output.writeUInt32NoTag(deviceDriversMemoizedSerializedSize); + } + for (int i = 0; i < deviceDrivers_.size(); i++) { + output.writeEnumNoTag(deviceDrivers_.get(i)); + } + for (int i = 0; i < deviceEndpoints_.size(); i++) { + output.writeMessage(7, deviceEndpoints_.get(i)); + } + for (int i = 0; i < component_.size(); i++) { + output.writeMessage(8, component_.get(i)); + } + if (controllerId_ != null) { + output.writeMessage(9, getControllerId()); } unknownFields.writeTo(output); } @@ -15122,9 +16296,47 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < configRules_.size(); i++) { + if (deviceId_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, configRules_.get(i)); + .computeMessageSize(1, getDeviceId()); + } + if (!getNameBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_); + } + if (!getDeviceTypeBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, deviceType_); + } + if (deviceConfig_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(4, getDeviceConfig()); + } + if (deviceOperationalStatus_ != context.ContextOuterClass.DeviceOperationalStatusEnum.DEVICEOPERATIONALSTATUS_UNDEFINED.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(5, deviceOperationalStatus_); + } + { + int dataSize = 0; + for (int i = 0; i < deviceDrivers_.size(); i++) { + dataSize += com.google.protobuf.CodedOutputStream + .computeEnumSizeNoTag(deviceDrivers_.get(i)); + } + size += dataSize; + if (!getDeviceDriversList().isEmpty()) { size += 1; + size += com.google.protobuf.CodedOutputStream + .computeUInt32SizeNoTag(dataSize); + }deviceDriversMemoizedSerializedSize = dataSize; + } + for (int i = 0; i < deviceEndpoints_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(7, deviceEndpoints_.get(i)); + } + for (int i = 0; i < component_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(8, component_.get(i)); + } + if (controllerId_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(9, getControllerId()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -15136,13 +16348,36 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.DeviceConfig)) { + if (!(obj instanceof context.ContextOuterClass.Device)) { return super.equals(obj); } - context.ContextOuterClass.DeviceConfig other = (context.ContextOuterClass.DeviceConfig) obj; + context.ContextOuterClass.Device other = (context.ContextOuterClass.Device) obj; - if (!getConfigRulesList() - .equals(other.getConfigRulesList())) return false; + if (hasDeviceId() != other.hasDeviceId()) return false; + if (hasDeviceId()) { + if (!getDeviceId() + .equals(other.getDeviceId())) return false; + } + if (!getName() + .equals(other.getName())) return false; + if (!getDeviceType() + .equals(other.getDeviceType())) return false; + if (hasDeviceConfig() != other.hasDeviceConfig()) return false; + if (hasDeviceConfig()) { + if (!getDeviceConfig() + .equals(other.getDeviceConfig())) return false; + } + if (deviceOperationalStatus_ != other.deviceOperationalStatus_) return false; + if (!deviceDrivers_.equals(other.deviceDrivers_)) return false; + if (!getDeviceEndpointsList() + .equals(other.getDeviceEndpointsList())) return false; + if (!getComponentList() + .equals(other.getComponentList())) return false; + if (hasControllerId() != other.hasControllerId()) return false; + if (hasControllerId()) { + if (!getControllerId() + .equals(other.getControllerId())) return false; + } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -15154,78 +16389,104 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getConfigRulesCount() > 0) { - hash = (37 * hash) + CONFIG_RULES_FIELD_NUMBER; - hash = (53 * hash) + getConfigRulesList().hashCode(); + if (hasDeviceId()) { + hash = (37 * hash) + DEVICE_ID_FIELD_NUMBER; + hash = (53 * hash) + getDeviceId().hashCode(); + } + hash = (37 * hash) + NAME_FIELD_NUMBER; + hash = (53 * hash) + getName().hashCode(); + hash = (37 * hash) + DEVICE_TYPE_FIELD_NUMBER; + hash = (53 * hash) + getDeviceType().hashCode(); + if (hasDeviceConfig()) { + hash = (37 * hash) + DEVICE_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getDeviceConfig().hashCode(); + } + hash = (37 * hash) + DEVICE_OPERATIONAL_STATUS_FIELD_NUMBER; + hash = (53 * hash) + deviceOperationalStatus_; + if (getDeviceDriversCount() > 0) { + hash = (37 * hash) + DEVICE_DRIVERS_FIELD_NUMBER; + hash = (53 * hash) + deviceDrivers_.hashCode(); + } + if (getDeviceEndpointsCount() > 0) { + hash = (37 * hash) + DEVICE_ENDPOINTS_FIELD_NUMBER; + hash = (53 * hash) + getDeviceEndpointsList().hashCode(); + } + if (getComponentCount() > 0) { + hash = (37 * hash) + COMPONENT_FIELD_NUMBER; + hash = (53 * hash) + getComponentList().hashCode(); + } + if (hasControllerId()) { + hash = (37 * hash) + CONTROLLER_ID_FIELD_NUMBER; + hash = (53 * hash) + getControllerId().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.DeviceConfig parseFrom( + public static context.ContextOuterClass.Device parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.DeviceConfig parseFrom( + public static context.ContextOuterClass.Device parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.DeviceConfig parseFrom( + public static context.ContextOuterClass.Device parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.DeviceConfig parseFrom( + public static context.ContextOuterClass.Device parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.DeviceConfig parseFrom(byte[] data) + public static context.ContextOuterClass.Device parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.DeviceConfig parseFrom( + public static context.ContextOuterClass.Device parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.DeviceConfig parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Device parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.DeviceConfig parseFrom( + public static context.ContextOuterClass.Device 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 context.ContextOuterClass.DeviceConfig parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Device parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.DeviceConfig parseDelimitedFrom( + public static context.ContextOuterClass.Device 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 context.ContextOuterClass.DeviceConfig parseFrom( + public static context.ContextOuterClass.Device parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.DeviceConfig parseFrom( + public static context.ContextOuterClass.Device parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -15238,7 +16499,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.DeviceConfig prototype) { + public static Builder newBuilder(context.ContextOuterClass.Device prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -15254,26 +16515,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.DeviceConfig} + * Protobuf type {@code context.Device} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.DeviceConfig) - context.ContextOuterClass.DeviceConfigOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Device) + context.ContextOuterClass.DeviceOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_DeviceConfig_descriptor; + return context.ContextOuterClass.internal_static_context_Device_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_DeviceConfig_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Device_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.DeviceConfig.class, context.ContextOuterClass.DeviceConfig.Builder.class); + context.ContextOuterClass.Device.class, context.ContextOuterClass.Device.Builder.class); } - // Construct using context.ContextOuterClass.DeviceConfig.newBuilder() + // Construct using context.ContextOuterClass.Device.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -15286,17 +16547,50 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getConfigRulesFieldBuilder(); + getDeviceEndpointsFieldBuilder(); + getComponentFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (configRulesBuilder_ == null) { - configRules_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + if (deviceIdBuilder_ == null) { + deviceId_ = null; } else { - configRulesBuilder_.clear(); + deviceId_ = null; + deviceIdBuilder_ = null; + } + name_ = ""; + + deviceType_ = ""; + + if (deviceConfigBuilder_ == null) { + deviceConfig_ = null; + } else { + deviceConfig_ = null; + deviceConfigBuilder_ = null; + } + deviceOperationalStatus_ = 0; + + deviceDrivers_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + if (deviceEndpointsBuilder_ == null) { + deviceEndpoints_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + } else { + deviceEndpointsBuilder_.clear(); + } + if (componentBuilder_ == null) { + component_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + } else { + componentBuilder_.clear(); + } + if (controllerIdBuilder_ == null) { + controllerId_ = null; + } else { + controllerId_ = null; + controllerIdBuilder_ = null; } return this; } @@ -15304,17 +16598,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_DeviceConfig_descriptor; + return context.ContextOuterClass.internal_static_context_Device_descriptor; } @java.lang.Override - public context.ContextOuterClass.DeviceConfig getDefaultInstanceForType() { - return context.ContextOuterClass.DeviceConfig.getDefaultInstance(); + public context.ContextOuterClass.Device getDefaultInstanceForType() { + return context.ContextOuterClass.Device.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.DeviceConfig build() { - context.ContextOuterClass.DeviceConfig result = buildPartial(); + public context.ContextOuterClass.Device build() { + context.ContextOuterClass.Device result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -15322,17 +16616,49 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.DeviceConfig buildPartial() { - context.ContextOuterClass.DeviceConfig result = new context.ContextOuterClass.DeviceConfig(this); + public context.ContextOuterClass.Device buildPartial() { + context.ContextOuterClass.Device result = new context.ContextOuterClass.Device(this); int from_bitField0_ = bitField0_; - if (configRulesBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { - configRules_ = java.util.Collections.unmodifiableList(configRules_); - bitField0_ = (bitField0_ & ~0x00000001); + if (deviceIdBuilder_ == null) { + result.deviceId_ = deviceId_; + } else { + result.deviceId_ = deviceIdBuilder_.build(); + } + result.name_ = name_; + result.deviceType_ = deviceType_; + if (deviceConfigBuilder_ == null) { + result.deviceConfig_ = deviceConfig_; + } else { + result.deviceConfig_ = deviceConfigBuilder_.build(); + } + result.deviceOperationalStatus_ = deviceOperationalStatus_; + if (((bitField0_ & 0x00000001) != 0)) { + deviceDrivers_ = java.util.Collections.unmodifiableList(deviceDrivers_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.deviceDrivers_ = deviceDrivers_; + if (deviceEndpointsBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0)) { + deviceEndpoints_ = java.util.Collections.unmodifiableList(deviceEndpoints_); + bitField0_ = (bitField0_ & ~0x00000002); } - result.configRules_ = configRules_; + result.deviceEndpoints_ = deviceEndpoints_; } else { - result.configRules_ = configRulesBuilder_.build(); + result.deviceEndpoints_ = deviceEndpointsBuilder_.build(); + } + if (componentBuilder_ == null) { + if (((bitField0_ & 0x00000004) != 0)) { + component_ = java.util.Collections.unmodifiableList(component_); + bitField0_ = (bitField0_ & ~0x00000004); + } + result.component_ = component_; + } else { + result.component_ = componentBuilder_.build(); + } + if (controllerIdBuilder_ == null) { + result.controllerId_ = controllerId_; + } else { + result.controllerId_ = controllerIdBuilder_.build(); } onBuilt(); return result; @@ -15372,42 +16698,98 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.DeviceConfig) { - return mergeFrom((context.ContextOuterClass.DeviceConfig)other); + if (other instanceof context.ContextOuterClass.Device) { + return mergeFrom((context.ContextOuterClass.Device)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.DeviceConfig other) { - if (other == context.ContextOuterClass.DeviceConfig.getDefaultInstance()) return this; - if (configRulesBuilder_ == null) { - if (!other.configRules_.isEmpty()) { - if (configRules_.isEmpty()) { - configRules_ = other.configRules_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureConfigRulesIsMutable(); - configRules_.addAll(other.configRules_); - } - onChanged(); - } - } else { - if (!other.configRules_.isEmpty()) { - if (configRulesBuilder_.isEmpty()) { - configRulesBuilder_.dispose(); - configRulesBuilder_ = null; - configRules_ = other.configRules_; - bitField0_ = (bitField0_ & ~0x00000001); - configRulesBuilder_ = + public Builder mergeFrom(context.ContextOuterClass.Device other) { + if (other == context.ContextOuterClass.Device.getDefaultInstance()) return this; + if (other.hasDeviceId()) { + mergeDeviceId(other.getDeviceId()); + } + if (!other.getName().isEmpty()) { + name_ = other.name_; + onChanged(); + } + if (!other.getDeviceType().isEmpty()) { + deviceType_ = other.deviceType_; + onChanged(); + } + if (other.hasDeviceConfig()) { + mergeDeviceConfig(other.getDeviceConfig()); + } + if (other.deviceOperationalStatus_ != 0) { + setDeviceOperationalStatusValue(other.getDeviceOperationalStatusValue()); + } + if (!other.deviceDrivers_.isEmpty()) { + if (deviceDrivers_.isEmpty()) { + deviceDrivers_ = other.deviceDrivers_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureDeviceDriversIsMutable(); + deviceDrivers_.addAll(other.deviceDrivers_); + } + onChanged(); + } + if (deviceEndpointsBuilder_ == null) { + if (!other.deviceEndpoints_.isEmpty()) { + if (deviceEndpoints_.isEmpty()) { + deviceEndpoints_ = other.deviceEndpoints_; + bitField0_ = (bitField0_ & ~0x00000002); + } else { + ensureDeviceEndpointsIsMutable(); + deviceEndpoints_.addAll(other.deviceEndpoints_); + } + onChanged(); + } + } else { + if (!other.deviceEndpoints_.isEmpty()) { + if (deviceEndpointsBuilder_.isEmpty()) { + deviceEndpointsBuilder_.dispose(); + deviceEndpointsBuilder_ = null; + deviceEndpoints_ = other.deviceEndpoints_; + bitField0_ = (bitField0_ & ~0x00000002); + deviceEndpointsBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getConfigRulesFieldBuilder() : null; + getDeviceEndpointsFieldBuilder() : null; } else { - configRulesBuilder_.addAllMessages(other.configRules_); + deviceEndpointsBuilder_.addAllMessages(other.deviceEndpoints_); + } + } + } + if (componentBuilder_ == null) { + if (!other.component_.isEmpty()) { + if (component_.isEmpty()) { + component_ = other.component_; + bitField0_ = (bitField0_ & ~0x00000004); + } else { + ensureComponentIsMutable(); + component_.addAll(other.component_); + } + onChanged(); + } + } else { + if (!other.component_.isEmpty()) { + if (componentBuilder_.isEmpty()) { + componentBuilder_.dispose(); + componentBuilder_ = null; + component_ = other.component_; + bitField0_ = (bitField0_ & ~0x00000004); + componentBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getComponentFieldBuilder() : null; + } else { + componentBuilder_.addAllMessages(other.component_); } } } + if (other.hasControllerId()) { + mergeControllerId(other.getControllerId()); + } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; @@ -15423,11 +16805,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.DeviceConfig parsedMessage = null; + context.ContextOuterClass.Device parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.DeviceConfig) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.Device) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -15438,248 +16820,11194 @@ public final class ContextOuterClass { } private int bitField0_; - private java.util.List<context.ContextOuterClass.ConfigRule> configRules_ = - java.util.Collections.emptyList(); - private void ensureConfigRulesIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - configRules_ = new java.util.ArrayList<context.ContextOuterClass.ConfigRule>(configRules_); - bitField0_ |= 0x00000001; - } + private context.ContextOuterClass.DeviceId deviceId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> deviceIdBuilder_; + /** + * <code>.context.DeviceId device_id = 1;</code> + * @return Whether the deviceId field is set. + */ + public boolean hasDeviceId() { + return deviceIdBuilder_ != null || deviceId_ != null; } - - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder> configRulesBuilder_; - /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.DeviceId device_id = 1;</code> + * @return The deviceId. */ - public java.util.List<context.ContextOuterClass.ConfigRule> getConfigRulesList() { - if (configRulesBuilder_ == null) { - return java.util.Collections.unmodifiableList(configRules_); + public context.ContextOuterClass.DeviceId getDeviceId() { + if (deviceIdBuilder_ == null) { + return deviceId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; } else { - return configRulesBuilder_.getMessageList(); + return deviceIdBuilder_.getMessage(); } } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.DeviceId device_id = 1;</code> */ - public int getConfigRulesCount() { - if (configRulesBuilder_ == null) { - return configRules_.size(); + public Builder setDeviceId(context.ContextOuterClass.DeviceId value) { + if (deviceIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + deviceId_ = value; + onChanged(); } else { - return configRulesBuilder_.getCount(); + deviceIdBuilder_.setMessage(value); } + + return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.DeviceId device_id = 1;</code> */ - public context.ContextOuterClass.ConfigRule getConfigRules(int index) { - if (configRulesBuilder_ == null) { - return configRules_.get(index); + public Builder setDeviceId( + context.ContextOuterClass.DeviceId.Builder builderForValue) { + if (deviceIdBuilder_ == null) { + deviceId_ = builderForValue.build(); + onChanged(); } else { - return configRulesBuilder_.getMessage(index); + deviceIdBuilder_.setMessage(builderForValue.build()); } + + return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.DeviceId device_id = 1;</code> */ - public Builder setConfigRules( - int index, context.ContextOuterClass.ConfigRule value) { - if (configRulesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + public Builder mergeDeviceId(context.ContextOuterClass.DeviceId value) { + if (deviceIdBuilder_ == null) { + if (deviceId_ != null) { + deviceId_ = + context.ContextOuterClass.DeviceId.newBuilder(deviceId_).mergeFrom(value).buildPartial(); + } else { + deviceId_ = value; } - ensureConfigRulesIsMutable(); - configRules_.set(index, value); onChanged(); } else { - configRulesBuilder_.setMessage(index, value); + deviceIdBuilder_.mergeFrom(value); } + return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.DeviceId device_id = 1;</code> */ - public Builder setConfigRules( - int index, context.ContextOuterClass.ConfigRule.Builder builderForValue) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); - configRules_.set(index, builderForValue.build()); + public Builder clearDeviceId() { + if (deviceIdBuilder_ == null) { + deviceId_ = null; onChanged(); } else { - configRulesBuilder_.setMessage(index, builderForValue.build()); + deviceId_ = null; + deviceIdBuilder_ = null; } + return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.DeviceId device_id = 1;</code> */ - public Builder addConfigRules(context.ContextOuterClass.ConfigRule value) { - if (configRulesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureConfigRulesIsMutable(); - configRules_.add(value); - onChanged(); + public context.ContextOuterClass.DeviceId.Builder getDeviceIdBuilder() { + + onChanged(); + return getDeviceIdFieldBuilder().getBuilder(); + } + /** + * <code>.context.DeviceId device_id = 1;</code> + */ + public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder() { + if (deviceIdBuilder_ != null) { + return deviceIdBuilder_.getMessageOrBuilder(); } else { - configRulesBuilder_.addMessage(value); + return deviceId_ == null ? + context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; } - return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.DeviceId device_id = 1;</code> */ - public Builder addConfigRules( - int index, context.ContextOuterClass.ConfigRule value) { - if (configRulesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureConfigRulesIsMutable(); - configRules_.add(index, value); - onChanged(); + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> + getDeviceIdFieldBuilder() { + if (deviceIdBuilder_ == null) { + deviceIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder>( + getDeviceId(), + getParentForChildren(), + isClean()); + deviceId_ = null; + } + return deviceIdBuilder_; + } + + private java.lang.Object name_ = ""; + /** + * <code>string name = 2;</code> + * @return The name. + */ + public java.lang.String getName() { + java.lang.Object ref = name_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; } else { - configRulesBuilder_.addMessage(index, value); + return (java.lang.String) ref; + } + } + /** + * <code>string name = 2;</code> + * @return The bytes for name. + */ + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } + } + /** + * <code>string name = 2;</code> + * @param value The name to set. + * @return This builder for chaining. + */ + public Builder setName( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + name_ = value; + onChanged(); return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>string name = 2;</code> + * @return This builder for chaining. */ - public Builder addConfigRules( - context.ContextOuterClass.ConfigRule.Builder builderForValue) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); - configRules_.add(builderForValue.build()); - onChanged(); + public Builder clearName() { + + name_ = getDefaultInstance().getName(); + onChanged(); + return this; + } + /** + * <code>string name = 2;</code> + * @param value The bytes for name to set. + * @return This builder for chaining. + */ + public Builder setNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + name_ = value; + onChanged(); + return this; + } + + private java.lang.Object deviceType_ = ""; + /** + * <code>string device_type = 3;</code> + * @return The deviceType. + */ + public java.lang.String getDeviceType() { + java.lang.Object ref = deviceType_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + deviceType_ = s; + return s; } else { - configRulesBuilder_.addMessage(builderForValue.build()); + return (java.lang.String) ref; + } + } + /** + * <code>string device_type = 3;</code> + * @return The bytes for deviceType. + */ + public com.google.protobuf.ByteString + getDeviceTypeBytes() { + java.lang.Object ref = deviceType_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + deviceType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } + } + /** + * <code>string device_type = 3;</code> + * @param value The deviceType to set. + * @return This builder for chaining. + */ + public Builder setDeviceType( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + deviceType_ = value; + onChanged(); return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>string device_type = 3;</code> + * @return This builder for chaining. */ - public Builder addConfigRules( - int index, context.ContextOuterClass.ConfigRule.Builder builderForValue) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); - configRules_.add(index, builderForValue.build()); + public Builder clearDeviceType() { + + deviceType_ = getDefaultInstance().getDeviceType(); + onChanged(); + return this; + } + /** + * <code>string device_type = 3;</code> + * @param value The bytes for deviceType to set. + * @return This builder for chaining. + */ + public Builder setDeviceTypeBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + deviceType_ = value; + onChanged(); + return this; + } + + private context.ContextOuterClass.DeviceConfig deviceConfig_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceConfig, context.ContextOuterClass.DeviceConfig.Builder, context.ContextOuterClass.DeviceConfigOrBuilder> deviceConfigBuilder_; + /** + * <code>.context.DeviceConfig device_config = 4;</code> + * @return Whether the deviceConfig field is set. + */ + public boolean hasDeviceConfig() { + return deviceConfigBuilder_ != null || deviceConfig_ != null; + } + /** + * <code>.context.DeviceConfig device_config = 4;</code> + * @return The deviceConfig. + */ + public context.ContextOuterClass.DeviceConfig getDeviceConfig() { + if (deviceConfigBuilder_ == null) { + return deviceConfig_ == null ? context.ContextOuterClass.DeviceConfig.getDefaultInstance() : deviceConfig_; + } else { + return deviceConfigBuilder_.getMessage(); + } + } + /** + * <code>.context.DeviceConfig device_config = 4;</code> + */ + public Builder setDeviceConfig(context.ContextOuterClass.DeviceConfig value) { + if (deviceConfigBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + deviceConfig_ = value; onChanged(); } else { - configRulesBuilder_.addMessage(index, builderForValue.build()); + deviceConfigBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.DeviceConfig device_config = 4;</code> */ - public Builder addAllConfigRules( - java.lang.Iterable<? extends context.ContextOuterClass.ConfigRule> values) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, configRules_); + public Builder setDeviceConfig( + context.ContextOuterClass.DeviceConfig.Builder builderForValue) { + if (deviceConfigBuilder_ == null) { + deviceConfig_ = builderForValue.build(); onChanged(); } else { - configRulesBuilder_.addAllMessages(values); + deviceConfigBuilder_.setMessage(builderForValue.build()); } + return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.DeviceConfig device_config = 4;</code> */ - public Builder clearConfigRules() { - if (configRulesBuilder_ == null) { - configRules_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + public Builder mergeDeviceConfig(context.ContextOuterClass.DeviceConfig value) { + if (deviceConfigBuilder_ == null) { + if (deviceConfig_ != null) { + deviceConfig_ = + context.ContextOuterClass.DeviceConfig.newBuilder(deviceConfig_).mergeFrom(value).buildPartial(); + } else { + deviceConfig_ = value; + } onChanged(); } else { - configRulesBuilder_.clear(); + deviceConfigBuilder_.mergeFrom(value); } + return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.DeviceConfig device_config = 4;</code> */ - public Builder removeConfigRules(int index) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); - configRules_.remove(index); + public Builder clearDeviceConfig() { + if (deviceConfigBuilder_ == null) { + deviceConfig_ = null; onChanged(); } else { - configRulesBuilder_.remove(index); + deviceConfig_ = null; + deviceConfigBuilder_ = null; } + return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.DeviceConfig device_config = 4;</code> */ - public context.ContextOuterClass.ConfigRule.Builder getConfigRulesBuilder( - int index) { - return getConfigRulesFieldBuilder().getBuilder(index); + public context.ContextOuterClass.DeviceConfig.Builder getDeviceConfigBuilder() { + + onChanged(); + return getDeviceConfigFieldBuilder().getBuilder(); } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.DeviceConfig device_config = 4;</code> */ - public context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( - int index) { - if (configRulesBuilder_ == null) { - return configRules_.get(index); } else { - return configRulesBuilder_.getMessageOrBuilder(index); + public context.ContextOuterClass.DeviceConfigOrBuilder getDeviceConfigOrBuilder() { + if (deviceConfigBuilder_ != null) { + return deviceConfigBuilder_.getMessageOrBuilder(); + } else { + return deviceConfig_ == null ? + context.ContextOuterClass.DeviceConfig.getDefaultInstance() : deviceConfig_; } } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.DeviceConfig device_config = 4;</code> */ - public java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> - getConfigRulesOrBuilderList() { - if (configRulesBuilder_ != null) { - return configRulesBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(configRules_); + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceConfig, context.ContextOuterClass.DeviceConfig.Builder, context.ContextOuterClass.DeviceConfigOrBuilder> + getDeviceConfigFieldBuilder() { + if (deviceConfigBuilder_ == null) { + deviceConfigBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceConfig, context.ContextOuterClass.DeviceConfig.Builder, context.ContextOuterClass.DeviceConfigOrBuilder>( + getDeviceConfig(), + getParentForChildren(), + isClean()); + deviceConfig_ = null; } + return deviceConfigBuilder_; } + + private int deviceOperationalStatus_ = 0; /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.DeviceOperationalStatusEnum device_operational_status = 5;</code> + * @return The enum numeric value on the wire for deviceOperationalStatus. */ - public context.ContextOuterClass.ConfigRule.Builder addConfigRulesBuilder() { - return getConfigRulesFieldBuilder().addBuilder( - context.ContextOuterClass.ConfigRule.getDefaultInstance()); + @java.lang.Override public int getDeviceOperationalStatusValue() { + return deviceOperationalStatus_; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.DeviceOperationalStatusEnum device_operational_status = 5;</code> + * @param value The enum numeric value on the wire for deviceOperationalStatus to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.ConfigRule.Builder addConfigRulesBuilder( - int index) { - return getConfigRulesFieldBuilder().addBuilder( - index, context.ContextOuterClass.ConfigRule.getDefaultInstance()); + public Builder setDeviceOperationalStatusValue(int value) { + + deviceOperationalStatus_ = value; + onChanged(); + return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.DeviceOperationalStatusEnum device_operational_status = 5;</code> + * @return The deviceOperationalStatus. */ - public java.util.List<context.ContextOuterClass.ConfigRule.Builder> - getConfigRulesBuilderList() { - return getConfigRulesFieldBuilder().getBuilderList(); + @java.lang.Override + public context.ContextOuterClass.DeviceOperationalStatusEnum getDeviceOperationalStatus() { + @SuppressWarnings("deprecation") + context.ContextOuterClass.DeviceOperationalStatusEnum result = context.ContextOuterClass.DeviceOperationalStatusEnum.valueOf(deviceOperationalStatus_); + return result == null ? context.ContextOuterClass.DeviceOperationalStatusEnum.UNRECOGNIZED : result; } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder> - getConfigRulesFieldBuilder() { - if (configRulesBuilder_ == null) { - configRulesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder>( - configRules_, - ((bitField0_ & 0x00000001) != 0), - getParentForChildren(), - isClean()); - configRules_ = null; + /** + * <code>.context.DeviceOperationalStatusEnum device_operational_status = 5;</code> + * @param value The deviceOperationalStatus to set. + * @return This builder for chaining. + */ + public Builder setDeviceOperationalStatus(context.ContextOuterClass.DeviceOperationalStatusEnum value) { + if (value == null) { + throw new NullPointerException(); } - return configRulesBuilder_; + + deviceOperationalStatus_ = value.getNumber(); + onChanged(); + return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { + /** + * <code>.context.DeviceOperationalStatusEnum device_operational_status = 5;</code> + * @return This builder for chaining. + */ + public Builder clearDeviceOperationalStatus() { + + deviceOperationalStatus_ = 0; + onChanged(); + return this; + } + + private java.util.List<java.lang.Integer> deviceDrivers_ = + java.util.Collections.emptyList(); + private void ensureDeviceDriversIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + deviceDrivers_ = new java.util.ArrayList<java.lang.Integer>(deviceDrivers_); + bitField0_ |= 0x00000001; + } + } + /** + * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code> + * @return A list containing the deviceDrivers. + */ + public java.util.List<context.ContextOuterClass.DeviceDriverEnum> getDeviceDriversList() { + return new com.google.protobuf.Internal.ListAdapter< + java.lang.Integer, context.ContextOuterClass.DeviceDriverEnum>(deviceDrivers_, deviceDrivers_converter_); + } + /** + * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code> + * @return The count of deviceDrivers. + */ + public int getDeviceDriversCount() { + return deviceDrivers_.size(); + } + /** + * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code> + * @param index The index of the element to return. + * @return The deviceDrivers at the given index. + */ + public context.ContextOuterClass.DeviceDriverEnum getDeviceDrivers(int index) { + return deviceDrivers_converter_.convert(deviceDrivers_.get(index)); + } + /** + * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code> + * @param index The index to set the value at. + * @param value The deviceDrivers to set. + * @return This builder for chaining. + */ + public Builder setDeviceDrivers( + int index, context.ContextOuterClass.DeviceDriverEnum value) { + if (value == null) { + throw new NullPointerException(); + } + ensureDeviceDriversIsMutable(); + deviceDrivers_.set(index, value.getNumber()); + onChanged(); + return this; + } + /** + * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code> + * @param value The deviceDrivers to add. + * @return This builder for chaining. + */ + public Builder addDeviceDrivers(context.ContextOuterClass.DeviceDriverEnum value) { + if (value == null) { + throw new NullPointerException(); + } + ensureDeviceDriversIsMutable(); + deviceDrivers_.add(value.getNumber()); + onChanged(); + return this; + } + /** + * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code> + * @param values The deviceDrivers to add. + * @return This builder for chaining. + */ + public Builder addAllDeviceDrivers( + java.lang.Iterable<? extends context.ContextOuterClass.DeviceDriverEnum> values) { + ensureDeviceDriversIsMutable(); + for (context.ContextOuterClass.DeviceDriverEnum value : values) { + deviceDrivers_.add(value.getNumber()); + } + onChanged(); + return this; + } + /** + * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code> + * @return This builder for chaining. + */ + public Builder clearDeviceDrivers() { + deviceDrivers_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code> + * @return A list containing the enum numeric values on the wire for deviceDrivers. + */ + public java.util.List<java.lang.Integer> + getDeviceDriversValueList() { + return java.util.Collections.unmodifiableList(deviceDrivers_); + } + /** + * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code> + * @param index The index of the value to return. + * @return The enum numeric value on the wire of deviceDrivers at the given index. + */ + public int getDeviceDriversValue(int index) { + return deviceDrivers_.get(index); + } + /** + * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code> + * @param index The index of the value to return. + * @return The enum numeric value on the wire of deviceDrivers at the given index. + * @return This builder for chaining. + */ + public Builder setDeviceDriversValue( + int index, int value) { + ensureDeviceDriversIsMutable(); + deviceDrivers_.set(index, value); + onChanged(); + return this; + } + /** + * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code> + * @param value The enum numeric value on the wire for deviceDrivers to add. + * @return This builder for chaining. + */ + public Builder addDeviceDriversValue(int value) { + ensureDeviceDriversIsMutable(); + deviceDrivers_.add(value); + onChanged(); + return this; + } + /** + * <code>repeated .context.DeviceDriverEnum device_drivers = 6;</code> + * @param values The enum numeric values on the wire for deviceDrivers to add. + * @return This builder for chaining. + */ + public Builder addAllDeviceDriversValue( + java.lang.Iterable<java.lang.Integer> values) { + ensureDeviceDriversIsMutable(); + for (int value : values) { + deviceDrivers_.add(value); + } + onChanged(); + return this; + } + + private java.util.List<context.ContextOuterClass.EndPoint> deviceEndpoints_ = + java.util.Collections.emptyList(); + private void ensureDeviceEndpointsIsMutable() { + if (!((bitField0_ & 0x00000002) != 0)) { + deviceEndpoints_ = new java.util.ArrayList<context.ContextOuterClass.EndPoint>(deviceEndpoints_); + bitField0_ |= 0x00000002; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPoint, context.ContextOuterClass.EndPoint.Builder, context.ContextOuterClass.EndPointOrBuilder> deviceEndpointsBuilder_; + + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + public java.util.List<context.ContextOuterClass.EndPoint> getDeviceEndpointsList() { + if (deviceEndpointsBuilder_ == null) { + return java.util.Collections.unmodifiableList(deviceEndpoints_); + } else { + return deviceEndpointsBuilder_.getMessageList(); + } + } + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + public int getDeviceEndpointsCount() { + if (deviceEndpointsBuilder_ == null) { + return deviceEndpoints_.size(); + } else { + return deviceEndpointsBuilder_.getCount(); + } + } + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + public context.ContextOuterClass.EndPoint getDeviceEndpoints(int index) { + if (deviceEndpointsBuilder_ == null) { + return deviceEndpoints_.get(index); + } else { + return deviceEndpointsBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + public Builder setDeviceEndpoints( + int index, context.ContextOuterClass.EndPoint value) { + if (deviceEndpointsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDeviceEndpointsIsMutable(); + deviceEndpoints_.set(index, value); + onChanged(); + } else { + deviceEndpointsBuilder_.setMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + public Builder setDeviceEndpoints( + int index, context.ContextOuterClass.EndPoint.Builder builderForValue) { + if (deviceEndpointsBuilder_ == null) { + ensureDeviceEndpointsIsMutable(); + deviceEndpoints_.set(index, builderForValue.build()); + onChanged(); + } else { + deviceEndpointsBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + public Builder addDeviceEndpoints(context.ContextOuterClass.EndPoint value) { + if (deviceEndpointsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDeviceEndpointsIsMutable(); + deviceEndpoints_.add(value); + onChanged(); + } else { + deviceEndpointsBuilder_.addMessage(value); + } + return this; + } + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + public Builder addDeviceEndpoints( + int index, context.ContextOuterClass.EndPoint value) { + if (deviceEndpointsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDeviceEndpointsIsMutable(); + deviceEndpoints_.add(index, value); + onChanged(); + } else { + deviceEndpointsBuilder_.addMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + public Builder addDeviceEndpoints( + context.ContextOuterClass.EndPoint.Builder builderForValue) { + if (deviceEndpointsBuilder_ == null) { + ensureDeviceEndpointsIsMutable(); + deviceEndpoints_.add(builderForValue.build()); + onChanged(); + } else { + deviceEndpointsBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + public Builder addDeviceEndpoints( + int index, context.ContextOuterClass.EndPoint.Builder builderForValue) { + if (deviceEndpointsBuilder_ == null) { + ensureDeviceEndpointsIsMutable(); + deviceEndpoints_.add(index, builderForValue.build()); + onChanged(); + } else { + deviceEndpointsBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + public Builder addAllDeviceEndpoints( + java.lang.Iterable<? extends context.ContextOuterClass.EndPoint> values) { + if (deviceEndpointsBuilder_ == null) { + ensureDeviceEndpointsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, deviceEndpoints_); + onChanged(); + } else { + deviceEndpointsBuilder_.addAllMessages(values); + } + return this; + } + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + public Builder clearDeviceEndpoints() { + if (deviceEndpointsBuilder_ == null) { + deviceEndpoints_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + } else { + deviceEndpointsBuilder_.clear(); + } + return this; + } + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + public Builder removeDeviceEndpoints(int index) { + if (deviceEndpointsBuilder_ == null) { + ensureDeviceEndpointsIsMutable(); + deviceEndpoints_.remove(index); + onChanged(); + } else { + deviceEndpointsBuilder_.remove(index); + } + return this; + } + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + public context.ContextOuterClass.EndPoint.Builder getDeviceEndpointsBuilder( + int index) { + return getDeviceEndpointsFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + public context.ContextOuterClass.EndPointOrBuilder getDeviceEndpointsOrBuilder( + int index) { + if (deviceEndpointsBuilder_ == null) { + return deviceEndpoints_.get(index); } else { + return deviceEndpointsBuilder_.getMessageOrBuilder(index); + } + } + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + public java.util.List<? extends context.ContextOuterClass.EndPointOrBuilder> + getDeviceEndpointsOrBuilderList() { + if (deviceEndpointsBuilder_ != null) { + return deviceEndpointsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(deviceEndpoints_); + } + } + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + public context.ContextOuterClass.EndPoint.Builder addDeviceEndpointsBuilder() { + return getDeviceEndpointsFieldBuilder().addBuilder( + context.ContextOuterClass.EndPoint.getDefaultInstance()); + } + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + public context.ContextOuterClass.EndPoint.Builder addDeviceEndpointsBuilder( + int index) { + return getDeviceEndpointsFieldBuilder().addBuilder( + index, context.ContextOuterClass.EndPoint.getDefaultInstance()); + } + /** + * <code>repeated .context.EndPoint device_endpoints = 7;</code> + */ + public java.util.List<context.ContextOuterClass.EndPoint.Builder> + getDeviceEndpointsBuilderList() { + return getDeviceEndpointsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPoint, context.ContextOuterClass.EndPoint.Builder, context.ContextOuterClass.EndPointOrBuilder> + getDeviceEndpointsFieldBuilder() { + if (deviceEndpointsBuilder_ == null) { + deviceEndpointsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPoint, context.ContextOuterClass.EndPoint.Builder, context.ContextOuterClass.EndPointOrBuilder>( + deviceEndpoints_, + ((bitField0_ & 0x00000002) != 0), + getParentForChildren(), + isClean()); + deviceEndpoints_ = null; + } + return deviceEndpointsBuilder_; + } + + private java.util.List<context.ContextOuterClass.Component> component_ = + java.util.Collections.emptyList(); + private void ensureComponentIsMutable() { + if (!((bitField0_ & 0x00000004) != 0)) { + component_ = new java.util.ArrayList<context.ContextOuterClass.Component>(component_); + bitField0_ |= 0x00000004; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Component, context.ContextOuterClass.Component.Builder, context.ContextOuterClass.ComponentOrBuilder> componentBuilder_; + + /** + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> + */ + public java.util.List<context.ContextOuterClass.Component> getComponentList() { + if (componentBuilder_ == null) { + return java.util.Collections.unmodifiableList(component_); + } else { + return componentBuilder_.getMessageList(); + } + } + /** + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> + */ + public int getComponentCount() { + if (componentBuilder_ == null) { + return component_.size(); + } else { + return componentBuilder_.getCount(); + } + } + /** + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> + */ + public context.ContextOuterClass.Component getComponent(int index) { + if (componentBuilder_ == null) { + return component_.get(index); + } else { + return componentBuilder_.getMessage(index); + } + } + /** + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> + */ + public Builder setComponent( + int index, context.ContextOuterClass.Component value) { + if (componentBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureComponentIsMutable(); + component_.set(index, value); + onChanged(); + } else { + componentBuilder_.setMessage(index, value); + } + return this; + } + /** + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> + */ + public Builder setComponent( + int index, context.ContextOuterClass.Component.Builder builderForValue) { + if (componentBuilder_ == null) { + ensureComponentIsMutable(); + component_.set(index, builderForValue.build()); + onChanged(); + } else { + componentBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> + */ + public Builder addComponent(context.ContextOuterClass.Component value) { + if (componentBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureComponentIsMutable(); + component_.add(value); + onChanged(); + } else { + componentBuilder_.addMessage(value); + } + return this; + } + /** + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> + */ + public Builder addComponent( + int index, context.ContextOuterClass.Component value) { + if (componentBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureComponentIsMutable(); + component_.add(index, value); + onChanged(); + } else { + componentBuilder_.addMessage(index, value); + } + return this; + } + /** + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> + */ + public Builder addComponent( + context.ContextOuterClass.Component.Builder builderForValue) { + if (componentBuilder_ == null) { + ensureComponentIsMutable(); + component_.add(builderForValue.build()); + onChanged(); + } else { + componentBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> + */ + public Builder addComponent( + int index, context.ContextOuterClass.Component.Builder builderForValue) { + if (componentBuilder_ == null) { + ensureComponentIsMutable(); + component_.add(index, builderForValue.build()); + onChanged(); + } else { + componentBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> + */ + public Builder addAllComponent( + java.lang.Iterable<? extends context.ContextOuterClass.Component> values) { + if (componentBuilder_ == null) { + ensureComponentIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, component_); + onChanged(); + } else { + componentBuilder_.addAllMessages(values); + } + return this; + } + /** + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> + */ + public Builder clearComponent() { + if (componentBuilder_ == null) { + component_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + } else { + componentBuilder_.clear(); + } + return this; + } + /** + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> + */ + public Builder removeComponent(int index) { + if (componentBuilder_ == null) { + ensureComponentIsMutable(); + component_.remove(index); + onChanged(); + } else { + componentBuilder_.remove(index); + } + return this; + } + /** + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> + */ + public context.ContextOuterClass.Component.Builder getComponentBuilder( + int index) { + return getComponentFieldBuilder().getBuilder(index); + } + /** + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> + */ + public context.ContextOuterClass.ComponentOrBuilder getComponentOrBuilder( + int index) { + if (componentBuilder_ == null) { + return component_.get(index); } else { + return componentBuilder_.getMessageOrBuilder(index); + } + } + /** + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> + */ + public java.util.List<? extends context.ContextOuterClass.ComponentOrBuilder> + getComponentOrBuilderList() { + if (componentBuilder_ != null) { + return componentBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(component_); + } + } + /** + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> + */ + public context.ContextOuterClass.Component.Builder addComponentBuilder() { + return getComponentFieldBuilder().addBuilder( + context.ContextOuterClass.Component.getDefaultInstance()); + } + /** + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> + */ + public context.ContextOuterClass.Component.Builder addComponentBuilder( + int index) { + return getComponentFieldBuilder().addBuilder( + index, context.ContextOuterClass.Component.getDefaultInstance()); + } + /** + * <pre> + * Used for inventory + * </pre> + * + * <code>repeated .context.Component component = 8;</code> + */ + public java.util.List<context.ContextOuterClass.Component.Builder> + getComponentBuilderList() { + return getComponentFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Component, context.ContextOuterClass.Component.Builder, context.ContextOuterClass.ComponentOrBuilder> + getComponentFieldBuilder() { + if (componentBuilder_ == null) { + componentBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Component, context.ContextOuterClass.Component.Builder, context.ContextOuterClass.ComponentOrBuilder>( + component_, + ((bitField0_ & 0x00000004) != 0), + getParentForChildren(), + isClean()); + component_ = null; + } + return componentBuilder_; + } + + private context.ContextOuterClass.DeviceId controllerId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> controllerIdBuilder_; + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + * @return Whether the controllerId field is set. + */ + public boolean hasControllerId() { + return controllerIdBuilder_ != null || controllerId_ != null; + } + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + * @return The controllerId. + */ + public context.ContextOuterClass.DeviceId getControllerId() { + if (controllerIdBuilder_ == null) { + return controllerId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : controllerId_; + } else { + return controllerIdBuilder_.getMessage(); + } + } + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + */ + public Builder setControllerId(context.ContextOuterClass.DeviceId value) { + if (controllerIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + controllerId_ = value; + onChanged(); + } else { + controllerIdBuilder_.setMessage(value); + } + + return this; + } + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + */ + public Builder setControllerId( + context.ContextOuterClass.DeviceId.Builder builderForValue) { + if (controllerIdBuilder_ == null) { + controllerId_ = builderForValue.build(); + onChanged(); + } else { + controllerIdBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + */ + public Builder mergeControllerId(context.ContextOuterClass.DeviceId value) { + if (controllerIdBuilder_ == null) { + if (controllerId_ != null) { + controllerId_ = + context.ContextOuterClass.DeviceId.newBuilder(controllerId_).mergeFrom(value).buildPartial(); + } else { + controllerId_ = value; + } + onChanged(); + } else { + controllerIdBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + */ + public Builder clearControllerId() { + if (controllerIdBuilder_ == null) { + controllerId_ = null; + onChanged(); + } else { + controllerId_ = null; + controllerIdBuilder_ = null; + } + + return this; + } + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + */ + public context.ContextOuterClass.DeviceId.Builder getControllerIdBuilder() { + + onChanged(); + return getControllerIdFieldBuilder().getBuilder(); + } + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + */ + public context.ContextOuterClass.DeviceIdOrBuilder getControllerIdOrBuilder() { + if (controllerIdBuilder_ != null) { + return controllerIdBuilder_.getMessageOrBuilder(); + } else { + return controllerId_ == null ? + context.ContextOuterClass.DeviceId.getDefaultInstance() : controllerId_; + } + } + /** + * <pre> + * Identifier of node controlling the actual device + * </pre> + * + * <code>.context.DeviceId controller_id = 9;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> + getControllerIdFieldBuilder() { + if (controllerIdBuilder_ == null) { + controllerIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder>( + getControllerId(), + getParentForChildren(), + isClean()); + controllerId_ = null; + } + return controllerIdBuilder_; + } + @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:context.Device) + } + + // @@protoc_insertion_point(class_scope:context.Device) + private static final context.ContextOuterClass.Device DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new context.ContextOuterClass.Device(); + } + + public static context.ContextOuterClass.Device getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<Device> + PARSER = new com.google.protobuf.AbstractParser<Device>() { + @java.lang.Override + public Device parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new Device(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<Device> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<Device> getParserForType() { + return PARSER; + } + + @java.lang.Override + public context.ContextOuterClass.Device getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface ComponentOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Component) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>repeated string comp_string = 1;</code> + * @return A list containing the compString. + */ + java.util.List<java.lang.String> + getCompStringList(); + /** + * <code>repeated string comp_string = 1;</code> + * @return The count of compString. + */ + int getCompStringCount(); + /** + * <code>repeated string comp_string = 1;</code> + * @param index The index of the element to return. + * @return The compString at the given index. + */ + java.lang.String getCompString(int index); + /** + * <code>repeated string comp_string = 1;</code> + * @param index The index of the value to return. + * @return The bytes of the compString at the given index. + */ + com.google.protobuf.ByteString + getCompStringBytes(int index); + } + /** + * Protobuf type {@code context.Component} + */ + public static final class Component extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:context.Component) + ComponentOrBuilder { + private static final long serialVersionUID = 0L; + // Use Component.newBuilder() to construct. + private Component(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private Component() { + compString_ = com.google.protobuf.LazyStringArrayList.EMPTY; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new Component(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private Component( + 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: { + java.lang.String s = input.readStringRequireUtf8(); + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + compString_ = new com.google.protobuf.LazyStringArrayList(); + mutable_bitField0_ |= 0x00000001; + } + compString_.add(s); + 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)) { + compString_ = compString_.getUnmodifiableView(); + } + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_Component_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_Component_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.Component.class, context.ContextOuterClass.Component.Builder.class); + } + + public static final int COMP_STRING_FIELD_NUMBER = 1; + private com.google.protobuf.LazyStringList compString_; + /** + * <code>repeated string comp_string = 1;</code> + * @return A list containing the compString. + */ + public com.google.protobuf.ProtocolStringList + getCompStringList() { + return compString_; + } + /** + * <code>repeated string comp_string = 1;</code> + * @return The count of compString. + */ + public int getCompStringCount() { + return compString_.size(); + } + /** + * <code>repeated string comp_string = 1;</code> + * @param index The index of the element to return. + * @return The compString at the given index. + */ + public java.lang.String getCompString(int index) { + return compString_.get(index); + } + /** + * <code>repeated string comp_string = 1;</code> + * @param index The index of the value to return. + * @return The bytes of the compString at the given index. + */ + public com.google.protobuf.ByteString + getCompStringBytes(int index) { + return compString_.getByteString(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 < compString_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, compString_.getRaw(i)); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + { + int dataSize = 0; + for (int i = 0; i < compString_.size(); i++) { + dataSize += computeStringSizeNoTag(compString_.getRaw(i)); + } + size += dataSize; + size += 1 * getCompStringList().size(); + } + 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 context.ContextOuterClass.Component)) { + return super.equals(obj); + } + context.ContextOuterClass.Component other = (context.ContextOuterClass.Component) obj; + + if (!getCompStringList() + .equals(other.getCompStringList())) 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 (getCompStringCount() > 0) { + hash = (37 * hash) + COMP_STRING_FIELD_NUMBER; + hash = (53 * hash) + getCompStringList().hashCode(); + } + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static context.ContextOuterClass.Component parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.Component parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.Component parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.Component parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.Component parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.Component parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.Component parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.Component 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 context.ContextOuterClass.Component parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static context.ContextOuterClass.Component 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 context.ContextOuterClass.Component parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.Component 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(context.ContextOuterClass.Component 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; + } + /** + * Protobuf type {@code context.Component} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:context.Component) + context.ContextOuterClass.ComponentOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_Component_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_Component_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.Component.class, context.ContextOuterClass.Component.Builder.class); + } + + // Construct using context.ContextOuterClass.Component.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + compString_ = com.google.protobuf.LazyStringArrayList.EMPTY; + bitField0_ = (bitField0_ & ~0x00000001); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return context.ContextOuterClass.internal_static_context_Component_descriptor; + } + + @java.lang.Override + public context.ContextOuterClass.Component getDefaultInstanceForType() { + return context.ContextOuterClass.Component.getDefaultInstance(); + } + + @java.lang.Override + public context.ContextOuterClass.Component build() { + context.ContextOuterClass.Component result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public context.ContextOuterClass.Component buildPartial() { + context.ContextOuterClass.Component result = new context.ContextOuterClass.Component(this); + int from_bitField0_ = bitField0_; + if (((bitField0_ & 0x00000001) != 0)) { + compString_ = compString_.getUnmodifiableView(); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.compString_ = compString_; + 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 context.ContextOuterClass.Component) { + return mergeFrom((context.ContextOuterClass.Component)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(context.ContextOuterClass.Component other) { + if (other == context.ContextOuterClass.Component.getDefaultInstance()) return this; + if (!other.compString_.isEmpty()) { + if (compString_.isEmpty()) { + compString_ = other.compString_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureCompStringIsMutable(); + compString_.addAll(other.compString_); + } + onChanged(); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @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 { + context.ContextOuterClass.Component parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.Component) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + private com.google.protobuf.LazyStringList compString_ = com.google.protobuf.LazyStringArrayList.EMPTY; + private void ensureCompStringIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + compString_ = new com.google.protobuf.LazyStringArrayList(compString_); + bitField0_ |= 0x00000001; + } + } + /** + * <code>repeated string comp_string = 1;</code> + * @return A list containing the compString. + */ + public com.google.protobuf.ProtocolStringList + getCompStringList() { + return compString_.getUnmodifiableView(); + } + /** + * <code>repeated string comp_string = 1;</code> + * @return The count of compString. + */ + public int getCompStringCount() { + return compString_.size(); + } + /** + * <code>repeated string comp_string = 1;</code> + * @param index The index of the element to return. + * @return The compString at the given index. + */ + public java.lang.String getCompString(int index) { + return compString_.get(index); + } + /** + * <code>repeated string comp_string = 1;</code> + * @param index The index of the value to return. + * @return The bytes of the compString at the given index. + */ + public com.google.protobuf.ByteString + getCompStringBytes(int index) { + return compString_.getByteString(index); + } + /** + * <code>repeated string comp_string = 1;</code> + * @param index The index to set the value at. + * @param value The compString to set. + * @return This builder for chaining. + */ + public Builder setCompString( + int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureCompStringIsMutable(); + compString_.set(index, value); + onChanged(); + return this; + } + /** + * <code>repeated string comp_string = 1;</code> + * @param value The compString to add. + * @return This builder for chaining. + */ + public Builder addCompString( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureCompStringIsMutable(); + compString_.add(value); + onChanged(); + return this; + } + /** + * <code>repeated string comp_string = 1;</code> + * @param values The compString to add. + * @return This builder for chaining. + */ + public Builder addAllCompString( + java.lang.Iterable<java.lang.String> values) { + ensureCompStringIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, compString_); + onChanged(); + return this; + } + /** + * <code>repeated string comp_string = 1;</code> + * @return This builder for chaining. + */ + public Builder clearCompString() { + compString_ = com.google.protobuf.LazyStringArrayList.EMPTY; + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * <code>repeated string comp_string = 1;</code> + * @param value The bytes of the compString to add. + * @return This builder for chaining. + */ + public Builder addCompStringBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + ensureCompStringIsMutable(); + compString_.add(value); + onChanged(); + return this; + } + @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:context.Component) + } + + // @@protoc_insertion_point(class_scope:context.Component) + private static final context.ContextOuterClass.Component DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new context.ContextOuterClass.Component(); + } + + public static context.ContextOuterClass.Component getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<Component> + PARSER = new com.google.protobuf.AbstractParser<Component>() { + @java.lang.Override + public Component parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new Component(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<Component> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<Component> getParserForType() { + return PARSER; + } + + @java.lang.Override + public context.ContextOuterClass.Component getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface DeviceConfigOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.DeviceConfig) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + java.util.List<context.ContextOuterClass.ConfigRule> + getConfigRulesList(); + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + context.ContextOuterClass.ConfigRule getConfigRules(int index); + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + int getConfigRulesCount(); + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> + getConfigRulesOrBuilderList(); + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( + int index); + } + /** + * Protobuf type {@code context.DeviceConfig} + */ + public static final class DeviceConfig extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:context.DeviceConfig) + DeviceConfigOrBuilder { + private static final long serialVersionUID = 0L; + // Use DeviceConfig.newBuilder() to construct. + private DeviceConfig(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private DeviceConfig() { + configRules_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new DeviceConfig(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private DeviceConfig( + 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)) { + configRules_ = new java.util.ArrayList<context.ContextOuterClass.ConfigRule>(); + mutable_bitField0_ |= 0x00000001; + } + configRules_.add( + input.readMessage(context.ContextOuterClass.ConfigRule.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)) { + configRules_ = java.util.Collections.unmodifiableList(configRules_); + } + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_DeviceConfig_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_DeviceConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.DeviceConfig.class, context.ContextOuterClass.DeviceConfig.Builder.class); + } + + public static final int CONFIG_RULES_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.ConfigRule> configRules_; + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + @java.lang.Override + public java.util.List<context.ContextOuterClass.ConfigRule> getConfigRulesList() { + return configRules_; + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> + getConfigRulesOrBuilderList() { + return configRules_; + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + @java.lang.Override + public int getConfigRulesCount() { + return configRules_.size(); + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ConfigRule getConfigRules(int index) { + return configRules_.get(index); + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( + int index) { + return configRules_.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 < configRules_.size(); i++) { + output.writeMessage(1, configRules_.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 < configRules_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, configRules_.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 context.ContextOuterClass.DeviceConfig)) { + return super.equals(obj); + } + context.ContextOuterClass.DeviceConfig other = (context.ContextOuterClass.DeviceConfig) obj; + + if (!getConfigRulesList() + .equals(other.getConfigRulesList())) 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 (getConfigRulesCount() > 0) { + hash = (37 * hash) + CONFIG_RULES_FIELD_NUMBER; + hash = (53 * hash) + getConfigRulesList().hashCode(); + } + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static context.ContextOuterClass.DeviceConfig parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.DeviceConfig parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.DeviceConfig parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.DeviceConfig parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.DeviceConfig parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.DeviceConfig parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.DeviceConfig parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.DeviceConfig 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 context.ContextOuterClass.DeviceConfig parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static context.ContextOuterClass.DeviceConfig 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 context.ContextOuterClass.DeviceConfig parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.DeviceConfig 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(context.ContextOuterClass.DeviceConfig 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; + } + /** + * Protobuf type {@code context.DeviceConfig} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:context.DeviceConfig) + context.ContextOuterClass.DeviceConfigOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_DeviceConfig_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_DeviceConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.DeviceConfig.class, context.ContextOuterClass.DeviceConfig.Builder.class); + } + + // Construct using context.ContextOuterClass.DeviceConfig.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getConfigRulesFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + if (configRulesBuilder_ == null) { + configRules_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + } else { + configRulesBuilder_.clear(); + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return context.ContextOuterClass.internal_static_context_DeviceConfig_descriptor; + } + + @java.lang.Override + public context.ContextOuterClass.DeviceConfig getDefaultInstanceForType() { + return context.ContextOuterClass.DeviceConfig.getDefaultInstance(); + } + + @java.lang.Override + public context.ContextOuterClass.DeviceConfig build() { + context.ContextOuterClass.DeviceConfig result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public context.ContextOuterClass.DeviceConfig buildPartial() { + context.ContextOuterClass.DeviceConfig result = new context.ContextOuterClass.DeviceConfig(this); + int from_bitField0_ = bitField0_; + if (configRulesBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + configRules_ = java.util.Collections.unmodifiableList(configRules_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.configRules_ = configRules_; + } else { + result.configRules_ = configRulesBuilder_.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 context.ContextOuterClass.DeviceConfig) { + return mergeFrom((context.ContextOuterClass.DeviceConfig)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(context.ContextOuterClass.DeviceConfig other) { + if (other == context.ContextOuterClass.DeviceConfig.getDefaultInstance()) return this; + if (configRulesBuilder_ == null) { + if (!other.configRules_.isEmpty()) { + if (configRules_.isEmpty()) { + configRules_ = other.configRules_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureConfigRulesIsMutable(); + configRules_.addAll(other.configRules_); + } + onChanged(); + } + } else { + if (!other.configRules_.isEmpty()) { + if (configRulesBuilder_.isEmpty()) { + configRulesBuilder_.dispose(); + configRulesBuilder_ = null; + configRules_ = other.configRules_; + bitField0_ = (bitField0_ & ~0x00000001); + configRulesBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getConfigRulesFieldBuilder() : null; + } else { + configRulesBuilder_.addAllMessages(other.configRules_); + } + } + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @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 { + context.ContextOuterClass.DeviceConfig parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.DeviceConfig) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + private java.util.List<context.ContextOuterClass.ConfigRule> configRules_ = + java.util.Collections.emptyList(); + private void ensureConfigRulesIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + configRules_ = new java.util.ArrayList<context.ContextOuterClass.ConfigRule>(configRules_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder> configRulesBuilder_; + + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public java.util.List<context.ContextOuterClass.ConfigRule> getConfigRulesList() { + if (configRulesBuilder_ == null) { + return java.util.Collections.unmodifiableList(configRules_); + } else { + return configRulesBuilder_.getMessageList(); + } + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public int getConfigRulesCount() { + if (configRulesBuilder_ == null) { + return configRules_.size(); + } else { + return configRulesBuilder_.getCount(); + } + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public context.ContextOuterClass.ConfigRule getConfigRules(int index) { + if (configRulesBuilder_ == null) { + return configRules_.get(index); + } else { + return configRulesBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public Builder setConfigRules( + int index, context.ContextOuterClass.ConfigRule value) { + if (configRulesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConfigRulesIsMutable(); + configRules_.set(index, value); + onChanged(); + } else { + configRulesBuilder_.setMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public Builder setConfigRules( + int index, context.ContextOuterClass.ConfigRule.Builder builderForValue) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + configRules_.set(index, builderForValue.build()); + onChanged(); + } else { + configRulesBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public Builder addConfigRules(context.ContextOuterClass.ConfigRule value) { + if (configRulesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConfigRulesIsMutable(); + configRules_.add(value); + onChanged(); + } else { + configRulesBuilder_.addMessage(value); + } + return this; + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public Builder addConfigRules( + int index, context.ContextOuterClass.ConfigRule value) { + if (configRulesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConfigRulesIsMutable(); + configRules_.add(index, value); + onChanged(); + } else { + configRulesBuilder_.addMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public Builder addConfigRules( + context.ContextOuterClass.ConfigRule.Builder builderForValue) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + configRules_.add(builderForValue.build()); + onChanged(); + } else { + configRulesBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public Builder addConfigRules( + int index, context.ContextOuterClass.ConfigRule.Builder builderForValue) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + configRules_.add(index, builderForValue.build()); + onChanged(); + } else { + configRulesBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public Builder addAllConfigRules( + java.lang.Iterable<? extends context.ContextOuterClass.ConfigRule> values) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, configRules_); + onChanged(); + } else { + configRulesBuilder_.addAllMessages(values); + } + return this; + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public Builder clearConfigRules() { + if (configRulesBuilder_ == null) { + configRules_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + configRulesBuilder_.clear(); + } + return this; + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public Builder removeConfigRules(int index) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + configRules_.remove(index); + onChanged(); + } else { + configRulesBuilder_.remove(index); + } + return this; + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public context.ContextOuterClass.ConfigRule.Builder getConfigRulesBuilder( + int index) { + return getConfigRulesFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( + int index) { + if (configRulesBuilder_ == null) { + return configRules_.get(index); } else { + return configRulesBuilder_.getMessageOrBuilder(index); + } + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> + getConfigRulesOrBuilderList() { + if (configRulesBuilder_ != null) { + return configRulesBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(configRules_); + } + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public context.ContextOuterClass.ConfigRule.Builder addConfigRulesBuilder() { + return getConfigRulesFieldBuilder().addBuilder( + context.ContextOuterClass.ConfigRule.getDefaultInstance()); + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public context.ContextOuterClass.ConfigRule.Builder addConfigRulesBuilder( + int index) { + return getConfigRulesFieldBuilder().addBuilder( + index, context.ContextOuterClass.ConfigRule.getDefaultInstance()); + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public java.util.List<context.ContextOuterClass.ConfigRule.Builder> + getConfigRulesBuilderList() { + return getConfigRulesFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder> + getConfigRulesFieldBuilder() { + if (configRulesBuilder_ == null) { + configRulesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder>( + configRules_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + configRules_ = null; + } + return configRulesBuilder_; + } + @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:context.DeviceConfig) + } + + // @@protoc_insertion_point(class_scope:context.DeviceConfig) + private static final context.ContextOuterClass.DeviceConfig DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new context.ContextOuterClass.DeviceConfig(); + } + + public static context.ContextOuterClass.DeviceConfig getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<DeviceConfig> + PARSER = new com.google.protobuf.AbstractParser<DeviceConfig>() { + @java.lang.Override + public DeviceConfig parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new DeviceConfig(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<DeviceConfig> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<DeviceConfig> getParserForType() { + return PARSER; + } + + @java.lang.Override + public context.ContextOuterClass.DeviceConfig getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface DeviceIdListOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.DeviceIdList) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + java.util.List<context.ContextOuterClass.DeviceId> + getDeviceIdsList(); + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + context.ContextOuterClass.DeviceId getDeviceIds(int index); + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + int getDeviceIdsCount(); + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> + getDeviceIdsOrBuilderList(); + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdsOrBuilder( + int index); + } + /** + * Protobuf type {@code context.DeviceIdList} + */ + public static final class DeviceIdList extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:context.DeviceIdList) + DeviceIdListOrBuilder { + private static final long serialVersionUID = 0L; + // Use DeviceIdList.newBuilder() to construct. + private DeviceIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private DeviceIdList() { + deviceIds_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new DeviceIdList(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private DeviceIdList( + 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)) { + deviceIds_ = new java.util.ArrayList<context.ContextOuterClass.DeviceId>(); + mutable_bitField0_ |= 0x00000001; + } + deviceIds_.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)) { + deviceIds_ = java.util.Collections.unmodifiableList(deviceIds_); + } + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_DeviceIdList_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_DeviceIdList_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.DeviceIdList.class, context.ContextOuterClass.DeviceIdList.Builder.class); + } + + public static final int DEVICE_IDS_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.DeviceId> deviceIds_; + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + @java.lang.Override + public java.util.List<context.ContextOuterClass.DeviceId> getDeviceIdsList() { + return deviceIds_; + } + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> + getDeviceIdsOrBuilderList() { + return deviceIds_; + } + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + @java.lang.Override + public int getDeviceIdsCount() { + return deviceIds_.size(); + } + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.DeviceId getDeviceIds(int index) { + return deviceIds_.get(index); + } + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdsOrBuilder( + int index) { + return deviceIds_.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 < deviceIds_.size(); i++) { + output.writeMessage(1, deviceIds_.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 < deviceIds_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, deviceIds_.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 context.ContextOuterClass.DeviceIdList)) { + return super.equals(obj); + } + context.ContextOuterClass.DeviceIdList other = (context.ContextOuterClass.DeviceIdList) obj; + + if (!getDeviceIdsList() + .equals(other.getDeviceIdsList())) 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 (getDeviceIdsCount() > 0) { + hash = (37 * hash) + DEVICE_IDS_FIELD_NUMBER; + hash = (53 * hash) + getDeviceIdsList().hashCode(); + } + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static context.ContextOuterClass.DeviceIdList parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.DeviceIdList parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.DeviceIdList parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.DeviceIdList parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.DeviceIdList parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.DeviceIdList parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.DeviceIdList parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.DeviceIdList 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 context.ContextOuterClass.DeviceIdList parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static context.ContextOuterClass.DeviceIdList 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 context.ContextOuterClass.DeviceIdList parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.DeviceIdList 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(context.ContextOuterClass.DeviceIdList 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; + } + /** + * Protobuf type {@code context.DeviceIdList} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:context.DeviceIdList) + context.ContextOuterClass.DeviceIdListOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_DeviceIdList_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_DeviceIdList_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.DeviceIdList.class, context.ContextOuterClass.DeviceIdList.Builder.class); + } + + // Construct using context.ContextOuterClass.DeviceIdList.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getDeviceIdsFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + if (deviceIdsBuilder_ == null) { + deviceIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + } else { + deviceIdsBuilder_.clear(); + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return context.ContextOuterClass.internal_static_context_DeviceIdList_descriptor; + } + + @java.lang.Override + public context.ContextOuterClass.DeviceIdList getDefaultInstanceForType() { + return context.ContextOuterClass.DeviceIdList.getDefaultInstance(); + } + + @java.lang.Override + public context.ContextOuterClass.DeviceIdList build() { + context.ContextOuterClass.DeviceIdList result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public context.ContextOuterClass.DeviceIdList buildPartial() { + context.ContextOuterClass.DeviceIdList result = new context.ContextOuterClass.DeviceIdList(this); + int from_bitField0_ = bitField0_; + if (deviceIdsBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + deviceIds_ = java.util.Collections.unmodifiableList(deviceIds_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.deviceIds_ = deviceIds_; + } else { + result.deviceIds_ = deviceIdsBuilder_.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 context.ContextOuterClass.DeviceIdList) { + return mergeFrom((context.ContextOuterClass.DeviceIdList)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(context.ContextOuterClass.DeviceIdList other) { + if (other == context.ContextOuterClass.DeviceIdList.getDefaultInstance()) return this; + if (deviceIdsBuilder_ == null) { + if (!other.deviceIds_.isEmpty()) { + if (deviceIds_.isEmpty()) { + deviceIds_ = other.deviceIds_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureDeviceIdsIsMutable(); + deviceIds_.addAll(other.deviceIds_); + } + onChanged(); + } + } else { + if (!other.deviceIds_.isEmpty()) { + if (deviceIdsBuilder_.isEmpty()) { + deviceIdsBuilder_.dispose(); + deviceIdsBuilder_ = null; + deviceIds_ = other.deviceIds_; + bitField0_ = (bitField0_ & ~0x00000001); + deviceIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getDeviceIdsFieldBuilder() : null; + } else { + deviceIdsBuilder_.addAllMessages(other.deviceIds_); + } + } + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @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 { + context.ContextOuterClass.DeviceIdList parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.DeviceIdList) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + private java.util.List<context.ContextOuterClass.DeviceId> deviceIds_ = + java.util.Collections.emptyList(); + private void ensureDeviceIdsIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + deviceIds_ = new java.util.ArrayList<context.ContextOuterClass.DeviceId>(deviceIds_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> deviceIdsBuilder_; + + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + public java.util.List<context.ContextOuterClass.DeviceId> getDeviceIdsList() { + if (deviceIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(deviceIds_); + } else { + return deviceIdsBuilder_.getMessageList(); + } + } + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + public int getDeviceIdsCount() { + if (deviceIdsBuilder_ == null) { + return deviceIds_.size(); + } else { + return deviceIdsBuilder_.getCount(); + } + } + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + public context.ContextOuterClass.DeviceId getDeviceIds(int index) { + if (deviceIdsBuilder_ == null) { + return deviceIds_.get(index); + } else { + return deviceIdsBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + public Builder setDeviceIds( + int index, context.ContextOuterClass.DeviceId value) { + if (deviceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDeviceIdsIsMutable(); + deviceIds_.set(index, value); + onChanged(); + } else { + deviceIdsBuilder_.setMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + public Builder setDeviceIds( + int index, context.ContextOuterClass.DeviceId.Builder builderForValue) { + if (deviceIdsBuilder_ == null) { + ensureDeviceIdsIsMutable(); + deviceIds_.set(index, builderForValue.build()); + onChanged(); + } else { + deviceIdsBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + public Builder addDeviceIds(context.ContextOuterClass.DeviceId value) { + if (deviceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDeviceIdsIsMutable(); + deviceIds_.add(value); + onChanged(); + } else { + deviceIdsBuilder_.addMessage(value); + } + return this; + } + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + public Builder addDeviceIds( + int index, context.ContextOuterClass.DeviceId value) { + if (deviceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDeviceIdsIsMutable(); + deviceIds_.add(index, value); + onChanged(); + } else { + deviceIdsBuilder_.addMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + public Builder addDeviceIds( + context.ContextOuterClass.DeviceId.Builder builderForValue) { + if (deviceIdsBuilder_ == null) { + ensureDeviceIdsIsMutable(); + deviceIds_.add(builderForValue.build()); + onChanged(); + } else { + deviceIdsBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + public Builder addDeviceIds( + int index, context.ContextOuterClass.DeviceId.Builder builderForValue) { + if (deviceIdsBuilder_ == null) { + ensureDeviceIdsIsMutable(); + deviceIds_.add(index, builderForValue.build()); + onChanged(); + } else { + deviceIdsBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + public Builder addAllDeviceIds( + java.lang.Iterable<? extends context.ContextOuterClass.DeviceId> values) { + if (deviceIdsBuilder_ == null) { + ensureDeviceIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, deviceIds_); + onChanged(); + } else { + deviceIdsBuilder_.addAllMessages(values); + } + return this; + } + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + public Builder clearDeviceIds() { + if (deviceIdsBuilder_ == null) { + deviceIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + deviceIdsBuilder_.clear(); + } + return this; + } + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + public Builder removeDeviceIds(int index) { + if (deviceIdsBuilder_ == null) { + ensureDeviceIdsIsMutable(); + deviceIds_.remove(index); + onChanged(); + } else { + deviceIdsBuilder_.remove(index); + } + return this; + } + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + public context.ContextOuterClass.DeviceId.Builder getDeviceIdsBuilder( + int index) { + return getDeviceIdsFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdsOrBuilder( + int index) { + if (deviceIdsBuilder_ == null) { + return deviceIds_.get(index); } else { + return deviceIdsBuilder_.getMessageOrBuilder(index); + } + } + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + public java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> + getDeviceIdsOrBuilderList() { + if (deviceIdsBuilder_ != null) { + return deviceIdsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(deviceIds_); + } + } + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + public context.ContextOuterClass.DeviceId.Builder addDeviceIdsBuilder() { + return getDeviceIdsFieldBuilder().addBuilder( + context.ContextOuterClass.DeviceId.getDefaultInstance()); + } + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + public context.ContextOuterClass.DeviceId.Builder addDeviceIdsBuilder( + int index) { + return getDeviceIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.DeviceId.getDefaultInstance()); + } + /** + * <code>repeated .context.DeviceId device_ids = 1;</code> + */ + public java.util.List<context.ContextOuterClass.DeviceId.Builder> + getDeviceIdsBuilderList() { + return getDeviceIdsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> + getDeviceIdsFieldBuilder() { + if (deviceIdsBuilder_ == null) { + deviceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder>( + deviceIds_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + deviceIds_ = null; + } + return deviceIdsBuilder_; + } + @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:context.DeviceIdList) + } + + // @@protoc_insertion_point(class_scope:context.DeviceIdList) + private static final context.ContextOuterClass.DeviceIdList DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new context.ContextOuterClass.DeviceIdList(); + } + + public static context.ContextOuterClass.DeviceIdList getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<DeviceIdList> + PARSER = new com.google.protobuf.AbstractParser<DeviceIdList>() { + @java.lang.Override + public DeviceIdList parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new DeviceIdList(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<DeviceIdList> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<DeviceIdList> getParserForType() { + return PARSER; + } + + @java.lang.Override + public context.ContextOuterClass.DeviceIdList getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface DeviceListOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.DeviceList) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>repeated .context.Device devices = 1;</code> + */ + java.util.List<context.ContextOuterClass.Device> + getDevicesList(); + /** + * <code>repeated .context.Device devices = 1;</code> + */ + context.ContextOuterClass.Device getDevices(int index); + /** + * <code>repeated .context.Device devices = 1;</code> + */ + int getDevicesCount(); + /** + * <code>repeated .context.Device devices = 1;</code> + */ + java.util.List<? extends context.ContextOuterClass.DeviceOrBuilder> + getDevicesOrBuilderList(); + /** + * <code>repeated .context.Device devices = 1;</code> + */ + context.ContextOuterClass.DeviceOrBuilder getDevicesOrBuilder( + int index); + } + /** + * Protobuf type {@code context.DeviceList} + */ + public static final class DeviceList extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:context.DeviceList) + DeviceListOrBuilder { + private static final long serialVersionUID = 0L; + // Use DeviceList.newBuilder() to construct. + private DeviceList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private DeviceList() { + devices_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new DeviceList(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private DeviceList( + 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)) { + devices_ = new java.util.ArrayList<context.ContextOuterClass.Device>(); + mutable_bitField0_ |= 0x00000001; + } + devices_.add( + input.readMessage(context.ContextOuterClass.Device.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)) { + devices_ = java.util.Collections.unmodifiableList(devices_); + } + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_DeviceList_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_DeviceList_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.DeviceList.class, context.ContextOuterClass.DeviceList.Builder.class); + } + + public static final int DEVICES_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.Device> devices_; + /** + * <code>repeated .context.Device devices = 1;</code> + */ + @java.lang.Override + public java.util.List<context.ContextOuterClass.Device> getDevicesList() { + return devices_; + } + /** + * <code>repeated .context.Device devices = 1;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.DeviceOrBuilder> + getDevicesOrBuilderList() { + return devices_; + } + /** + * <code>repeated .context.Device devices = 1;</code> + */ + @java.lang.Override + public int getDevicesCount() { + return devices_.size(); + } + /** + * <code>repeated .context.Device devices = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.Device getDevices(int index) { + return devices_.get(index); + } + /** + * <code>repeated .context.Device devices = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.DeviceOrBuilder getDevicesOrBuilder( + int index) { + return devices_.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 < devices_.size(); i++) { + output.writeMessage(1, devices_.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 < devices_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, devices_.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 context.ContextOuterClass.DeviceList)) { + return super.equals(obj); + } + context.ContextOuterClass.DeviceList other = (context.ContextOuterClass.DeviceList) obj; + + if (!getDevicesList() + .equals(other.getDevicesList())) 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 (getDevicesCount() > 0) { + hash = (37 * hash) + DEVICES_FIELD_NUMBER; + hash = (53 * hash) + getDevicesList().hashCode(); + } + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static context.ContextOuterClass.DeviceList parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.DeviceList parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.DeviceList parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.DeviceList parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.DeviceList parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.DeviceList parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.DeviceList parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.DeviceList 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 context.ContextOuterClass.DeviceList parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static context.ContextOuterClass.DeviceList 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 context.ContextOuterClass.DeviceList parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.DeviceList 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(context.ContextOuterClass.DeviceList 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; + } + /** + * Protobuf type {@code context.DeviceList} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:context.DeviceList) + context.ContextOuterClass.DeviceListOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_DeviceList_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_DeviceList_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.DeviceList.class, context.ContextOuterClass.DeviceList.Builder.class); + } + + // Construct using context.ContextOuterClass.DeviceList.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getDevicesFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + if (devicesBuilder_ == null) { + devices_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + } else { + devicesBuilder_.clear(); + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return context.ContextOuterClass.internal_static_context_DeviceList_descriptor; + } + + @java.lang.Override + public context.ContextOuterClass.DeviceList getDefaultInstanceForType() { + return context.ContextOuterClass.DeviceList.getDefaultInstance(); + } + + @java.lang.Override + public context.ContextOuterClass.DeviceList build() { + context.ContextOuterClass.DeviceList result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public context.ContextOuterClass.DeviceList buildPartial() { + context.ContextOuterClass.DeviceList result = new context.ContextOuterClass.DeviceList(this); + int from_bitField0_ = bitField0_; + if (devicesBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + devices_ = java.util.Collections.unmodifiableList(devices_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.devices_ = devices_; + } else { + result.devices_ = devicesBuilder_.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 context.ContextOuterClass.DeviceList) { + return mergeFrom((context.ContextOuterClass.DeviceList)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(context.ContextOuterClass.DeviceList other) { + if (other == context.ContextOuterClass.DeviceList.getDefaultInstance()) return this; + if (devicesBuilder_ == null) { + if (!other.devices_.isEmpty()) { + if (devices_.isEmpty()) { + devices_ = other.devices_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureDevicesIsMutable(); + devices_.addAll(other.devices_); + } + onChanged(); + } + } else { + if (!other.devices_.isEmpty()) { + if (devicesBuilder_.isEmpty()) { + devicesBuilder_.dispose(); + devicesBuilder_ = null; + devices_ = other.devices_; + bitField0_ = (bitField0_ & ~0x00000001); + devicesBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getDevicesFieldBuilder() : null; + } else { + devicesBuilder_.addAllMessages(other.devices_); + } + } + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @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 { + context.ContextOuterClass.DeviceList parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.DeviceList) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + private java.util.List<context.ContextOuterClass.Device> devices_ = + java.util.Collections.emptyList(); + private void ensureDevicesIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + devices_ = new java.util.ArrayList<context.ContextOuterClass.Device>(devices_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Device, context.ContextOuterClass.Device.Builder, context.ContextOuterClass.DeviceOrBuilder> devicesBuilder_; + + /** + * <code>repeated .context.Device devices = 1;</code> + */ + public java.util.List<context.ContextOuterClass.Device> getDevicesList() { + if (devicesBuilder_ == null) { + return java.util.Collections.unmodifiableList(devices_); + } else { + return devicesBuilder_.getMessageList(); + } + } + /** + * <code>repeated .context.Device devices = 1;</code> + */ + public int getDevicesCount() { + if (devicesBuilder_ == null) { + return devices_.size(); + } else { + return devicesBuilder_.getCount(); + } + } + /** + * <code>repeated .context.Device devices = 1;</code> + */ + public context.ContextOuterClass.Device getDevices(int index) { + if (devicesBuilder_ == null) { + return devices_.get(index); + } else { + return devicesBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.Device devices = 1;</code> + */ + public Builder setDevices( + int index, context.ContextOuterClass.Device value) { + if (devicesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDevicesIsMutable(); + devices_.set(index, value); + onChanged(); + } else { + devicesBuilder_.setMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.Device devices = 1;</code> + */ + public Builder setDevices( + int index, context.ContextOuterClass.Device.Builder builderForValue) { + if (devicesBuilder_ == null) { + ensureDevicesIsMutable(); + devices_.set(index, builderForValue.build()); + onChanged(); + } else { + devicesBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.Device devices = 1;</code> + */ + public Builder addDevices(context.ContextOuterClass.Device value) { + if (devicesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDevicesIsMutable(); + devices_.add(value); + onChanged(); + } else { + devicesBuilder_.addMessage(value); + } + return this; + } + /** + * <code>repeated .context.Device devices = 1;</code> + */ + public Builder addDevices( + int index, context.ContextOuterClass.Device value) { + if (devicesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDevicesIsMutable(); + devices_.add(index, value); + onChanged(); + } else { + devicesBuilder_.addMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.Device devices = 1;</code> + */ + public Builder addDevices( + context.ContextOuterClass.Device.Builder builderForValue) { + if (devicesBuilder_ == null) { + ensureDevicesIsMutable(); + devices_.add(builderForValue.build()); + onChanged(); + } else { + devicesBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.Device devices = 1;</code> + */ + public Builder addDevices( + int index, context.ContextOuterClass.Device.Builder builderForValue) { + if (devicesBuilder_ == null) { + ensureDevicesIsMutable(); + devices_.add(index, builderForValue.build()); + onChanged(); + } else { + devicesBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.Device devices = 1;</code> + */ + public Builder addAllDevices( + java.lang.Iterable<? extends context.ContextOuterClass.Device> values) { + if (devicesBuilder_ == null) { + ensureDevicesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, devices_); + onChanged(); + } else { + devicesBuilder_.addAllMessages(values); + } + return this; + } + /** + * <code>repeated .context.Device devices = 1;</code> + */ + public Builder clearDevices() { + if (devicesBuilder_ == null) { + devices_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + devicesBuilder_.clear(); + } + return this; + } + /** + * <code>repeated .context.Device devices = 1;</code> + */ + public Builder removeDevices(int index) { + if (devicesBuilder_ == null) { + ensureDevicesIsMutable(); + devices_.remove(index); + onChanged(); + } else { + devicesBuilder_.remove(index); + } + return this; + } + /** + * <code>repeated .context.Device devices = 1;</code> + */ + public context.ContextOuterClass.Device.Builder getDevicesBuilder( + int index) { + return getDevicesFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .context.Device devices = 1;</code> + */ + public context.ContextOuterClass.DeviceOrBuilder getDevicesOrBuilder( + int index) { + if (devicesBuilder_ == null) { + return devices_.get(index); } else { + return devicesBuilder_.getMessageOrBuilder(index); + } + } + /** + * <code>repeated .context.Device devices = 1;</code> + */ + public java.util.List<? extends context.ContextOuterClass.DeviceOrBuilder> + getDevicesOrBuilderList() { + if (devicesBuilder_ != null) { + return devicesBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(devices_); + } + } + /** + * <code>repeated .context.Device devices = 1;</code> + */ + public context.ContextOuterClass.Device.Builder addDevicesBuilder() { + return getDevicesFieldBuilder().addBuilder( + context.ContextOuterClass.Device.getDefaultInstance()); + } + /** + * <code>repeated .context.Device devices = 1;</code> + */ + public context.ContextOuterClass.Device.Builder addDevicesBuilder( + int index) { + return getDevicesFieldBuilder().addBuilder( + index, context.ContextOuterClass.Device.getDefaultInstance()); + } + /** + * <code>repeated .context.Device devices = 1;</code> + */ + public java.util.List<context.ContextOuterClass.Device.Builder> + getDevicesBuilderList() { + return getDevicesFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Device, context.ContextOuterClass.Device.Builder, context.ContextOuterClass.DeviceOrBuilder> + getDevicesFieldBuilder() { + if (devicesBuilder_ == null) { + devicesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Device, context.ContextOuterClass.Device.Builder, context.ContextOuterClass.DeviceOrBuilder>( + devices_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + devices_ = null; + } + return devicesBuilder_; + } + @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:context.DeviceList) + } + + // @@protoc_insertion_point(class_scope:context.DeviceList) + private static final context.ContextOuterClass.DeviceList DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new context.ContextOuterClass.DeviceList(); + } + + public static context.ContextOuterClass.DeviceList getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<DeviceList> + PARSER = new com.google.protobuf.AbstractParser<DeviceList>() { + @java.lang.Override + public DeviceList parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new DeviceList(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<DeviceList> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<DeviceList> getParserForType() { + return PARSER; + } + + @java.lang.Override + public context.ContextOuterClass.DeviceList getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface DeviceFilterOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.DeviceFilter) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>.context.DeviceIdList device_ids = 1;</code> + * @return Whether the deviceIds field is set. + */ + boolean hasDeviceIds(); + /** + * <code>.context.DeviceIdList device_ids = 1;</code> + * @return The deviceIds. + */ + context.ContextOuterClass.DeviceIdList getDeviceIds(); + /** + * <code>.context.DeviceIdList device_ids = 1;</code> + */ + context.ContextOuterClass.DeviceIdListOrBuilder getDeviceIdsOrBuilder(); + + /** + * <code>bool include_endpoints = 2;</code> + * @return The includeEndpoints. + */ + boolean getIncludeEndpoints(); + + /** + * <code>bool include_config_rules = 3;</code> + * @return The includeConfigRules. + */ + boolean getIncludeConfigRules(); + + /** + * <code>bool include_components = 4;</code> + * @return The includeComponents. + */ + boolean getIncludeComponents(); + } + /** + * Protobuf type {@code context.DeviceFilter} + */ + public static final class DeviceFilter extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:context.DeviceFilter) + DeviceFilterOrBuilder { + private static final long serialVersionUID = 0L; + // Use DeviceFilter.newBuilder() to construct. + private DeviceFilter(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private DeviceFilter() { + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new DeviceFilter(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private DeviceFilter( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + 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: { + context.ContextOuterClass.DeviceIdList.Builder subBuilder = null; + if (deviceIds_ != null) { + subBuilder = deviceIds_.toBuilder(); + } + deviceIds_ = input.readMessage(context.ContextOuterClass.DeviceIdList.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(deviceIds_); + deviceIds_ = subBuilder.buildPartial(); + } + + break; + } + case 16: { + + includeEndpoints_ = input.readBool(); + break; + } + case 24: { + + includeConfigRules_ = input.readBool(); + break; + } + case 32: { + + includeComponents_ = input.readBool(); + 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 { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_DeviceFilter_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_DeviceFilter_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.DeviceFilter.class, context.ContextOuterClass.DeviceFilter.Builder.class); + } + + public static final int DEVICE_IDS_FIELD_NUMBER = 1; + private context.ContextOuterClass.DeviceIdList deviceIds_; + /** + * <code>.context.DeviceIdList device_ids = 1;</code> + * @return Whether the deviceIds field is set. + */ + @java.lang.Override + public boolean hasDeviceIds() { + return deviceIds_ != null; + } + /** + * <code>.context.DeviceIdList device_ids = 1;</code> + * @return The deviceIds. + */ + @java.lang.Override + public context.ContextOuterClass.DeviceIdList getDeviceIds() { + return deviceIds_ == null ? context.ContextOuterClass.DeviceIdList.getDefaultInstance() : deviceIds_; + } + /** + * <code>.context.DeviceIdList device_ids = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.DeviceIdListOrBuilder getDeviceIdsOrBuilder() { + return getDeviceIds(); + } + + public static final int INCLUDE_ENDPOINTS_FIELD_NUMBER = 2; + private boolean includeEndpoints_; + /** + * <code>bool include_endpoints = 2;</code> + * @return The includeEndpoints. + */ + @java.lang.Override + public boolean getIncludeEndpoints() { + return includeEndpoints_; + } + + public static final int INCLUDE_CONFIG_RULES_FIELD_NUMBER = 3; + private boolean includeConfigRules_; + /** + * <code>bool include_config_rules = 3;</code> + * @return The includeConfigRules. + */ + @java.lang.Override + public boolean getIncludeConfigRules() { + return includeConfigRules_; + } + + public static final int INCLUDE_COMPONENTS_FIELD_NUMBER = 4; + private boolean includeComponents_; + /** + * <code>bool include_components = 4;</code> + * @return The includeComponents. + */ + @java.lang.Override + public boolean getIncludeComponents() { + return includeComponents_; + } + + 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 (deviceIds_ != null) { + output.writeMessage(1, getDeviceIds()); + } + if (includeEndpoints_ != false) { + output.writeBool(2, includeEndpoints_); + } + if (includeConfigRules_ != false) { + output.writeBool(3, includeConfigRules_); + } + if (includeComponents_ != false) { + output.writeBool(4, includeComponents_); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (deviceIds_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getDeviceIds()); + } + if (includeEndpoints_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(2, includeEndpoints_); + } + if (includeConfigRules_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(3, includeConfigRules_); + } + if (includeComponents_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(4, includeComponents_); + } + 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 context.ContextOuterClass.DeviceFilter)) { + return super.equals(obj); + } + context.ContextOuterClass.DeviceFilter other = (context.ContextOuterClass.DeviceFilter) obj; + + if (hasDeviceIds() != other.hasDeviceIds()) return false; + if (hasDeviceIds()) { + if (!getDeviceIds() + .equals(other.getDeviceIds())) return false; + } + if (getIncludeEndpoints() + != other.getIncludeEndpoints()) return false; + if (getIncludeConfigRules() + != other.getIncludeConfigRules()) return false; + if (getIncludeComponents() + != other.getIncludeComponents()) 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 (hasDeviceIds()) { + hash = (37 * hash) + DEVICE_IDS_FIELD_NUMBER; + hash = (53 * hash) + getDeviceIds().hashCode(); + } + hash = (37 * hash) + INCLUDE_ENDPOINTS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getIncludeEndpoints()); + hash = (37 * hash) + INCLUDE_CONFIG_RULES_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getIncludeConfigRules()); + hash = (37 * hash) + INCLUDE_COMPONENTS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getIncludeComponents()); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static context.ContextOuterClass.DeviceFilter parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.DeviceFilter parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.DeviceFilter parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.DeviceFilter parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.DeviceFilter parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.DeviceFilter parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.DeviceFilter parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.DeviceFilter 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 context.ContextOuterClass.DeviceFilter parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static context.ContextOuterClass.DeviceFilter 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 context.ContextOuterClass.DeviceFilter parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.DeviceFilter 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(context.ContextOuterClass.DeviceFilter 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; + } + /** + * Protobuf type {@code context.DeviceFilter} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:context.DeviceFilter) + context.ContextOuterClass.DeviceFilterOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_DeviceFilter_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_DeviceFilter_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.DeviceFilter.class, context.ContextOuterClass.DeviceFilter.Builder.class); + } + + // Construct using context.ContextOuterClass.DeviceFilter.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + if (deviceIdsBuilder_ == null) { + deviceIds_ = null; + } else { + deviceIds_ = null; + deviceIdsBuilder_ = null; + } + includeEndpoints_ = false; + + includeConfigRules_ = false; + + includeComponents_ = false; + + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return context.ContextOuterClass.internal_static_context_DeviceFilter_descriptor; + } + + @java.lang.Override + public context.ContextOuterClass.DeviceFilter getDefaultInstanceForType() { + return context.ContextOuterClass.DeviceFilter.getDefaultInstance(); + } + + @java.lang.Override + public context.ContextOuterClass.DeviceFilter build() { + context.ContextOuterClass.DeviceFilter result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public context.ContextOuterClass.DeviceFilter buildPartial() { + context.ContextOuterClass.DeviceFilter result = new context.ContextOuterClass.DeviceFilter(this); + if (deviceIdsBuilder_ == null) { + result.deviceIds_ = deviceIds_; + } else { + result.deviceIds_ = deviceIdsBuilder_.build(); + } + result.includeEndpoints_ = includeEndpoints_; + result.includeConfigRules_ = includeConfigRules_; + result.includeComponents_ = includeComponents_; + 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 context.ContextOuterClass.DeviceFilter) { + return mergeFrom((context.ContextOuterClass.DeviceFilter)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(context.ContextOuterClass.DeviceFilter other) { + if (other == context.ContextOuterClass.DeviceFilter.getDefaultInstance()) return this; + if (other.hasDeviceIds()) { + mergeDeviceIds(other.getDeviceIds()); + } + if (other.getIncludeEndpoints() != false) { + setIncludeEndpoints(other.getIncludeEndpoints()); + } + if (other.getIncludeConfigRules() != false) { + setIncludeConfigRules(other.getIncludeConfigRules()); + } + if (other.getIncludeComponents() != false) { + setIncludeComponents(other.getIncludeComponents()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @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 { + context.ContextOuterClass.DeviceFilter parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.DeviceFilter) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + private context.ContextOuterClass.DeviceIdList deviceIds_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceIdList, context.ContextOuterClass.DeviceIdList.Builder, context.ContextOuterClass.DeviceIdListOrBuilder> deviceIdsBuilder_; + /** + * <code>.context.DeviceIdList device_ids = 1;</code> + * @return Whether the deviceIds field is set. + */ + public boolean hasDeviceIds() { + return deviceIdsBuilder_ != null || deviceIds_ != null; + } + /** + * <code>.context.DeviceIdList device_ids = 1;</code> + * @return The deviceIds. + */ + public context.ContextOuterClass.DeviceIdList getDeviceIds() { + if (deviceIdsBuilder_ == null) { + return deviceIds_ == null ? context.ContextOuterClass.DeviceIdList.getDefaultInstance() : deviceIds_; + } else { + return deviceIdsBuilder_.getMessage(); + } + } + /** + * <code>.context.DeviceIdList device_ids = 1;</code> + */ + public Builder setDeviceIds(context.ContextOuterClass.DeviceIdList value) { + if (deviceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + deviceIds_ = value; + onChanged(); + } else { + deviceIdsBuilder_.setMessage(value); + } + + return this; + } + /** + * <code>.context.DeviceIdList device_ids = 1;</code> + */ + public Builder setDeviceIds( + context.ContextOuterClass.DeviceIdList.Builder builderForValue) { + if (deviceIdsBuilder_ == null) { + deviceIds_ = builderForValue.build(); + onChanged(); + } else { + deviceIdsBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.DeviceIdList device_ids = 1;</code> + */ + public Builder mergeDeviceIds(context.ContextOuterClass.DeviceIdList value) { + if (deviceIdsBuilder_ == null) { + if (deviceIds_ != null) { + deviceIds_ = + context.ContextOuterClass.DeviceIdList.newBuilder(deviceIds_).mergeFrom(value).buildPartial(); + } else { + deviceIds_ = value; + } + onChanged(); + } else { + deviceIdsBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.context.DeviceIdList device_ids = 1;</code> + */ + public Builder clearDeviceIds() { + if (deviceIdsBuilder_ == null) { + deviceIds_ = null; + onChanged(); + } else { + deviceIds_ = null; + deviceIdsBuilder_ = null; + } + + return this; + } + /** + * <code>.context.DeviceIdList device_ids = 1;</code> + */ + public context.ContextOuterClass.DeviceIdList.Builder getDeviceIdsBuilder() { + + onChanged(); + return getDeviceIdsFieldBuilder().getBuilder(); + } + /** + * <code>.context.DeviceIdList device_ids = 1;</code> + */ + public context.ContextOuterClass.DeviceIdListOrBuilder getDeviceIdsOrBuilder() { + if (deviceIdsBuilder_ != null) { + return deviceIdsBuilder_.getMessageOrBuilder(); + } else { + return deviceIds_ == null ? + context.ContextOuterClass.DeviceIdList.getDefaultInstance() : deviceIds_; + } + } + /** + * <code>.context.DeviceIdList device_ids = 1;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceIdList, context.ContextOuterClass.DeviceIdList.Builder, context.ContextOuterClass.DeviceIdListOrBuilder> + getDeviceIdsFieldBuilder() { + if (deviceIdsBuilder_ == null) { + deviceIdsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceIdList, context.ContextOuterClass.DeviceIdList.Builder, context.ContextOuterClass.DeviceIdListOrBuilder>( + getDeviceIds(), + getParentForChildren(), + isClean()); + deviceIds_ = null; + } + return deviceIdsBuilder_; + } + + private boolean includeEndpoints_ ; + /** + * <code>bool include_endpoints = 2;</code> + * @return The includeEndpoints. + */ + @java.lang.Override + public boolean getIncludeEndpoints() { + return includeEndpoints_; + } + /** + * <code>bool include_endpoints = 2;</code> + * @param value The includeEndpoints to set. + * @return This builder for chaining. + */ + public Builder setIncludeEndpoints(boolean value) { + + includeEndpoints_ = value; + onChanged(); + return this; + } + /** + * <code>bool include_endpoints = 2;</code> + * @return This builder for chaining. + */ + public Builder clearIncludeEndpoints() { + + includeEndpoints_ = false; + onChanged(); + return this; + } + + private boolean includeConfigRules_ ; + /** + * <code>bool include_config_rules = 3;</code> + * @return The includeConfigRules. + */ + @java.lang.Override + public boolean getIncludeConfigRules() { + return includeConfigRules_; + } + /** + * <code>bool include_config_rules = 3;</code> + * @param value The includeConfigRules to set. + * @return This builder for chaining. + */ + public Builder setIncludeConfigRules(boolean value) { + + includeConfigRules_ = value; + onChanged(); + return this; + } + /** + * <code>bool include_config_rules = 3;</code> + * @return This builder for chaining. + */ + public Builder clearIncludeConfigRules() { + + includeConfigRules_ = false; + onChanged(); + return this; + } + + private boolean includeComponents_ ; + /** + * <code>bool include_components = 4;</code> + * @return The includeComponents. + */ + @java.lang.Override + public boolean getIncludeComponents() { + return includeComponents_; + } + /** + * <code>bool include_components = 4;</code> + * @param value The includeComponents to set. + * @return This builder for chaining. + */ + public Builder setIncludeComponents(boolean value) { + + includeComponents_ = value; + onChanged(); + return this; + } + /** + * <code>bool include_components = 4;</code> + * @return This builder for chaining. + */ + public Builder clearIncludeComponents() { + + includeComponents_ = false; + onChanged(); + return this; + } + @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:context.DeviceFilter) + } + + // @@protoc_insertion_point(class_scope:context.DeviceFilter) + private static final context.ContextOuterClass.DeviceFilter DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new context.ContextOuterClass.DeviceFilter(); + } + + public static context.ContextOuterClass.DeviceFilter getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<DeviceFilter> + PARSER = new com.google.protobuf.AbstractParser<DeviceFilter>() { + @java.lang.Override + public DeviceFilter parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new DeviceFilter(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<DeviceFilter> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<DeviceFilter> getParserForType() { + return PARSER; + } + + @java.lang.Override + public context.ContextOuterClass.DeviceFilter getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface DeviceEventOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.DeviceEvent) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. + */ + boolean hasEvent(); + /** + * <code>.context.Event event = 1;</code> + * @return The event. + */ + context.ContextOuterClass.Event getEvent(); + /** + * <code>.context.Event event = 1;</code> + */ + context.ContextOuterClass.EventOrBuilder getEventOrBuilder(); + + /** + * <code>.context.DeviceId device_id = 2;</code> + * @return Whether the deviceId field is set. + */ + boolean hasDeviceId(); + /** + * <code>.context.DeviceId device_id = 2;</code> + * @return The deviceId. + */ + context.ContextOuterClass.DeviceId getDeviceId(); + /** + * <code>.context.DeviceId device_id = 2;</code> + */ + context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder(); + + /** + * <code>.context.DeviceConfig device_config = 3;</code> + * @return Whether the deviceConfig field is set. + */ + boolean hasDeviceConfig(); + /** + * <code>.context.DeviceConfig device_config = 3;</code> + * @return The deviceConfig. + */ + context.ContextOuterClass.DeviceConfig getDeviceConfig(); + /** + * <code>.context.DeviceConfig device_config = 3;</code> + */ + context.ContextOuterClass.DeviceConfigOrBuilder getDeviceConfigOrBuilder(); + } + /** + * Protobuf type {@code context.DeviceEvent} + */ + public static final class DeviceEvent extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:context.DeviceEvent) + DeviceEventOrBuilder { + private static final long serialVersionUID = 0L; + // Use DeviceEvent.newBuilder() to construct. + private DeviceEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private DeviceEvent() { + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new DeviceEvent(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private DeviceEvent( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + 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: { + context.ContextOuterClass.Event.Builder subBuilder = null; + if (event_ != null) { + subBuilder = event_.toBuilder(); + } + event_ = input.readMessage(context.ContextOuterClass.Event.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(event_); + event_ = subBuilder.buildPartial(); + } + + break; + } + case 18: { + context.ContextOuterClass.DeviceId.Builder subBuilder = null; + if (deviceId_ != null) { + subBuilder = deviceId_.toBuilder(); + } + deviceId_ = input.readMessage(context.ContextOuterClass.DeviceId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(deviceId_); + deviceId_ = subBuilder.buildPartial(); + } + + break; + } + case 26: { + context.ContextOuterClass.DeviceConfig.Builder subBuilder = null; + if (deviceConfig_ != null) { + subBuilder = deviceConfig_.toBuilder(); + } + deviceConfig_ = input.readMessage(context.ContextOuterClass.DeviceConfig.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(deviceConfig_); + deviceConfig_ = subBuilder.buildPartial(); + } + + 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 { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_DeviceEvent_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_DeviceEvent_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.DeviceEvent.class, context.ContextOuterClass.DeviceEvent.Builder.class); + } + + public static final int EVENT_FIELD_NUMBER = 1; + private context.ContextOuterClass.Event event_; + /** + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. + */ + @java.lang.Override + public boolean hasEvent() { + return event_ != null; + } + /** + * <code>.context.Event event = 1;</code> + * @return The event. + */ + @java.lang.Override + public context.ContextOuterClass.Event getEvent() { + return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; + } + /** + * <code>.context.Event event = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { + return getEvent(); + } + + public static final int DEVICE_ID_FIELD_NUMBER = 2; + private context.ContextOuterClass.DeviceId deviceId_; + /** + * <code>.context.DeviceId device_id = 2;</code> + * @return Whether the deviceId field is set. + */ + @java.lang.Override + public boolean hasDeviceId() { + return deviceId_ != null; + } + /** + * <code>.context.DeviceId device_id = 2;</code> + * @return The deviceId. + */ + @java.lang.Override + public context.ContextOuterClass.DeviceId getDeviceId() { + return deviceId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; + } + /** + * <code>.context.DeviceId device_id = 2;</code> + */ + @java.lang.Override + public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder() { + return getDeviceId(); + } + + public static final int DEVICE_CONFIG_FIELD_NUMBER = 3; + private context.ContextOuterClass.DeviceConfig deviceConfig_; + /** + * <code>.context.DeviceConfig device_config = 3;</code> + * @return Whether the deviceConfig field is set. + */ + @java.lang.Override + public boolean hasDeviceConfig() { + return deviceConfig_ != null; + } + /** + * <code>.context.DeviceConfig device_config = 3;</code> + * @return The deviceConfig. + */ + @java.lang.Override + public context.ContextOuterClass.DeviceConfig getDeviceConfig() { + return deviceConfig_ == null ? context.ContextOuterClass.DeviceConfig.getDefaultInstance() : deviceConfig_; + } + /** + * <code>.context.DeviceConfig device_config = 3;</code> + */ + @java.lang.Override + public context.ContextOuterClass.DeviceConfigOrBuilder getDeviceConfigOrBuilder() { + return getDeviceConfig(); + } + + 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 (event_ != null) { + output.writeMessage(1, getEvent()); + } + if (deviceId_ != null) { + output.writeMessage(2, getDeviceId()); + } + if (deviceConfig_ != null) { + output.writeMessage(3, getDeviceConfig()); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (event_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getEvent()); + } + if (deviceId_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, getDeviceId()); + } + if (deviceConfig_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(3, getDeviceConfig()); + } + 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 context.ContextOuterClass.DeviceEvent)) { + return super.equals(obj); + } + context.ContextOuterClass.DeviceEvent other = (context.ContextOuterClass.DeviceEvent) obj; + + if (hasEvent() != other.hasEvent()) return false; + if (hasEvent()) { + if (!getEvent() + .equals(other.getEvent())) return false; + } + if (hasDeviceId() != other.hasDeviceId()) return false; + if (hasDeviceId()) { + if (!getDeviceId() + .equals(other.getDeviceId())) return false; + } + if (hasDeviceConfig() != other.hasDeviceConfig()) return false; + if (hasDeviceConfig()) { + if (!getDeviceConfig() + .equals(other.getDeviceConfig())) 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 (hasEvent()) { + hash = (37 * hash) + EVENT_FIELD_NUMBER; + hash = (53 * hash) + getEvent().hashCode(); + } + if (hasDeviceId()) { + hash = (37 * hash) + DEVICE_ID_FIELD_NUMBER; + hash = (53 * hash) + getDeviceId().hashCode(); + } + if (hasDeviceConfig()) { + hash = (37 * hash) + DEVICE_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getDeviceConfig().hashCode(); + } + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static context.ContextOuterClass.DeviceEvent parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.DeviceEvent parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.DeviceEvent parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.DeviceEvent parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.DeviceEvent parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.DeviceEvent parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.DeviceEvent parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.DeviceEvent 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 context.ContextOuterClass.DeviceEvent parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static context.ContextOuterClass.DeviceEvent 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 context.ContextOuterClass.DeviceEvent parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.DeviceEvent 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(context.ContextOuterClass.DeviceEvent 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; + } + /** + * Protobuf type {@code context.DeviceEvent} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:context.DeviceEvent) + context.ContextOuterClass.DeviceEventOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_DeviceEvent_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_DeviceEvent_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.DeviceEvent.class, context.ContextOuterClass.DeviceEvent.Builder.class); + } + + // Construct using context.ContextOuterClass.DeviceEvent.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + if (eventBuilder_ == null) { + event_ = null; + } else { + event_ = null; + eventBuilder_ = null; + } + if (deviceIdBuilder_ == null) { + deviceId_ = null; + } else { + deviceId_ = null; + deviceIdBuilder_ = null; + } + if (deviceConfigBuilder_ == null) { + deviceConfig_ = null; + } else { + deviceConfig_ = null; + deviceConfigBuilder_ = null; + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return context.ContextOuterClass.internal_static_context_DeviceEvent_descriptor; + } + + @java.lang.Override + public context.ContextOuterClass.DeviceEvent getDefaultInstanceForType() { + return context.ContextOuterClass.DeviceEvent.getDefaultInstance(); + } + + @java.lang.Override + public context.ContextOuterClass.DeviceEvent build() { + context.ContextOuterClass.DeviceEvent result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public context.ContextOuterClass.DeviceEvent buildPartial() { + context.ContextOuterClass.DeviceEvent result = new context.ContextOuterClass.DeviceEvent(this); + if (eventBuilder_ == null) { + result.event_ = event_; + } else { + result.event_ = eventBuilder_.build(); + } + if (deviceIdBuilder_ == null) { + result.deviceId_ = deviceId_; + } else { + result.deviceId_ = deviceIdBuilder_.build(); + } + if (deviceConfigBuilder_ == null) { + result.deviceConfig_ = deviceConfig_; + } else { + result.deviceConfig_ = deviceConfigBuilder_.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 context.ContextOuterClass.DeviceEvent) { + return mergeFrom((context.ContextOuterClass.DeviceEvent)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(context.ContextOuterClass.DeviceEvent other) { + if (other == context.ContextOuterClass.DeviceEvent.getDefaultInstance()) return this; + if (other.hasEvent()) { + mergeEvent(other.getEvent()); + } + if (other.hasDeviceId()) { + mergeDeviceId(other.getDeviceId()); + } + if (other.hasDeviceConfig()) { + mergeDeviceConfig(other.getDeviceConfig()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @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 { + context.ContextOuterClass.DeviceEvent parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.DeviceEvent) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + private context.ContextOuterClass.Event event_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> eventBuilder_; + /** + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. + */ + public boolean hasEvent() { + return eventBuilder_ != null || event_ != null; + } + /** + * <code>.context.Event event = 1;</code> + * @return The event. + */ + public context.ContextOuterClass.Event getEvent() { + if (eventBuilder_ == null) { + return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; + } else { + return eventBuilder_.getMessage(); + } + } + /** + * <code>.context.Event event = 1;</code> + */ + public Builder setEvent(context.ContextOuterClass.Event value) { + if (eventBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + event_ = value; + onChanged(); + } else { + eventBuilder_.setMessage(value); + } + + return this; + } + /** + * <code>.context.Event event = 1;</code> + */ + public Builder setEvent( + context.ContextOuterClass.Event.Builder builderForValue) { + if (eventBuilder_ == null) { + event_ = builderForValue.build(); + onChanged(); + } else { + eventBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.Event event = 1;</code> + */ + public Builder mergeEvent(context.ContextOuterClass.Event value) { + if (eventBuilder_ == null) { + if (event_ != null) { + event_ = + context.ContextOuterClass.Event.newBuilder(event_).mergeFrom(value).buildPartial(); + } else { + event_ = value; + } + onChanged(); + } else { + eventBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.context.Event event = 1;</code> + */ + public Builder clearEvent() { + if (eventBuilder_ == null) { + event_ = null; + onChanged(); + } else { + event_ = null; + eventBuilder_ = null; + } + + return this; + } + /** + * <code>.context.Event event = 1;</code> + */ + public context.ContextOuterClass.Event.Builder getEventBuilder() { + + onChanged(); + return getEventFieldBuilder().getBuilder(); + } + /** + * <code>.context.Event event = 1;</code> + */ + public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { + if (eventBuilder_ != null) { + return eventBuilder_.getMessageOrBuilder(); + } else { + return event_ == null ? + context.ContextOuterClass.Event.getDefaultInstance() : event_; + } + } + /** + * <code>.context.Event event = 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(), + getParentForChildren(), + isClean()); + event_ = null; + } + return eventBuilder_; + } + + private context.ContextOuterClass.DeviceId deviceId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> deviceIdBuilder_; + /** + * <code>.context.DeviceId device_id = 2;</code> + * @return Whether the deviceId field is set. + */ + public boolean hasDeviceId() { + return deviceIdBuilder_ != null || deviceId_ != null; + } + /** + * <code>.context.DeviceId device_id = 2;</code> + * @return The deviceId. + */ + public context.ContextOuterClass.DeviceId getDeviceId() { + if (deviceIdBuilder_ == null) { + return deviceId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; + } else { + return deviceIdBuilder_.getMessage(); + } + } + /** + * <code>.context.DeviceId device_id = 2;</code> + */ + public Builder setDeviceId(context.ContextOuterClass.DeviceId value) { + if (deviceIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + deviceId_ = value; + onChanged(); + } else { + deviceIdBuilder_.setMessage(value); + } + + return this; + } + /** + * <code>.context.DeviceId device_id = 2;</code> + */ + public Builder setDeviceId( + context.ContextOuterClass.DeviceId.Builder builderForValue) { + if (deviceIdBuilder_ == null) { + deviceId_ = builderForValue.build(); + onChanged(); + } else { + deviceIdBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.DeviceId device_id = 2;</code> + */ + public Builder mergeDeviceId(context.ContextOuterClass.DeviceId value) { + if (deviceIdBuilder_ == null) { + if (deviceId_ != null) { + deviceId_ = + context.ContextOuterClass.DeviceId.newBuilder(deviceId_).mergeFrom(value).buildPartial(); + } else { + deviceId_ = value; + } + onChanged(); + } else { + deviceIdBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.context.DeviceId device_id = 2;</code> + */ + public Builder clearDeviceId() { + if (deviceIdBuilder_ == null) { + deviceId_ = null; + onChanged(); + } else { + deviceId_ = null; + deviceIdBuilder_ = null; + } + + return this; + } + /** + * <code>.context.DeviceId device_id = 2;</code> + */ + public context.ContextOuterClass.DeviceId.Builder getDeviceIdBuilder() { + + onChanged(); + return getDeviceIdFieldBuilder().getBuilder(); + } + /** + * <code>.context.DeviceId device_id = 2;</code> + */ + public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder() { + if (deviceIdBuilder_ != null) { + return deviceIdBuilder_.getMessageOrBuilder(); + } else { + return deviceId_ == null ? + context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; + } + } + /** + * <code>.context.DeviceId device_id = 2;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> + getDeviceIdFieldBuilder() { + if (deviceIdBuilder_ == null) { + deviceIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder>( + getDeviceId(), + getParentForChildren(), + isClean()); + deviceId_ = null; + } + return deviceIdBuilder_; + } + + private context.ContextOuterClass.DeviceConfig deviceConfig_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceConfig, context.ContextOuterClass.DeviceConfig.Builder, context.ContextOuterClass.DeviceConfigOrBuilder> deviceConfigBuilder_; + /** + * <code>.context.DeviceConfig device_config = 3;</code> + * @return Whether the deviceConfig field is set. + */ + public boolean hasDeviceConfig() { + return deviceConfigBuilder_ != null || deviceConfig_ != null; + } + /** + * <code>.context.DeviceConfig device_config = 3;</code> + * @return The deviceConfig. + */ + public context.ContextOuterClass.DeviceConfig getDeviceConfig() { + if (deviceConfigBuilder_ == null) { + return deviceConfig_ == null ? context.ContextOuterClass.DeviceConfig.getDefaultInstance() : deviceConfig_; + } else { + return deviceConfigBuilder_.getMessage(); + } + } + /** + * <code>.context.DeviceConfig device_config = 3;</code> + */ + public Builder setDeviceConfig(context.ContextOuterClass.DeviceConfig value) { + if (deviceConfigBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + deviceConfig_ = value; + onChanged(); + } else { + deviceConfigBuilder_.setMessage(value); + } + + return this; + } + /** + * <code>.context.DeviceConfig device_config = 3;</code> + */ + public Builder setDeviceConfig( + context.ContextOuterClass.DeviceConfig.Builder builderForValue) { + if (deviceConfigBuilder_ == null) { + deviceConfig_ = builderForValue.build(); + onChanged(); + } else { + deviceConfigBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.DeviceConfig device_config = 3;</code> + */ + public Builder mergeDeviceConfig(context.ContextOuterClass.DeviceConfig value) { + if (deviceConfigBuilder_ == null) { + if (deviceConfig_ != null) { + deviceConfig_ = + context.ContextOuterClass.DeviceConfig.newBuilder(deviceConfig_).mergeFrom(value).buildPartial(); + } else { + deviceConfig_ = value; + } + onChanged(); + } else { + deviceConfigBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.context.DeviceConfig device_config = 3;</code> + */ + public Builder clearDeviceConfig() { + if (deviceConfigBuilder_ == null) { + deviceConfig_ = null; + onChanged(); + } else { + deviceConfig_ = null; + deviceConfigBuilder_ = null; + } + + return this; + } + /** + * <code>.context.DeviceConfig device_config = 3;</code> + */ + public context.ContextOuterClass.DeviceConfig.Builder getDeviceConfigBuilder() { + + onChanged(); + return getDeviceConfigFieldBuilder().getBuilder(); + } + /** + * <code>.context.DeviceConfig device_config = 3;</code> + */ + public context.ContextOuterClass.DeviceConfigOrBuilder getDeviceConfigOrBuilder() { + if (deviceConfigBuilder_ != null) { + return deviceConfigBuilder_.getMessageOrBuilder(); + } else { + return deviceConfig_ == null ? + context.ContextOuterClass.DeviceConfig.getDefaultInstance() : deviceConfig_; + } + } + /** + * <code>.context.DeviceConfig device_config = 3;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceConfig, context.ContextOuterClass.DeviceConfig.Builder, context.ContextOuterClass.DeviceConfigOrBuilder> + getDeviceConfigFieldBuilder() { + if (deviceConfigBuilder_ == null) { + deviceConfigBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceConfig, context.ContextOuterClass.DeviceConfig.Builder, context.ContextOuterClass.DeviceConfigOrBuilder>( + getDeviceConfig(), + getParentForChildren(), + isClean()); + deviceConfig_ = null; + } + return deviceConfigBuilder_; + } + @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:context.DeviceEvent) + } + + // @@protoc_insertion_point(class_scope:context.DeviceEvent) + private static final context.ContextOuterClass.DeviceEvent DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new context.ContextOuterClass.DeviceEvent(); + } + + public static context.ContextOuterClass.DeviceEvent getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<DeviceEvent> + PARSER = new com.google.protobuf.AbstractParser<DeviceEvent>() { + @java.lang.Override + public DeviceEvent parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new DeviceEvent(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<DeviceEvent> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<DeviceEvent> getParserForType() { + return PARSER; + } + + @java.lang.Override + public context.ContextOuterClass.DeviceEvent getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface LinkIdOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.LinkId) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>.context.Uuid link_uuid = 1;</code> + * @return Whether the linkUuid field is set. + */ + boolean hasLinkUuid(); + /** + * <code>.context.Uuid link_uuid = 1;</code> + * @return The linkUuid. + */ + context.ContextOuterClass.Uuid getLinkUuid(); + /** + * <code>.context.Uuid link_uuid = 1;</code> + */ + context.ContextOuterClass.UuidOrBuilder getLinkUuidOrBuilder(); + } + /** + * <pre> + * ----- Link ---------------------------------------------------------------------------------------------------------- + * </pre> + * + * Protobuf type {@code context.LinkId} + */ + public static final class LinkId extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:context.LinkId) + LinkIdOrBuilder { + private static final long serialVersionUID = 0L; + // Use LinkId.newBuilder() to construct. + private LinkId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private LinkId() { + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new LinkId(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private LinkId( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + 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: { + context.ContextOuterClass.Uuid.Builder subBuilder = null; + if (linkUuid_ != null) { + subBuilder = linkUuid_.toBuilder(); + } + linkUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(linkUuid_); + linkUuid_ = subBuilder.buildPartial(); + } + + 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 { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_LinkId_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_LinkId_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.LinkId.class, context.ContextOuterClass.LinkId.Builder.class); + } + + public static final int LINK_UUID_FIELD_NUMBER = 1; + private context.ContextOuterClass.Uuid linkUuid_; + /** + * <code>.context.Uuid link_uuid = 1;</code> + * @return Whether the linkUuid field is set. + */ + @java.lang.Override + public boolean hasLinkUuid() { + return linkUuid_ != null; + } + /** + * <code>.context.Uuid link_uuid = 1;</code> + * @return The linkUuid. + */ + @java.lang.Override + public context.ContextOuterClass.Uuid getLinkUuid() { + return linkUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : linkUuid_; + } + /** + * <code>.context.Uuid link_uuid = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.UuidOrBuilder getLinkUuidOrBuilder() { + return getLinkUuid(); + } + + 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 (linkUuid_ != null) { + output.writeMessage(1, getLinkUuid()); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (linkUuid_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getLinkUuid()); + } + 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 context.ContextOuterClass.LinkId)) { + return super.equals(obj); + } + context.ContextOuterClass.LinkId other = (context.ContextOuterClass.LinkId) obj; + + if (hasLinkUuid() != other.hasLinkUuid()) return false; + if (hasLinkUuid()) { + if (!getLinkUuid() + .equals(other.getLinkUuid())) 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 (hasLinkUuid()) { + hash = (37 * hash) + LINK_UUID_FIELD_NUMBER; + hash = (53 * hash) + getLinkUuid().hashCode(); + } + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static context.ContextOuterClass.LinkId parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.LinkId parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.LinkId parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.LinkId parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.LinkId parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.LinkId parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.LinkId parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.LinkId 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 context.ContextOuterClass.LinkId parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static context.ContextOuterClass.LinkId 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 context.ContextOuterClass.LinkId parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.LinkId 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(context.ContextOuterClass.LinkId 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> + * ----- Link ---------------------------------------------------------------------------------------------------------- + * </pre> + * + * Protobuf type {@code context.LinkId} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:context.LinkId) + context.ContextOuterClass.LinkIdOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_LinkId_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_LinkId_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.LinkId.class, context.ContextOuterClass.LinkId.Builder.class); + } + + // Construct using context.ContextOuterClass.LinkId.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + if (linkUuidBuilder_ == null) { + linkUuid_ = null; + } else { + linkUuid_ = null; + linkUuidBuilder_ = null; + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return context.ContextOuterClass.internal_static_context_LinkId_descriptor; + } + + @java.lang.Override + public context.ContextOuterClass.LinkId getDefaultInstanceForType() { + return context.ContextOuterClass.LinkId.getDefaultInstance(); + } + + @java.lang.Override + public context.ContextOuterClass.LinkId build() { + context.ContextOuterClass.LinkId result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public context.ContextOuterClass.LinkId buildPartial() { + context.ContextOuterClass.LinkId result = new context.ContextOuterClass.LinkId(this); + if (linkUuidBuilder_ == null) { + result.linkUuid_ = linkUuid_; + } else { + result.linkUuid_ = linkUuidBuilder_.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 context.ContextOuterClass.LinkId) { + return mergeFrom((context.ContextOuterClass.LinkId)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(context.ContextOuterClass.LinkId other) { + if (other == context.ContextOuterClass.LinkId.getDefaultInstance()) return this; + if (other.hasLinkUuid()) { + mergeLinkUuid(other.getLinkUuid()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @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 { + context.ContextOuterClass.LinkId parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.LinkId) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + private context.ContextOuterClass.Uuid linkUuid_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> linkUuidBuilder_; + /** + * <code>.context.Uuid link_uuid = 1;</code> + * @return Whether the linkUuid field is set. + */ + public boolean hasLinkUuid() { + return linkUuidBuilder_ != null || linkUuid_ != null; + } + /** + * <code>.context.Uuid link_uuid = 1;</code> + * @return The linkUuid. + */ + public context.ContextOuterClass.Uuid getLinkUuid() { + if (linkUuidBuilder_ == null) { + return linkUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : linkUuid_; + } else { + return linkUuidBuilder_.getMessage(); + } + } + /** + * <code>.context.Uuid link_uuid = 1;</code> + */ + public Builder setLinkUuid(context.ContextOuterClass.Uuid value) { + if (linkUuidBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + linkUuid_ = value; + onChanged(); + } else { + linkUuidBuilder_.setMessage(value); + } + + return this; + } + /** + * <code>.context.Uuid link_uuid = 1;</code> + */ + public Builder setLinkUuid( + context.ContextOuterClass.Uuid.Builder builderForValue) { + if (linkUuidBuilder_ == null) { + linkUuid_ = builderForValue.build(); + onChanged(); + } else { + linkUuidBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.Uuid link_uuid = 1;</code> + */ + public Builder mergeLinkUuid(context.ContextOuterClass.Uuid value) { + if (linkUuidBuilder_ == null) { + if (linkUuid_ != null) { + linkUuid_ = + context.ContextOuterClass.Uuid.newBuilder(linkUuid_).mergeFrom(value).buildPartial(); + } else { + linkUuid_ = value; + } + onChanged(); + } else { + linkUuidBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.context.Uuid link_uuid = 1;</code> + */ + public Builder clearLinkUuid() { + if (linkUuidBuilder_ == null) { + linkUuid_ = null; + onChanged(); + } else { + linkUuid_ = null; + linkUuidBuilder_ = null; + } + + return this; + } + /** + * <code>.context.Uuid link_uuid = 1;</code> + */ + public context.ContextOuterClass.Uuid.Builder getLinkUuidBuilder() { + + onChanged(); + return getLinkUuidFieldBuilder().getBuilder(); + } + /** + * <code>.context.Uuid link_uuid = 1;</code> + */ + public context.ContextOuterClass.UuidOrBuilder getLinkUuidOrBuilder() { + if (linkUuidBuilder_ != null) { + return linkUuidBuilder_.getMessageOrBuilder(); + } else { + return linkUuid_ == null ? + context.ContextOuterClass.Uuid.getDefaultInstance() : linkUuid_; + } + } + /** + * <code>.context.Uuid link_uuid = 1;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> + getLinkUuidFieldBuilder() { + if (linkUuidBuilder_ == null) { + linkUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>( + getLinkUuid(), + getParentForChildren(), + isClean()); + linkUuid_ = null; + } + return linkUuidBuilder_; + } + @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:context.LinkId) + } + + // @@protoc_insertion_point(class_scope:context.LinkId) + private static final context.ContextOuterClass.LinkId DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new context.ContextOuterClass.LinkId(); + } + + public static context.ContextOuterClass.LinkId getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<LinkId> + PARSER = new com.google.protobuf.AbstractParser<LinkId>() { + @java.lang.Override + public LinkId parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new LinkId(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<LinkId> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<LinkId> getParserForType() { + return PARSER; + } + + @java.lang.Override + public context.ContextOuterClass.LinkId getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface LinkOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Link) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>.context.LinkId link_id = 1;</code> + * @return Whether the linkId field is set. + */ + boolean hasLinkId(); + /** + * <code>.context.LinkId link_id = 1;</code> + * @return The linkId. + */ + context.ContextOuterClass.LinkId getLinkId(); + /** + * <code>.context.LinkId link_id = 1;</code> + */ + context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder(); + + /** + * <code>string name = 2;</code> + * @return The name. + */ + java.lang.String getName(); + /** + * <code>string name = 2;</code> + * @return The bytes for name. + */ + com.google.protobuf.ByteString + getNameBytes(); + + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + java.util.List<context.ContextOuterClass.EndPointId> + getLinkEndpointIdsList(); + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + context.ContextOuterClass.EndPointId getLinkEndpointIds(int index); + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + int getLinkEndpointIdsCount(); + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getLinkEndpointIdsOrBuilderList(); + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + context.ContextOuterClass.EndPointIdOrBuilder getLinkEndpointIdsOrBuilder( + int index); + } + /** + * Protobuf type {@code context.Link} + */ + public static final class Link extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:context.Link) + LinkOrBuilder { + private static final long serialVersionUID = 0L; + // Use Link.newBuilder() to construct. + private Link(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private Link() { + name_ = ""; + linkEndpointIds_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new Link(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private Link( + 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: { + context.ContextOuterClass.LinkId.Builder subBuilder = null; + if (linkId_ != null) { + subBuilder = linkId_.toBuilder(); + } + linkId_ = input.readMessage(context.ContextOuterClass.LinkId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(linkId_); + linkId_ = subBuilder.buildPartial(); + } + + break; + } + case 18: { + java.lang.String s = input.readStringRequireUtf8(); + + name_ = s; + break; + } + case 26: { + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + linkEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(); + mutable_bitField0_ |= 0x00000001; + } + linkEndpointIds_.add( + input.readMessage(context.ContextOuterClass.EndPointId.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)) { + linkEndpointIds_ = java.util.Collections.unmodifiableList(linkEndpointIds_); + } + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_Link_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_Link_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.Link.class, context.ContextOuterClass.Link.Builder.class); + } + + public static final int LINK_ID_FIELD_NUMBER = 1; + private context.ContextOuterClass.LinkId linkId_; + /** + * <code>.context.LinkId link_id = 1;</code> + * @return Whether the linkId field is set. + */ + @java.lang.Override + public boolean hasLinkId() { + return linkId_ != null; + } + /** + * <code>.context.LinkId link_id = 1;</code> + * @return The linkId. + */ + @java.lang.Override + public context.ContextOuterClass.LinkId getLinkId() { + return linkId_ == null ? context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_; + } + /** + * <code>.context.LinkId link_id = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder() { + return getLinkId(); + } + + public static final int NAME_FIELD_NUMBER = 2; + private volatile java.lang.Object name_; + /** + * <code>string name = 2;</code> + * @return The name. + */ + @java.lang.Override + public java.lang.String getName() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } + } + /** + * <code>string name = 2;</code> + * @return The bytes for name. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int LINK_ENDPOINT_IDS_FIELD_NUMBER = 3; + private java.util.List<context.ContextOuterClass.EndPointId> linkEndpointIds_; + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + @java.lang.Override + public java.util.List<context.ContextOuterClass.EndPointId> getLinkEndpointIdsList() { + return linkEndpointIds_; + } + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getLinkEndpointIdsOrBuilderList() { + return linkEndpointIds_; + } + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + @java.lang.Override + public int getLinkEndpointIdsCount() { + return linkEndpointIds_.size(); + } + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + @java.lang.Override + public context.ContextOuterClass.EndPointId getLinkEndpointIds(int index) { + return linkEndpointIds_.get(index); + } + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + @java.lang.Override + public context.ContextOuterClass.EndPointIdOrBuilder getLinkEndpointIdsOrBuilder( + int index) { + return linkEndpointIds_.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 (linkId_ != null) { + output.writeMessage(1, getLinkId()); + } + if (!getNameBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_); + } + for (int i = 0; i < linkEndpointIds_.size(); i++) { + output.writeMessage(3, linkEndpointIds_.get(i)); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (linkId_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getLinkId()); + } + if (!getNameBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_); + } + for (int i = 0; i < linkEndpointIds_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(3, linkEndpointIds_.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 context.ContextOuterClass.Link)) { + return super.equals(obj); + } + context.ContextOuterClass.Link other = (context.ContextOuterClass.Link) obj; + + if (hasLinkId() != other.hasLinkId()) return false; + if (hasLinkId()) { + if (!getLinkId() + .equals(other.getLinkId())) return false; + } + if (!getName() + .equals(other.getName())) return false; + if (!getLinkEndpointIdsList() + .equals(other.getLinkEndpointIdsList())) 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 (hasLinkId()) { + hash = (37 * hash) + LINK_ID_FIELD_NUMBER; + hash = (53 * hash) + getLinkId().hashCode(); + } + hash = (37 * hash) + NAME_FIELD_NUMBER; + hash = (53 * hash) + getName().hashCode(); + if (getLinkEndpointIdsCount() > 0) { + hash = (37 * hash) + LINK_ENDPOINT_IDS_FIELD_NUMBER; + hash = (53 * hash) + getLinkEndpointIdsList().hashCode(); + } + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static context.ContextOuterClass.Link parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.Link parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.Link parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.Link parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.Link parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.Link parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.Link parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.Link 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 context.ContextOuterClass.Link parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static context.ContextOuterClass.Link 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 context.ContextOuterClass.Link parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.Link 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(context.ContextOuterClass.Link 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; + } + /** + * Protobuf type {@code context.Link} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:context.Link) + context.ContextOuterClass.LinkOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_Link_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_Link_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.Link.class, context.ContextOuterClass.Link.Builder.class); + } + + // Construct using context.ContextOuterClass.Link.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getLinkEndpointIdsFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + if (linkIdBuilder_ == null) { + linkId_ = null; + } else { + linkId_ = null; + linkIdBuilder_ = null; + } + name_ = ""; + + if (linkEndpointIdsBuilder_ == null) { + linkEndpointIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + } else { + linkEndpointIdsBuilder_.clear(); + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return context.ContextOuterClass.internal_static_context_Link_descriptor; + } + + @java.lang.Override + public context.ContextOuterClass.Link getDefaultInstanceForType() { + return context.ContextOuterClass.Link.getDefaultInstance(); + } + + @java.lang.Override + public context.ContextOuterClass.Link build() { + context.ContextOuterClass.Link result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public context.ContextOuterClass.Link buildPartial() { + context.ContextOuterClass.Link result = new context.ContextOuterClass.Link(this); + int from_bitField0_ = bitField0_; + if (linkIdBuilder_ == null) { + result.linkId_ = linkId_; + } else { + result.linkId_ = linkIdBuilder_.build(); + } + result.name_ = name_; + if (linkEndpointIdsBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + linkEndpointIds_ = java.util.Collections.unmodifiableList(linkEndpointIds_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.linkEndpointIds_ = linkEndpointIds_; + } else { + result.linkEndpointIds_ = linkEndpointIdsBuilder_.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 context.ContextOuterClass.Link) { + return mergeFrom((context.ContextOuterClass.Link)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(context.ContextOuterClass.Link other) { + if (other == context.ContextOuterClass.Link.getDefaultInstance()) return this; + if (other.hasLinkId()) { + mergeLinkId(other.getLinkId()); + } + if (!other.getName().isEmpty()) { + name_ = other.name_; + onChanged(); + } + if (linkEndpointIdsBuilder_ == null) { + if (!other.linkEndpointIds_.isEmpty()) { + if (linkEndpointIds_.isEmpty()) { + linkEndpointIds_ = other.linkEndpointIds_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureLinkEndpointIdsIsMutable(); + linkEndpointIds_.addAll(other.linkEndpointIds_); + } + onChanged(); + } + } else { + if (!other.linkEndpointIds_.isEmpty()) { + if (linkEndpointIdsBuilder_.isEmpty()) { + linkEndpointIdsBuilder_.dispose(); + linkEndpointIdsBuilder_ = null; + linkEndpointIds_ = other.linkEndpointIds_; + bitField0_ = (bitField0_ & ~0x00000001); + linkEndpointIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getLinkEndpointIdsFieldBuilder() : null; + } else { + linkEndpointIdsBuilder_.addAllMessages(other.linkEndpointIds_); + } + } + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @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 { + context.ContextOuterClass.Link parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.Link) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + private context.ContextOuterClass.LinkId linkId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> linkIdBuilder_; + /** + * <code>.context.LinkId link_id = 1;</code> + * @return Whether the linkId field is set. + */ + public boolean hasLinkId() { + return linkIdBuilder_ != null || linkId_ != null; + } + /** + * <code>.context.LinkId link_id = 1;</code> + * @return The linkId. + */ + public context.ContextOuterClass.LinkId getLinkId() { + if (linkIdBuilder_ == null) { + return linkId_ == null ? context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_; + } else { + return linkIdBuilder_.getMessage(); + } + } + /** + * <code>.context.LinkId link_id = 1;</code> + */ + public Builder setLinkId(context.ContextOuterClass.LinkId value) { + if (linkIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + linkId_ = value; + onChanged(); + } else { + linkIdBuilder_.setMessage(value); + } + + return this; + } + /** + * <code>.context.LinkId link_id = 1;</code> + */ + public Builder setLinkId( + context.ContextOuterClass.LinkId.Builder builderForValue) { + if (linkIdBuilder_ == null) { + linkId_ = builderForValue.build(); + onChanged(); + } else { + linkIdBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.LinkId link_id = 1;</code> + */ + public Builder mergeLinkId(context.ContextOuterClass.LinkId value) { + if (linkIdBuilder_ == null) { + if (linkId_ != null) { + linkId_ = + context.ContextOuterClass.LinkId.newBuilder(linkId_).mergeFrom(value).buildPartial(); + } else { + linkId_ = value; + } + onChanged(); + } else { + linkIdBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.context.LinkId link_id = 1;</code> + */ + public Builder clearLinkId() { + if (linkIdBuilder_ == null) { + linkId_ = null; + onChanged(); + } else { + linkId_ = null; + linkIdBuilder_ = null; + } + + return this; + } + /** + * <code>.context.LinkId link_id = 1;</code> + */ + public context.ContextOuterClass.LinkId.Builder getLinkIdBuilder() { + + onChanged(); + return getLinkIdFieldBuilder().getBuilder(); + } + /** + * <code>.context.LinkId link_id = 1;</code> + */ + public context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder() { + if (linkIdBuilder_ != null) { + return linkIdBuilder_.getMessageOrBuilder(); + } else { + return linkId_ == null ? + context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_; + } + } + /** + * <code>.context.LinkId link_id = 1;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> + getLinkIdFieldBuilder() { + if (linkIdBuilder_ == null) { + linkIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder>( + getLinkId(), + getParentForChildren(), + isClean()); + linkId_ = null; + } + return linkIdBuilder_; + } + + private java.lang.Object name_ = ""; + /** + * <code>string name = 2;</code> + * @return The name. + */ + public java.lang.String getName() { + java.lang.Object ref = name_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * <code>string name = 2;</code> + * @return The bytes for name. + */ + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * <code>string name = 2;</code> + * @param value The name to set. + * @return This builder for chaining. + */ + public Builder setName( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + name_ = value; + onChanged(); + return this; + } + /** + * <code>string name = 2;</code> + * @return This builder for chaining. + */ + public Builder clearName() { + + name_ = getDefaultInstance().getName(); + onChanged(); + return this; + } + /** + * <code>string name = 2;</code> + * @param value The bytes for name to set. + * @return This builder for chaining. + */ + public Builder setNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + name_ = value; + onChanged(); + return this; + } + + private java.util.List<context.ContextOuterClass.EndPointId> linkEndpointIds_ = + java.util.Collections.emptyList(); + private void ensureLinkEndpointIdsIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + linkEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(linkEndpointIds_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> linkEndpointIdsBuilder_; + + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + public java.util.List<context.ContextOuterClass.EndPointId> getLinkEndpointIdsList() { + if (linkEndpointIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(linkEndpointIds_); + } else { + return linkEndpointIdsBuilder_.getMessageList(); + } + } + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + public int getLinkEndpointIdsCount() { + if (linkEndpointIdsBuilder_ == null) { + return linkEndpointIds_.size(); + } else { + return linkEndpointIdsBuilder_.getCount(); + } + } + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointId getLinkEndpointIds(int index) { + if (linkEndpointIdsBuilder_ == null) { + return linkEndpointIds_.get(index); + } else { + return linkEndpointIdsBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + public Builder setLinkEndpointIds( + int index, context.ContextOuterClass.EndPointId value) { + if (linkEndpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLinkEndpointIdsIsMutable(); + linkEndpointIds_.set(index, value); + onChanged(); + } else { + linkEndpointIdsBuilder_.setMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + public Builder setLinkEndpointIds( + int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (linkEndpointIdsBuilder_ == null) { + ensureLinkEndpointIdsIsMutable(); + linkEndpointIds_.set(index, builderForValue.build()); + onChanged(); + } else { + linkEndpointIdsBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + public Builder addLinkEndpointIds(context.ContextOuterClass.EndPointId value) { + if (linkEndpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLinkEndpointIdsIsMutable(); + linkEndpointIds_.add(value); + onChanged(); + } else { + linkEndpointIdsBuilder_.addMessage(value); + } + return this; + } + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + public Builder addLinkEndpointIds( + int index, context.ContextOuterClass.EndPointId value) { + if (linkEndpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLinkEndpointIdsIsMutable(); + linkEndpointIds_.add(index, value); + onChanged(); + } else { + linkEndpointIdsBuilder_.addMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + public Builder addLinkEndpointIds( + context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (linkEndpointIdsBuilder_ == null) { + ensureLinkEndpointIdsIsMutable(); + linkEndpointIds_.add(builderForValue.build()); + onChanged(); + } else { + linkEndpointIdsBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + public Builder addLinkEndpointIds( + int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (linkEndpointIdsBuilder_ == null) { + ensureLinkEndpointIdsIsMutable(); + linkEndpointIds_.add(index, builderForValue.build()); + onChanged(); + } else { + linkEndpointIdsBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + public Builder addAllLinkEndpointIds( + java.lang.Iterable<? extends context.ContextOuterClass.EndPointId> values) { + if (linkEndpointIdsBuilder_ == null) { + ensureLinkEndpointIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, linkEndpointIds_); + onChanged(); + } else { + linkEndpointIdsBuilder_.addAllMessages(values); + } + return this; + } + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + public Builder clearLinkEndpointIds() { + if (linkEndpointIdsBuilder_ == null) { + linkEndpointIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + linkEndpointIdsBuilder_.clear(); + } + return this; + } + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + public Builder removeLinkEndpointIds(int index) { + if (linkEndpointIdsBuilder_ == null) { + ensureLinkEndpointIdsIsMutable(); + linkEndpointIds_.remove(index); + onChanged(); + } else { + linkEndpointIdsBuilder_.remove(index); + } + return this; + } + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointId.Builder getLinkEndpointIdsBuilder( + int index) { + return getLinkEndpointIdsFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointIdOrBuilder getLinkEndpointIdsOrBuilder( + int index) { + if (linkEndpointIdsBuilder_ == null) { + return linkEndpointIds_.get(index); } else { + return linkEndpointIdsBuilder_.getMessageOrBuilder(index); + } + } + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getLinkEndpointIdsOrBuilderList() { + if (linkEndpointIdsBuilder_ != null) { + return linkEndpointIdsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(linkEndpointIds_); + } + } + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointId.Builder addLinkEndpointIdsBuilder() { + return getLinkEndpointIdsFieldBuilder().addBuilder( + context.ContextOuterClass.EndPointId.getDefaultInstance()); + } + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointId.Builder addLinkEndpointIdsBuilder( + int index) { + return getLinkEndpointIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.EndPointId.getDefaultInstance()); + } + /** + * <code>repeated .context.EndPointId link_endpoint_ids = 3;</code> + */ + public java.util.List<context.ContextOuterClass.EndPointId.Builder> + getLinkEndpointIdsBuilderList() { + return getLinkEndpointIdsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> + getLinkEndpointIdsFieldBuilder() { + if (linkEndpointIdsBuilder_ == null) { + linkEndpointIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( + linkEndpointIds_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + linkEndpointIds_ = null; + } + return linkEndpointIdsBuilder_; + } + @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:context.Link) + } + + // @@protoc_insertion_point(class_scope:context.Link) + private static final context.ContextOuterClass.Link DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new context.ContextOuterClass.Link(); + } + + public static context.ContextOuterClass.Link getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<Link> + PARSER = new com.google.protobuf.AbstractParser<Link>() { + @java.lang.Override + public Link parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new Link(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<Link> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<Link> getParserForType() { + return PARSER; + } + + @java.lang.Override + public context.ContextOuterClass.Link getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface LinkIdListOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.LinkIdList) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + java.util.List<context.ContextOuterClass.LinkId> + getLinkIdsList(); + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + context.ContextOuterClass.LinkId getLinkIds(int index); + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + int getLinkIdsCount(); + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> + getLinkIdsOrBuilderList(); + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder( + int index); + } + /** + * Protobuf type {@code context.LinkIdList} + */ + public static final class LinkIdList extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:context.LinkIdList) + LinkIdListOrBuilder { + private static final long serialVersionUID = 0L; + // Use LinkIdList.newBuilder() to construct. + private LinkIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private LinkIdList() { + linkIds_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new LinkIdList(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private LinkIdList( + 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)) { + linkIds_ = new java.util.ArrayList<context.ContextOuterClass.LinkId>(); + mutable_bitField0_ |= 0x00000001; + } + linkIds_.add( + input.readMessage(context.ContextOuterClass.LinkId.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)) { + linkIds_ = java.util.Collections.unmodifiableList(linkIds_); + } + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_LinkIdList_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_LinkIdList_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.LinkIdList.class, context.ContextOuterClass.LinkIdList.Builder.class); + } + + public static final int LINK_IDS_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.LinkId> linkIds_; + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + @java.lang.Override + public java.util.List<context.ContextOuterClass.LinkId> getLinkIdsList() { + return linkIds_; + } + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> + getLinkIdsOrBuilderList() { + return linkIds_; + } + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + @java.lang.Override + public int getLinkIdsCount() { + return linkIds_.size(); + } + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.LinkId getLinkIds(int index) { + return linkIds_.get(index); + } + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder( + int index) { + return linkIds_.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 < linkIds_.size(); i++) { + output.writeMessage(1, linkIds_.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 < linkIds_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, linkIds_.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 context.ContextOuterClass.LinkIdList)) { + return super.equals(obj); + } + context.ContextOuterClass.LinkIdList other = (context.ContextOuterClass.LinkIdList) obj; + + if (!getLinkIdsList() + .equals(other.getLinkIdsList())) 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 (getLinkIdsCount() > 0) { + hash = (37 * hash) + LINK_IDS_FIELD_NUMBER; + hash = (53 * hash) + getLinkIdsList().hashCode(); + } + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static context.ContextOuterClass.LinkIdList parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.LinkIdList parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.LinkIdList parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.LinkIdList parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.LinkIdList parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.LinkIdList parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.LinkIdList parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.LinkIdList 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 context.ContextOuterClass.LinkIdList parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static context.ContextOuterClass.LinkIdList 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 context.ContextOuterClass.LinkIdList parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.LinkIdList 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(context.ContextOuterClass.LinkIdList 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; + } + /** + * Protobuf type {@code context.LinkIdList} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:context.LinkIdList) + context.ContextOuterClass.LinkIdListOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_LinkIdList_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_LinkIdList_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.LinkIdList.class, context.ContextOuterClass.LinkIdList.Builder.class); + } + + // Construct using context.ContextOuterClass.LinkIdList.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getLinkIdsFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + if (linkIdsBuilder_ == null) { + linkIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + } else { + linkIdsBuilder_.clear(); + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return context.ContextOuterClass.internal_static_context_LinkIdList_descriptor; + } + + @java.lang.Override + public context.ContextOuterClass.LinkIdList getDefaultInstanceForType() { + return context.ContextOuterClass.LinkIdList.getDefaultInstance(); + } + + @java.lang.Override + public context.ContextOuterClass.LinkIdList build() { + context.ContextOuterClass.LinkIdList result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public context.ContextOuterClass.LinkIdList buildPartial() { + context.ContextOuterClass.LinkIdList result = new context.ContextOuterClass.LinkIdList(this); + int from_bitField0_ = bitField0_; + if (linkIdsBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + linkIds_ = java.util.Collections.unmodifiableList(linkIds_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.linkIds_ = linkIds_; + } else { + result.linkIds_ = linkIdsBuilder_.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 context.ContextOuterClass.LinkIdList) { + return mergeFrom((context.ContextOuterClass.LinkIdList)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(context.ContextOuterClass.LinkIdList other) { + if (other == context.ContextOuterClass.LinkIdList.getDefaultInstance()) return this; + if (linkIdsBuilder_ == null) { + if (!other.linkIds_.isEmpty()) { + if (linkIds_.isEmpty()) { + linkIds_ = other.linkIds_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureLinkIdsIsMutable(); + linkIds_.addAll(other.linkIds_); + } + onChanged(); + } + } else { + if (!other.linkIds_.isEmpty()) { + if (linkIdsBuilder_.isEmpty()) { + linkIdsBuilder_.dispose(); + linkIdsBuilder_ = null; + linkIds_ = other.linkIds_; + bitField0_ = (bitField0_ & ~0x00000001); + linkIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getLinkIdsFieldBuilder() : null; + } else { + linkIdsBuilder_.addAllMessages(other.linkIds_); + } + } + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @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 { + context.ContextOuterClass.LinkIdList parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.LinkIdList) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + private java.util.List<context.ContextOuterClass.LinkId> linkIds_ = + java.util.Collections.emptyList(); + private void ensureLinkIdsIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + linkIds_ = new java.util.ArrayList<context.ContextOuterClass.LinkId>(linkIds_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> linkIdsBuilder_; + + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + public java.util.List<context.ContextOuterClass.LinkId> getLinkIdsList() { + if (linkIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(linkIds_); + } else { + return linkIdsBuilder_.getMessageList(); + } + } + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + public int getLinkIdsCount() { + if (linkIdsBuilder_ == null) { + return linkIds_.size(); + } else { + return linkIdsBuilder_.getCount(); + } + } + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + public context.ContextOuterClass.LinkId getLinkIds(int index) { + if (linkIdsBuilder_ == null) { + return linkIds_.get(index); + } else { + return linkIdsBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + public Builder setLinkIds( + int index, context.ContextOuterClass.LinkId value) { + if (linkIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLinkIdsIsMutable(); + linkIds_.set(index, value); + onChanged(); + } else { + linkIdsBuilder_.setMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + public Builder setLinkIds( + int index, context.ContextOuterClass.LinkId.Builder builderForValue) { + if (linkIdsBuilder_ == null) { + ensureLinkIdsIsMutable(); + linkIds_.set(index, builderForValue.build()); + onChanged(); + } else { + linkIdsBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + public Builder addLinkIds(context.ContextOuterClass.LinkId value) { + if (linkIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLinkIdsIsMutable(); + linkIds_.add(value); + onChanged(); + } else { + linkIdsBuilder_.addMessage(value); + } + return this; + } + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + public Builder addLinkIds( + int index, context.ContextOuterClass.LinkId value) { + if (linkIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLinkIdsIsMutable(); + linkIds_.add(index, value); + onChanged(); + } else { + linkIdsBuilder_.addMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + public Builder addLinkIds( + context.ContextOuterClass.LinkId.Builder builderForValue) { + if (linkIdsBuilder_ == null) { + ensureLinkIdsIsMutable(); + linkIds_.add(builderForValue.build()); + onChanged(); + } else { + linkIdsBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + public Builder addLinkIds( + int index, context.ContextOuterClass.LinkId.Builder builderForValue) { + if (linkIdsBuilder_ == null) { + ensureLinkIdsIsMutable(); + linkIds_.add(index, builderForValue.build()); + onChanged(); + } else { + linkIdsBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + public Builder addAllLinkIds( + java.lang.Iterable<? extends context.ContextOuterClass.LinkId> values) { + if (linkIdsBuilder_ == null) { + ensureLinkIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, linkIds_); + onChanged(); + } else { + linkIdsBuilder_.addAllMessages(values); + } + return this; + } + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + public Builder clearLinkIds() { + if (linkIdsBuilder_ == null) { + linkIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + linkIdsBuilder_.clear(); + } + return this; + } + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + public Builder removeLinkIds(int index) { + if (linkIdsBuilder_ == null) { + ensureLinkIdsIsMutable(); + linkIds_.remove(index); + onChanged(); + } else { + linkIdsBuilder_.remove(index); + } + return this; + } + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + public context.ContextOuterClass.LinkId.Builder getLinkIdsBuilder( + int index) { + return getLinkIdsFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + public context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder( + int index) { + if (linkIdsBuilder_ == null) { + return linkIds_.get(index); } else { + return linkIdsBuilder_.getMessageOrBuilder(index); + } + } + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + public java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> + getLinkIdsOrBuilderList() { + if (linkIdsBuilder_ != null) { + return linkIdsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(linkIds_); + } + } + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + public context.ContextOuterClass.LinkId.Builder addLinkIdsBuilder() { + return getLinkIdsFieldBuilder().addBuilder( + context.ContextOuterClass.LinkId.getDefaultInstance()); + } + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + public context.ContextOuterClass.LinkId.Builder addLinkIdsBuilder( + int index) { + return getLinkIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.LinkId.getDefaultInstance()); + } + /** + * <code>repeated .context.LinkId link_ids = 1;</code> + */ + public java.util.List<context.ContextOuterClass.LinkId.Builder> + getLinkIdsBuilderList() { + return getLinkIdsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> + getLinkIdsFieldBuilder() { + if (linkIdsBuilder_ == null) { + linkIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder>( + linkIds_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + linkIds_ = null; + } + return linkIdsBuilder_; + } + @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:context.LinkIdList) + } + + // @@protoc_insertion_point(class_scope:context.LinkIdList) + private static final context.ContextOuterClass.LinkIdList DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new context.ContextOuterClass.LinkIdList(); + } + + public static context.ContextOuterClass.LinkIdList getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<LinkIdList> + PARSER = new com.google.protobuf.AbstractParser<LinkIdList>() { + @java.lang.Override + public LinkIdList parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new LinkIdList(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<LinkIdList> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<LinkIdList> getParserForType() { + return PARSER; + } + + @java.lang.Override + public context.ContextOuterClass.LinkIdList getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface LinkListOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.LinkList) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>repeated .context.Link links = 1;</code> + */ + java.util.List<context.ContextOuterClass.Link> + getLinksList(); + /** + * <code>repeated .context.Link links = 1;</code> + */ + context.ContextOuterClass.Link getLinks(int index); + /** + * <code>repeated .context.Link links = 1;</code> + */ + int getLinksCount(); + /** + * <code>repeated .context.Link links = 1;</code> + */ + java.util.List<? extends context.ContextOuterClass.LinkOrBuilder> + getLinksOrBuilderList(); + /** + * <code>repeated .context.Link links = 1;</code> + */ + context.ContextOuterClass.LinkOrBuilder getLinksOrBuilder( + int index); + } + /** + * Protobuf type {@code context.LinkList} + */ + public static final class LinkList extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:context.LinkList) + LinkListOrBuilder { + private static final long serialVersionUID = 0L; + // Use LinkList.newBuilder() to construct. + private LinkList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private LinkList() { + links_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new LinkList(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private LinkList( + 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)) { + links_ = new java.util.ArrayList<context.ContextOuterClass.Link>(); + mutable_bitField0_ |= 0x00000001; + } + links_.add( + input.readMessage(context.ContextOuterClass.Link.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)) { + links_ = java.util.Collections.unmodifiableList(links_); + } + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_LinkList_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_LinkList_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.LinkList.class, context.ContextOuterClass.LinkList.Builder.class); + } + + public static final int LINKS_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.Link> links_; + /** + * <code>repeated .context.Link links = 1;</code> + */ + @java.lang.Override + public java.util.List<context.ContextOuterClass.Link> getLinksList() { + return links_; + } + /** + * <code>repeated .context.Link links = 1;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.LinkOrBuilder> + getLinksOrBuilderList() { + return links_; + } + /** + * <code>repeated .context.Link links = 1;</code> + */ + @java.lang.Override + public int getLinksCount() { + return links_.size(); + } + /** + * <code>repeated .context.Link links = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.Link getLinks(int index) { + return links_.get(index); + } + /** + * <code>repeated .context.Link links = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.LinkOrBuilder getLinksOrBuilder( + int index) { + return links_.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 < links_.size(); i++) { + output.writeMessage(1, links_.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 < links_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, links_.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 context.ContextOuterClass.LinkList)) { + return super.equals(obj); + } + context.ContextOuterClass.LinkList other = (context.ContextOuterClass.LinkList) obj; + + if (!getLinksList() + .equals(other.getLinksList())) 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 (getLinksCount() > 0) { + hash = (37 * hash) + LINKS_FIELD_NUMBER; + hash = (53 * hash) + getLinksList().hashCode(); + } + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static context.ContextOuterClass.LinkList parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.LinkList parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.LinkList parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.LinkList parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.LinkList parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.LinkList parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.LinkList parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.LinkList 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 context.ContextOuterClass.LinkList parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static context.ContextOuterClass.LinkList 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 context.ContextOuterClass.LinkList parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.LinkList 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(context.ContextOuterClass.LinkList 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; + } + /** + * Protobuf type {@code context.LinkList} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:context.LinkList) + context.ContextOuterClass.LinkListOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_LinkList_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_LinkList_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.LinkList.class, context.ContextOuterClass.LinkList.Builder.class); + } + + // Construct using context.ContextOuterClass.LinkList.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getLinksFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + if (linksBuilder_ == null) { + links_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + } else { + linksBuilder_.clear(); + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return context.ContextOuterClass.internal_static_context_LinkList_descriptor; + } + + @java.lang.Override + public context.ContextOuterClass.LinkList getDefaultInstanceForType() { + return context.ContextOuterClass.LinkList.getDefaultInstance(); + } + + @java.lang.Override + public context.ContextOuterClass.LinkList build() { + context.ContextOuterClass.LinkList result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public context.ContextOuterClass.LinkList buildPartial() { + context.ContextOuterClass.LinkList result = new context.ContextOuterClass.LinkList(this); + int from_bitField0_ = bitField0_; + if (linksBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + links_ = java.util.Collections.unmodifiableList(links_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.links_ = links_; + } else { + result.links_ = linksBuilder_.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 context.ContextOuterClass.LinkList) { + return mergeFrom((context.ContextOuterClass.LinkList)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(context.ContextOuterClass.LinkList other) { + if (other == context.ContextOuterClass.LinkList.getDefaultInstance()) return this; + if (linksBuilder_ == null) { + if (!other.links_.isEmpty()) { + if (links_.isEmpty()) { + links_ = other.links_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureLinksIsMutable(); + links_.addAll(other.links_); + } + onChanged(); + } + } else { + if (!other.links_.isEmpty()) { + if (linksBuilder_.isEmpty()) { + linksBuilder_.dispose(); + linksBuilder_ = null; + links_ = other.links_; + bitField0_ = (bitField0_ & ~0x00000001); + linksBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getLinksFieldBuilder() : null; + } else { + linksBuilder_.addAllMessages(other.links_); + } + } + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @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 { + context.ContextOuterClass.LinkList parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.LinkList) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + private java.util.List<context.ContextOuterClass.Link> links_ = + java.util.Collections.emptyList(); + private void ensureLinksIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + links_ = new java.util.ArrayList<context.ContextOuterClass.Link>(links_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Link, context.ContextOuterClass.Link.Builder, context.ContextOuterClass.LinkOrBuilder> linksBuilder_; + + /** + * <code>repeated .context.Link links = 1;</code> + */ + public java.util.List<context.ContextOuterClass.Link> getLinksList() { + if (linksBuilder_ == null) { + return java.util.Collections.unmodifiableList(links_); + } else { + return linksBuilder_.getMessageList(); + } + } + /** + * <code>repeated .context.Link links = 1;</code> + */ + public int getLinksCount() { + if (linksBuilder_ == null) { + return links_.size(); + } else { + return linksBuilder_.getCount(); + } + } + /** + * <code>repeated .context.Link links = 1;</code> + */ + public context.ContextOuterClass.Link getLinks(int index) { + if (linksBuilder_ == null) { + return links_.get(index); + } else { + return linksBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.Link links = 1;</code> + */ + public Builder setLinks( + int index, context.ContextOuterClass.Link value) { + if (linksBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLinksIsMutable(); + links_.set(index, value); + onChanged(); + } else { + linksBuilder_.setMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.Link links = 1;</code> + */ + public Builder setLinks( + int index, context.ContextOuterClass.Link.Builder builderForValue) { + if (linksBuilder_ == null) { + ensureLinksIsMutable(); + links_.set(index, builderForValue.build()); + onChanged(); + } else { + linksBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.Link links = 1;</code> + */ + public Builder addLinks(context.ContextOuterClass.Link value) { + if (linksBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLinksIsMutable(); + links_.add(value); + onChanged(); + } else { + linksBuilder_.addMessage(value); + } + return this; + } + /** + * <code>repeated .context.Link links = 1;</code> + */ + public Builder addLinks( + int index, context.ContextOuterClass.Link value) { + if (linksBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLinksIsMutable(); + links_.add(index, value); + onChanged(); + } else { + linksBuilder_.addMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.Link links = 1;</code> + */ + public Builder addLinks( + context.ContextOuterClass.Link.Builder builderForValue) { + if (linksBuilder_ == null) { + ensureLinksIsMutable(); + links_.add(builderForValue.build()); + onChanged(); + } else { + linksBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.Link links = 1;</code> + */ + public Builder addLinks( + int index, context.ContextOuterClass.Link.Builder builderForValue) { + if (linksBuilder_ == null) { + ensureLinksIsMutable(); + links_.add(index, builderForValue.build()); + onChanged(); + } else { + linksBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.Link links = 1;</code> + */ + public Builder addAllLinks( + java.lang.Iterable<? extends context.ContextOuterClass.Link> values) { + if (linksBuilder_ == null) { + ensureLinksIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, links_); + onChanged(); + } else { + linksBuilder_.addAllMessages(values); + } + return this; + } + /** + * <code>repeated .context.Link links = 1;</code> + */ + public Builder clearLinks() { + if (linksBuilder_ == null) { + links_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + linksBuilder_.clear(); + } + return this; + } + /** + * <code>repeated .context.Link links = 1;</code> + */ + public Builder removeLinks(int index) { + if (linksBuilder_ == null) { + ensureLinksIsMutable(); + links_.remove(index); + onChanged(); + } else { + linksBuilder_.remove(index); + } + return this; + } + /** + * <code>repeated .context.Link links = 1;</code> + */ + public context.ContextOuterClass.Link.Builder getLinksBuilder( + int index) { + return getLinksFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .context.Link links = 1;</code> + */ + public context.ContextOuterClass.LinkOrBuilder getLinksOrBuilder( + int index) { + if (linksBuilder_ == null) { + return links_.get(index); } else { + return linksBuilder_.getMessageOrBuilder(index); + } + } + /** + * <code>repeated .context.Link links = 1;</code> + */ + public java.util.List<? extends context.ContextOuterClass.LinkOrBuilder> + getLinksOrBuilderList() { + if (linksBuilder_ != null) { + return linksBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(links_); + } + } + /** + * <code>repeated .context.Link links = 1;</code> + */ + public context.ContextOuterClass.Link.Builder addLinksBuilder() { + return getLinksFieldBuilder().addBuilder( + context.ContextOuterClass.Link.getDefaultInstance()); + } + /** + * <code>repeated .context.Link links = 1;</code> + */ + public context.ContextOuterClass.Link.Builder addLinksBuilder( + int index) { + return getLinksFieldBuilder().addBuilder( + index, context.ContextOuterClass.Link.getDefaultInstance()); + } + /** + * <code>repeated .context.Link links = 1;</code> + */ + public java.util.List<context.ContextOuterClass.Link.Builder> + getLinksBuilderList() { + return getLinksFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Link, context.ContextOuterClass.Link.Builder, context.ContextOuterClass.LinkOrBuilder> + getLinksFieldBuilder() { + if (linksBuilder_ == null) { + linksBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Link, context.ContextOuterClass.Link.Builder, context.ContextOuterClass.LinkOrBuilder>( + links_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + links_ = null; + } + return linksBuilder_; + } + @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:context.LinkList) + } + + // @@protoc_insertion_point(class_scope:context.LinkList) + private static final context.ContextOuterClass.LinkList DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new context.ContextOuterClass.LinkList(); + } + + public static context.ContextOuterClass.LinkList getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<LinkList> + PARSER = new com.google.protobuf.AbstractParser<LinkList>() { + @java.lang.Override + public LinkList parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new LinkList(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<LinkList> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<LinkList> getParserForType() { + return PARSER; + } + + @java.lang.Override + public context.ContextOuterClass.LinkList getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface LinkEventOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.LinkEvent) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. + */ + boolean hasEvent(); + /** + * <code>.context.Event event = 1;</code> + * @return The event. + */ + context.ContextOuterClass.Event getEvent(); + /** + * <code>.context.Event event = 1;</code> + */ + context.ContextOuterClass.EventOrBuilder getEventOrBuilder(); + + /** + * <code>.context.LinkId link_id = 2;</code> + * @return Whether the linkId field is set. + */ + boolean hasLinkId(); + /** + * <code>.context.LinkId link_id = 2;</code> + * @return The linkId. + */ + context.ContextOuterClass.LinkId getLinkId(); + /** + * <code>.context.LinkId link_id = 2;</code> + */ + context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder(); + } + /** + * Protobuf type {@code context.LinkEvent} + */ + public static final class LinkEvent extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:context.LinkEvent) + LinkEventOrBuilder { + private static final long serialVersionUID = 0L; + // Use LinkEvent.newBuilder() to construct. + private LinkEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private LinkEvent() { + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new LinkEvent(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private LinkEvent( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + 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: { + context.ContextOuterClass.Event.Builder subBuilder = null; + if (event_ != null) { + subBuilder = event_.toBuilder(); + } + event_ = input.readMessage(context.ContextOuterClass.Event.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(event_); + event_ = subBuilder.buildPartial(); + } + + break; + } + case 18: { + context.ContextOuterClass.LinkId.Builder subBuilder = null; + if (linkId_ != null) { + subBuilder = linkId_.toBuilder(); + } + linkId_ = input.readMessage(context.ContextOuterClass.LinkId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(linkId_); + linkId_ = subBuilder.buildPartial(); + } + + 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 { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_LinkEvent_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_LinkEvent_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.LinkEvent.class, context.ContextOuterClass.LinkEvent.Builder.class); + } + + public static final int EVENT_FIELD_NUMBER = 1; + private context.ContextOuterClass.Event event_; + /** + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. + */ + @java.lang.Override + public boolean hasEvent() { + return event_ != null; + } + /** + * <code>.context.Event event = 1;</code> + * @return The event. + */ + @java.lang.Override + public context.ContextOuterClass.Event getEvent() { + return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; + } + /** + * <code>.context.Event event = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { + return getEvent(); + } + + public static final int LINK_ID_FIELD_NUMBER = 2; + private context.ContextOuterClass.LinkId linkId_; + /** + * <code>.context.LinkId link_id = 2;</code> + * @return Whether the linkId field is set. + */ + @java.lang.Override + public boolean hasLinkId() { + return linkId_ != null; + } + /** + * <code>.context.LinkId link_id = 2;</code> + * @return The linkId. + */ + @java.lang.Override + public context.ContextOuterClass.LinkId getLinkId() { + return linkId_ == null ? context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_; + } + /** + * <code>.context.LinkId link_id = 2;</code> + */ + @java.lang.Override + public context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder() { + return getLinkId(); + } + + 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 (event_ != null) { + output.writeMessage(1, getEvent()); + } + if (linkId_ != null) { + output.writeMessage(2, getLinkId()); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (event_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getEvent()); + } + if (linkId_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, getLinkId()); + } + 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 context.ContextOuterClass.LinkEvent)) { + return super.equals(obj); + } + context.ContextOuterClass.LinkEvent other = (context.ContextOuterClass.LinkEvent) obj; + + if (hasEvent() != other.hasEvent()) return false; + if (hasEvent()) { + if (!getEvent() + .equals(other.getEvent())) return false; + } + if (hasLinkId() != other.hasLinkId()) return false; + if (hasLinkId()) { + if (!getLinkId() + .equals(other.getLinkId())) 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 (hasEvent()) { + hash = (37 * hash) + EVENT_FIELD_NUMBER; + hash = (53 * hash) + getEvent().hashCode(); + } + if (hasLinkId()) { + hash = (37 * hash) + LINK_ID_FIELD_NUMBER; + hash = (53 * hash) + getLinkId().hashCode(); + } + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static context.ContextOuterClass.LinkEvent parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.LinkEvent parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.LinkEvent parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.LinkEvent parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.LinkEvent parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.LinkEvent parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.LinkEvent parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.LinkEvent 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 context.ContextOuterClass.LinkEvent parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static context.ContextOuterClass.LinkEvent 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 context.ContextOuterClass.LinkEvent parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.LinkEvent 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(context.ContextOuterClass.LinkEvent 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; + } + /** + * Protobuf type {@code context.LinkEvent} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:context.LinkEvent) + context.ContextOuterClass.LinkEventOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_LinkEvent_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_LinkEvent_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.LinkEvent.class, context.ContextOuterClass.LinkEvent.Builder.class); + } + + // Construct using context.ContextOuterClass.LinkEvent.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + if (eventBuilder_ == null) { + event_ = null; + } else { + event_ = null; + eventBuilder_ = null; + } + if (linkIdBuilder_ == null) { + linkId_ = null; + } else { + linkId_ = null; + linkIdBuilder_ = null; + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return context.ContextOuterClass.internal_static_context_LinkEvent_descriptor; + } + + @java.lang.Override + public context.ContextOuterClass.LinkEvent getDefaultInstanceForType() { + return context.ContextOuterClass.LinkEvent.getDefaultInstance(); + } + + @java.lang.Override + public context.ContextOuterClass.LinkEvent build() { + context.ContextOuterClass.LinkEvent result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public context.ContextOuterClass.LinkEvent buildPartial() { + context.ContextOuterClass.LinkEvent result = new context.ContextOuterClass.LinkEvent(this); + if (eventBuilder_ == null) { + result.event_ = event_; + } else { + result.event_ = eventBuilder_.build(); + } + if (linkIdBuilder_ == null) { + result.linkId_ = linkId_; + } else { + result.linkId_ = linkIdBuilder_.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 context.ContextOuterClass.LinkEvent) { + return mergeFrom((context.ContextOuterClass.LinkEvent)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(context.ContextOuterClass.LinkEvent other) { + if (other == context.ContextOuterClass.LinkEvent.getDefaultInstance()) return this; + if (other.hasEvent()) { + mergeEvent(other.getEvent()); + } + if (other.hasLinkId()) { + mergeLinkId(other.getLinkId()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @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 { + context.ContextOuterClass.LinkEvent parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.LinkEvent) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + private context.ContextOuterClass.Event event_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> eventBuilder_; + /** + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. + */ + public boolean hasEvent() { + return eventBuilder_ != null || event_ != null; + } + /** + * <code>.context.Event event = 1;</code> + * @return The event. + */ + public context.ContextOuterClass.Event getEvent() { + if (eventBuilder_ == null) { + return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; + } else { + return eventBuilder_.getMessage(); + } + } + /** + * <code>.context.Event event = 1;</code> + */ + public Builder setEvent(context.ContextOuterClass.Event value) { + if (eventBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + event_ = value; + onChanged(); + } else { + eventBuilder_.setMessage(value); + } + + return this; + } + /** + * <code>.context.Event event = 1;</code> + */ + public Builder setEvent( + context.ContextOuterClass.Event.Builder builderForValue) { + if (eventBuilder_ == null) { + event_ = builderForValue.build(); + onChanged(); + } else { + eventBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.Event event = 1;</code> + */ + public Builder mergeEvent(context.ContextOuterClass.Event value) { + if (eventBuilder_ == null) { + if (event_ != null) { + event_ = + context.ContextOuterClass.Event.newBuilder(event_).mergeFrom(value).buildPartial(); + } else { + event_ = value; + } + onChanged(); + } else { + eventBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.context.Event event = 1;</code> + */ + public Builder clearEvent() { + if (eventBuilder_ == null) { + event_ = null; + onChanged(); + } else { + event_ = null; + eventBuilder_ = null; + } + + return this; + } + /** + * <code>.context.Event event = 1;</code> + */ + public context.ContextOuterClass.Event.Builder getEventBuilder() { + + onChanged(); + return getEventFieldBuilder().getBuilder(); + } + /** + * <code>.context.Event event = 1;</code> + */ + public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { + if (eventBuilder_ != null) { + return eventBuilder_.getMessageOrBuilder(); + } else { + return event_ == null ? + context.ContextOuterClass.Event.getDefaultInstance() : event_; + } + } + /** + * <code>.context.Event event = 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(), + getParentForChildren(), + isClean()); + event_ = null; + } + return eventBuilder_; + } + + private context.ContextOuterClass.LinkId linkId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> linkIdBuilder_; + /** + * <code>.context.LinkId link_id = 2;</code> + * @return Whether the linkId field is set. + */ + public boolean hasLinkId() { + return linkIdBuilder_ != null || linkId_ != null; + } + /** + * <code>.context.LinkId link_id = 2;</code> + * @return The linkId. + */ + public context.ContextOuterClass.LinkId getLinkId() { + if (linkIdBuilder_ == null) { + return linkId_ == null ? context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_; + } else { + return linkIdBuilder_.getMessage(); + } + } + /** + * <code>.context.LinkId link_id = 2;</code> + */ + public Builder setLinkId(context.ContextOuterClass.LinkId value) { + if (linkIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + linkId_ = value; + onChanged(); + } else { + linkIdBuilder_.setMessage(value); + } + + return this; + } + /** + * <code>.context.LinkId link_id = 2;</code> + */ + public Builder setLinkId( + context.ContextOuterClass.LinkId.Builder builderForValue) { + if (linkIdBuilder_ == null) { + linkId_ = builderForValue.build(); + onChanged(); + } else { + linkIdBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.LinkId link_id = 2;</code> + */ + public Builder mergeLinkId(context.ContextOuterClass.LinkId value) { + if (linkIdBuilder_ == null) { + if (linkId_ != null) { + linkId_ = + context.ContextOuterClass.LinkId.newBuilder(linkId_).mergeFrom(value).buildPartial(); + } else { + linkId_ = value; + } + onChanged(); + } else { + linkIdBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.context.LinkId link_id = 2;</code> + */ + public Builder clearLinkId() { + if (linkIdBuilder_ == null) { + linkId_ = null; + onChanged(); + } else { + linkId_ = null; + linkIdBuilder_ = null; + } + + return this; + } + /** + * <code>.context.LinkId link_id = 2;</code> + */ + public context.ContextOuterClass.LinkId.Builder getLinkIdBuilder() { + + onChanged(); + return getLinkIdFieldBuilder().getBuilder(); + } + /** + * <code>.context.LinkId link_id = 2;</code> + */ + public context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder() { + if (linkIdBuilder_ != null) { + return linkIdBuilder_.getMessageOrBuilder(); + } else { + return linkId_ == null ? + context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_; + } + } + /** + * <code>.context.LinkId link_id = 2;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> + getLinkIdFieldBuilder() { + if (linkIdBuilder_ == null) { + linkIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder>( + getLinkId(), + getParentForChildren(), + isClean()); + linkId_ = null; + } + return linkIdBuilder_; + } + @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:context.LinkEvent) + } + + // @@protoc_insertion_point(class_scope:context.LinkEvent) + private static final context.ContextOuterClass.LinkEvent DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new context.ContextOuterClass.LinkEvent(); + } + + public static context.ContextOuterClass.LinkEvent getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<LinkEvent> + PARSER = new com.google.protobuf.AbstractParser<LinkEvent>() { + @java.lang.Override + public LinkEvent parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new LinkEvent(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<LinkEvent> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<LinkEvent> getParserForType() { + return PARSER; + } + + @java.lang.Override + public context.ContextOuterClass.LinkEvent getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface ServiceIdOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ServiceId) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>.context.ContextId context_id = 1;</code> + * @return Whether the contextId field is set. + */ + boolean hasContextId(); + /** + * <code>.context.ContextId context_id = 1;</code> + * @return The contextId. + */ + context.ContextOuterClass.ContextId getContextId(); + /** + * <code>.context.ContextId context_id = 1;</code> + */ + context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder(); + + /** + * <code>.context.Uuid service_uuid = 2;</code> + * @return Whether the serviceUuid field is set. + */ + boolean hasServiceUuid(); + /** + * <code>.context.Uuid service_uuid = 2;</code> + * @return The serviceUuid. + */ + context.ContextOuterClass.Uuid getServiceUuid(); + /** + * <code>.context.Uuid service_uuid = 2;</code> + */ + context.ContextOuterClass.UuidOrBuilder getServiceUuidOrBuilder(); + } + /** + * <pre> + * ----- Service ------------------------------------------------------------------------------------------------------- + * </pre> + * + * Protobuf type {@code context.ServiceId} + */ + public static final class ServiceId extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:context.ServiceId) + ServiceIdOrBuilder { + private static final long serialVersionUID = 0L; + // Use ServiceId.newBuilder() to construct. + private ServiceId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private ServiceId() { + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new ServiceId(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private ServiceId( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + 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: { + context.ContextOuterClass.ContextId.Builder subBuilder = null; + if (contextId_ != null) { + subBuilder = contextId_.toBuilder(); + } + contextId_ = input.readMessage(context.ContextOuterClass.ContextId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(contextId_); + contextId_ = subBuilder.buildPartial(); + } + + break; + } + case 18: { + context.ContextOuterClass.Uuid.Builder subBuilder = null; + if (serviceUuid_ != null) { + subBuilder = serviceUuid_.toBuilder(); + } + serviceUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(serviceUuid_); + serviceUuid_ = subBuilder.buildPartial(); + } + + 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 { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_ServiceId_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_ServiceId_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.ServiceId.class, context.ContextOuterClass.ServiceId.Builder.class); + } + + public static final int CONTEXT_ID_FIELD_NUMBER = 1; + private context.ContextOuterClass.ContextId contextId_; + /** + * <code>.context.ContextId context_id = 1;</code> + * @return Whether the contextId field is set. + */ + @java.lang.Override + public boolean hasContextId() { + return contextId_ != null; + } + /** + * <code>.context.ContextId context_id = 1;</code> + * @return The contextId. + */ + @java.lang.Override + public context.ContextOuterClass.ContextId getContextId() { + return contextId_ == null ? context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_; + } + /** + * <code>.context.ContextId context_id = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder() { + return getContextId(); + } + + public static final int SERVICE_UUID_FIELD_NUMBER = 2; + private context.ContextOuterClass.Uuid serviceUuid_; + /** + * <code>.context.Uuid service_uuid = 2;</code> + * @return Whether the serviceUuid field is set. + */ + @java.lang.Override + public boolean hasServiceUuid() { + return serviceUuid_ != null; + } + /** + * <code>.context.Uuid service_uuid = 2;</code> + * @return The serviceUuid. + */ + @java.lang.Override + public context.ContextOuterClass.Uuid getServiceUuid() { + return serviceUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : serviceUuid_; + } + /** + * <code>.context.Uuid service_uuid = 2;</code> + */ + @java.lang.Override + public context.ContextOuterClass.UuidOrBuilder getServiceUuidOrBuilder() { + return getServiceUuid(); + } + + 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 (contextId_ != null) { + output.writeMessage(1, getContextId()); + } + if (serviceUuid_ != null) { + output.writeMessage(2, getServiceUuid()); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (contextId_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getContextId()); + } + if (serviceUuid_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, getServiceUuid()); + } + 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 context.ContextOuterClass.ServiceId)) { + return super.equals(obj); + } + context.ContextOuterClass.ServiceId other = (context.ContextOuterClass.ServiceId) obj; + + if (hasContextId() != other.hasContextId()) return false; + if (hasContextId()) { + if (!getContextId() + .equals(other.getContextId())) return false; + } + if (hasServiceUuid() != other.hasServiceUuid()) return false; + if (hasServiceUuid()) { + if (!getServiceUuid() + .equals(other.getServiceUuid())) 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 (hasContextId()) { + hash = (37 * hash) + CONTEXT_ID_FIELD_NUMBER; + hash = (53 * hash) + getContextId().hashCode(); + } + if (hasServiceUuid()) { + hash = (37 * hash) + SERVICE_UUID_FIELD_NUMBER; + hash = (53 * hash) + getServiceUuid().hashCode(); + } + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static context.ContextOuterClass.ServiceId parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.ServiceId parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.ServiceId parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.ServiceId parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.ServiceId parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.ServiceId parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.ServiceId parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.ServiceId 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 context.ContextOuterClass.ServiceId parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static context.ContextOuterClass.ServiceId 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 context.ContextOuterClass.ServiceId parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.ServiceId 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(context.ContextOuterClass.ServiceId 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> + * ----- Service ------------------------------------------------------------------------------------------------------- + * </pre> + * + * Protobuf type {@code context.ServiceId} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:context.ServiceId) + context.ContextOuterClass.ServiceIdOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_ServiceId_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_ServiceId_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.ServiceId.class, context.ContextOuterClass.ServiceId.Builder.class); + } + + // Construct using context.ContextOuterClass.ServiceId.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + if (contextIdBuilder_ == null) { + contextId_ = null; + } else { + contextId_ = null; + contextIdBuilder_ = null; + } + if (serviceUuidBuilder_ == null) { + serviceUuid_ = null; + } else { + serviceUuid_ = null; + serviceUuidBuilder_ = null; + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return context.ContextOuterClass.internal_static_context_ServiceId_descriptor; + } + + @java.lang.Override + public context.ContextOuterClass.ServiceId getDefaultInstanceForType() { + return context.ContextOuterClass.ServiceId.getDefaultInstance(); + } + + @java.lang.Override + public context.ContextOuterClass.ServiceId build() { + context.ContextOuterClass.ServiceId result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public context.ContextOuterClass.ServiceId buildPartial() { + context.ContextOuterClass.ServiceId result = new context.ContextOuterClass.ServiceId(this); + if (contextIdBuilder_ == null) { + result.contextId_ = contextId_; + } else { + result.contextId_ = contextIdBuilder_.build(); + } + if (serviceUuidBuilder_ == null) { + result.serviceUuid_ = serviceUuid_; + } else { + result.serviceUuid_ = serviceUuidBuilder_.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 context.ContextOuterClass.ServiceId) { + return mergeFrom((context.ContextOuterClass.ServiceId)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(context.ContextOuterClass.ServiceId other) { + if (other == context.ContextOuterClass.ServiceId.getDefaultInstance()) return this; + if (other.hasContextId()) { + mergeContextId(other.getContextId()); + } + if (other.hasServiceUuid()) { + mergeServiceUuid(other.getServiceUuid()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @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 { + context.ContextOuterClass.ServiceId parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.ServiceId) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + private context.ContextOuterClass.ContextId contextId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder> contextIdBuilder_; + /** + * <code>.context.ContextId context_id = 1;</code> + * @return Whether the contextId field is set. + */ + public boolean hasContextId() { + return contextIdBuilder_ != null || contextId_ != null; + } + /** + * <code>.context.ContextId context_id = 1;</code> + * @return The contextId. + */ + public context.ContextOuterClass.ContextId getContextId() { + if (contextIdBuilder_ == null) { + return contextId_ == null ? context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_; + } else { + return contextIdBuilder_.getMessage(); + } + } + /** + * <code>.context.ContextId context_id = 1;</code> + */ + public Builder setContextId(context.ContextOuterClass.ContextId value) { + if (contextIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + contextId_ = value; + onChanged(); + } else { + contextIdBuilder_.setMessage(value); + } + + return this; + } + /** + * <code>.context.ContextId context_id = 1;</code> + */ + public Builder setContextId( + context.ContextOuterClass.ContextId.Builder builderForValue) { + if (contextIdBuilder_ == null) { + contextId_ = builderForValue.build(); + onChanged(); + } else { + contextIdBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.ContextId context_id = 1;</code> + */ + public Builder mergeContextId(context.ContextOuterClass.ContextId value) { + if (contextIdBuilder_ == null) { + if (contextId_ != null) { + contextId_ = + context.ContextOuterClass.ContextId.newBuilder(contextId_).mergeFrom(value).buildPartial(); + } else { + contextId_ = value; + } + onChanged(); + } else { + contextIdBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.context.ContextId context_id = 1;</code> + */ + public Builder clearContextId() { + if (contextIdBuilder_ == null) { + contextId_ = null; + onChanged(); + } else { + contextId_ = null; + contextIdBuilder_ = null; + } + + return this; + } + /** + * <code>.context.ContextId context_id = 1;</code> + */ + public context.ContextOuterClass.ContextId.Builder getContextIdBuilder() { + + onChanged(); + return getContextIdFieldBuilder().getBuilder(); + } + /** + * <code>.context.ContextId context_id = 1;</code> + */ + public context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder() { + if (contextIdBuilder_ != null) { + return contextIdBuilder_.getMessageOrBuilder(); + } else { + return contextId_ == null ? + context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_; + } + } + /** + * <code>.context.ContextId context_id = 1;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder> + getContextIdFieldBuilder() { + if (contextIdBuilder_ == null) { + contextIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder>( + getContextId(), + getParentForChildren(), + isClean()); + contextId_ = null; + } + return contextIdBuilder_; + } + + private context.ContextOuterClass.Uuid serviceUuid_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> serviceUuidBuilder_; + /** + * <code>.context.Uuid service_uuid = 2;</code> + * @return Whether the serviceUuid field is set. + */ + public boolean hasServiceUuid() { + return serviceUuidBuilder_ != null || serviceUuid_ != null; + } + /** + * <code>.context.Uuid service_uuid = 2;</code> + * @return The serviceUuid. + */ + public context.ContextOuterClass.Uuid getServiceUuid() { + if (serviceUuidBuilder_ == null) { + return serviceUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : serviceUuid_; + } else { + return serviceUuidBuilder_.getMessage(); + } + } + /** + * <code>.context.Uuid service_uuid = 2;</code> + */ + public Builder setServiceUuid(context.ContextOuterClass.Uuid value) { + if (serviceUuidBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + serviceUuid_ = value; + onChanged(); + } else { + serviceUuidBuilder_.setMessage(value); + } + + return this; + } + /** + * <code>.context.Uuid service_uuid = 2;</code> + */ + public Builder setServiceUuid( + context.ContextOuterClass.Uuid.Builder builderForValue) { + if (serviceUuidBuilder_ == null) { + serviceUuid_ = builderForValue.build(); + onChanged(); + } else { + serviceUuidBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.Uuid service_uuid = 2;</code> + */ + public Builder mergeServiceUuid(context.ContextOuterClass.Uuid value) { + if (serviceUuidBuilder_ == null) { + if (serviceUuid_ != null) { + serviceUuid_ = + context.ContextOuterClass.Uuid.newBuilder(serviceUuid_).mergeFrom(value).buildPartial(); + } else { + serviceUuid_ = value; + } + onChanged(); + } else { + serviceUuidBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.context.Uuid service_uuid = 2;</code> + */ + public Builder clearServiceUuid() { + if (serviceUuidBuilder_ == null) { + serviceUuid_ = null; + onChanged(); + } else { + serviceUuid_ = null; + serviceUuidBuilder_ = null; + } + + return this; + } + /** + * <code>.context.Uuid service_uuid = 2;</code> + */ + public context.ContextOuterClass.Uuid.Builder getServiceUuidBuilder() { + + onChanged(); + return getServiceUuidFieldBuilder().getBuilder(); + } + /** + * <code>.context.Uuid service_uuid = 2;</code> + */ + public context.ContextOuterClass.UuidOrBuilder getServiceUuidOrBuilder() { + if (serviceUuidBuilder_ != null) { + return serviceUuidBuilder_.getMessageOrBuilder(); + } else { + return serviceUuid_ == null ? + context.ContextOuterClass.Uuid.getDefaultInstance() : serviceUuid_; + } + } + /** + * <code>.context.Uuid service_uuid = 2;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> + getServiceUuidFieldBuilder() { + if (serviceUuidBuilder_ == null) { + serviceUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>( + getServiceUuid(), + getParentForChildren(), + isClean()); + serviceUuid_ = null; + } + return serviceUuidBuilder_; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @@ -15690,95 +28018,205 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.DeviceConfig) + // @@protoc_insertion_point(builder_scope:context.ServiceId) } - // @@protoc_insertion_point(class_scope:context.DeviceConfig) - private static final context.ContextOuterClass.DeviceConfig DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ServiceId) + private static final context.ContextOuterClass.ServiceId DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.DeviceConfig(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceId(); } - public static context.ContextOuterClass.DeviceConfig getDefaultInstance() { + public static context.ContextOuterClass.ServiceId getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<DeviceConfig> - PARSER = new com.google.protobuf.AbstractParser<DeviceConfig>() { + private static final com.google.protobuf.Parser<ServiceId> + PARSER = new com.google.protobuf.AbstractParser<ServiceId>() { @java.lang.Override - public DeviceConfig parsePartialFrom( + public ServiceId parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new DeviceConfig(input, extensionRegistry); + return new ServiceId(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<DeviceConfig> parser() { + public static com.google.protobuf.Parser<ServiceId> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<DeviceConfig> getParserForType() { + public com.google.protobuf.Parser<ServiceId> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.DeviceConfig getDefaultInstanceForType() { + public context.ContextOuterClass.ServiceId getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface DeviceIdListOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.DeviceIdList) + public interface ServiceOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Service) com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>.context.ServiceId service_id = 1;</code> + * @return Whether the serviceId field is set. */ - java.util.List<context.ContextOuterClass.DeviceId> - getDeviceIdsList(); + boolean hasServiceId(); /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>.context.ServiceId service_id = 1;</code> + * @return The serviceId. */ - context.ContextOuterClass.DeviceId getDeviceIds(int index); + context.ContextOuterClass.ServiceId getServiceId(); /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>.context.ServiceId service_id = 1;</code> */ - int getDeviceIdsCount(); + context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder(); + /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>string name = 2;</code> + * @return The name. */ - java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> - getDeviceIdsOrBuilderList(); + java.lang.String getName(); /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>string name = 2;</code> + * @return The bytes for name. */ - context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdsOrBuilder( + com.google.protobuf.ByteString + getNameBytes(); + + /** + * <code>.context.ServiceTypeEnum service_type = 3;</code> + * @return The enum numeric value on the wire for serviceType. + */ + int getServiceTypeValue(); + /** + * <code>.context.ServiceTypeEnum service_type = 3;</code> + * @return The serviceType. + */ + context.ContextOuterClass.ServiceTypeEnum getServiceType(); + + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + java.util.List<context.ContextOuterClass.EndPointId> + getServiceEndpointIdsList(); + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + context.ContextOuterClass.EndPointId getServiceEndpointIds(int index); + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + int getServiceEndpointIdsCount(); + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getServiceEndpointIdsOrBuilderList(); + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + context.ContextOuterClass.EndPointIdOrBuilder getServiceEndpointIdsOrBuilder( + int index); + + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + java.util.List<context.ContextOuterClass.Constraint> + getServiceConstraintsList(); + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + context.ContextOuterClass.Constraint getServiceConstraints(int index); + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + int getServiceConstraintsCount(); + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + java.util.List<? extends context.ContextOuterClass.ConstraintOrBuilder> + getServiceConstraintsOrBuilderList(); + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + context.ContextOuterClass.ConstraintOrBuilder getServiceConstraintsOrBuilder( int index); + + /** + * <code>.context.ServiceStatus service_status = 6;</code> + * @return Whether the serviceStatus field is set. + */ + boolean hasServiceStatus(); + /** + * <code>.context.ServiceStatus service_status = 6;</code> + * @return The serviceStatus. + */ + context.ContextOuterClass.ServiceStatus getServiceStatus(); + /** + * <code>.context.ServiceStatus service_status = 6;</code> + */ + context.ContextOuterClass.ServiceStatusOrBuilder getServiceStatusOrBuilder(); + + /** + * <code>.context.ServiceConfig service_config = 7;</code> + * @return Whether the serviceConfig field is set. + */ + boolean hasServiceConfig(); + /** + * <code>.context.ServiceConfig service_config = 7;</code> + * @return The serviceConfig. + */ + context.ContextOuterClass.ServiceConfig getServiceConfig(); + /** + * <code>.context.ServiceConfig service_config = 7;</code> + */ + context.ContextOuterClass.ServiceConfigOrBuilder getServiceConfigOrBuilder(); + + /** + * <code>.context.Timestamp timestamp = 8;</code> + * @return Whether the timestamp field is set. + */ + boolean hasTimestamp(); + /** + * <code>.context.Timestamp timestamp = 8;</code> + * @return The timestamp. + */ + context.ContextOuterClass.Timestamp getTimestamp(); + /** + * <code>.context.Timestamp timestamp = 8;</code> + */ + context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder(); } /** - * Protobuf type {@code context.DeviceIdList} + * Protobuf type {@code context.Service} */ - public static final class DeviceIdList extends + public static final class Service extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.DeviceIdList) - DeviceIdListOrBuilder { + // @@protoc_insertion_point(message_implements:context.Service) + ServiceOrBuilder { private static final long serialVersionUID = 0L; - // Use DeviceIdList.newBuilder() to construct. - private DeviceIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Service.newBuilder() to construct. + private Service(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private DeviceIdList() { - deviceIds_ = java.util.Collections.emptyList(); + private Service() { + name_ = ""; + serviceType_ = 0; + serviceEndpointIds_ = java.util.Collections.emptyList(); + serviceConstraints_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new DeviceIdList(); + return new Service(); } @java.lang.Override @@ -15786,7 +28224,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private DeviceIdList( + private Service( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -15806,12 +28244,85 @@ public final class ContextOuterClass { done = true; break; case 10: { + 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 18: { + java.lang.String s = input.readStringRequireUtf8(); + + name_ = s; + break; + } + case 24: { + int rawValue = input.readEnum(); + + serviceType_ = rawValue; + break; + } + case 34: { if (!((mutable_bitField0_ & 0x00000001) != 0)) { - deviceIds_ = new java.util.ArrayList<context.ContextOuterClass.DeviceId>(); + serviceEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(); mutable_bitField0_ |= 0x00000001; } - deviceIds_.add( - input.readMessage(context.ContextOuterClass.DeviceId.parser(), extensionRegistry)); + serviceEndpointIds_.add( + input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry)); + break; + } + case 42: { + if (!((mutable_bitField0_ & 0x00000002) != 0)) { + serviceConstraints_ = new java.util.ArrayList<context.ContextOuterClass.Constraint>(); + mutable_bitField0_ |= 0x00000002; + } + serviceConstraints_.add( + input.readMessage(context.ContextOuterClass.Constraint.parser(), extensionRegistry)); + break; + } + case 50: { + context.ContextOuterClass.ServiceStatus.Builder subBuilder = null; + if (serviceStatus_ != null) { + subBuilder = serviceStatus_.toBuilder(); + } + serviceStatus_ = input.readMessage(context.ContextOuterClass.ServiceStatus.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(serviceStatus_); + serviceStatus_ = subBuilder.buildPartial(); + } + + break; + } + case 58: { + context.ContextOuterClass.ServiceConfig.Builder subBuilder = null; + if (serviceConfig_ != null) { + subBuilder = serviceConfig_.toBuilder(); + } + serviceConfig_ = input.readMessage(context.ContextOuterClass.ServiceConfig.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(serviceConfig_); + serviceConfig_ = subBuilder.buildPartial(); + } + + break; + } + case 66: { + context.ContextOuterClass.Timestamp.Builder subBuilder = null; + if (timestamp_ != null) { + subBuilder = timestamp_.toBuilder(); + } + timestamp_ = input.readMessage(context.ContextOuterClass.Timestamp.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(timestamp_); + timestamp_ = subBuilder.buildPartial(); + } + break; } default: { @@ -15830,7 +28341,10 @@ public final class ContextOuterClass { e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { - deviceIds_ = java.util.Collections.unmodifiableList(deviceIds_); + serviceEndpointIds_ = java.util.Collections.unmodifiableList(serviceEndpointIds_); + } + if (((mutable_bitField0_ & 0x00000002) != 0)) { + serviceConstraints_ = java.util.Collections.unmodifiableList(serviceConstraints_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); @@ -15838,55 +28352,256 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_DeviceIdList_descriptor; + return context.ContextOuterClass.internal_static_context_Service_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_DeviceIdList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Service_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.DeviceIdList.class, context.ContextOuterClass.DeviceIdList.Builder.class); + context.ContextOuterClass.Service.class, context.ContextOuterClass.Service.Builder.class); } - public static final int DEVICE_IDS_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.DeviceId> deviceIds_; + public static final int SERVICE_ID_FIELD_NUMBER = 1; + private context.ContextOuterClass.ServiceId serviceId_; /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>.context.ServiceId service_id = 1;</code> + * @return Whether the serviceId field is set. */ @java.lang.Override - public java.util.List<context.ContextOuterClass.DeviceId> getDeviceIdsList() { - return deviceIds_; + public boolean hasServiceId() { + return serviceId_ != null; } /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>.context.ServiceId service_id = 1;</code> + * @return The serviceId. */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> - getDeviceIdsOrBuilderList() { - return deviceIds_; + public context.ContextOuterClass.ServiceId getServiceId() { + return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; } /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>.context.ServiceId service_id = 1;</code> */ @java.lang.Override - public int getDeviceIdsCount() { - return deviceIds_.size(); + public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() { + return getServiceId(); } + + public static final int NAME_FIELD_NUMBER = 2; + private volatile java.lang.Object name_; /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>string name = 2;</code> + * @return The name. */ @java.lang.Override - public context.ContextOuterClass.DeviceId getDeviceIds(int index) { - return deviceIds_.get(index); + public java.lang.String getName() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } } /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>string name = 2;</code> + * @return The bytes for name. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SERVICE_TYPE_FIELD_NUMBER = 3; + private int serviceType_; + /** + * <code>.context.ServiceTypeEnum service_type = 3;</code> + * @return The enum numeric value on the wire for serviceType. + */ + @java.lang.Override public int getServiceTypeValue() { + return serviceType_; + } + /** + * <code>.context.ServiceTypeEnum service_type = 3;</code> + * @return The serviceType. + */ + @java.lang.Override public context.ContextOuterClass.ServiceTypeEnum getServiceType() { + @SuppressWarnings("deprecation") + context.ContextOuterClass.ServiceTypeEnum result = context.ContextOuterClass.ServiceTypeEnum.valueOf(serviceType_); + return result == null ? context.ContextOuterClass.ServiceTypeEnum.UNRECOGNIZED : result; + } + + public static final int SERVICE_ENDPOINT_IDS_FIELD_NUMBER = 4; + private java.util.List<context.ContextOuterClass.EndPointId> serviceEndpointIds_; + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + @java.lang.Override + public java.util.List<context.ContextOuterClass.EndPointId> getServiceEndpointIdsList() { + return serviceEndpointIds_; + } + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getServiceEndpointIdsOrBuilderList() { + return serviceEndpointIds_; + } + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + @java.lang.Override + public int getServiceEndpointIdsCount() { + return serviceEndpointIds_.size(); + } + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + @java.lang.Override + public context.ContextOuterClass.EndPointId getServiceEndpointIds(int index) { + return serviceEndpointIds_.get(index); + } + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + @java.lang.Override + public context.ContextOuterClass.EndPointIdOrBuilder getServiceEndpointIdsOrBuilder( + int index) { + return serviceEndpointIds_.get(index); + } + + public static final int SERVICE_CONSTRAINTS_FIELD_NUMBER = 5; + private java.util.List<context.ContextOuterClass.Constraint> serviceConstraints_; + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + @java.lang.Override + public java.util.List<context.ContextOuterClass.Constraint> getServiceConstraintsList() { + return serviceConstraints_; + } + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.ConstraintOrBuilder> + getServiceConstraintsOrBuilderList() { + return serviceConstraints_; + } + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + @java.lang.Override + public int getServiceConstraintsCount() { + return serviceConstraints_.size(); + } + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + @java.lang.Override + public context.ContextOuterClass.Constraint getServiceConstraints(int index) { + return serviceConstraints_.get(index); + } + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ConstraintOrBuilder getServiceConstraintsOrBuilder( + int index) { + return serviceConstraints_.get(index); + } + + public static final int SERVICE_STATUS_FIELD_NUMBER = 6; + private context.ContextOuterClass.ServiceStatus serviceStatus_; + /** + * <code>.context.ServiceStatus service_status = 6;</code> + * @return Whether the serviceStatus field is set. + */ + @java.lang.Override + public boolean hasServiceStatus() { + return serviceStatus_ != null; + } + /** + * <code>.context.ServiceStatus service_status = 6;</code> + * @return The serviceStatus. + */ + @java.lang.Override + public context.ContextOuterClass.ServiceStatus getServiceStatus() { + return serviceStatus_ == null ? context.ContextOuterClass.ServiceStatus.getDefaultInstance() : serviceStatus_; + } + /** + * <code>.context.ServiceStatus service_status = 6;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ServiceStatusOrBuilder getServiceStatusOrBuilder() { + return getServiceStatus(); + } + + public static final int SERVICE_CONFIG_FIELD_NUMBER = 7; + private context.ContextOuterClass.ServiceConfig serviceConfig_; + /** + * <code>.context.ServiceConfig service_config = 7;</code> + * @return Whether the serviceConfig field is set. + */ + @java.lang.Override + public boolean hasServiceConfig() { + return serviceConfig_ != null; + } + /** + * <code>.context.ServiceConfig service_config = 7;</code> + * @return The serviceConfig. + */ + @java.lang.Override + public context.ContextOuterClass.ServiceConfig getServiceConfig() { + return serviceConfig_ == null ? context.ContextOuterClass.ServiceConfig.getDefaultInstance() : serviceConfig_; + } + /** + * <code>.context.ServiceConfig service_config = 7;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ServiceConfigOrBuilder getServiceConfigOrBuilder() { + return getServiceConfig(); + } + + public static final int TIMESTAMP_FIELD_NUMBER = 8; + private context.ContextOuterClass.Timestamp timestamp_; + /** + * <code>.context.Timestamp timestamp = 8;</code> + * @return Whether the timestamp field is set. + */ + @java.lang.Override + public boolean hasTimestamp() { + return timestamp_ != null; + } + /** + * <code>.context.Timestamp timestamp = 8;</code> + * @return The timestamp. + */ + @java.lang.Override + public context.ContextOuterClass.Timestamp getTimestamp() { + return timestamp_ == null ? context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_; + } + /** + * <code>.context.Timestamp timestamp = 8;</code> */ @java.lang.Override - public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdsOrBuilder( - int index) { - return deviceIds_.get(index); + public context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder() { + return getTimestamp(); } private byte memoizedIsInitialized = -1; @@ -15903,8 +28618,29 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < deviceIds_.size(); i++) { - output.writeMessage(1, deviceIds_.get(i)); + if (serviceId_ != null) { + output.writeMessage(1, getServiceId()); + } + if (!getNameBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_); + } + if (serviceType_ != context.ContextOuterClass.ServiceTypeEnum.SERVICETYPE_UNKNOWN.getNumber()) { + output.writeEnum(3, serviceType_); + } + for (int i = 0; i < serviceEndpointIds_.size(); i++) { + output.writeMessage(4, serviceEndpointIds_.get(i)); + } + for (int i = 0; i < serviceConstraints_.size(); i++) { + output.writeMessage(5, serviceConstraints_.get(i)); + } + if (serviceStatus_ != null) { + output.writeMessage(6, getServiceStatus()); + } + if (serviceConfig_ != null) { + output.writeMessage(7, getServiceConfig()); + } + if (timestamp_ != null) { + output.writeMessage(8, getTimestamp()); } unknownFields.writeTo(output); } @@ -15915,9 +28651,36 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < deviceIds_.size(); i++) { + if (serviceId_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, deviceIds_.get(i)); + .computeMessageSize(1, getServiceId()); + } + if (!getNameBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_); + } + if (serviceType_ != context.ContextOuterClass.ServiceTypeEnum.SERVICETYPE_UNKNOWN.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(3, serviceType_); + } + for (int i = 0; i < serviceEndpointIds_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(4, serviceEndpointIds_.get(i)); + } + for (int i = 0; i < serviceConstraints_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(5, serviceConstraints_.get(i)); + } + if (serviceStatus_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(6, getServiceStatus()); + } + if (serviceConfig_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(7, getServiceConfig()); + } + if (timestamp_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(8, getTimestamp()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -15929,13 +28692,38 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.DeviceIdList)) { + if (!(obj instanceof context.ContextOuterClass.Service)) { return super.equals(obj); } - context.ContextOuterClass.DeviceIdList other = (context.ContextOuterClass.DeviceIdList) obj; + context.ContextOuterClass.Service other = (context.ContextOuterClass.Service) obj; - if (!getDeviceIdsList() - .equals(other.getDeviceIdsList())) return false; + if (hasServiceId() != other.hasServiceId()) return false; + if (hasServiceId()) { + if (!getServiceId() + .equals(other.getServiceId())) return false; + } + if (!getName() + .equals(other.getName())) return false; + if (serviceType_ != other.serviceType_) return false; + if (!getServiceEndpointIdsList() + .equals(other.getServiceEndpointIdsList())) return false; + if (!getServiceConstraintsList() + .equals(other.getServiceConstraintsList())) return false; + if (hasServiceStatus() != other.hasServiceStatus()) return false; + if (hasServiceStatus()) { + if (!getServiceStatus() + .equals(other.getServiceStatus())) return false; + } + if (hasServiceConfig() != other.hasServiceConfig()) return false; + if (hasServiceConfig()) { + if (!getServiceConfig() + .equals(other.getServiceConfig())) return false; + } + if (hasTimestamp() != other.hasTimestamp()) return false; + if (hasTimestamp()) { + if (!getTimestamp() + .equals(other.getTimestamp())) return false; + } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -15947,78 +28735,102 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getDeviceIdsCount() > 0) { - hash = (37 * hash) + DEVICE_IDS_FIELD_NUMBER; - hash = (53 * hash) + getDeviceIdsList().hashCode(); + if (hasServiceId()) { + hash = (37 * hash) + SERVICE_ID_FIELD_NUMBER; + hash = (53 * hash) + getServiceId().hashCode(); + } + hash = (37 * hash) + NAME_FIELD_NUMBER; + hash = (53 * hash) + getName().hashCode(); + hash = (37 * hash) + SERVICE_TYPE_FIELD_NUMBER; + hash = (53 * hash) + serviceType_; + if (getServiceEndpointIdsCount() > 0) { + hash = (37 * hash) + SERVICE_ENDPOINT_IDS_FIELD_NUMBER; + hash = (53 * hash) + getServiceEndpointIdsList().hashCode(); + } + if (getServiceConstraintsCount() > 0) { + hash = (37 * hash) + SERVICE_CONSTRAINTS_FIELD_NUMBER; + hash = (53 * hash) + getServiceConstraintsList().hashCode(); + } + if (hasServiceStatus()) { + hash = (37 * hash) + SERVICE_STATUS_FIELD_NUMBER; + hash = (53 * hash) + getServiceStatus().hashCode(); + } + if (hasServiceConfig()) { + hash = (37 * hash) + SERVICE_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getServiceConfig().hashCode(); + } + if (hasTimestamp()) { + hash = (37 * hash) + TIMESTAMP_FIELD_NUMBER; + hash = (53 * hash) + getTimestamp().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.DeviceIdList parseFrom( + public static context.ContextOuterClass.Service parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.DeviceIdList parseFrom( + public static context.ContextOuterClass.Service parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.DeviceIdList parseFrom( + public static context.ContextOuterClass.Service parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.DeviceIdList parseFrom( + public static context.ContextOuterClass.Service parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.DeviceIdList parseFrom(byte[] data) + public static context.ContextOuterClass.Service parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.DeviceIdList parseFrom( + public static context.ContextOuterClass.Service parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.DeviceIdList parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Service parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.DeviceIdList parseFrom( + public static context.ContextOuterClass.Service 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 context.ContextOuterClass.DeviceIdList parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Service parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.DeviceIdList parseDelimitedFrom( + public static context.ContextOuterClass.Service 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 context.ContextOuterClass.DeviceIdList parseFrom( + public static context.ContextOuterClass.Service parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.DeviceIdList parseFrom( + public static context.ContextOuterClass.Service parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -16031,7 +28843,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.DeviceIdList prototype) { + public static Builder newBuilder(context.ContextOuterClass.Service prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -16047,26 +28859,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.DeviceIdList} + * Protobuf type {@code context.Service} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.DeviceIdList) - context.ContextOuterClass.DeviceIdListOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Service) + context.ContextOuterClass.ServiceOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_DeviceIdList_descriptor; + return context.ContextOuterClass.internal_static_context_Service_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_DeviceIdList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Service_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.DeviceIdList.class, context.ContextOuterClass.DeviceIdList.Builder.class); + context.ContextOuterClass.Service.class, context.ContextOuterClass.Service.Builder.class); } - // Construct using context.ContextOuterClass.DeviceIdList.newBuilder() + // Construct using context.ContextOuterClass.Service.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -16079,17 +28891,52 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getDeviceIdsFieldBuilder(); + getServiceEndpointIdsFieldBuilder(); + getServiceConstraintsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (deviceIdsBuilder_ == null) { - deviceIds_ = java.util.Collections.emptyList(); + if (serviceIdBuilder_ == null) { + serviceId_ = null; + } else { + serviceId_ = null; + serviceIdBuilder_ = null; + } + name_ = ""; + + serviceType_ = 0; + + if (serviceEndpointIdsBuilder_ == null) { + serviceEndpointIds_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); } else { - deviceIdsBuilder_.clear(); + serviceEndpointIdsBuilder_.clear(); + } + if (serviceConstraintsBuilder_ == null) { + serviceConstraints_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + } else { + serviceConstraintsBuilder_.clear(); + } + if (serviceStatusBuilder_ == null) { + serviceStatus_ = null; + } else { + serviceStatus_ = null; + serviceStatusBuilder_ = null; + } + if (serviceConfigBuilder_ == null) { + serviceConfig_ = null; + } else { + serviceConfig_ = null; + serviceConfigBuilder_ = null; + } + if (timestampBuilder_ == null) { + timestamp_ = null; + } else { + timestamp_ = null; + timestampBuilder_ = null; } return this; } @@ -16097,17 +28944,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_DeviceIdList_descriptor; + return context.ContextOuterClass.internal_static_context_Service_descriptor; } @java.lang.Override - public context.ContextOuterClass.DeviceIdList getDefaultInstanceForType() { - return context.ContextOuterClass.DeviceIdList.getDefaultInstance(); + public context.ContextOuterClass.Service getDefaultInstanceForType() { + return context.ContextOuterClass.Service.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.DeviceIdList build() { - context.ContextOuterClass.DeviceIdList result = buildPartial(); + public context.ContextOuterClass.Service build() { + context.ContextOuterClass.Service result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -16115,17 +28962,48 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.DeviceIdList buildPartial() { - context.ContextOuterClass.DeviceIdList result = new context.ContextOuterClass.DeviceIdList(this); + public context.ContextOuterClass.Service buildPartial() { + context.ContextOuterClass.Service result = new context.ContextOuterClass.Service(this); int from_bitField0_ = bitField0_; - if (deviceIdsBuilder_ == null) { + if (serviceIdBuilder_ == null) { + result.serviceId_ = serviceId_; + } else { + result.serviceId_ = serviceIdBuilder_.build(); + } + result.name_ = name_; + result.serviceType_ = serviceType_; + if (serviceEndpointIdsBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { - deviceIds_ = java.util.Collections.unmodifiableList(deviceIds_); + serviceEndpointIds_ = java.util.Collections.unmodifiableList(serviceEndpointIds_); bitField0_ = (bitField0_ & ~0x00000001); } - result.deviceIds_ = deviceIds_; + result.serviceEndpointIds_ = serviceEndpointIds_; } else { - result.deviceIds_ = deviceIdsBuilder_.build(); + result.serviceEndpointIds_ = serviceEndpointIdsBuilder_.build(); + } + if (serviceConstraintsBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0)) { + serviceConstraints_ = java.util.Collections.unmodifiableList(serviceConstraints_); + bitField0_ = (bitField0_ & ~0x00000002); + } + result.serviceConstraints_ = serviceConstraints_; + } else { + result.serviceConstraints_ = serviceConstraintsBuilder_.build(); + } + if (serviceStatusBuilder_ == null) { + result.serviceStatus_ = serviceStatus_; + } else { + result.serviceStatus_ = serviceStatusBuilder_.build(); + } + if (serviceConfigBuilder_ == null) { + result.serviceConfig_ = serviceConfig_; + } else { + result.serviceConfig_ = serviceConfigBuilder_.build(); + } + if (timestampBuilder_ == null) { + result.timestamp_ = timestamp_; + } else { + result.timestamp_ = timestampBuilder_.build(); } onBuilt(); return result; @@ -16165,1103 +29043,1201 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.DeviceIdList) { - return mergeFrom((context.ContextOuterClass.DeviceIdList)other); + if (other instanceof context.ContextOuterClass.Service) { + return mergeFrom((context.ContextOuterClass.Service)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.DeviceIdList other) { - if (other == context.ContextOuterClass.DeviceIdList.getDefaultInstance()) return this; - if (deviceIdsBuilder_ == null) { - if (!other.deviceIds_.isEmpty()) { - if (deviceIds_.isEmpty()) { - deviceIds_ = other.deviceIds_; + public Builder mergeFrom(context.ContextOuterClass.Service other) { + if (other == context.ContextOuterClass.Service.getDefaultInstance()) return this; + if (other.hasServiceId()) { + mergeServiceId(other.getServiceId()); + } + if (!other.getName().isEmpty()) { + name_ = other.name_; + onChanged(); + } + if (other.serviceType_ != 0) { + setServiceTypeValue(other.getServiceTypeValue()); + } + if (serviceEndpointIdsBuilder_ == null) { + if (!other.serviceEndpointIds_.isEmpty()) { + if (serviceEndpointIds_.isEmpty()) { + serviceEndpointIds_ = other.serviceEndpointIds_; bitField0_ = (bitField0_ & ~0x00000001); } else { - ensureDeviceIdsIsMutable(); - deviceIds_.addAll(other.deviceIds_); + ensureServiceEndpointIdsIsMutable(); + serviceEndpointIds_.addAll(other.serviceEndpointIds_); } onChanged(); } } else { - if (!other.deviceIds_.isEmpty()) { - if (deviceIdsBuilder_.isEmpty()) { - deviceIdsBuilder_.dispose(); - deviceIdsBuilder_ = null; - deviceIds_ = other.deviceIds_; + if (!other.serviceEndpointIds_.isEmpty()) { + if (serviceEndpointIdsBuilder_.isEmpty()) { + serviceEndpointIdsBuilder_.dispose(); + serviceEndpointIdsBuilder_ = null; + serviceEndpointIds_ = other.serviceEndpointIds_; bitField0_ = (bitField0_ & ~0x00000001); - deviceIdsBuilder_ = + serviceEndpointIdsBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getDeviceIdsFieldBuilder() : null; + getServiceEndpointIdsFieldBuilder() : null; } else { - deviceIdsBuilder_.addAllMessages(other.deviceIds_); + serviceEndpointIdsBuilder_.addAllMessages(other.serviceEndpointIds_); + } + } + } + if (serviceConstraintsBuilder_ == null) { + if (!other.serviceConstraints_.isEmpty()) { + if (serviceConstraints_.isEmpty()) { + serviceConstraints_ = other.serviceConstraints_; + bitField0_ = (bitField0_ & ~0x00000002); + } else { + ensureServiceConstraintsIsMutable(); + serviceConstraints_.addAll(other.serviceConstraints_); + } + onChanged(); + } + } else { + if (!other.serviceConstraints_.isEmpty()) { + if (serviceConstraintsBuilder_.isEmpty()) { + serviceConstraintsBuilder_.dispose(); + serviceConstraintsBuilder_ = null; + serviceConstraints_ = other.serviceConstraints_; + bitField0_ = (bitField0_ & ~0x00000002); + serviceConstraintsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getServiceConstraintsFieldBuilder() : null; + } else { + serviceConstraintsBuilder_.addAllMessages(other.serviceConstraints_); } } } + if (other.hasServiceStatus()) { + mergeServiceStatus(other.getServiceStatus()); + } + if (other.hasServiceConfig()) { + mergeServiceConfig(other.getServiceConfig()); + } + if (other.hasTimestamp()) { + mergeTimestamp(other.getTimestamp()); + } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; } - @java.lang.Override - public final boolean isInitialized() { - return true; + @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 { + context.ContextOuterClass.Service parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.Service) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + private context.ContextOuterClass.ServiceId serviceId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> serviceIdBuilder_; + /** + * <code>.context.ServiceId service_id = 1;</code> + * @return Whether the serviceId field is set. + */ + public boolean hasServiceId() { + return serviceIdBuilder_ != null || serviceId_ != null; + } + /** + * <code>.context.ServiceId service_id = 1;</code> + * @return The serviceId. + */ + public context.ContextOuterClass.ServiceId getServiceId() { + if (serviceIdBuilder_ == null) { + return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; + } else { + return serviceIdBuilder_.getMessage(); + } + } + /** + * <code>.context.ServiceId service_id = 1;</code> + */ + public Builder setServiceId(context.ContextOuterClass.ServiceId value) { + if (serviceIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + serviceId_ = value; + onChanged(); + } else { + serviceIdBuilder_.setMessage(value); + } + + return this; + } + /** + * <code>.context.ServiceId service_id = 1;</code> + */ + public Builder setServiceId( + context.ContextOuterClass.ServiceId.Builder builderForValue) { + if (serviceIdBuilder_ == null) { + serviceId_ = builderForValue.build(); + onChanged(); + } else { + serviceIdBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.ServiceId service_id = 1;</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); + } + + return this; + } + /** + * <code>.context.ServiceId service_id = 1;</code> + */ + public Builder clearServiceId() { + if (serviceIdBuilder_ == null) { + serviceId_ = null; + onChanged(); + } else { + serviceId_ = null; + serviceIdBuilder_ = null; + } + + return this; + } + /** + * <code>.context.ServiceId service_id = 1;</code> + */ + public context.ContextOuterClass.ServiceId.Builder getServiceIdBuilder() { + + onChanged(); + return getServiceIdFieldBuilder().getBuilder(); + } + /** + * <code>.context.ServiceId service_id = 1;</code> + */ + public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() { + if (serviceIdBuilder_ != null) { + return serviceIdBuilder_.getMessageOrBuilder(); + } else { + return serviceId_ == null ? + context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; + } + } + /** + * <code>.context.ServiceId service_id = 1;</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_; + } + + private java.lang.Object name_ = ""; + /** + * <code>string name = 2;</code> + * @return The name. + */ + public java.lang.String getName() { + java.lang.Object ref = name_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * <code>string name = 2;</code> + * @return The bytes for name. + */ + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * <code>string name = 2;</code> + * @param value The name to set. + * @return This builder for chaining. + */ + public Builder setName( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + name_ = value; + onChanged(); + return this; + } + /** + * <code>string name = 2;</code> + * @return This builder for chaining. + */ + public Builder clearName() { + + name_ = getDefaultInstance().getName(); + onChanged(); + return this; + } + /** + * <code>string name = 2;</code> + * @param value The bytes for name to set. + * @return This builder for chaining. + */ + public Builder setNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + name_ = value; + onChanged(); + return this; + } + + private int serviceType_ = 0; + /** + * <code>.context.ServiceTypeEnum service_type = 3;</code> + * @return The enum numeric value on the wire for serviceType. + */ + @java.lang.Override public int getServiceTypeValue() { + return serviceType_; } - + /** + * <code>.context.ServiceTypeEnum service_type = 3;</code> + * @param value The enum numeric value on the wire for serviceType to set. + * @return This builder for chaining. + */ + public Builder setServiceTypeValue(int value) { + + serviceType_ = value; + onChanged(); + return this; + } + /** + * <code>.context.ServiceTypeEnum service_type = 3;</code> + * @return The serviceType. + */ @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - context.ContextOuterClass.DeviceIdList parsedMessage = null; - try { - parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.DeviceIdList) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); - } + public context.ContextOuterClass.ServiceTypeEnum getServiceType() { + @SuppressWarnings("deprecation") + context.ContextOuterClass.ServiceTypeEnum result = context.ContextOuterClass.ServiceTypeEnum.valueOf(serviceType_); + return result == null ? context.ContextOuterClass.ServiceTypeEnum.UNRECOGNIZED : result; + } + /** + * <code>.context.ServiceTypeEnum service_type = 3;</code> + * @param value The serviceType to set. + * @return This builder for chaining. + */ + public Builder setServiceType(context.ContextOuterClass.ServiceTypeEnum value) { + if (value == null) { + throw new NullPointerException(); } + + serviceType_ = value.getNumber(); + onChanged(); + return this; + } + /** + * <code>.context.ServiceTypeEnum service_type = 3;</code> + * @return This builder for chaining. + */ + public Builder clearServiceType() { + + serviceType_ = 0; + onChanged(); return this; } - private int bitField0_; - private java.util.List<context.ContextOuterClass.DeviceId> deviceIds_ = + private java.util.List<context.ContextOuterClass.EndPointId> serviceEndpointIds_ = java.util.Collections.emptyList(); - private void ensureDeviceIdsIsMutable() { + private void ensureServiceEndpointIdsIsMutable() { if (!((bitField0_ & 0x00000001) != 0)) { - deviceIds_ = new java.util.ArrayList<context.ContextOuterClass.DeviceId>(deviceIds_); + serviceEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(serviceEndpointIds_); bitField0_ |= 0x00000001; } } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> deviceIdsBuilder_; + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> serviceEndpointIdsBuilder_; /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> */ - public java.util.List<context.ContextOuterClass.DeviceId> getDeviceIdsList() { - if (deviceIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(deviceIds_); + public java.util.List<context.ContextOuterClass.EndPointId> getServiceEndpointIdsList() { + if (serviceEndpointIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(serviceEndpointIds_); } else { - return deviceIdsBuilder_.getMessageList(); + return serviceEndpointIdsBuilder_.getMessageList(); } } /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> */ - public int getDeviceIdsCount() { - if (deviceIdsBuilder_ == null) { - return deviceIds_.size(); + public int getServiceEndpointIdsCount() { + if (serviceEndpointIdsBuilder_ == null) { + return serviceEndpointIds_.size(); } else { - return deviceIdsBuilder_.getCount(); + return serviceEndpointIdsBuilder_.getCount(); } } /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> */ - public context.ContextOuterClass.DeviceId getDeviceIds(int index) { - if (deviceIdsBuilder_ == null) { - return deviceIds_.get(index); + public context.ContextOuterClass.EndPointId getServiceEndpointIds(int index) { + if (serviceEndpointIdsBuilder_ == null) { + return serviceEndpointIds_.get(index); } else { - return deviceIdsBuilder_.getMessage(index); + return serviceEndpointIdsBuilder_.getMessage(index); } } /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> */ - public Builder setDeviceIds( - int index, context.ContextOuterClass.DeviceId value) { - if (deviceIdsBuilder_ == null) { + public Builder setServiceEndpointIds( + int index, context.ContextOuterClass.EndPointId value) { + if (serviceEndpointIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureDeviceIdsIsMutable(); - deviceIds_.set(index, value); + ensureServiceEndpointIdsIsMutable(); + serviceEndpointIds_.set(index, value); onChanged(); } else { - deviceIdsBuilder_.setMessage(index, value); + serviceEndpointIdsBuilder_.setMessage(index, value); } return this; } /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> */ - public Builder setDeviceIds( - int index, context.ContextOuterClass.DeviceId.Builder builderForValue) { - if (deviceIdsBuilder_ == null) { - ensureDeviceIdsIsMutable(); - deviceIds_.set(index, builderForValue.build()); + public Builder setServiceEndpointIds( + int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (serviceEndpointIdsBuilder_ == null) { + ensureServiceEndpointIdsIsMutable(); + serviceEndpointIds_.set(index, builderForValue.build()); onChanged(); } else { - deviceIdsBuilder_.setMessage(index, builderForValue.build()); + serviceEndpointIdsBuilder_.setMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> */ - public Builder addDeviceIds(context.ContextOuterClass.DeviceId value) { - if (deviceIdsBuilder_ == null) { + public Builder addServiceEndpointIds(context.ContextOuterClass.EndPointId value) { + if (serviceEndpointIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureDeviceIdsIsMutable(); - deviceIds_.add(value); + ensureServiceEndpointIdsIsMutable(); + serviceEndpointIds_.add(value); onChanged(); } else { - deviceIdsBuilder_.addMessage(value); + serviceEndpointIdsBuilder_.addMessage(value); } return this; } /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> */ - public Builder addDeviceIds( - int index, context.ContextOuterClass.DeviceId value) { - if (deviceIdsBuilder_ == null) { + public Builder addServiceEndpointIds( + int index, context.ContextOuterClass.EndPointId value) { + if (serviceEndpointIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureDeviceIdsIsMutable(); - deviceIds_.add(index, value); + ensureServiceEndpointIdsIsMutable(); + serviceEndpointIds_.add(index, value); onChanged(); } else { - deviceIdsBuilder_.addMessage(index, value); + serviceEndpointIdsBuilder_.addMessage(index, value); } return this; } /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> */ - public Builder addDeviceIds( - context.ContextOuterClass.DeviceId.Builder builderForValue) { - if (deviceIdsBuilder_ == null) { - ensureDeviceIdsIsMutable(); - deviceIds_.add(builderForValue.build()); + public Builder addServiceEndpointIds( + context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (serviceEndpointIdsBuilder_ == null) { + ensureServiceEndpointIdsIsMutable(); + serviceEndpointIds_.add(builderForValue.build()); onChanged(); } else { - deviceIdsBuilder_.addMessage(builderForValue.build()); + serviceEndpointIdsBuilder_.addMessage(builderForValue.build()); } return this; } /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> */ - public Builder addDeviceIds( - int index, context.ContextOuterClass.DeviceId.Builder builderForValue) { - if (deviceIdsBuilder_ == null) { - ensureDeviceIdsIsMutable(); - deviceIds_.add(index, builderForValue.build()); + public Builder addServiceEndpointIds( + int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (serviceEndpointIdsBuilder_ == null) { + ensureServiceEndpointIdsIsMutable(); + serviceEndpointIds_.add(index, builderForValue.build()); onChanged(); } else { - deviceIdsBuilder_.addMessage(index, builderForValue.build()); + serviceEndpointIdsBuilder_.addMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> */ - public Builder addAllDeviceIds( - java.lang.Iterable<? extends context.ContextOuterClass.DeviceId> values) { - if (deviceIdsBuilder_ == null) { - ensureDeviceIdsIsMutable(); + public Builder addAllServiceEndpointIds( + java.lang.Iterable<? extends context.ContextOuterClass.EndPointId> values) { + if (serviceEndpointIdsBuilder_ == null) { + ensureServiceEndpointIdsIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, deviceIds_); + values, serviceEndpointIds_); onChanged(); } else { - deviceIdsBuilder_.addAllMessages(values); + serviceEndpointIdsBuilder_.addAllMessages(values); } return this; } /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> */ - public Builder clearDeviceIds() { - if (deviceIdsBuilder_ == null) { - deviceIds_ = java.util.Collections.emptyList(); + public Builder clearServiceEndpointIds() { + if (serviceEndpointIdsBuilder_ == null) { + serviceEndpointIds_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { - deviceIdsBuilder_.clear(); + serviceEndpointIdsBuilder_.clear(); } return this; } /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> */ - public Builder removeDeviceIds(int index) { - if (deviceIdsBuilder_ == null) { - ensureDeviceIdsIsMutable(); - deviceIds_.remove(index); + public Builder removeServiceEndpointIds(int index) { + if (serviceEndpointIdsBuilder_ == null) { + ensureServiceEndpointIdsIsMutable(); + serviceEndpointIds_.remove(index); onChanged(); } else { - deviceIdsBuilder_.remove(index); + serviceEndpointIdsBuilder_.remove(index); } return this; } /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> */ - public context.ContextOuterClass.DeviceId.Builder getDeviceIdsBuilder( + public context.ContextOuterClass.EndPointId.Builder getServiceEndpointIdsBuilder( int index) { - return getDeviceIdsFieldBuilder().getBuilder(index); + return getServiceEndpointIdsFieldBuilder().getBuilder(index); } /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> */ - public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdsOrBuilder( + public context.ContextOuterClass.EndPointIdOrBuilder getServiceEndpointIdsOrBuilder( int index) { - if (deviceIdsBuilder_ == null) { - return deviceIds_.get(index); } else { - return deviceIdsBuilder_.getMessageOrBuilder(index); + if (serviceEndpointIdsBuilder_ == null) { + return serviceEndpointIds_.get(index); } else { + return serviceEndpointIdsBuilder_.getMessageOrBuilder(index); } } /** - * <code>repeated .context.DeviceId device_ids = 1;</code> + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> */ - public java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> - getDeviceIdsOrBuilderList() { - if (deviceIdsBuilder_ != null) { - return deviceIdsBuilder_.getMessageOrBuilderList(); + public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getServiceEndpointIdsOrBuilderList() { + if (serviceEndpointIdsBuilder_ != null) { + return serviceEndpointIdsBuilder_.getMessageOrBuilderList(); } else { - return java.util.Collections.unmodifiableList(deviceIds_); - } - } - /** - * <code>repeated .context.DeviceId device_ids = 1;</code> - */ - public context.ContextOuterClass.DeviceId.Builder addDeviceIdsBuilder() { - return getDeviceIdsFieldBuilder().addBuilder( - context.ContextOuterClass.DeviceId.getDefaultInstance()); - } - /** - * <code>repeated .context.DeviceId device_ids = 1;</code> - */ - public context.ContextOuterClass.DeviceId.Builder addDeviceIdsBuilder( - int index) { - return getDeviceIdsFieldBuilder().addBuilder( - index, context.ContextOuterClass.DeviceId.getDefaultInstance()); - } - /** - * <code>repeated .context.DeviceId device_ids = 1;</code> - */ - public java.util.List<context.ContextOuterClass.DeviceId.Builder> - getDeviceIdsBuilderList() { - return getDeviceIdsFieldBuilder().getBuilderList(); - } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> - getDeviceIdsFieldBuilder() { - if (deviceIdsBuilder_ == null) { - deviceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder>( - deviceIds_, - ((bitField0_ & 0x00000001) != 0), - getParentForChildren(), - isClean()); - deviceIds_ = null; - } - return deviceIdsBuilder_; - } - @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:context.DeviceIdList) - } - - // @@protoc_insertion_point(class_scope:context.DeviceIdList) - private static final context.ContextOuterClass.DeviceIdList DEFAULT_INSTANCE; - static { - DEFAULT_INSTANCE = new context.ContextOuterClass.DeviceIdList(); - } - - public static context.ContextOuterClass.DeviceIdList getDefaultInstance() { - return DEFAULT_INSTANCE; - } - - private static final com.google.protobuf.Parser<DeviceIdList> - PARSER = new com.google.protobuf.AbstractParser<DeviceIdList>() { - @java.lang.Override - public DeviceIdList parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return new DeviceIdList(input, extensionRegistry); - } - }; - - public static com.google.protobuf.Parser<DeviceIdList> parser() { - return PARSER; - } - - @java.lang.Override - public com.google.protobuf.Parser<DeviceIdList> getParserForType() { - return PARSER; - } - - @java.lang.Override - public context.ContextOuterClass.DeviceIdList getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - - } - - public interface DeviceListOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.DeviceList) - com.google.protobuf.MessageOrBuilder { - - /** - * <code>repeated .context.Device devices = 1;</code> - */ - java.util.List<context.ContextOuterClass.Device> - getDevicesList(); - /** - * <code>repeated .context.Device devices = 1;</code> - */ - context.ContextOuterClass.Device getDevices(int index); - /** - * <code>repeated .context.Device devices = 1;</code> - */ - int getDevicesCount(); - /** - * <code>repeated .context.Device devices = 1;</code> - */ - java.util.List<? extends context.ContextOuterClass.DeviceOrBuilder> - getDevicesOrBuilderList(); - /** - * <code>repeated .context.Device devices = 1;</code> - */ - context.ContextOuterClass.DeviceOrBuilder getDevicesOrBuilder( - int index); - } - /** - * Protobuf type {@code context.DeviceList} - */ - public static final class DeviceList extends - com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.DeviceList) - DeviceListOrBuilder { - private static final long serialVersionUID = 0L; - // Use DeviceList.newBuilder() to construct. - private DeviceList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { - super(builder); - } - private DeviceList() { - devices_ = java.util.Collections.emptyList(); - } - - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new DeviceList(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } - private DeviceList( - 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)) { - devices_ = new java.util.ArrayList<context.ContextOuterClass.Device>(); - mutable_bitField0_ |= 0x00000001; - } - devices_.add( - input.readMessage(context.ContextOuterClass.Device.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)) { - devices_ = java.util.Collections.unmodifiableList(devices_); - } - this.unknownFields = unknownFields.build(); - makeExtensionsImmutable(); - } - } - public static final com.google.protobuf.Descriptors.Descriptor - getDescriptor() { - return context.ContextOuterClass.internal_static_context_DeviceList_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_DeviceList_fieldAccessorTable - .ensureFieldAccessorsInitialized( - context.ContextOuterClass.DeviceList.class, context.ContextOuterClass.DeviceList.Builder.class); - } - - public static final int DEVICES_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.Device> devices_; - /** - * <code>repeated .context.Device devices = 1;</code> - */ - @java.lang.Override - public java.util.List<context.ContextOuterClass.Device> getDevicesList() { - return devices_; - } - /** - * <code>repeated .context.Device devices = 1;</code> - */ - @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.DeviceOrBuilder> - getDevicesOrBuilderList() { - return devices_; - } - /** - * <code>repeated .context.Device devices = 1;</code> - */ - @java.lang.Override - public int getDevicesCount() { - return devices_.size(); - } - /** - * <code>repeated .context.Device devices = 1;</code> - */ - @java.lang.Override - public context.ContextOuterClass.Device getDevices(int index) { - return devices_.get(index); - } - /** - * <code>repeated .context.Device devices = 1;</code> - */ - @java.lang.Override - public context.ContextOuterClass.DeviceOrBuilder getDevicesOrBuilder( - int index) { - return devices_.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 < devices_.size(); i++) { - output.writeMessage(1, devices_.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 < devices_.size(); i++) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, devices_.get(i)); + return java.util.Collections.unmodifiableList(serviceEndpointIds_); + } } - size += unknownFields.getSerializedSize(); - memoizedSize = size; - return size; - } - - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + public context.ContextOuterClass.EndPointId.Builder addServiceEndpointIdsBuilder() { + return getServiceEndpointIdsFieldBuilder().addBuilder( + context.ContextOuterClass.EndPointId.getDefaultInstance()); } - if (!(obj instanceof context.ContextOuterClass.DeviceList)) { - return super.equals(obj); + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + public context.ContextOuterClass.EndPointId.Builder addServiceEndpointIdsBuilder( + int index) { + return getServiceEndpointIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.EndPointId.getDefaultInstance()); } - context.ContextOuterClass.DeviceList other = (context.ContextOuterClass.DeviceList) obj; - - if (!getDevicesList() - .equals(other.getDevicesList())) return false; - if (!unknownFields.equals(other.unknownFields)) return false; - return true; - } - - @java.lang.Override - public int hashCode() { - if (memoizedHashCode != 0) { - return memoizedHashCode; + /** + * <code>repeated .context.EndPointId service_endpoint_ids = 4;</code> + */ + public java.util.List<context.ContextOuterClass.EndPointId.Builder> + getServiceEndpointIdsBuilderList() { + return getServiceEndpointIdsFieldBuilder().getBuilderList(); } - int hash = 41; - hash = (19 * hash) + getDescriptor().hashCode(); - if (getDevicesCount() > 0) { - hash = (37 * hash) + DEVICES_FIELD_NUMBER; - hash = (53 * hash) + getDevicesList().hashCode(); + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> + getServiceEndpointIdsFieldBuilder() { + if (serviceEndpointIdsBuilder_ == null) { + serviceEndpointIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( + serviceEndpointIds_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + serviceEndpointIds_ = null; + } + return serviceEndpointIdsBuilder_; } - hash = (29 * hash) + unknownFields.hashCode(); - memoizedHashCode = hash; - return hash; - } - - public static context.ContextOuterClass.DeviceList parseFrom( - java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static context.ContextOuterClass.DeviceList parseFrom( - java.nio.ByteBuffer data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static context.ContextOuterClass.DeviceList parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static context.ContextOuterClass.DeviceList parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static context.ContextOuterClass.DeviceList parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static context.ContextOuterClass.DeviceList parseFrom( - byte[] data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static context.ContextOuterClass.DeviceList parseFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseWithIOException(PARSER, input); - } - public static context.ContextOuterClass.DeviceList 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 context.ContextOuterClass.DeviceList parseDelimitedFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseDelimitedWithIOException(PARSER, input); - } - public static context.ContextOuterClass.DeviceList 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 context.ContextOuterClass.DeviceList parseFrom( - com.google.protobuf.CodedInputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseWithIOException(PARSER, input); - } - public static context.ContextOuterClass.DeviceList 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(context.ContextOuterClass.DeviceList 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; - } - /** - * Protobuf type {@code context.DeviceList} - */ - public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.DeviceList) - context.ContextOuterClass.DeviceListOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor - getDescriptor() { - return context.ContextOuterClass.internal_static_context_DeviceList_descriptor; + private java.util.List<context.ContextOuterClass.Constraint> serviceConstraints_ = + java.util.Collections.emptyList(); + private void ensureServiceConstraintsIsMutable() { + if (!((bitField0_ & 0x00000002) != 0)) { + serviceConstraints_ = new java.util.ArrayList<context.ContextOuterClass.Constraint>(serviceConstraints_); + bitField0_ |= 0x00000002; + } } - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_DeviceList_fieldAccessorTable - .ensureFieldAccessorsInitialized( - context.ContextOuterClass.DeviceList.class, context.ContextOuterClass.DeviceList.Builder.class); - } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Constraint, context.ContextOuterClass.Constraint.Builder, context.ContextOuterClass.ConstraintOrBuilder> serviceConstraintsBuilder_; - // Construct using context.ContextOuterClass.DeviceList.newBuilder() - private Builder() { - maybeForceBuilderInitialization(); + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + public java.util.List<context.ContextOuterClass.Constraint> getServiceConstraintsList() { + if (serviceConstraintsBuilder_ == null) { + return java.util.Collections.unmodifiableList(serviceConstraints_); + } else { + return serviceConstraintsBuilder_.getMessageList(); + } } - - private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - super(parent); - maybeForceBuilderInitialization(); + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + public int getServiceConstraintsCount() { + if (serviceConstraintsBuilder_ == null) { + return serviceConstraints_.size(); + } else { + return serviceConstraintsBuilder_.getCount(); + } } - private void maybeForceBuilderInitialization() { - if (com.google.protobuf.GeneratedMessageV3 - .alwaysUseFieldBuilders) { - getDevicesFieldBuilder(); + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + public context.ContextOuterClass.Constraint getServiceConstraints(int index) { + if (serviceConstraintsBuilder_ == null) { + return serviceConstraints_.get(index); + } else { + return serviceConstraintsBuilder_.getMessage(index); } } - @java.lang.Override - public Builder clear() { - super.clear(); - if (devicesBuilder_ == null) { - devices_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + public Builder setServiceConstraints( + int index, context.ContextOuterClass.Constraint value) { + if (serviceConstraintsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureServiceConstraintsIsMutable(); + serviceConstraints_.set(index, value); + onChanged(); } else { - devicesBuilder_.clear(); + serviceConstraintsBuilder_.setMessage(index, value); } return this; } - - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor - getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_DeviceList_descriptor; - } - - @java.lang.Override - public context.ContextOuterClass.DeviceList getDefaultInstanceForType() { - return context.ContextOuterClass.DeviceList.getDefaultInstance(); + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + public Builder setServiceConstraints( + int index, context.ContextOuterClass.Constraint.Builder builderForValue) { + if (serviceConstraintsBuilder_ == null) { + ensureServiceConstraintsIsMutable(); + serviceConstraints_.set(index, builderForValue.build()); + onChanged(); + } else { + serviceConstraintsBuilder_.setMessage(index, builderForValue.build()); + } + return this; } - - @java.lang.Override - public context.ContextOuterClass.DeviceList build() { - context.ContextOuterClass.DeviceList result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + public Builder addServiceConstraints(context.ContextOuterClass.Constraint value) { + if (serviceConstraintsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureServiceConstraintsIsMutable(); + serviceConstraints_.add(value); + onChanged(); + } else { + serviceConstraintsBuilder_.addMessage(value); } - return result; + return this; } - - @java.lang.Override - public context.ContextOuterClass.DeviceList buildPartial() { - context.ContextOuterClass.DeviceList result = new context.ContextOuterClass.DeviceList(this); - int from_bitField0_ = bitField0_; - if (devicesBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { - devices_ = java.util.Collections.unmodifiableList(devices_); - bitField0_ = (bitField0_ & ~0x00000001); + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + public Builder addServiceConstraints( + int index, context.ContextOuterClass.Constraint value) { + if (serviceConstraintsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } - result.devices_ = devices_; + ensureServiceConstraintsIsMutable(); + serviceConstraints_.add(index, value); + onChanged(); } else { - result.devices_ = devicesBuilder_.build(); + serviceConstraintsBuilder_.addMessage(index, value); } - onBuilt(); - return result; + return this; } - - @java.lang.Override - public Builder clone() { - return super.clone(); + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + public Builder addServiceConstraints( + context.ContextOuterClass.Constraint.Builder builderForValue) { + if (serviceConstraintsBuilder_ == null) { + ensureServiceConstraintsIsMutable(); + serviceConstraints_.add(builderForValue.build()); + onChanged(); + } else { + serviceConstraintsBuilder_.addMessage(builderForValue.build()); + } + return this; } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + public Builder addServiceConstraints( + int index, context.ContextOuterClass.Constraint.Builder builderForValue) { + if (serviceConstraintsBuilder_ == null) { + ensureServiceConstraintsIsMutable(); + serviceConstraints_.add(index, builderForValue.build()); + onChanged(); + } else { + serviceConstraintsBuilder_.addMessage(index, builderForValue.build()); + } + return this; } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + public Builder addAllServiceConstraints( + java.lang.Iterable<? extends context.ContextOuterClass.Constraint> values) { + if (serviceConstraintsBuilder_ == null) { + ensureServiceConstraintsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, serviceConstraints_); + onChanged(); + } else { + serviceConstraintsBuilder_.addAllMessages(values); + } + return this; } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + public Builder clearServiceConstraints() { + if (serviceConstraintsBuilder_ == null) { + serviceConstraints_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + } else { + serviceConstraintsBuilder_.clear(); + } + return this; } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + public Builder removeServiceConstraints(int index) { + if (serviceConstraintsBuilder_ == null) { + ensureServiceConstraintsIsMutable(); + serviceConstraints_.remove(index); + onChanged(); + } else { + serviceConstraintsBuilder_.remove(index); + } + return this; } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + public context.ContextOuterClass.Constraint.Builder getServiceConstraintsBuilder( + int index) { + return getServiceConstraintsFieldBuilder().getBuilder(index); } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.DeviceList) { - return mergeFrom((context.ContextOuterClass.DeviceList)other); + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + public context.ContextOuterClass.ConstraintOrBuilder getServiceConstraintsOrBuilder( + int index) { + if (serviceConstraintsBuilder_ == null) { + return serviceConstraints_.get(index); } else { + return serviceConstraintsBuilder_.getMessageOrBuilder(index); + } + } + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + public java.util.List<? extends context.ContextOuterClass.ConstraintOrBuilder> + getServiceConstraintsOrBuilderList() { + if (serviceConstraintsBuilder_ != null) { + return serviceConstraintsBuilder_.getMessageOrBuilderList(); } else { - super.mergeFrom(other); - return this; + return java.util.Collections.unmodifiableList(serviceConstraints_); + } + } + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + public context.ContextOuterClass.Constraint.Builder addServiceConstraintsBuilder() { + return getServiceConstraintsFieldBuilder().addBuilder( + context.ContextOuterClass.Constraint.getDefaultInstance()); + } + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + public context.ContextOuterClass.Constraint.Builder addServiceConstraintsBuilder( + int index) { + return getServiceConstraintsFieldBuilder().addBuilder( + index, context.ContextOuterClass.Constraint.getDefaultInstance()); + } + /** + * <code>repeated .context.Constraint service_constraints = 5;</code> + */ + public java.util.List<context.ContextOuterClass.Constraint.Builder> + getServiceConstraintsBuilderList() { + return getServiceConstraintsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Constraint, context.ContextOuterClass.Constraint.Builder, context.ContextOuterClass.ConstraintOrBuilder> + getServiceConstraintsFieldBuilder() { + if (serviceConstraintsBuilder_ == null) { + serviceConstraintsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Constraint, context.ContextOuterClass.Constraint.Builder, context.ContextOuterClass.ConstraintOrBuilder>( + serviceConstraints_, + ((bitField0_ & 0x00000002) != 0), + getParentForChildren(), + isClean()); + serviceConstraints_ = null; } + return serviceConstraintsBuilder_; } - public Builder mergeFrom(context.ContextOuterClass.DeviceList other) { - if (other == context.ContextOuterClass.DeviceList.getDefaultInstance()) return this; - if (devicesBuilder_ == null) { - if (!other.devices_.isEmpty()) { - if (devices_.isEmpty()) { - devices_ = other.devices_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureDevicesIsMutable(); - devices_.addAll(other.devices_); - } - onChanged(); - } + private context.ContextOuterClass.ServiceStatus serviceStatus_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ServiceStatus, context.ContextOuterClass.ServiceStatus.Builder, context.ContextOuterClass.ServiceStatusOrBuilder> serviceStatusBuilder_; + /** + * <code>.context.ServiceStatus service_status = 6;</code> + * @return Whether the serviceStatus field is set. + */ + public boolean hasServiceStatus() { + return serviceStatusBuilder_ != null || serviceStatus_ != null; + } + /** + * <code>.context.ServiceStatus service_status = 6;</code> + * @return The serviceStatus. + */ + public context.ContextOuterClass.ServiceStatus getServiceStatus() { + if (serviceStatusBuilder_ == null) { + return serviceStatus_ == null ? context.ContextOuterClass.ServiceStatus.getDefaultInstance() : serviceStatus_; } else { - if (!other.devices_.isEmpty()) { - if (devicesBuilder_.isEmpty()) { - devicesBuilder_.dispose(); - devicesBuilder_ = null; - devices_ = other.devices_; - bitField0_ = (bitField0_ & ~0x00000001); - devicesBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getDevicesFieldBuilder() : null; - } else { - devicesBuilder_.addAllMessages(other.devices_); - } + return serviceStatusBuilder_.getMessage(); + } + } + /** + * <code>.context.ServiceStatus service_status = 6;</code> + */ + public Builder setServiceStatus(context.ContextOuterClass.ServiceStatus value) { + if (serviceStatusBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + serviceStatus_ = value; + onChanged(); + } else { + serviceStatusBuilder_.setMessage(value); + } + + return this; + } + /** + * <code>.context.ServiceStatus service_status = 6;</code> + */ + public Builder setServiceStatus( + context.ContextOuterClass.ServiceStatus.Builder builderForValue) { + if (serviceStatusBuilder_ == null) { + serviceStatus_ = builderForValue.build(); + onChanged(); + } else { + serviceStatusBuilder_.setMessage(builderForValue.build()); } - this.mergeUnknownFields(other.unknownFields); - onChanged(); - return this; - } - @java.lang.Override - public final boolean isInitialized() { - return true; + return this; } - - @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - context.ContextOuterClass.DeviceList parsedMessage = null; - try { - parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.DeviceList) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); + /** + * <code>.context.ServiceStatus service_status = 6;</code> + */ + public Builder mergeServiceStatus(context.ContextOuterClass.ServiceStatus value) { + if (serviceStatusBuilder_ == null) { + if (serviceStatus_ != null) { + serviceStatus_ = + context.ContextOuterClass.ServiceStatus.newBuilder(serviceStatus_).mergeFrom(value).buildPartial(); + } else { + serviceStatus_ = value; } + onChanged(); + } else { + serviceStatusBuilder_.mergeFrom(value); } + return this; } - private int bitField0_; + /** + * <code>.context.ServiceStatus service_status = 6;</code> + */ + public Builder clearServiceStatus() { + if (serviceStatusBuilder_ == null) { + serviceStatus_ = null; + onChanged(); + } else { + serviceStatus_ = null; + serviceStatusBuilder_ = null; + } - private java.util.List<context.ContextOuterClass.Device> devices_ = - java.util.Collections.emptyList(); - private void ensureDevicesIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - devices_ = new java.util.ArrayList<context.ContextOuterClass.Device>(devices_); - bitField0_ |= 0x00000001; - } + return this; } - - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Device, context.ContextOuterClass.Device.Builder, context.ContextOuterClass.DeviceOrBuilder> devicesBuilder_; - /** - * <code>repeated .context.Device devices = 1;</code> + * <code>.context.ServiceStatus service_status = 6;</code> */ - public java.util.List<context.ContextOuterClass.Device> getDevicesList() { - if (devicesBuilder_ == null) { - return java.util.Collections.unmodifiableList(devices_); + public context.ContextOuterClass.ServiceStatus.Builder getServiceStatusBuilder() { + + onChanged(); + return getServiceStatusFieldBuilder().getBuilder(); + } + /** + * <code>.context.ServiceStatus service_status = 6;</code> + */ + public context.ContextOuterClass.ServiceStatusOrBuilder getServiceStatusOrBuilder() { + if (serviceStatusBuilder_ != null) { + return serviceStatusBuilder_.getMessageOrBuilder(); } else { - return devicesBuilder_.getMessageList(); + return serviceStatus_ == null ? + context.ContextOuterClass.ServiceStatus.getDefaultInstance() : serviceStatus_; } } /** - * <code>repeated .context.Device devices = 1;</code> + * <code>.context.ServiceStatus service_status = 6;</code> */ - public int getDevicesCount() { - if (devicesBuilder_ == null) { - return devices_.size(); - } else { - return devicesBuilder_.getCount(); + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ServiceStatus, context.ContextOuterClass.ServiceStatus.Builder, context.ContextOuterClass.ServiceStatusOrBuilder> + getServiceStatusFieldBuilder() { + if (serviceStatusBuilder_ == null) { + serviceStatusBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ServiceStatus, context.ContextOuterClass.ServiceStatus.Builder, context.ContextOuterClass.ServiceStatusOrBuilder>( + getServiceStatus(), + getParentForChildren(), + isClean()); + serviceStatus_ = null; } + return serviceStatusBuilder_; + } + + private context.ContextOuterClass.ServiceConfig serviceConfig_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ServiceConfig, context.ContextOuterClass.ServiceConfig.Builder, context.ContextOuterClass.ServiceConfigOrBuilder> serviceConfigBuilder_; + /** + * <code>.context.ServiceConfig service_config = 7;</code> + * @return Whether the serviceConfig field is set. + */ + public boolean hasServiceConfig() { + return serviceConfigBuilder_ != null || serviceConfig_ != null; } /** - * <code>repeated .context.Device devices = 1;</code> + * <code>.context.ServiceConfig service_config = 7;</code> + * @return The serviceConfig. */ - public context.ContextOuterClass.Device getDevices(int index) { - if (devicesBuilder_ == null) { - return devices_.get(index); + public context.ContextOuterClass.ServiceConfig getServiceConfig() { + if (serviceConfigBuilder_ == null) { + return serviceConfig_ == null ? context.ContextOuterClass.ServiceConfig.getDefaultInstance() : serviceConfig_; } else { - return devicesBuilder_.getMessage(index); + return serviceConfigBuilder_.getMessage(); } } /** - * <code>repeated .context.Device devices = 1;</code> + * <code>.context.ServiceConfig service_config = 7;</code> */ - public Builder setDevices( - int index, context.ContextOuterClass.Device value) { - if (devicesBuilder_ == null) { + public Builder setServiceConfig(context.ContextOuterClass.ServiceConfig value) { + if (serviceConfigBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureDevicesIsMutable(); - devices_.set(index, value); + serviceConfig_ = value; onChanged(); } else { - devicesBuilder_.setMessage(index, value); + serviceConfigBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.Device devices = 1;</code> + * <code>.context.ServiceConfig service_config = 7;</code> */ - public Builder setDevices( - int index, context.ContextOuterClass.Device.Builder builderForValue) { - if (devicesBuilder_ == null) { - ensureDevicesIsMutable(); - devices_.set(index, builderForValue.build()); + public Builder setServiceConfig( + context.ContextOuterClass.ServiceConfig.Builder builderForValue) { + if (serviceConfigBuilder_ == null) { + serviceConfig_ = builderForValue.build(); onChanged(); } else { - devicesBuilder_.setMessage(index, builderForValue.build()); + serviceConfigBuilder_.setMessage(builderForValue.build()); } + return this; } /** - * <code>repeated .context.Device devices = 1;</code> + * <code>.context.ServiceConfig service_config = 7;</code> */ - public Builder addDevices(context.ContextOuterClass.Device value) { - if (devicesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + public Builder mergeServiceConfig(context.ContextOuterClass.ServiceConfig value) { + if (serviceConfigBuilder_ == null) { + if (serviceConfig_ != null) { + serviceConfig_ = + context.ContextOuterClass.ServiceConfig.newBuilder(serviceConfig_).mergeFrom(value).buildPartial(); + } else { + serviceConfig_ = value; } - ensureDevicesIsMutable(); - devices_.add(value); onChanged(); } else { - devicesBuilder_.addMessage(value); + serviceConfigBuilder_.mergeFrom(value); } + return this; } /** - * <code>repeated .context.Device devices = 1;</code> + * <code>.context.ServiceConfig service_config = 7;</code> */ - public Builder addDevices( - int index, context.ContextOuterClass.Device value) { - if (devicesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureDevicesIsMutable(); - devices_.add(index, value); + public Builder clearServiceConfig() { + if (serviceConfigBuilder_ == null) { + serviceConfig_ = null; onChanged(); } else { - devicesBuilder_.addMessage(index, value); + serviceConfig_ = null; + serviceConfigBuilder_ = null; } + return this; } /** - * <code>repeated .context.Device devices = 1;</code> + * <code>.context.ServiceConfig service_config = 7;</code> */ - public Builder addDevices( - context.ContextOuterClass.Device.Builder builderForValue) { - if (devicesBuilder_ == null) { - ensureDevicesIsMutable(); - devices_.add(builderForValue.build()); - onChanged(); + public context.ContextOuterClass.ServiceConfig.Builder getServiceConfigBuilder() { + + onChanged(); + return getServiceConfigFieldBuilder().getBuilder(); + } + /** + * <code>.context.ServiceConfig service_config = 7;</code> + */ + public context.ContextOuterClass.ServiceConfigOrBuilder getServiceConfigOrBuilder() { + if (serviceConfigBuilder_ != null) { + return serviceConfigBuilder_.getMessageOrBuilder(); } else { - devicesBuilder_.addMessage(builderForValue.build()); + return serviceConfig_ == null ? + context.ContextOuterClass.ServiceConfig.getDefaultInstance() : serviceConfig_; } - return this; } /** - * <code>repeated .context.Device devices = 1;</code> + * <code>.context.ServiceConfig service_config = 7;</code> */ - public Builder addDevices( - int index, context.ContextOuterClass.Device.Builder builderForValue) { - if (devicesBuilder_ == null) { - ensureDevicesIsMutable(); - devices_.add(index, builderForValue.build()); - onChanged(); - } else { - devicesBuilder_.addMessage(index, builderForValue.build()); + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ServiceConfig, context.ContextOuterClass.ServiceConfig.Builder, context.ContextOuterClass.ServiceConfigOrBuilder> + getServiceConfigFieldBuilder() { + if (serviceConfigBuilder_ == null) { + serviceConfigBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ServiceConfig, context.ContextOuterClass.ServiceConfig.Builder, context.ContextOuterClass.ServiceConfigOrBuilder>( + getServiceConfig(), + getParentForChildren(), + isClean()); + serviceConfig_ = null; } - return this; + return serviceConfigBuilder_; } + + private context.ContextOuterClass.Timestamp timestamp_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> timestampBuilder_; /** - * <code>repeated .context.Device devices = 1;</code> + * <code>.context.Timestamp timestamp = 8;</code> + * @return Whether the timestamp field is set. */ - public Builder addAllDevices( - java.lang.Iterable<? extends context.ContextOuterClass.Device> values) { - if (devicesBuilder_ == null) { - ensureDevicesIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, devices_); - onChanged(); + public boolean hasTimestamp() { + return timestampBuilder_ != null || timestamp_ != null; + } + /** + * <code>.context.Timestamp timestamp = 8;</code> + * @return The timestamp. + */ + public context.ContextOuterClass.Timestamp getTimestamp() { + if (timestampBuilder_ == null) { + return timestamp_ == null ? context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_; } else { - devicesBuilder_.addAllMessages(values); + return timestampBuilder_.getMessage(); } - return this; } /** - * <code>repeated .context.Device devices = 1;</code> + * <code>.context.Timestamp timestamp = 8;</code> */ - public Builder clearDevices() { - if (devicesBuilder_ == null) { - devices_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + public Builder setTimestamp(context.ContextOuterClass.Timestamp value) { + if (timestampBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + timestamp_ = value; onChanged(); } else { - devicesBuilder_.clear(); + timestampBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.Device devices = 1;</code> + * <code>.context.Timestamp timestamp = 8;</code> */ - public Builder removeDevices(int index) { - if (devicesBuilder_ == null) { - ensureDevicesIsMutable(); - devices_.remove(index); + public Builder setTimestamp( + context.ContextOuterClass.Timestamp.Builder builderForValue) { + if (timestampBuilder_ == null) { + timestamp_ = builderForValue.build(); onChanged(); } else { - devicesBuilder_.remove(index); + timestampBuilder_.setMessage(builderForValue.build()); } + return this; } /** - * <code>repeated .context.Device devices = 1;</code> - */ - public context.ContextOuterClass.Device.Builder getDevicesBuilder( - int index) { - return getDevicesFieldBuilder().getBuilder(index); - } - /** - * <code>repeated .context.Device devices = 1;</code> + * <code>.context.Timestamp timestamp = 8;</code> */ - public context.ContextOuterClass.DeviceOrBuilder getDevicesOrBuilder( - int index) { - if (devicesBuilder_ == null) { - return devices_.get(index); } else { - return devicesBuilder_.getMessageOrBuilder(index); + public Builder mergeTimestamp(context.ContextOuterClass.Timestamp value) { + if (timestampBuilder_ == null) { + if (timestamp_ != null) { + timestamp_ = + context.ContextOuterClass.Timestamp.newBuilder(timestamp_).mergeFrom(value).buildPartial(); + } else { + timestamp_ = value; + } + onChanged(); + } else { + timestampBuilder_.mergeFrom(value); } + + return this; } /** - * <code>repeated .context.Device devices = 1;</code> + * <code>.context.Timestamp timestamp = 8;</code> */ - public java.util.List<? extends context.ContextOuterClass.DeviceOrBuilder> - getDevicesOrBuilderList() { - if (devicesBuilder_ != null) { - return devicesBuilder_.getMessageOrBuilderList(); + public Builder clearTimestamp() { + if (timestampBuilder_ == null) { + timestamp_ = null; + onChanged(); } else { - return java.util.Collections.unmodifiableList(devices_); + timestamp_ = null; + timestampBuilder_ = null; } + + return this; } /** - * <code>repeated .context.Device devices = 1;</code> + * <code>.context.Timestamp timestamp = 8;</code> */ - public context.ContextOuterClass.Device.Builder addDevicesBuilder() { - return getDevicesFieldBuilder().addBuilder( - context.ContextOuterClass.Device.getDefaultInstance()); + public context.ContextOuterClass.Timestamp.Builder getTimestampBuilder() { + + onChanged(); + return getTimestampFieldBuilder().getBuilder(); } /** - * <code>repeated .context.Device devices = 1;</code> + * <code>.context.Timestamp timestamp = 8;</code> */ - public context.ContextOuterClass.Device.Builder addDevicesBuilder( - int index) { - return getDevicesFieldBuilder().addBuilder( - index, context.ContextOuterClass.Device.getDefaultInstance()); + public context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder() { + if (timestampBuilder_ != null) { + return timestampBuilder_.getMessageOrBuilder(); + } else { + return timestamp_ == null ? + context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_; + } } /** - * <code>repeated .context.Device devices = 1;</code> + * <code>.context.Timestamp timestamp = 8;</code> */ - public java.util.List<context.ContextOuterClass.Device.Builder> - getDevicesBuilderList() { - return getDevicesFieldBuilder().getBuilderList(); - } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Device, context.ContextOuterClass.Device.Builder, context.ContextOuterClass.DeviceOrBuilder> - getDevicesFieldBuilder() { - if (devicesBuilder_ == null) { - devicesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Device, context.ContextOuterClass.Device.Builder, context.ContextOuterClass.DeviceOrBuilder>( - devices_, - ((bitField0_ & 0x00000001) != 0), + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> + getTimestampFieldBuilder() { + if (timestampBuilder_ == null) { + timestampBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder>( + getTimestamp(), getParentForChildren(), isClean()); - devices_ = null; + timestamp_ = null; } - return devicesBuilder_; + return timestampBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -17276,115 +30252,82 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.DeviceList) + // @@protoc_insertion_point(builder_scope:context.Service) } - // @@protoc_insertion_point(class_scope:context.DeviceList) - private static final context.ContextOuterClass.DeviceList DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Service) + private static final context.ContextOuterClass.Service DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.DeviceList(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Service(); } - public static context.ContextOuterClass.DeviceList getDefaultInstance() { + public static context.ContextOuterClass.Service getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<DeviceList> - PARSER = new com.google.protobuf.AbstractParser<DeviceList>() { + private static final com.google.protobuf.Parser<Service> + PARSER = new com.google.protobuf.AbstractParser<Service>() { @java.lang.Override - public DeviceList parsePartialFrom( + public Service parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new DeviceList(input, extensionRegistry); + return new Service(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<DeviceList> parser() { + public static com.google.protobuf.Parser<Service> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<DeviceList> getParserForType() { + public com.google.protobuf.Parser<Service> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.DeviceList getDefaultInstanceForType() { + public context.ContextOuterClass.Service getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface DeviceEventOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.DeviceEvent) + public interface ServiceStatusOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ServiceStatus) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. - */ - boolean hasEvent(); - /** - * <code>.context.Event event = 1;</code> - * @return The event. - */ - context.ContextOuterClass.Event getEvent(); - /** - * <code>.context.Event event = 1;</code> - */ - context.ContextOuterClass.EventOrBuilder getEventOrBuilder(); - - /** - * <code>.context.DeviceId device_id = 2;</code> - * @return Whether the deviceId field is set. - */ - boolean hasDeviceId(); - /** - * <code>.context.DeviceId device_id = 2;</code> - * @return The deviceId. - */ - context.ContextOuterClass.DeviceId getDeviceId(); - /** - * <code>.context.DeviceId device_id = 2;</code> - */ - context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder(); - - /** - * <code>.context.DeviceConfig device_config = 3;</code> - * @return Whether the deviceConfig field is set. - */ - boolean hasDeviceConfig(); - /** - * <code>.context.DeviceConfig device_config = 3;</code> - * @return The deviceConfig. + * <code>.context.ServiceStatusEnum service_status = 1;</code> + * @return The enum numeric value on the wire for serviceStatus. */ - context.ContextOuterClass.DeviceConfig getDeviceConfig(); + int getServiceStatusValue(); /** - * <code>.context.DeviceConfig device_config = 3;</code> + * <code>.context.ServiceStatusEnum service_status = 1;</code> + * @return The serviceStatus. */ - context.ContextOuterClass.DeviceConfigOrBuilder getDeviceConfigOrBuilder(); + context.ContextOuterClass.ServiceStatusEnum getServiceStatus(); } /** - * Protobuf type {@code context.DeviceEvent} + * Protobuf type {@code context.ServiceStatus} */ - public static final class DeviceEvent extends + public static final class ServiceStatus extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.DeviceEvent) - DeviceEventOrBuilder { + // @@protoc_insertion_point(message_implements:context.ServiceStatus) + ServiceStatusOrBuilder { private static final long serialVersionUID = 0L; - // Use DeviceEvent.newBuilder() to construct. - private DeviceEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ServiceStatus.newBuilder() to construct. + private ServiceStatus(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private DeviceEvent() { + private ServiceStatus() { + serviceStatus_ = 0; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new DeviceEvent(); + return new ServiceStatus(); } @java.lang.Override @@ -17392,7 +30335,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private DeviceEvent( + private ServiceStatus( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -17410,43 +30353,10 @@ public final class ContextOuterClass { case 0: done = true; break; - case 10: { - context.ContextOuterClass.Event.Builder subBuilder = null; - if (event_ != null) { - subBuilder = event_.toBuilder(); - } - event_ = input.readMessage(context.ContextOuterClass.Event.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(event_); - event_ = subBuilder.buildPartial(); - } - - break; - } - case 18: { - context.ContextOuterClass.DeviceId.Builder subBuilder = null; - if (deviceId_ != null) { - subBuilder = deviceId_.toBuilder(); - } - deviceId_ = input.readMessage(context.ContextOuterClass.DeviceId.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(deviceId_); - deviceId_ = subBuilder.buildPartial(); - } - - break; - } - case 26: { - context.ContextOuterClass.DeviceConfig.Builder subBuilder = null; - if (deviceConfig_ != null) { - subBuilder = deviceConfig_.toBuilder(); - } - deviceConfig_ = input.readMessage(context.ContextOuterClass.DeviceConfig.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(deviceConfig_); - deviceConfig_ = subBuilder.buildPartial(); - } + case 8: { + int rawValue = input.readEnum(); + serviceStatus_ = rawValue; break; } default: { @@ -17466,97 +30376,38 @@ public final class ContextOuterClass { } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); - } - } - public static final com.google.protobuf.Descriptors.Descriptor - getDescriptor() { - return context.ContextOuterClass.internal_static_context_DeviceEvent_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_DeviceEvent_fieldAccessorTable - .ensureFieldAccessorsInitialized( - context.ContextOuterClass.DeviceEvent.class, context.ContextOuterClass.DeviceEvent.Builder.class); - } - - public static final int EVENT_FIELD_NUMBER = 1; - private context.ContextOuterClass.Event event_; - /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. - */ - @java.lang.Override - public boolean hasEvent() { - return event_ != null; - } - /** - * <code>.context.Event event = 1;</code> - * @return The event. - */ - @java.lang.Override - public context.ContextOuterClass.Event getEvent() { - return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; + } } - /** - * <code>.context.Event event = 1;</code> - */ - @java.lang.Override - public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { - return getEvent(); + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_ServiceStatus_descriptor; } - public static final int DEVICE_ID_FIELD_NUMBER = 2; - private context.ContextOuterClass.DeviceId deviceId_; - /** - * <code>.context.DeviceId device_id = 2;</code> - * @return Whether the deviceId field is set. - */ @java.lang.Override - public boolean hasDeviceId() { - return deviceId_ != null; - } - /** - * <code>.context.DeviceId device_id = 2;</code> - * @return The deviceId. - */ - @java.lang.Override - public context.ContextOuterClass.DeviceId getDeviceId() { - return deviceId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; - } - /** - * <code>.context.DeviceId device_id = 2;</code> - */ - @java.lang.Override - public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder() { - return getDeviceId(); + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_ServiceStatus_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.ServiceStatus.class, context.ContextOuterClass.ServiceStatus.Builder.class); } - public static final int DEVICE_CONFIG_FIELD_NUMBER = 3; - private context.ContextOuterClass.DeviceConfig deviceConfig_; - /** - * <code>.context.DeviceConfig device_config = 3;</code> - * @return Whether the deviceConfig field is set. - */ - @java.lang.Override - public boolean hasDeviceConfig() { - return deviceConfig_ != null; - } + public static final int SERVICE_STATUS_FIELD_NUMBER = 1; + private int serviceStatus_; /** - * <code>.context.DeviceConfig device_config = 3;</code> - * @return The deviceConfig. + * <code>.context.ServiceStatusEnum service_status = 1;</code> + * @return The enum numeric value on the wire for serviceStatus. */ - @java.lang.Override - public context.ContextOuterClass.DeviceConfig getDeviceConfig() { - return deviceConfig_ == null ? context.ContextOuterClass.DeviceConfig.getDefaultInstance() : deviceConfig_; + @java.lang.Override public int getServiceStatusValue() { + return serviceStatus_; } /** - * <code>.context.DeviceConfig device_config = 3;</code> + * <code>.context.ServiceStatusEnum service_status = 1;</code> + * @return The serviceStatus. */ - @java.lang.Override - public context.ContextOuterClass.DeviceConfigOrBuilder getDeviceConfigOrBuilder() { - return getDeviceConfig(); + @java.lang.Override public context.ContextOuterClass.ServiceStatusEnum getServiceStatus() { + @SuppressWarnings("deprecation") + context.ContextOuterClass.ServiceStatusEnum result = context.ContextOuterClass.ServiceStatusEnum.valueOf(serviceStatus_); + return result == null ? context.ContextOuterClass.ServiceStatusEnum.UNRECOGNIZED : result; } private byte memoizedIsInitialized = -1; @@ -17573,14 +30424,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (event_ != null) { - output.writeMessage(1, getEvent()); - } - if (deviceId_ != null) { - output.writeMessage(2, getDeviceId()); - } - if (deviceConfig_ != null) { - output.writeMessage(3, getDeviceConfig()); + if (serviceStatus_ != context.ContextOuterClass.ServiceStatusEnum.SERVICESTATUS_UNDEFINED.getNumber()) { + output.writeEnum(1, serviceStatus_); } unknownFields.writeTo(output); } @@ -17591,17 +30436,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (event_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getEvent()); - } - if (deviceId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, getDeviceId()); - } - if (deviceConfig_ != null) { + if (serviceStatus_ != context.ContextOuterClass.ServiceStatusEnum.SERVICESTATUS_UNDEFINED.getNumber()) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(3, getDeviceConfig()); + .computeEnumSize(1, serviceStatus_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -17613,26 +30450,12 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.DeviceEvent)) { + if (!(obj instanceof context.ContextOuterClass.ServiceStatus)) { return super.equals(obj); } - context.ContextOuterClass.DeviceEvent other = (context.ContextOuterClass.DeviceEvent) obj; + context.ContextOuterClass.ServiceStatus other = (context.ContextOuterClass.ServiceStatus) obj; - if (hasEvent() != other.hasEvent()) return false; - if (hasEvent()) { - if (!getEvent() - .equals(other.getEvent())) return false; - } - if (hasDeviceId() != other.hasDeviceId()) return false; - if (hasDeviceId()) { - if (!getDeviceId() - .equals(other.getDeviceId())) return false; - } - if (hasDeviceConfig() != other.hasDeviceConfig()) return false; - if (hasDeviceConfig()) { - if (!getDeviceConfig() - .equals(other.getDeviceConfig())) return false; - } + if (serviceStatus_ != other.serviceStatus_) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -17644,86 +30467,76 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasEvent()) { - hash = (37 * hash) + EVENT_FIELD_NUMBER; - hash = (53 * hash) + getEvent().hashCode(); - } - if (hasDeviceId()) { - hash = (37 * hash) + DEVICE_ID_FIELD_NUMBER; - hash = (53 * hash) + getDeviceId().hashCode(); - } - if (hasDeviceConfig()) { - hash = (37 * hash) + DEVICE_CONFIG_FIELD_NUMBER; - hash = (53 * hash) + getDeviceConfig().hashCode(); - } + hash = (37 * hash) + SERVICE_STATUS_FIELD_NUMBER; + hash = (53 * hash) + serviceStatus_; hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.DeviceEvent parseFrom( + public static context.ContextOuterClass.ServiceStatus parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.DeviceEvent parseFrom( + public static context.ContextOuterClass.ServiceStatus parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.DeviceEvent parseFrom( + public static context.ContextOuterClass.ServiceStatus parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.DeviceEvent parseFrom( + public static context.ContextOuterClass.ServiceStatus parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.DeviceEvent parseFrom(byte[] data) + public static context.ContextOuterClass.ServiceStatus parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.DeviceEvent parseFrom( + public static context.ContextOuterClass.ServiceStatus parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.DeviceEvent parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ServiceStatus parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.DeviceEvent parseFrom( + public static context.ContextOuterClass.ServiceStatus 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 context.ContextOuterClass.DeviceEvent parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ServiceStatus parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.DeviceEvent parseDelimitedFrom( + public static context.ContextOuterClass.ServiceStatus 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 context.ContextOuterClass.DeviceEvent parseFrom( + public static context.ContextOuterClass.ServiceStatus parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.DeviceEvent parseFrom( + public static context.ContextOuterClass.ServiceStatus parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -17736,7 +30549,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.DeviceEvent prototype) { + public static Builder newBuilder(context.ContextOuterClass.ServiceStatus prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -17752,26 +30565,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.DeviceEvent} + * Protobuf type {@code context.ServiceStatus} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.DeviceEvent) - context.ContextOuterClass.DeviceEventOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ServiceStatus) + context.ContextOuterClass.ServiceStatusOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_DeviceEvent_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceStatus_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_DeviceEvent_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ServiceStatus_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.DeviceEvent.class, context.ContextOuterClass.DeviceEvent.Builder.class); + context.ContextOuterClass.ServiceStatus.class, context.ContextOuterClass.ServiceStatus.Builder.class); } - // Construct using context.ContextOuterClass.DeviceEvent.newBuilder() + // Construct using context.ContextOuterClass.ServiceStatus.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -17786,509 +30599,170 @@ public final class ContextOuterClass { .alwaysUseFieldBuilders) { } } - @java.lang.Override - public Builder clear() { - super.clear(); - if (eventBuilder_ == null) { - event_ = null; - } else { - event_ = null; - eventBuilder_ = null; - } - if (deviceIdBuilder_ == null) { - deviceId_ = null; - } else { - deviceId_ = null; - deviceIdBuilder_ = null; - } - if (deviceConfigBuilder_ == null) { - deviceConfig_ = null; - } else { - deviceConfig_ = null; - deviceConfigBuilder_ = null; - } - return this; - } - - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor - getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_DeviceEvent_descriptor; - } - - @java.lang.Override - public context.ContextOuterClass.DeviceEvent getDefaultInstanceForType() { - return context.ContextOuterClass.DeviceEvent.getDefaultInstance(); - } - - @java.lang.Override - public context.ContextOuterClass.DeviceEvent build() { - context.ContextOuterClass.DeviceEvent result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; - } - - @java.lang.Override - public context.ContextOuterClass.DeviceEvent buildPartial() { - context.ContextOuterClass.DeviceEvent result = new context.ContextOuterClass.DeviceEvent(this); - if (eventBuilder_ == null) { - result.event_ = event_; - } else { - result.event_ = eventBuilder_.build(); - } - if (deviceIdBuilder_ == null) { - result.deviceId_ = deviceId_; - } else { - result.deviceId_ = deviceIdBuilder_.build(); - } - if (deviceConfigBuilder_ == null) { - result.deviceConfig_ = deviceConfig_; - } else { - result.deviceConfig_ = deviceConfigBuilder_.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 context.ContextOuterClass.DeviceEvent) { - return mergeFrom((context.ContextOuterClass.DeviceEvent)other); - } else { - super.mergeFrom(other); - return this; - } - } - - public Builder mergeFrom(context.ContextOuterClass.DeviceEvent other) { - if (other == context.ContextOuterClass.DeviceEvent.getDefaultInstance()) return this; - if (other.hasEvent()) { - mergeEvent(other.getEvent()); - } - if (other.hasDeviceId()) { - mergeDeviceId(other.getDeviceId()); - } - if (other.hasDeviceConfig()) { - mergeDeviceConfig(other.getDeviceConfig()); - } - this.mergeUnknownFields(other.unknownFields); - onChanged(); - return this; - } - - @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 { - context.ContextOuterClass.DeviceEvent parsedMessage = null; - try { - parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.DeviceEvent) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); - } - } - return this; - } - - private context.ContextOuterClass.Event event_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> eventBuilder_; - /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. - */ - public boolean hasEvent() { - return eventBuilder_ != null || event_ != null; - } - /** - * <code>.context.Event event = 1;</code> - * @return The event. - */ - public context.ContextOuterClass.Event getEvent() { - if (eventBuilder_ == null) { - return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; - } else { - return eventBuilder_.getMessage(); - } - } - /** - * <code>.context.Event event = 1;</code> - */ - public Builder setEvent(context.ContextOuterClass.Event value) { - if (eventBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - event_ = value; - onChanged(); - } else { - eventBuilder_.setMessage(value); - } - - return this; - } - /** - * <code>.context.Event event = 1;</code> - */ - public Builder setEvent( - context.ContextOuterClass.Event.Builder builderForValue) { - if (eventBuilder_ == null) { - event_ = builderForValue.build(); - onChanged(); - } else { - eventBuilder_.setMessage(builderForValue.build()); - } - - return this; - } - /** - * <code>.context.Event event = 1;</code> - */ - public Builder mergeEvent(context.ContextOuterClass.Event value) { - if (eventBuilder_ == null) { - if (event_ != null) { - event_ = - context.ContextOuterClass.Event.newBuilder(event_).mergeFrom(value).buildPartial(); - } else { - event_ = value; - } - onChanged(); - } else { - eventBuilder_.mergeFrom(value); - } - - return this; - } - /** - * <code>.context.Event event = 1;</code> - */ - public Builder clearEvent() { - if (eventBuilder_ == null) { - event_ = null; - onChanged(); - } else { - event_ = null; - eventBuilder_ = null; - } - - return this; - } - /** - * <code>.context.Event event = 1;</code> - */ - public context.ContextOuterClass.Event.Builder getEventBuilder() { - - onChanged(); - return getEventFieldBuilder().getBuilder(); - } - /** - * <code>.context.Event event = 1;</code> - */ - public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { - if (eventBuilder_ != null) { - return eventBuilder_.getMessageOrBuilder(); - } else { - return event_ == null ? - context.ContextOuterClass.Event.getDefaultInstance() : event_; - } - } - /** - * <code>.context.Event event = 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(), - getParentForChildren(), - isClean()); - event_ = null; - } - return eventBuilder_; - } - - private context.ContextOuterClass.DeviceId deviceId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> deviceIdBuilder_; - /** - * <code>.context.DeviceId device_id = 2;</code> - * @return Whether the deviceId field is set. - */ - public boolean hasDeviceId() { - return deviceIdBuilder_ != null || deviceId_ != null; - } - /** - * <code>.context.DeviceId device_id = 2;</code> - * @return The deviceId. - */ - public context.ContextOuterClass.DeviceId getDeviceId() { - if (deviceIdBuilder_ == null) { - return deviceId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; - } else { - return deviceIdBuilder_.getMessage(); - } - } - /** - * <code>.context.DeviceId device_id = 2;</code> - */ - public Builder setDeviceId(context.ContextOuterClass.DeviceId value) { - if (deviceIdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - deviceId_ = value; - onChanged(); - } else { - deviceIdBuilder_.setMessage(value); - } - - return this; - } - /** - * <code>.context.DeviceId device_id = 2;</code> - */ - public Builder setDeviceId( - context.ContextOuterClass.DeviceId.Builder builderForValue) { - if (deviceIdBuilder_ == null) { - deviceId_ = builderForValue.build(); - onChanged(); - } else { - deviceIdBuilder_.setMessage(builderForValue.build()); - } - - return this; - } - /** - * <code>.context.DeviceId device_id = 2;</code> - */ - public Builder mergeDeviceId(context.ContextOuterClass.DeviceId value) { - if (deviceIdBuilder_ == null) { - if (deviceId_ != null) { - deviceId_ = - context.ContextOuterClass.DeviceId.newBuilder(deviceId_).mergeFrom(value).buildPartial(); - } else { - deviceId_ = value; - } - onChanged(); - } else { - deviceIdBuilder_.mergeFrom(value); - } - - return this; - } - /** - * <code>.context.DeviceId device_id = 2;</code> - */ - public Builder clearDeviceId() { - if (deviceIdBuilder_ == null) { - deviceId_ = null; - onChanged(); - } else { - deviceId_ = null; - deviceIdBuilder_ = null; - } + @java.lang.Override + public Builder clear() { + super.clear(); + serviceStatus_ = 0; return this; } - /** - * <code>.context.DeviceId device_id = 2;</code> - */ - public context.ContextOuterClass.DeviceId.Builder getDeviceIdBuilder() { - - onChanged(); - return getDeviceIdFieldBuilder().getBuilder(); + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return context.ContextOuterClass.internal_static_context_ServiceStatus_descriptor; } - /** - * <code>.context.DeviceId device_id = 2;</code> - */ - public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder() { - if (deviceIdBuilder_ != null) { - return deviceIdBuilder_.getMessageOrBuilder(); - } else { - return deviceId_ == null ? - context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; - } + + @java.lang.Override + public context.ContextOuterClass.ServiceStatus getDefaultInstanceForType() { + return context.ContextOuterClass.ServiceStatus.getDefaultInstance(); } - /** - * <code>.context.DeviceId device_id = 2;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> - getDeviceIdFieldBuilder() { - if (deviceIdBuilder_ == null) { - deviceIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder>( - getDeviceId(), - getParentForChildren(), - isClean()); - deviceId_ = null; + + @java.lang.Override + public context.ContextOuterClass.ServiceStatus build() { + context.ContextOuterClass.ServiceStatus result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); } - return deviceIdBuilder_; + return result; } - private context.ContextOuterClass.DeviceConfig deviceConfig_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.DeviceConfig, context.ContextOuterClass.DeviceConfig.Builder, context.ContextOuterClass.DeviceConfigOrBuilder> deviceConfigBuilder_; - /** - * <code>.context.DeviceConfig device_config = 3;</code> - * @return Whether the deviceConfig field is set. - */ - public boolean hasDeviceConfig() { - return deviceConfigBuilder_ != null || deviceConfig_ != null; + @java.lang.Override + public context.ContextOuterClass.ServiceStatus buildPartial() { + context.ContextOuterClass.ServiceStatus result = new context.ContextOuterClass.ServiceStatus(this); + result.serviceStatus_ = serviceStatus_; + onBuilt(); + return result; } - /** - * <code>.context.DeviceConfig device_config = 3;</code> - * @return The deviceConfig. - */ - public context.ContextOuterClass.DeviceConfig getDeviceConfig() { - if (deviceConfigBuilder_ == null) { - return deviceConfig_ == null ? context.ContextOuterClass.DeviceConfig.getDefaultInstance() : deviceConfig_; - } else { - return deviceConfigBuilder_.getMessage(); - } + + @java.lang.Override + public Builder clone() { + return super.clone(); } - /** - * <code>.context.DeviceConfig device_config = 3;</code> - */ - public Builder setDeviceConfig(context.ContextOuterClass.DeviceConfig value) { - if (deviceConfigBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - deviceConfig_ = value; - 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 context.ContextOuterClass.ServiceStatus) { + return mergeFrom((context.ContextOuterClass.ServiceStatus)other); } else { - deviceConfigBuilder_.setMessage(value); + super.mergeFrom(other); + return this; } + } + public Builder mergeFrom(context.ContextOuterClass.ServiceStatus other) { + if (other == context.ContextOuterClass.ServiceStatus.getDefaultInstance()) return this; + if (other.serviceStatus_ != 0) { + setServiceStatusValue(other.getServiceStatusValue()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); return this; } - /** - * <code>.context.DeviceConfig device_config = 3;</code> - */ - public Builder setDeviceConfig( - context.ContextOuterClass.DeviceConfig.Builder builderForValue) { - if (deviceConfigBuilder_ == null) { - deviceConfig_ = builderForValue.build(); - onChanged(); - } else { - deviceConfigBuilder_.setMessage(builderForValue.build()); - } - return this; + @java.lang.Override + public final boolean isInitialized() { + return true; } - /** - * <code>.context.DeviceConfig device_config = 3;</code> - */ - public Builder mergeDeviceConfig(context.ContextOuterClass.DeviceConfig value) { - if (deviceConfigBuilder_ == null) { - if (deviceConfig_ != null) { - deviceConfig_ = - context.ContextOuterClass.DeviceConfig.newBuilder(deviceConfig_).mergeFrom(value).buildPartial(); - } else { - deviceConfig_ = value; + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + context.ContextOuterClass.ServiceStatus parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.ServiceStatus) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); } - onChanged(); - } else { - deviceConfigBuilder_.mergeFrom(value); } - return this; } + + private int serviceStatus_ = 0; /** - * <code>.context.DeviceConfig device_config = 3;</code> + * <code>.context.ServiceStatusEnum service_status = 1;</code> + * @return The enum numeric value on the wire for serviceStatus. */ - public Builder clearDeviceConfig() { - if (deviceConfigBuilder_ == null) { - deviceConfig_ = null; - onChanged(); - } else { - deviceConfig_ = null; - deviceConfigBuilder_ = null; - } - - return this; + @java.lang.Override public int getServiceStatusValue() { + return serviceStatus_; } /** - * <code>.context.DeviceConfig device_config = 3;</code> + * <code>.context.ServiceStatusEnum service_status = 1;</code> + * @param value The enum numeric value on the wire for serviceStatus to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.DeviceConfig.Builder getDeviceConfigBuilder() { + public Builder setServiceStatusValue(int value) { + serviceStatus_ = value; onChanged(); - return getDeviceConfigFieldBuilder().getBuilder(); + return this; } /** - * <code>.context.DeviceConfig device_config = 3;</code> + * <code>.context.ServiceStatusEnum service_status = 1;</code> + * @return The serviceStatus. */ - public context.ContextOuterClass.DeviceConfigOrBuilder getDeviceConfigOrBuilder() { - if (deviceConfigBuilder_ != null) { - return deviceConfigBuilder_.getMessageOrBuilder(); - } else { - return deviceConfig_ == null ? - context.ContextOuterClass.DeviceConfig.getDefaultInstance() : deviceConfig_; - } + @java.lang.Override + public context.ContextOuterClass.ServiceStatusEnum getServiceStatus() { + @SuppressWarnings("deprecation") + context.ContextOuterClass.ServiceStatusEnum result = context.ContextOuterClass.ServiceStatusEnum.valueOf(serviceStatus_); + return result == null ? context.ContextOuterClass.ServiceStatusEnum.UNRECOGNIZED : result; } /** - * <code>.context.DeviceConfig device_config = 3;</code> + * <code>.context.ServiceStatusEnum service_status = 1;</code> + * @param value The serviceStatus to set. + * @return This builder for chaining. */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.DeviceConfig, context.ContextOuterClass.DeviceConfig.Builder, context.ContextOuterClass.DeviceConfigOrBuilder> - getDeviceConfigFieldBuilder() { - if (deviceConfigBuilder_ == null) { - deviceConfigBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.DeviceConfig, context.ContextOuterClass.DeviceConfig.Builder, context.ContextOuterClass.DeviceConfigOrBuilder>( - getDeviceConfig(), - getParentForChildren(), - isClean()); - deviceConfig_ = null; + public Builder setServiceStatus(context.ContextOuterClass.ServiceStatusEnum value) { + if (value == null) { + throw new NullPointerException(); } - return deviceConfigBuilder_; + + serviceStatus_ = value.getNumber(); + onChanged(); + return this; + } + /** + * <code>.context.ServiceStatusEnum service_status = 1;</code> + * @return This builder for chaining. + */ + public Builder clearServiceStatus() { + + serviceStatus_ = 0; + onChanged(); + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -18303,89 +30777,95 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.DeviceEvent) + // @@protoc_insertion_point(builder_scope:context.ServiceStatus) } - // @@protoc_insertion_point(class_scope:context.DeviceEvent) - private static final context.ContextOuterClass.DeviceEvent DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ServiceStatus) + private static final context.ContextOuterClass.ServiceStatus DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.DeviceEvent(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceStatus(); } - public static context.ContextOuterClass.DeviceEvent getDefaultInstance() { + public static context.ContextOuterClass.ServiceStatus getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<DeviceEvent> - PARSER = new com.google.protobuf.AbstractParser<DeviceEvent>() { + private static final com.google.protobuf.Parser<ServiceStatus> + PARSER = new com.google.protobuf.AbstractParser<ServiceStatus>() { @java.lang.Override - public DeviceEvent parsePartialFrom( + public ServiceStatus parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new DeviceEvent(input, extensionRegistry); + return new ServiceStatus(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<DeviceEvent> parser() { + public static com.google.protobuf.Parser<ServiceStatus> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<DeviceEvent> getParserForType() { + public com.google.protobuf.Parser<ServiceStatus> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.DeviceEvent getDefaultInstanceForType() { + public context.ContextOuterClass.ServiceStatus getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface LinkIdOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.LinkId) + public interface ServiceConfigOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ServiceConfig) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.Uuid link_uuid = 1;</code> - * @return Whether the linkUuid field is set. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - boolean hasLinkUuid(); + java.util.List<context.ContextOuterClass.ConfigRule> + getConfigRulesList(); /** - * <code>.context.Uuid link_uuid = 1;</code> - * @return The linkUuid. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - context.ContextOuterClass.Uuid getLinkUuid(); + context.ContextOuterClass.ConfigRule getConfigRules(int index); /** - * <code>.context.Uuid link_uuid = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - context.ContextOuterClass.UuidOrBuilder getLinkUuidOrBuilder(); + int getConfigRulesCount(); + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> + getConfigRulesOrBuilderList(); + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( + int index); } /** - * <pre> - * ----- Link ---------------------------------------------------------------------------------------------------------- - * </pre> - * - * Protobuf type {@code context.LinkId} + * Protobuf type {@code context.ServiceConfig} */ - public static final class LinkId extends + public static final class ServiceConfig extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.LinkId) - LinkIdOrBuilder { + // @@protoc_insertion_point(message_implements:context.ServiceConfig) + ServiceConfigOrBuilder { private static final long serialVersionUID = 0L; - // Use LinkId.newBuilder() to construct. - private LinkId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ServiceConfig.newBuilder() to construct. + private ServiceConfig(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private LinkId() { + private ServiceConfig() { + configRules_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new LinkId(); + return new ServiceConfig(); } @java.lang.Override @@ -18393,7 +30873,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private LinkId( + private ServiceConfig( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -18401,6 +30881,7 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } + int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -18412,16 +30893,12 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.Uuid.Builder subBuilder = null; - if (linkUuid_ != null) { - subBuilder = linkUuid_.toBuilder(); - } - linkUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(linkUuid_); - linkUuid_ = subBuilder.buildPartial(); + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + configRules_ = new java.util.ArrayList<context.ContextOuterClass.ConfigRule>(); + mutable_bitField0_ |= 0x00000001; } - + configRules_.add( + input.readMessage(context.ContextOuterClass.ConfigRule.parser(), extensionRegistry)); break; } default: { @@ -18439,47 +30916,64 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { + if (((mutable_bitField0_ & 0x00000001) != 0)) { + configRules_ = java.util.Collections.unmodifiableList(configRules_); + } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_LinkId_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceConfig_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_LinkId_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ServiceConfig_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.LinkId.class, context.ContextOuterClass.LinkId.Builder.class); + context.ContextOuterClass.ServiceConfig.class, context.ContextOuterClass.ServiceConfig.Builder.class); } - public static final int LINK_UUID_FIELD_NUMBER = 1; - private context.ContextOuterClass.Uuid linkUuid_; + public static final int CONFIG_RULES_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.ConfigRule> configRules_; /** - * <code>.context.Uuid link_uuid = 1;</code> - * @return Whether the linkUuid field is set. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ @java.lang.Override - public boolean hasLinkUuid() { - return linkUuid_ != null; + public java.util.List<context.ContextOuterClass.ConfigRule> getConfigRulesList() { + return configRules_; } /** - * <code>.context.Uuid link_uuid = 1;</code> - * @return The linkUuid. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.Uuid getLinkUuid() { - return linkUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : linkUuid_; + public java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> + getConfigRulesOrBuilderList() { + return configRules_; } /** - * <code>.context.Uuid link_uuid = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.UuidOrBuilder getLinkUuidOrBuilder() { - return getLinkUuid(); + public int getConfigRulesCount() { + return configRules_.size(); + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ConfigRule getConfigRules(int index) { + return configRules_.get(index); + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( + int index) { + return configRules_.get(index); } private byte memoizedIsInitialized = -1; @@ -18496,8 +30990,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (linkUuid_ != null) { - output.writeMessage(1, getLinkUuid()); + for (int i = 0; i < configRules_.size(); i++) { + output.writeMessage(1, configRules_.get(i)); } unknownFields.writeTo(output); } @@ -18508,9 +31002,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (linkUuid_ != null) { + for (int i = 0; i < configRules_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getLinkUuid()); + .computeMessageSize(1, configRules_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -18522,16 +31016,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.LinkId)) { + if (!(obj instanceof context.ContextOuterClass.ServiceConfig)) { return super.equals(obj); } - context.ContextOuterClass.LinkId other = (context.ContextOuterClass.LinkId) obj; + context.ContextOuterClass.ServiceConfig other = (context.ContextOuterClass.ServiceConfig) obj; - if (hasLinkUuid() != other.hasLinkUuid()) return false; - if (hasLinkUuid()) { - if (!getLinkUuid() - .equals(other.getLinkUuid())) return false; - } + if (!getConfigRulesList() + .equals(other.getConfigRulesList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -18543,78 +31034,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasLinkUuid()) { - hash = (37 * hash) + LINK_UUID_FIELD_NUMBER; - hash = (53 * hash) + getLinkUuid().hashCode(); + if (getConfigRulesCount() > 0) { + hash = (37 * hash) + CONFIG_RULES_FIELD_NUMBER; + hash = (53 * hash) + getConfigRulesList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.LinkId parseFrom( + public static context.ContextOuterClass.ServiceConfig parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.LinkId parseFrom( + public static context.ContextOuterClass.ServiceConfig parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.LinkId parseFrom( + public static context.ContextOuterClass.ServiceConfig parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.LinkId parseFrom( + public static context.ContextOuterClass.ServiceConfig parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.LinkId parseFrom(byte[] data) + public static context.ContextOuterClass.ServiceConfig parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.LinkId parseFrom( + public static context.ContextOuterClass.ServiceConfig parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.LinkId parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ServiceConfig parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.LinkId parseFrom( + public static context.ContextOuterClass.ServiceConfig 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 context.ContextOuterClass.LinkId parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ServiceConfig parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.LinkId parseDelimitedFrom( + public static context.ContextOuterClass.ServiceConfig 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 context.ContextOuterClass.LinkId parseFrom( + public static context.ContextOuterClass.ServiceConfig parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.LinkId parseFrom( + public static context.ContextOuterClass.ServiceConfig parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -18627,7 +31118,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.LinkId prototype) { + public static Builder newBuilder(context.ContextOuterClass.ServiceConfig prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -18643,30 +31134,26 @@ public final class ContextOuterClass { return builder; } /** - * <pre> - * ----- Link ---------------------------------------------------------------------------------------------------------- - * </pre> - * - * Protobuf type {@code context.LinkId} + * Protobuf type {@code context.ServiceConfig} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.LinkId) - context.ContextOuterClass.LinkIdOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ServiceConfig) + context.ContextOuterClass.ServiceConfigOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_LinkId_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceConfig_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_LinkId_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ServiceConfig_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.LinkId.class, context.ContextOuterClass.LinkId.Builder.class); + context.ContextOuterClass.ServiceConfig.class, context.ContextOuterClass.ServiceConfig.Builder.class); } - // Construct using context.ContextOuterClass.LinkId.newBuilder() + // Construct using context.ContextOuterClass.ServiceConfig.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -18679,16 +31166,17 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { + getConfigRulesFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (linkUuidBuilder_ == null) { - linkUuid_ = null; + if (configRulesBuilder_ == null) { + configRules_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); } else { - linkUuid_ = null; - linkUuidBuilder_ = null; + configRulesBuilder_.clear(); } return this; } @@ -18696,17 +31184,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_LinkId_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceConfig_descriptor; } @java.lang.Override - public context.ContextOuterClass.LinkId getDefaultInstanceForType() { - return context.ContextOuterClass.LinkId.getDefaultInstance(); + public context.ContextOuterClass.ServiceConfig getDefaultInstanceForType() { + return context.ContextOuterClass.ServiceConfig.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.LinkId build() { - context.ContextOuterClass.LinkId result = buildPartial(); + public context.ContextOuterClass.ServiceConfig build() { + context.ContextOuterClass.ServiceConfig result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -18714,12 +31202,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.LinkId buildPartial() { - context.ContextOuterClass.LinkId result = new context.ContextOuterClass.LinkId(this); - if (linkUuidBuilder_ == null) { - result.linkUuid_ = linkUuid_; + public context.ContextOuterClass.ServiceConfig buildPartial() { + context.ContextOuterClass.ServiceConfig result = new context.ContextOuterClass.ServiceConfig(this); + int from_bitField0_ = bitField0_; + if (configRulesBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + configRules_ = java.util.Collections.unmodifiableList(configRules_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.configRules_ = configRules_; } else { - result.linkUuid_ = linkUuidBuilder_.build(); + result.configRules_ = configRulesBuilder_.build(); } onBuilt(); return result; @@ -18759,18 +31252,41 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.LinkId) { - return mergeFrom((context.ContextOuterClass.LinkId)other); + if (other instanceof context.ContextOuterClass.ServiceConfig) { + return mergeFrom((context.ContextOuterClass.ServiceConfig)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(context.ContextOuterClass.ServiceConfig other) { + if (other == context.ContextOuterClass.ServiceConfig.getDefaultInstance()) return this; + if (configRulesBuilder_ == null) { + if (!other.configRules_.isEmpty()) { + if (configRules_.isEmpty()) { + configRules_ = other.configRules_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureConfigRulesIsMutable(); + configRules_.addAll(other.configRules_); + } + onChanged(); + } } else { - super.mergeFrom(other); - return this; - } - } - - public Builder mergeFrom(context.ContextOuterClass.LinkId other) { - if (other == context.ContextOuterClass.LinkId.getDefaultInstance()) return this; - if (other.hasLinkUuid()) { - mergeLinkUuid(other.getLinkUuid()); + if (!other.configRules_.isEmpty()) { + if (configRulesBuilder_.isEmpty()) { + configRulesBuilder_.dispose(); + configRulesBuilder_ = null; + configRules_ = other.configRules_; + bitField0_ = (bitField0_ & ~0x00000001); + configRulesBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getConfigRulesFieldBuilder() : null; + } else { + configRulesBuilder_.addAllMessages(other.configRules_); + } + } } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -18787,11 +31303,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.LinkId parsedMessage = null; + context.ContextOuterClass.ServiceConfig parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.LinkId) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ServiceConfig) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -18800,124 +31316,246 @@ public final class ContextOuterClass { } return this; } + private int bitField0_; + + private java.util.List<context.ContextOuterClass.ConfigRule> configRules_ = + java.util.Collections.emptyList(); + private void ensureConfigRulesIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + configRules_ = new java.util.ArrayList<context.ContextOuterClass.ConfigRule>(configRules_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder> configRulesBuilder_; - private context.ContextOuterClass.Uuid linkUuid_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> linkUuidBuilder_; /** - * <code>.context.Uuid link_uuid = 1;</code> - * @return Whether the linkUuid field is set. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public boolean hasLinkUuid() { - return linkUuidBuilder_ != null || linkUuid_ != null; + public java.util.List<context.ContextOuterClass.ConfigRule> getConfigRulesList() { + if (configRulesBuilder_ == null) { + return java.util.Collections.unmodifiableList(configRules_); + } else { + return configRulesBuilder_.getMessageList(); + } } /** - * <code>.context.Uuid link_uuid = 1;</code> - * @return The linkUuid. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public context.ContextOuterClass.Uuid getLinkUuid() { - if (linkUuidBuilder_ == null) { - return linkUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : linkUuid_; + public int getConfigRulesCount() { + if (configRulesBuilder_ == null) { + return configRules_.size(); } else { - return linkUuidBuilder_.getMessage(); + return configRulesBuilder_.getCount(); } } /** - * <code>.context.Uuid link_uuid = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public Builder setLinkUuid(context.ContextOuterClass.Uuid value) { - if (linkUuidBuilder_ == null) { + public context.ContextOuterClass.ConfigRule getConfigRules(int index) { + if (configRulesBuilder_ == null) { + return configRules_.get(index); + } else { + return configRulesBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public Builder setConfigRules( + int index, context.ContextOuterClass.ConfigRule value) { + if (configRulesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - linkUuid_ = value; + ensureConfigRulesIsMutable(); + configRules_.set(index, value); onChanged(); } else { - linkUuidBuilder_.setMessage(value); + configRulesBuilder_.setMessage(index, value); } - return this; } /** - * <code>.context.Uuid link_uuid = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public Builder setLinkUuid( - context.ContextOuterClass.Uuid.Builder builderForValue) { - if (linkUuidBuilder_ == null) { - linkUuid_ = builderForValue.build(); + public Builder setConfigRules( + int index, context.ContextOuterClass.ConfigRule.Builder builderForValue) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + configRules_.set(index, builderForValue.build()); onChanged(); } else { - linkUuidBuilder_.setMessage(builderForValue.build()); + configRulesBuilder_.setMessage(index, builderForValue.build()); } - return this; } /** - * <code>.context.Uuid link_uuid = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public Builder mergeLinkUuid(context.ContextOuterClass.Uuid value) { - if (linkUuidBuilder_ == null) { - if (linkUuid_ != null) { - linkUuid_ = - context.ContextOuterClass.Uuid.newBuilder(linkUuid_).mergeFrom(value).buildPartial(); - } else { - linkUuid_ = value; + public Builder addConfigRules(context.ContextOuterClass.ConfigRule value) { + if (configRulesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + ensureConfigRulesIsMutable(); + configRules_.add(value); onChanged(); } else { - linkUuidBuilder_.mergeFrom(value); + configRulesBuilder_.addMessage(value); } - return this; } /** - * <code>.context.Uuid link_uuid = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public Builder clearLinkUuid() { - if (linkUuidBuilder_ == null) { - linkUuid_ = null; + public Builder addConfigRules( + int index, context.ContextOuterClass.ConfigRule value) { + if (configRulesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConfigRulesIsMutable(); + configRules_.add(index, value); onChanged(); } else { - linkUuid_ = null; - linkUuidBuilder_ = null; + configRulesBuilder_.addMessage(index, value); } - return this; } /** - * <code>.context.Uuid link_uuid = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public context.ContextOuterClass.Uuid.Builder getLinkUuidBuilder() { - - onChanged(); - return getLinkUuidFieldBuilder().getBuilder(); + public Builder addConfigRules( + context.ContextOuterClass.ConfigRule.Builder builderForValue) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + configRules_.add(builderForValue.build()); + onChanged(); + } else { + configRulesBuilder_.addMessage(builderForValue.build()); + } + return this; } /** - * <code>.context.Uuid link_uuid = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public context.ContextOuterClass.UuidOrBuilder getLinkUuidOrBuilder() { - if (linkUuidBuilder_ != null) { - return linkUuidBuilder_.getMessageOrBuilder(); + public Builder addConfigRules( + int index, context.ContextOuterClass.ConfigRule.Builder builderForValue) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + configRules_.add(index, builderForValue.build()); + onChanged(); } else { - return linkUuid_ == null ? - context.ContextOuterClass.Uuid.getDefaultInstance() : linkUuid_; + configRulesBuilder_.addMessage(index, builderForValue.build()); } + return this; } /** - * <code>.context.Uuid link_uuid = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> - getLinkUuidFieldBuilder() { - if (linkUuidBuilder_ == null) { - linkUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>( - getLinkUuid(), + public Builder addAllConfigRules( + java.lang.Iterable<? extends context.ContextOuterClass.ConfigRule> values) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, configRules_); + onChanged(); + } else { + configRulesBuilder_.addAllMessages(values); + } + return this; + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public Builder clearConfigRules() { + if (configRulesBuilder_ == null) { + configRules_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + configRulesBuilder_.clear(); + } + return this; + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public Builder removeConfigRules(int index) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + configRules_.remove(index); + onChanged(); + } else { + configRulesBuilder_.remove(index); + } + return this; + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public context.ContextOuterClass.ConfigRule.Builder getConfigRulesBuilder( + int index) { + return getConfigRulesFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( + int index) { + if (configRulesBuilder_ == null) { + return configRules_.get(index); } else { + return configRulesBuilder_.getMessageOrBuilder(index); + } + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> + getConfigRulesOrBuilderList() { + if (configRulesBuilder_ != null) { + return configRulesBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(configRules_); + } + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public context.ContextOuterClass.ConfigRule.Builder addConfigRulesBuilder() { + return getConfigRulesFieldBuilder().addBuilder( + context.ContextOuterClass.ConfigRule.getDefaultInstance()); + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public context.ContextOuterClass.ConfigRule.Builder addConfigRulesBuilder( + int index) { + return getConfigRulesFieldBuilder().addBuilder( + index, context.ContextOuterClass.ConfigRule.getDefaultInstance()); + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public java.util.List<context.ContextOuterClass.ConfigRule.Builder> + getConfigRulesBuilderList() { + return getConfigRulesFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder> + getConfigRulesFieldBuilder() { + if (configRulesBuilder_ == null) { + configRulesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder>( + configRules_, + ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); - linkUuid_ = null; + configRules_ = null; } - return linkUuidBuilder_; + return configRulesBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -18932,110 +31570,95 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.LinkId) + // @@protoc_insertion_point(builder_scope:context.ServiceConfig) } - // @@protoc_insertion_point(class_scope:context.LinkId) - private static final context.ContextOuterClass.LinkId DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ServiceConfig) + private static final context.ContextOuterClass.ServiceConfig DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.LinkId(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceConfig(); } - public static context.ContextOuterClass.LinkId getDefaultInstance() { + public static context.ContextOuterClass.ServiceConfig getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<LinkId> - PARSER = new com.google.protobuf.AbstractParser<LinkId>() { + private static final com.google.protobuf.Parser<ServiceConfig> + PARSER = new com.google.protobuf.AbstractParser<ServiceConfig>() { @java.lang.Override - public LinkId parsePartialFrom( + public ServiceConfig parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new LinkId(input, extensionRegistry); + return new ServiceConfig(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<LinkId> parser() { + public static com.google.protobuf.Parser<ServiceConfig> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<LinkId> getParserForType() { + public com.google.protobuf.Parser<ServiceConfig> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.LinkId getDefaultInstanceForType() { + public context.ContextOuterClass.ServiceConfig getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface LinkOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Link) + public interface ServiceIdListOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ServiceIdList) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.LinkId link_id = 1;</code> - * @return Whether the linkId field is set. - */ - boolean hasLinkId(); - /** - * <code>.context.LinkId link_id = 1;</code> - * @return The linkId. - */ - context.ContextOuterClass.LinkId getLinkId(); - /** - * <code>.context.LinkId link_id = 1;</code> - */ - context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder(); - - /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - java.util.List<context.ContextOuterClass.EndPointId> - getLinkEndpointIdsList(); + java.util.List<context.ContextOuterClass.ServiceId> + getServiceIdsList(); /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - context.ContextOuterClass.EndPointId getLinkEndpointIds(int index); + context.ContextOuterClass.ServiceId getServiceIds(int index); /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - int getLinkEndpointIdsCount(); + int getServiceIdsCount(); /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> - getLinkEndpointIdsOrBuilderList(); + java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> + getServiceIdsOrBuilderList(); /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - context.ContextOuterClass.EndPointIdOrBuilder getLinkEndpointIdsOrBuilder( + context.ContextOuterClass.ServiceIdOrBuilder getServiceIdsOrBuilder( int index); } /** - * Protobuf type {@code context.Link} + * Protobuf type {@code context.ServiceIdList} */ - public static final class Link extends + public static final class ServiceIdList extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Link) - LinkOrBuilder { + // @@protoc_insertion_point(message_implements:context.ServiceIdList) + ServiceIdListOrBuilder { private static final long serialVersionUID = 0L; - // Use Link.newBuilder() to construct. - private Link(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ServiceIdList.newBuilder() to construct. + private ServiceIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private Link() { - linkEndpointIds_ = java.util.Collections.emptyList(); + private ServiceIdList() { + serviceIds_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new Link(); + return new ServiceIdList(); } @java.lang.Override @@ -19043,7 +31666,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private Link( + private ServiceIdList( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -19063,25 +31686,12 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.LinkId.Builder subBuilder = null; - if (linkId_ != null) { - subBuilder = linkId_.toBuilder(); - } - linkId_ = input.readMessage(context.ContextOuterClass.LinkId.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(linkId_); - linkId_ = subBuilder.buildPartial(); - } - - break; - } - case 18: { if (!((mutable_bitField0_ & 0x00000001) != 0)) { - linkEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(); + serviceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(); mutable_bitField0_ |= 0x00000001; } - linkEndpointIds_.add( - input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry)); + serviceIds_.add( + input.readMessage(context.ContextOuterClass.ServiceId.parser(), extensionRegistry)); break; } default: { @@ -19100,7 +31710,7 @@ public final class ContextOuterClass { e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { - linkEndpointIds_ = java.util.Collections.unmodifiableList(linkEndpointIds_); + serviceIds_ = java.util.Collections.unmodifiableList(serviceIds_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); @@ -19108,81 +31718,55 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Link_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceIdList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Link_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ServiceIdList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Link.class, context.ContextOuterClass.Link.Builder.class); - } - - public static final int LINK_ID_FIELD_NUMBER = 1; - private context.ContextOuterClass.LinkId linkId_; - /** - * <code>.context.LinkId link_id = 1;</code> - * @return Whether the linkId field is set. - */ - @java.lang.Override - public boolean hasLinkId() { - return linkId_ != null; - } - /** - * <code>.context.LinkId link_id = 1;</code> - * @return The linkId. - */ - @java.lang.Override - public context.ContextOuterClass.LinkId getLinkId() { - return linkId_ == null ? context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_; - } - /** - * <code>.context.LinkId link_id = 1;</code> - */ - @java.lang.Override - public context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder() { - return getLinkId(); + context.ContextOuterClass.ServiceIdList.class, context.ContextOuterClass.ServiceIdList.Builder.class); } - public static final int LINK_ENDPOINT_IDS_FIELD_NUMBER = 2; - private java.util.List<context.ContextOuterClass.EndPointId> linkEndpointIds_; + public static final int SERVICE_IDS_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.ServiceId> serviceIds_; /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ @java.lang.Override - public java.util.List<context.ContextOuterClass.EndPointId> getLinkEndpointIdsList() { - return linkEndpointIds_; + public java.util.List<context.ContextOuterClass.ServiceId> getServiceIdsList() { + return serviceIds_; } /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> - getLinkEndpointIdsOrBuilderList() { - return linkEndpointIds_; + public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> + getServiceIdsOrBuilderList() { + return serviceIds_; } /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ @java.lang.Override - public int getLinkEndpointIdsCount() { - return linkEndpointIds_.size(); + public int getServiceIdsCount() { + return serviceIds_.size(); } /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.EndPointId getLinkEndpointIds(int index) { - return linkEndpointIds_.get(index); + public context.ContextOuterClass.ServiceId getServiceIds(int index) { + return serviceIds_.get(index); } /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.EndPointIdOrBuilder getLinkEndpointIdsOrBuilder( + public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdsOrBuilder( int index) { - return linkEndpointIds_.get(index); + return serviceIds_.get(index); } private byte memoizedIsInitialized = -1; @@ -19199,11 +31783,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (linkId_ != null) { - output.writeMessage(1, getLinkId()); - } - for (int i = 0; i < linkEndpointIds_.size(); i++) { - output.writeMessage(2, linkEndpointIds_.get(i)); + for (int i = 0; i < serviceIds_.size(); i++) { + output.writeMessage(1, serviceIds_.get(i)); } unknownFields.writeTo(output); } @@ -19214,13 +31795,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (linkId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getLinkId()); - } - for (int i = 0; i < linkEndpointIds_.size(); i++) { + for (int i = 0; i < serviceIds_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, linkEndpointIds_.get(i)); + .computeMessageSize(1, serviceIds_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -19232,18 +31809,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.Link)) { + if (!(obj instanceof context.ContextOuterClass.ServiceIdList)) { return super.equals(obj); } - context.ContextOuterClass.Link other = (context.ContextOuterClass.Link) obj; + context.ContextOuterClass.ServiceIdList other = (context.ContextOuterClass.ServiceIdList) obj; - if (hasLinkId() != other.hasLinkId()) return false; - if (hasLinkId()) { - if (!getLinkId() - .equals(other.getLinkId())) return false; - } - if (!getLinkEndpointIdsList() - .equals(other.getLinkEndpointIdsList())) return false; + if (!getServiceIdsList() + .equals(other.getServiceIdsList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -19255,82 +31827,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasLinkId()) { - hash = (37 * hash) + LINK_ID_FIELD_NUMBER; - hash = (53 * hash) + getLinkId().hashCode(); - } - if (getLinkEndpointIdsCount() > 0) { - hash = (37 * hash) + LINK_ENDPOINT_IDS_FIELD_NUMBER; - hash = (53 * hash) + getLinkEndpointIdsList().hashCode(); + if (getServiceIdsCount() > 0) { + hash = (37 * hash) + SERVICE_IDS_FIELD_NUMBER; + hash = (53 * hash) + getServiceIdsList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.Link parseFrom( + public static context.ContextOuterClass.ServiceIdList parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Link parseFrom( + public static context.ContextOuterClass.ServiceIdList parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Link parseFrom( + public static context.ContextOuterClass.ServiceIdList parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Link parseFrom( + public static context.ContextOuterClass.ServiceIdList parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Link parseFrom(byte[] data) + public static context.ContextOuterClass.ServiceIdList parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Link parseFrom( + public static context.ContextOuterClass.ServiceIdList parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Link parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ServiceIdList parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Link parseFrom( + public static context.ContextOuterClass.ServiceIdList 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 context.ContextOuterClass.Link parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ServiceIdList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.Link parseDelimitedFrom( + public static context.ContextOuterClass.ServiceIdList 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 context.ContextOuterClass.Link parseFrom( + public static context.ContextOuterClass.ServiceIdList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Link parseFrom( + public static context.ContextOuterClass.ServiceIdList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -19343,7 +31911,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.Link prototype) { + public static Builder newBuilder(context.ContextOuterClass.ServiceIdList prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -19359,26 +31927,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.Link} + * Protobuf type {@code context.ServiceIdList} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Link) - context.ContextOuterClass.LinkOrBuilder { + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:context.ServiceIdList) + context.ContextOuterClass.ServiceIdListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Link_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceIdList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Link_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ServiceIdList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Link.class, context.ContextOuterClass.Link.Builder.class); + context.ContextOuterClass.ServiceIdList.class, context.ContextOuterClass.ServiceIdList.Builder.class); } - // Construct using context.ContextOuterClass.Link.newBuilder() + // Construct using context.ContextOuterClass.ServiceIdList.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -19391,23 +31959,17 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getLinkEndpointIdsFieldBuilder(); + getServiceIdsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (linkIdBuilder_ == null) { - linkId_ = null; - } else { - linkId_ = null; - linkIdBuilder_ = null; - } - if (linkEndpointIdsBuilder_ == null) { - linkEndpointIds_ = java.util.Collections.emptyList(); + if (serviceIdsBuilder_ == null) { + serviceIds_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); } else { - linkEndpointIdsBuilder_.clear(); + serviceIdsBuilder_.clear(); } return this; } @@ -19415,17 +31977,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Link_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceIdList_descriptor; } @java.lang.Override - public context.ContextOuterClass.Link getDefaultInstanceForType() { - return context.ContextOuterClass.Link.getDefaultInstance(); + public context.ContextOuterClass.ServiceIdList getDefaultInstanceForType() { + return context.ContextOuterClass.ServiceIdList.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.Link build() { - context.ContextOuterClass.Link result = buildPartial(); + public context.ContextOuterClass.ServiceIdList build() { + context.ContextOuterClass.ServiceIdList result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -19433,22 +31995,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.Link buildPartial() { - context.ContextOuterClass.Link result = new context.ContextOuterClass.Link(this); + public context.ContextOuterClass.ServiceIdList buildPartial() { + context.ContextOuterClass.ServiceIdList result = new context.ContextOuterClass.ServiceIdList(this); int from_bitField0_ = bitField0_; - if (linkIdBuilder_ == null) { - result.linkId_ = linkId_; - } else { - result.linkId_ = linkIdBuilder_.build(); - } - if (linkEndpointIdsBuilder_ == null) { + if (serviceIdsBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { - linkEndpointIds_ = java.util.Collections.unmodifiableList(linkEndpointIds_); + serviceIds_ = java.util.Collections.unmodifiableList(serviceIds_); bitField0_ = (bitField0_ & ~0x00000001); } - result.linkEndpointIds_ = linkEndpointIds_; + result.serviceIds_ = serviceIds_; } else { - result.linkEndpointIds_ = linkEndpointIdsBuilder_.build(); + result.serviceIds_ = serviceIdsBuilder_.build(); } onBuilt(); return result; @@ -19488,42 +32045,39 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.Link) { - return mergeFrom((context.ContextOuterClass.Link)other); + if (other instanceof context.ContextOuterClass.ServiceIdList) { + return mergeFrom((context.ContextOuterClass.ServiceIdList)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.Link other) { - if (other == context.ContextOuterClass.Link.getDefaultInstance()) return this; - if (other.hasLinkId()) { - mergeLinkId(other.getLinkId()); - } - if (linkEndpointIdsBuilder_ == null) { - if (!other.linkEndpointIds_.isEmpty()) { - if (linkEndpointIds_.isEmpty()) { - linkEndpointIds_ = other.linkEndpointIds_; + public Builder mergeFrom(context.ContextOuterClass.ServiceIdList other) { + if (other == context.ContextOuterClass.ServiceIdList.getDefaultInstance()) return this; + if (serviceIdsBuilder_ == null) { + if (!other.serviceIds_.isEmpty()) { + if (serviceIds_.isEmpty()) { + serviceIds_ = other.serviceIds_; bitField0_ = (bitField0_ & ~0x00000001); } else { - ensureLinkEndpointIdsIsMutable(); - linkEndpointIds_.addAll(other.linkEndpointIds_); + ensureServiceIdsIsMutable(); + serviceIds_.addAll(other.serviceIds_); } onChanged(); } } else { - if (!other.linkEndpointIds_.isEmpty()) { - if (linkEndpointIdsBuilder_.isEmpty()) { - linkEndpointIdsBuilder_.dispose(); - linkEndpointIdsBuilder_ = null; - linkEndpointIds_ = other.linkEndpointIds_; + if (!other.serviceIds_.isEmpty()) { + if (serviceIdsBuilder_.isEmpty()) { + serviceIdsBuilder_.dispose(); + serviceIdsBuilder_ = null; + serviceIds_ = other.serviceIds_; bitField0_ = (bitField0_ & ~0x00000001); - linkEndpointIdsBuilder_ = + serviceIdsBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getLinkEndpointIdsFieldBuilder() : null; + getServiceIdsFieldBuilder() : null; } else { - linkEndpointIdsBuilder_.addAllMessages(other.linkEndpointIds_); + serviceIdsBuilder_.addAllMessages(other.serviceIds_); } } } @@ -19542,11 +32096,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.Link parsedMessage = null; + context.ContextOuterClass.ServiceIdList parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Link) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ServiceIdList) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -19557,363 +32111,244 @@ public final class ContextOuterClass { } private int bitField0_; - private context.ContextOuterClass.LinkId linkId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> linkIdBuilder_; - /** - * <code>.context.LinkId link_id = 1;</code> - * @return Whether the linkId field is set. - */ - public boolean hasLinkId() { - return linkIdBuilder_ != null || linkId_ != null; - } - /** - * <code>.context.LinkId link_id = 1;</code> - * @return The linkId. - */ - public context.ContextOuterClass.LinkId getLinkId() { - if (linkIdBuilder_ == null) { - return linkId_ == null ? context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_; - } else { - return linkIdBuilder_.getMessage(); - } - } - /** - * <code>.context.LinkId link_id = 1;</code> - */ - public Builder setLinkId(context.ContextOuterClass.LinkId value) { - if (linkIdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - linkId_ = value; - onChanged(); - } else { - linkIdBuilder_.setMessage(value); - } - - return this; - } - /** - * <code>.context.LinkId link_id = 1;</code> - */ - public Builder setLinkId( - context.ContextOuterClass.LinkId.Builder builderForValue) { - if (linkIdBuilder_ == null) { - linkId_ = builderForValue.build(); - onChanged(); - } else { - linkIdBuilder_.setMessage(builderForValue.build()); - } - - return this; - } - /** - * <code>.context.LinkId link_id = 1;</code> - */ - public Builder mergeLinkId(context.ContextOuterClass.LinkId value) { - if (linkIdBuilder_ == null) { - if (linkId_ != null) { - linkId_ = - context.ContextOuterClass.LinkId.newBuilder(linkId_).mergeFrom(value).buildPartial(); - } else { - linkId_ = value; - } - onChanged(); - } else { - linkIdBuilder_.mergeFrom(value); - } - - return this; - } - /** - * <code>.context.LinkId link_id = 1;</code> - */ - public Builder clearLinkId() { - if (linkIdBuilder_ == null) { - linkId_ = null; - onChanged(); - } else { - linkId_ = null; - linkIdBuilder_ = null; - } - - return this; - } - /** - * <code>.context.LinkId link_id = 1;</code> - */ - public context.ContextOuterClass.LinkId.Builder getLinkIdBuilder() { - - onChanged(); - return getLinkIdFieldBuilder().getBuilder(); - } - /** - * <code>.context.LinkId link_id = 1;</code> - */ - public context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder() { - if (linkIdBuilder_ != null) { - return linkIdBuilder_.getMessageOrBuilder(); - } else { - return linkId_ == null ? - context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_; - } - } - /** - * <code>.context.LinkId link_id = 1;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> - getLinkIdFieldBuilder() { - if (linkIdBuilder_ == null) { - linkIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder>( - getLinkId(), - getParentForChildren(), - isClean()); - linkId_ = null; - } - return linkIdBuilder_; - } - - private java.util.List<context.ContextOuterClass.EndPointId> linkEndpointIds_ = + private java.util.List<context.ContextOuterClass.ServiceId> serviceIds_ = java.util.Collections.emptyList(); - private void ensureLinkEndpointIdsIsMutable() { + private void ensureServiceIdsIsMutable() { if (!((bitField0_ & 0x00000001) != 0)) { - linkEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(linkEndpointIds_); + serviceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(serviceIds_); bitField0_ |= 0x00000001; } } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> linkEndpointIdsBuilder_; + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> serviceIdsBuilder_; /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public java.util.List<context.ContextOuterClass.EndPointId> getLinkEndpointIdsList() { - if (linkEndpointIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(linkEndpointIds_); + public java.util.List<context.ContextOuterClass.ServiceId> getServiceIdsList() { + if (serviceIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(serviceIds_); } else { - return linkEndpointIdsBuilder_.getMessageList(); + return serviceIdsBuilder_.getMessageList(); } } /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public int getLinkEndpointIdsCount() { - if (linkEndpointIdsBuilder_ == null) { - return linkEndpointIds_.size(); + public int getServiceIdsCount() { + if (serviceIdsBuilder_ == null) { + return serviceIds_.size(); } else { - return linkEndpointIdsBuilder_.getCount(); + return serviceIdsBuilder_.getCount(); } } /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public context.ContextOuterClass.EndPointId getLinkEndpointIds(int index) { - if (linkEndpointIdsBuilder_ == null) { - return linkEndpointIds_.get(index); + public context.ContextOuterClass.ServiceId getServiceIds(int index) { + if (serviceIdsBuilder_ == null) { + return serviceIds_.get(index); } else { - return linkEndpointIdsBuilder_.getMessage(index); + return serviceIdsBuilder_.getMessage(index); } } /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public Builder setLinkEndpointIds( - int index, context.ContextOuterClass.EndPointId value) { - if (linkEndpointIdsBuilder_ == null) { + public Builder setServiceIds( + int index, context.ContextOuterClass.ServiceId value) { + if (serviceIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureLinkEndpointIdsIsMutable(); - linkEndpointIds_.set(index, value); + ensureServiceIdsIsMutable(); + serviceIds_.set(index, value); onChanged(); } else { - linkEndpointIdsBuilder_.setMessage(index, value); + serviceIdsBuilder_.setMessage(index, value); } return this; } /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public Builder setLinkEndpointIds( - int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (linkEndpointIdsBuilder_ == null) { - ensureLinkEndpointIdsIsMutable(); - linkEndpointIds_.set(index, builderForValue.build()); + public Builder setServiceIds( + int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { + if (serviceIdsBuilder_ == null) { + ensureServiceIdsIsMutable(); + serviceIds_.set(index, builderForValue.build()); onChanged(); } else { - linkEndpointIdsBuilder_.setMessage(index, builderForValue.build()); + serviceIdsBuilder_.setMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public Builder addLinkEndpointIds(context.ContextOuterClass.EndPointId value) { - if (linkEndpointIdsBuilder_ == null) { + public Builder addServiceIds(context.ContextOuterClass.ServiceId value) { + if (serviceIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureLinkEndpointIdsIsMutable(); - linkEndpointIds_.add(value); + ensureServiceIdsIsMutable(); + serviceIds_.add(value); onChanged(); } else { - linkEndpointIdsBuilder_.addMessage(value); + serviceIdsBuilder_.addMessage(value); } return this; } /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public Builder addLinkEndpointIds( - int index, context.ContextOuterClass.EndPointId value) { - if (linkEndpointIdsBuilder_ == null) { + public Builder addServiceIds( + int index, context.ContextOuterClass.ServiceId value) { + if (serviceIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureLinkEndpointIdsIsMutable(); - linkEndpointIds_.add(index, value); + ensureServiceIdsIsMutable(); + serviceIds_.add(index, value); onChanged(); } else { - linkEndpointIdsBuilder_.addMessage(index, value); + serviceIdsBuilder_.addMessage(index, value); } return this; } /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public Builder addLinkEndpointIds( - context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (linkEndpointIdsBuilder_ == null) { - ensureLinkEndpointIdsIsMutable(); - linkEndpointIds_.add(builderForValue.build()); + public Builder addServiceIds( + context.ContextOuterClass.ServiceId.Builder builderForValue) { + if (serviceIdsBuilder_ == null) { + ensureServiceIdsIsMutable(); + serviceIds_.add(builderForValue.build()); onChanged(); } else { - linkEndpointIdsBuilder_.addMessage(builderForValue.build()); + serviceIdsBuilder_.addMessage(builderForValue.build()); } return this; } /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public Builder addLinkEndpointIds( - int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (linkEndpointIdsBuilder_ == null) { - ensureLinkEndpointIdsIsMutable(); - linkEndpointIds_.add(index, builderForValue.build()); + public Builder addServiceIds( + int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { + if (serviceIdsBuilder_ == null) { + ensureServiceIdsIsMutable(); + serviceIds_.add(index, builderForValue.build()); onChanged(); } else { - linkEndpointIdsBuilder_.addMessage(index, builderForValue.build()); + serviceIdsBuilder_.addMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public Builder addAllLinkEndpointIds( - java.lang.Iterable<? extends context.ContextOuterClass.EndPointId> values) { - if (linkEndpointIdsBuilder_ == null) { - ensureLinkEndpointIdsIsMutable(); + public Builder addAllServiceIds( + java.lang.Iterable<? extends context.ContextOuterClass.ServiceId> values) { + if (serviceIdsBuilder_ == null) { + ensureServiceIdsIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, linkEndpointIds_); + values, serviceIds_); onChanged(); } else { - linkEndpointIdsBuilder_.addAllMessages(values); + serviceIdsBuilder_.addAllMessages(values); } return this; } /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public Builder clearLinkEndpointIds() { - if (linkEndpointIdsBuilder_ == null) { - linkEndpointIds_ = java.util.Collections.emptyList(); + public Builder clearServiceIds() { + if (serviceIdsBuilder_ == null) { + serviceIds_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { - linkEndpointIdsBuilder_.clear(); + serviceIdsBuilder_.clear(); } return this; } /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public Builder removeLinkEndpointIds(int index) { - if (linkEndpointIdsBuilder_ == null) { - ensureLinkEndpointIdsIsMutable(); - linkEndpointIds_.remove(index); + public Builder removeServiceIds(int index) { + if (serviceIdsBuilder_ == null) { + ensureServiceIdsIsMutable(); + serviceIds_.remove(index); onChanged(); } else { - linkEndpointIdsBuilder_.remove(index); + serviceIdsBuilder_.remove(index); } return this; } /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public context.ContextOuterClass.EndPointId.Builder getLinkEndpointIdsBuilder( + public context.ContextOuterClass.ServiceId.Builder getServiceIdsBuilder( int index) { - return getLinkEndpointIdsFieldBuilder().getBuilder(index); + return getServiceIdsFieldBuilder().getBuilder(index); } /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public context.ContextOuterClass.EndPointIdOrBuilder getLinkEndpointIdsOrBuilder( + public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdsOrBuilder( int index) { - if (linkEndpointIdsBuilder_ == null) { - return linkEndpointIds_.get(index); } else { - return linkEndpointIdsBuilder_.getMessageOrBuilder(index); + if (serviceIdsBuilder_ == null) { + return serviceIds_.get(index); } else { + return serviceIdsBuilder_.getMessageOrBuilder(index); } } /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> - getLinkEndpointIdsOrBuilderList() { - if (linkEndpointIdsBuilder_ != null) { - return linkEndpointIdsBuilder_.getMessageOrBuilderList(); + public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> + getServiceIdsOrBuilderList() { + if (serviceIdsBuilder_ != null) { + return serviceIdsBuilder_.getMessageOrBuilderList(); } else { - return java.util.Collections.unmodifiableList(linkEndpointIds_); + return java.util.Collections.unmodifiableList(serviceIds_); } } /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public context.ContextOuterClass.EndPointId.Builder addLinkEndpointIdsBuilder() { - return getLinkEndpointIdsFieldBuilder().addBuilder( - context.ContextOuterClass.EndPointId.getDefaultInstance()); + public context.ContextOuterClass.ServiceId.Builder addServiceIdsBuilder() { + return getServiceIdsFieldBuilder().addBuilder( + context.ContextOuterClass.ServiceId.getDefaultInstance()); } /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public context.ContextOuterClass.EndPointId.Builder addLinkEndpointIdsBuilder( + public context.ContextOuterClass.ServiceId.Builder addServiceIdsBuilder( int index) { - return getLinkEndpointIdsFieldBuilder().addBuilder( - index, context.ContextOuterClass.EndPointId.getDefaultInstance()); + return getServiceIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.ServiceId.getDefaultInstance()); } /** - * <code>repeated .context.EndPointId link_endpoint_ids = 2;</code> + * <code>repeated .context.ServiceId service_ids = 1;</code> */ - public java.util.List<context.ContextOuterClass.EndPointId.Builder> - getLinkEndpointIdsBuilderList() { - return getLinkEndpointIdsFieldBuilder().getBuilderList(); + public java.util.List<context.ContextOuterClass.ServiceId.Builder> + getServiceIdsBuilderList() { + return getServiceIdsFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> - getLinkEndpointIdsFieldBuilder() { - if (linkEndpointIdsBuilder_ == null) { - linkEndpointIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( - linkEndpointIds_, + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> + getServiceIdsFieldBuilder() { + if (serviceIdsBuilder_ == null) { + serviceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder>( + serviceIds_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); - linkEndpointIds_ = null; + serviceIds_ = null; } - return linkEndpointIdsBuilder_; + return serviceIdsBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -19928,95 +32363,95 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.Link) + // @@protoc_insertion_point(builder_scope:context.ServiceIdList) } - // @@protoc_insertion_point(class_scope:context.Link) - private static final context.ContextOuterClass.Link DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ServiceIdList) + private static final context.ContextOuterClass.ServiceIdList DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Link(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceIdList(); } - public static context.ContextOuterClass.Link getDefaultInstance() { + public static context.ContextOuterClass.ServiceIdList getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<Link> - PARSER = new com.google.protobuf.AbstractParser<Link>() { + private static final com.google.protobuf.Parser<ServiceIdList> + PARSER = new com.google.protobuf.AbstractParser<ServiceIdList>() { @java.lang.Override - public Link parsePartialFrom( + public ServiceIdList parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new Link(input, extensionRegistry); + return new ServiceIdList(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<Link> parser() { + public static com.google.protobuf.Parser<ServiceIdList> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<Link> getParserForType() { + public com.google.protobuf.Parser<ServiceIdList> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.Link getDefaultInstanceForType() { + public context.ContextOuterClass.ServiceIdList getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface LinkIdListOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.LinkIdList) + public interface ServiceListOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ServiceList) com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - java.util.List<context.ContextOuterClass.LinkId> - getLinkIdsList(); + java.util.List<context.ContextOuterClass.Service> + getServicesList(); /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - context.ContextOuterClass.LinkId getLinkIds(int index); + context.ContextOuterClass.Service getServices(int index); /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - int getLinkIdsCount(); + int getServicesCount(); /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> - getLinkIdsOrBuilderList(); + java.util.List<? extends context.ContextOuterClass.ServiceOrBuilder> + getServicesOrBuilderList(); /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder( + context.ContextOuterClass.ServiceOrBuilder getServicesOrBuilder( int index); } /** - * Protobuf type {@code context.LinkIdList} + * Protobuf type {@code context.ServiceList} */ - public static final class LinkIdList extends + public static final class ServiceList extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.LinkIdList) - LinkIdListOrBuilder { + // @@protoc_insertion_point(message_implements:context.ServiceList) + ServiceListOrBuilder { private static final long serialVersionUID = 0L; - // Use LinkIdList.newBuilder() to construct. - private LinkIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ServiceList.newBuilder() to construct. + private ServiceList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private LinkIdList() { - linkIds_ = java.util.Collections.emptyList(); + private ServiceList() { + services_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new LinkIdList(); + return new ServiceList(); } @java.lang.Override @@ -20024,7 +32459,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private LinkIdList( + private ServiceList( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -20045,11 +32480,11 @@ public final class ContextOuterClass { break; case 10: { if (!((mutable_bitField0_ & 0x00000001) != 0)) { - linkIds_ = new java.util.ArrayList<context.ContextOuterClass.LinkId>(); + services_ = new java.util.ArrayList<context.ContextOuterClass.Service>(); mutable_bitField0_ |= 0x00000001; } - linkIds_.add( - input.readMessage(context.ContextOuterClass.LinkId.parser(), extensionRegistry)); + services_.add( + input.readMessage(context.ContextOuterClass.Service.parser(), extensionRegistry)); break; } default: { @@ -20068,7 +32503,7 @@ public final class ContextOuterClass { e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { - linkIds_ = java.util.Collections.unmodifiableList(linkIds_); + services_ = java.util.Collections.unmodifiableList(services_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); @@ -20076,55 +32511,55 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_LinkIdList_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_LinkIdList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ServiceList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.LinkIdList.class, context.ContextOuterClass.LinkIdList.Builder.class); + context.ContextOuterClass.ServiceList.class, context.ContextOuterClass.ServiceList.Builder.class); } - public static final int LINK_IDS_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.LinkId> linkIds_; + public static final int SERVICES_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.Service> services_; /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ @java.lang.Override - public java.util.List<context.ContextOuterClass.LinkId> getLinkIdsList() { - return linkIds_; + public java.util.List<context.ContextOuterClass.Service> getServicesList() { + return services_; } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> - getLinkIdsOrBuilderList() { - return linkIds_; + public java.util.List<? extends context.ContextOuterClass.ServiceOrBuilder> + getServicesOrBuilderList() { + return services_; } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ @java.lang.Override - public int getLinkIdsCount() { - return linkIds_.size(); + public int getServicesCount() { + return services_.size(); } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.LinkId getLinkIds(int index) { - return linkIds_.get(index); + public context.ContextOuterClass.Service getServices(int index) { + return services_.get(index); } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder( + public context.ContextOuterClass.ServiceOrBuilder getServicesOrBuilder( int index) { - return linkIds_.get(index); + return services_.get(index); } private byte memoizedIsInitialized = -1; @@ -20141,8 +32576,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < linkIds_.size(); i++) { - output.writeMessage(1, linkIds_.get(i)); + for (int i = 0; i < services_.size(); i++) { + output.writeMessage(1, services_.get(i)); } unknownFields.writeTo(output); } @@ -20153,9 +32588,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < linkIds_.size(); i++) { + for (int i = 0; i < services_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, linkIds_.get(i)); + .computeMessageSize(1, services_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -20167,13 +32602,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.LinkIdList)) { + if (!(obj instanceof context.ContextOuterClass.ServiceList)) { return super.equals(obj); } - context.ContextOuterClass.LinkIdList other = (context.ContextOuterClass.LinkIdList) obj; + context.ContextOuterClass.ServiceList other = (context.ContextOuterClass.ServiceList) obj; - if (!getLinkIdsList() - .equals(other.getLinkIdsList())) return false; + if (!getServicesList() + .equals(other.getServicesList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -20185,78 +32620,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getLinkIdsCount() > 0) { - hash = (37 * hash) + LINK_IDS_FIELD_NUMBER; - hash = (53 * hash) + getLinkIdsList().hashCode(); + if (getServicesCount() > 0) { + hash = (37 * hash) + SERVICES_FIELD_NUMBER; + hash = (53 * hash) + getServicesList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.LinkIdList parseFrom( + public static context.ContextOuterClass.ServiceList parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.LinkIdList parseFrom( + public static context.ContextOuterClass.ServiceList parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.LinkIdList parseFrom( + public static context.ContextOuterClass.ServiceList parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.LinkIdList parseFrom( + public static context.ContextOuterClass.ServiceList parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.LinkIdList parseFrom(byte[] data) + public static context.ContextOuterClass.ServiceList parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.LinkIdList parseFrom( + public static context.ContextOuterClass.ServiceList parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.LinkIdList parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ServiceList parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.LinkIdList parseFrom( + public static context.ContextOuterClass.ServiceList 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 context.ContextOuterClass.LinkIdList parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ServiceList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.LinkIdList parseDelimitedFrom( + public static context.ContextOuterClass.ServiceList 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 context.ContextOuterClass.LinkIdList parseFrom( + public static context.ContextOuterClass.ServiceList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.LinkIdList parseFrom( + public static context.ContextOuterClass.ServiceList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -20269,7 +32704,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.LinkIdList prototype) { + public static Builder newBuilder(context.ContextOuterClass.ServiceList prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -20285,26 +32720,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.LinkIdList} + * Protobuf type {@code context.ServiceList} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.LinkIdList) - context.ContextOuterClass.LinkIdListOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ServiceList) + context.ContextOuterClass.ServiceListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_LinkIdList_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_LinkIdList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ServiceList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.LinkIdList.class, context.ContextOuterClass.LinkIdList.Builder.class); + context.ContextOuterClass.ServiceList.class, context.ContextOuterClass.ServiceList.Builder.class); } - // Construct using context.ContextOuterClass.LinkIdList.newBuilder() + // Construct using context.ContextOuterClass.ServiceList.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -20317,17 +32752,17 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getLinkIdsFieldBuilder(); + getServicesFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (linkIdsBuilder_ == null) { - linkIds_ = java.util.Collections.emptyList(); + if (servicesBuilder_ == null) { + services_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); } else { - linkIdsBuilder_.clear(); + servicesBuilder_.clear(); } return this; } @@ -20335,17 +32770,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_LinkIdList_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceList_descriptor; } @java.lang.Override - public context.ContextOuterClass.LinkIdList getDefaultInstanceForType() { - return context.ContextOuterClass.LinkIdList.getDefaultInstance(); + public context.ContextOuterClass.ServiceList getDefaultInstanceForType() { + return context.ContextOuterClass.ServiceList.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.LinkIdList build() { - context.ContextOuterClass.LinkIdList result = buildPartial(); + public context.ContextOuterClass.ServiceList build() { + context.ContextOuterClass.ServiceList result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -20353,17 +32788,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.LinkIdList buildPartial() { - context.ContextOuterClass.LinkIdList result = new context.ContextOuterClass.LinkIdList(this); + public context.ContextOuterClass.ServiceList buildPartial() { + context.ContextOuterClass.ServiceList result = new context.ContextOuterClass.ServiceList(this); int from_bitField0_ = bitField0_; - if (linkIdsBuilder_ == null) { + if (servicesBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { - linkIds_ = java.util.Collections.unmodifiableList(linkIds_); + services_ = java.util.Collections.unmodifiableList(services_); bitField0_ = (bitField0_ & ~0x00000001); } - result.linkIds_ = linkIds_; + result.services_ = services_; } else { - result.linkIds_ = linkIdsBuilder_.build(); + result.services_ = servicesBuilder_.build(); } onBuilt(); return result; @@ -20403,39 +32838,39 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.LinkIdList) { - return mergeFrom((context.ContextOuterClass.LinkIdList)other); + if (other instanceof context.ContextOuterClass.ServiceList) { + return mergeFrom((context.ContextOuterClass.ServiceList)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.LinkIdList other) { - if (other == context.ContextOuterClass.LinkIdList.getDefaultInstance()) return this; - if (linkIdsBuilder_ == null) { - if (!other.linkIds_.isEmpty()) { - if (linkIds_.isEmpty()) { - linkIds_ = other.linkIds_; + public Builder mergeFrom(context.ContextOuterClass.ServiceList other) { + if (other == context.ContextOuterClass.ServiceList.getDefaultInstance()) return this; + if (servicesBuilder_ == null) { + if (!other.services_.isEmpty()) { + if (services_.isEmpty()) { + services_ = other.services_; bitField0_ = (bitField0_ & ~0x00000001); } else { - ensureLinkIdsIsMutable(); - linkIds_.addAll(other.linkIds_); + ensureServicesIsMutable(); + services_.addAll(other.services_); } onChanged(); } } else { - if (!other.linkIds_.isEmpty()) { - if (linkIdsBuilder_.isEmpty()) { - linkIdsBuilder_.dispose(); - linkIdsBuilder_ = null; - linkIds_ = other.linkIds_; + if (!other.services_.isEmpty()) { + if (servicesBuilder_.isEmpty()) { + servicesBuilder_.dispose(); + servicesBuilder_ = null; + services_ = other.services_; bitField0_ = (bitField0_ & ~0x00000001); - linkIdsBuilder_ = + servicesBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getLinkIdsFieldBuilder() : null; + getServicesFieldBuilder() : null; } else { - linkIdsBuilder_.addAllMessages(other.linkIds_); + servicesBuilder_.addAllMessages(other.services_); } } } @@ -20454,11 +32889,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.LinkIdList parsedMessage = null; + context.ContextOuterClass.ServiceList parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.LinkIdList) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ServiceList) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -20469,244 +32904,244 @@ public final class ContextOuterClass { } private int bitField0_; - private java.util.List<context.ContextOuterClass.LinkId> linkIds_ = + private java.util.List<context.ContextOuterClass.Service> services_ = java.util.Collections.emptyList(); - private void ensureLinkIdsIsMutable() { + private void ensureServicesIsMutable() { if (!((bitField0_ & 0x00000001) != 0)) { - linkIds_ = new java.util.ArrayList<context.ContextOuterClass.LinkId>(linkIds_); + services_ = new java.util.ArrayList<context.ContextOuterClass.Service>(services_); bitField0_ |= 0x00000001; } } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> linkIdsBuilder_; + context.ContextOuterClass.Service, context.ContextOuterClass.Service.Builder, context.ContextOuterClass.ServiceOrBuilder> servicesBuilder_; /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public java.util.List<context.ContextOuterClass.LinkId> getLinkIdsList() { - if (linkIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(linkIds_); + public java.util.List<context.ContextOuterClass.Service> getServicesList() { + if (servicesBuilder_ == null) { + return java.util.Collections.unmodifiableList(services_); } else { - return linkIdsBuilder_.getMessageList(); + return servicesBuilder_.getMessageList(); } } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public int getLinkIdsCount() { - if (linkIdsBuilder_ == null) { - return linkIds_.size(); + public int getServicesCount() { + if (servicesBuilder_ == null) { + return services_.size(); } else { - return linkIdsBuilder_.getCount(); + return servicesBuilder_.getCount(); } } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public context.ContextOuterClass.LinkId getLinkIds(int index) { - if (linkIdsBuilder_ == null) { - return linkIds_.get(index); + public context.ContextOuterClass.Service getServices(int index) { + if (servicesBuilder_ == null) { + return services_.get(index); } else { - return linkIdsBuilder_.getMessage(index); + return servicesBuilder_.getMessage(index); } } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public Builder setLinkIds( - int index, context.ContextOuterClass.LinkId value) { - if (linkIdsBuilder_ == null) { + public Builder setServices( + int index, context.ContextOuterClass.Service value) { + if (servicesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureLinkIdsIsMutable(); - linkIds_.set(index, value); + ensureServicesIsMutable(); + services_.set(index, value); onChanged(); } else { - linkIdsBuilder_.setMessage(index, value); + servicesBuilder_.setMessage(index, value); } return this; } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public Builder setLinkIds( - int index, context.ContextOuterClass.LinkId.Builder builderForValue) { - if (linkIdsBuilder_ == null) { - ensureLinkIdsIsMutable(); - linkIds_.set(index, builderForValue.build()); + public Builder setServices( + int index, context.ContextOuterClass.Service.Builder builderForValue) { + if (servicesBuilder_ == null) { + ensureServicesIsMutable(); + services_.set(index, builderForValue.build()); onChanged(); } else { - linkIdsBuilder_.setMessage(index, builderForValue.build()); + servicesBuilder_.setMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public Builder addLinkIds(context.ContextOuterClass.LinkId value) { - if (linkIdsBuilder_ == null) { + public Builder addServices(context.ContextOuterClass.Service value) { + if (servicesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureLinkIdsIsMutable(); - linkIds_.add(value); + ensureServicesIsMutable(); + services_.add(value); onChanged(); } else { - linkIdsBuilder_.addMessage(value); + servicesBuilder_.addMessage(value); } return this; } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public Builder addLinkIds( - int index, context.ContextOuterClass.LinkId value) { - if (linkIdsBuilder_ == null) { + public Builder addServices( + int index, context.ContextOuterClass.Service value) { + if (servicesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureLinkIdsIsMutable(); - linkIds_.add(index, value); + ensureServicesIsMutable(); + services_.add(index, value); onChanged(); } else { - linkIdsBuilder_.addMessage(index, value); + servicesBuilder_.addMessage(index, value); } return this; } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public Builder addLinkIds( - context.ContextOuterClass.LinkId.Builder builderForValue) { - if (linkIdsBuilder_ == null) { - ensureLinkIdsIsMutable(); - linkIds_.add(builderForValue.build()); + public Builder addServices( + context.ContextOuterClass.Service.Builder builderForValue) { + if (servicesBuilder_ == null) { + ensureServicesIsMutable(); + services_.add(builderForValue.build()); onChanged(); } else { - linkIdsBuilder_.addMessage(builderForValue.build()); + servicesBuilder_.addMessage(builderForValue.build()); } return this; } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public Builder addLinkIds( - int index, context.ContextOuterClass.LinkId.Builder builderForValue) { - if (linkIdsBuilder_ == null) { - ensureLinkIdsIsMutable(); - linkIds_.add(index, builderForValue.build()); + public Builder addServices( + int index, context.ContextOuterClass.Service.Builder builderForValue) { + if (servicesBuilder_ == null) { + ensureServicesIsMutable(); + services_.add(index, builderForValue.build()); onChanged(); } else { - linkIdsBuilder_.addMessage(index, builderForValue.build()); + servicesBuilder_.addMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public Builder addAllLinkIds( - java.lang.Iterable<? extends context.ContextOuterClass.LinkId> values) { - if (linkIdsBuilder_ == null) { - ensureLinkIdsIsMutable(); + public Builder addAllServices( + java.lang.Iterable<? extends context.ContextOuterClass.Service> values) { + if (servicesBuilder_ == null) { + ensureServicesIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, linkIds_); + values, services_); onChanged(); } else { - linkIdsBuilder_.addAllMessages(values); + servicesBuilder_.addAllMessages(values); } return this; } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public Builder clearLinkIds() { - if (linkIdsBuilder_ == null) { - linkIds_ = java.util.Collections.emptyList(); + public Builder clearServices() { + if (servicesBuilder_ == null) { + services_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { - linkIdsBuilder_.clear(); + servicesBuilder_.clear(); } return this; } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public Builder removeLinkIds(int index) { - if (linkIdsBuilder_ == null) { - ensureLinkIdsIsMutable(); - linkIds_.remove(index); + public Builder removeServices(int index) { + if (servicesBuilder_ == null) { + ensureServicesIsMutable(); + services_.remove(index); onChanged(); } else { - linkIdsBuilder_.remove(index); + servicesBuilder_.remove(index); } return this; } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public context.ContextOuterClass.LinkId.Builder getLinkIdsBuilder( + public context.ContextOuterClass.Service.Builder getServicesBuilder( int index) { - return getLinkIdsFieldBuilder().getBuilder(index); + return getServicesFieldBuilder().getBuilder(index); } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder( + public context.ContextOuterClass.ServiceOrBuilder getServicesOrBuilder( int index) { - if (linkIdsBuilder_ == null) { - return linkIds_.get(index); } else { - return linkIdsBuilder_.getMessageOrBuilder(index); + if (servicesBuilder_ == null) { + return services_.get(index); } else { + return servicesBuilder_.getMessageOrBuilder(index); } } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> - getLinkIdsOrBuilderList() { - if (linkIdsBuilder_ != null) { - return linkIdsBuilder_.getMessageOrBuilderList(); + public java.util.List<? extends context.ContextOuterClass.ServiceOrBuilder> + getServicesOrBuilderList() { + if (servicesBuilder_ != null) { + return servicesBuilder_.getMessageOrBuilderList(); } else { - return java.util.Collections.unmodifiableList(linkIds_); + return java.util.Collections.unmodifiableList(services_); } } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public context.ContextOuterClass.LinkId.Builder addLinkIdsBuilder() { - return getLinkIdsFieldBuilder().addBuilder( - context.ContextOuterClass.LinkId.getDefaultInstance()); + public context.ContextOuterClass.Service.Builder addServicesBuilder() { + return getServicesFieldBuilder().addBuilder( + context.ContextOuterClass.Service.getDefaultInstance()); } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public context.ContextOuterClass.LinkId.Builder addLinkIdsBuilder( + public context.ContextOuterClass.Service.Builder addServicesBuilder( int index) { - return getLinkIdsFieldBuilder().addBuilder( - index, context.ContextOuterClass.LinkId.getDefaultInstance()); + return getServicesFieldBuilder().addBuilder( + index, context.ContextOuterClass.Service.getDefaultInstance()); } /** - * <code>repeated .context.LinkId link_ids = 1;</code> + * <code>repeated .context.Service services = 1;</code> */ - public java.util.List<context.ContextOuterClass.LinkId.Builder> - getLinkIdsBuilderList() { - return getLinkIdsFieldBuilder().getBuilderList(); + public java.util.List<context.ContextOuterClass.Service.Builder> + getServicesBuilderList() { + return getServicesFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> - getLinkIdsFieldBuilder() { - if (linkIdsBuilder_ == null) { - linkIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder>( - linkIds_, + context.ContextOuterClass.Service, context.ContextOuterClass.Service.Builder, context.ContextOuterClass.ServiceOrBuilder> + getServicesFieldBuilder() { + if (servicesBuilder_ == null) { + servicesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Service, context.ContextOuterClass.Service.Builder, context.ContextOuterClass.ServiceOrBuilder>( + services_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); - linkIds_ = null; + services_ = null; } - return linkIdsBuilder_; + return servicesBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -20721,95 +33156,103 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.LinkIdList) + // @@protoc_insertion_point(builder_scope:context.ServiceList) } - // @@protoc_insertion_point(class_scope:context.LinkIdList) - private static final context.ContextOuterClass.LinkIdList DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ServiceList) + private static final context.ContextOuterClass.ServiceList DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.LinkIdList(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceList(); } - public static context.ContextOuterClass.LinkIdList getDefaultInstance() { + public static context.ContextOuterClass.ServiceList getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<LinkIdList> - PARSER = new com.google.protobuf.AbstractParser<LinkIdList>() { + private static final com.google.protobuf.Parser<ServiceList> + PARSER = new com.google.protobuf.AbstractParser<ServiceList>() { @java.lang.Override - public LinkIdList parsePartialFrom( + public ServiceList parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new LinkIdList(input, extensionRegistry); + return new ServiceList(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<LinkIdList> parser() { + public static com.google.protobuf.Parser<ServiceList> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<LinkIdList> getParserForType() { + public com.google.protobuf.Parser<ServiceList> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.LinkIdList getDefaultInstanceForType() { + public context.ContextOuterClass.ServiceList getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface LinkListOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.LinkList) + public interface ServiceFilterOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ServiceFilter) com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .context.Link links = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> + * @return Whether the serviceIds field is set. */ - java.util.List<context.ContextOuterClass.Link> - getLinksList(); + boolean hasServiceIds(); /** - * <code>repeated .context.Link links = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> + * @return The serviceIds. */ - context.ContextOuterClass.Link getLinks(int index); + context.ContextOuterClass.ServiceIdList getServiceIds(); /** - * <code>repeated .context.Link links = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> */ - int getLinksCount(); + context.ContextOuterClass.ServiceIdListOrBuilder getServiceIdsOrBuilder(); + /** - * <code>repeated .context.Link links = 1;</code> + * <code>bool include_endpoint_ids = 2;</code> + * @return The includeEndpointIds. */ - java.util.List<? extends context.ContextOuterClass.LinkOrBuilder> - getLinksOrBuilderList(); + boolean getIncludeEndpointIds(); + /** - * <code>repeated .context.Link links = 1;</code> + * <code>bool include_constraints = 3;</code> + * @return The includeConstraints. */ - context.ContextOuterClass.LinkOrBuilder getLinksOrBuilder( - int index); + boolean getIncludeConstraints(); + + /** + * <code>bool include_config_rules = 4;</code> + * @return The includeConfigRules. + */ + boolean getIncludeConfigRules(); } /** - * Protobuf type {@code context.LinkList} + * Protobuf type {@code context.ServiceFilter} */ - public static final class LinkList extends + public static final class ServiceFilter extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.LinkList) - LinkListOrBuilder { + // @@protoc_insertion_point(message_implements:context.ServiceFilter) + ServiceFilterOrBuilder { private static final long serialVersionUID = 0L; - // Use LinkList.newBuilder() to construct. - private LinkList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ServiceFilter.newBuilder() to construct. + private ServiceFilter(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private LinkList() { - links_ = java.util.Collections.emptyList(); + private ServiceFilter() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new LinkList(); + return new ServiceFilter(); } @java.lang.Override @@ -20817,7 +33260,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private LinkList( + private ServiceFilter( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -20825,7 +33268,6 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } - int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -20837,12 +33279,31 @@ public final class ContextOuterClass { done = true; break; case 10: { - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - links_ = new java.util.ArrayList<context.ContextOuterClass.Link>(); - mutable_bitField0_ |= 0x00000001; + context.ContextOuterClass.ServiceIdList.Builder subBuilder = null; + if (serviceIds_ != null) { + subBuilder = serviceIds_.toBuilder(); } - links_.add( - input.readMessage(context.ContextOuterClass.Link.parser(), extensionRegistry)); + serviceIds_ = input.readMessage(context.ContextOuterClass.ServiceIdList.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(serviceIds_); + serviceIds_ = subBuilder.buildPartial(); + } + + break; + } + case 16: { + + includeEndpointIds_ = input.readBool(); + break; + } + case 24: { + + includeConstraints_ = input.readBool(); + break; + } + case 32: { + + includeConfigRules_ = input.readBool(); break; } default: { @@ -20860,64 +33321,80 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { - if (((mutable_bitField0_ & 0x00000001) != 0)) { - links_ = java.util.Collections.unmodifiableList(links_); - } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_LinkList_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceFilter_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_LinkList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ServiceFilter_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.LinkList.class, context.ContextOuterClass.LinkList.Builder.class); + context.ContextOuterClass.ServiceFilter.class, context.ContextOuterClass.ServiceFilter.Builder.class); } - public static final int LINKS_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.Link> links_; + public static final int SERVICE_IDS_FIELD_NUMBER = 1; + private context.ContextOuterClass.ServiceIdList serviceIds_; /** - * <code>repeated .context.Link links = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> + * @return Whether the serviceIds field is set. */ @java.lang.Override - public java.util.List<context.ContextOuterClass.Link> getLinksList() { - return links_; + public boolean hasServiceIds() { + return serviceIds_ != null; } /** - * <code>repeated .context.Link links = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> + * @return The serviceIds. */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.LinkOrBuilder> - getLinksOrBuilderList() { - return links_; + public context.ContextOuterClass.ServiceIdList getServiceIds() { + return serviceIds_ == null ? context.ContextOuterClass.ServiceIdList.getDefaultInstance() : serviceIds_; } /** - * <code>repeated .context.Link links = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> */ @java.lang.Override - public int getLinksCount() { - return links_.size(); + public context.ContextOuterClass.ServiceIdListOrBuilder getServiceIdsOrBuilder() { + return getServiceIds(); } + + public static final int INCLUDE_ENDPOINT_IDS_FIELD_NUMBER = 2; + private boolean includeEndpointIds_; /** - * <code>repeated .context.Link links = 1;</code> + * <code>bool include_endpoint_ids = 2;</code> + * @return The includeEndpointIds. */ @java.lang.Override - public context.ContextOuterClass.Link getLinks(int index) { - return links_.get(index); + public boolean getIncludeEndpointIds() { + return includeEndpointIds_; } + + public static final int INCLUDE_CONSTRAINTS_FIELD_NUMBER = 3; + private boolean includeConstraints_; /** - * <code>repeated .context.Link links = 1;</code> + * <code>bool include_constraints = 3;</code> + * @return The includeConstraints. */ @java.lang.Override - public context.ContextOuterClass.LinkOrBuilder getLinksOrBuilder( - int index) { - return links_.get(index); + public boolean getIncludeConstraints() { + return includeConstraints_; + } + + public static final int INCLUDE_CONFIG_RULES_FIELD_NUMBER = 4; + private boolean includeConfigRules_; + /** + * <code>bool include_config_rules = 4;</code> + * @return The includeConfigRules. + */ + @java.lang.Override + public boolean getIncludeConfigRules() { + return includeConfigRules_; } private byte memoizedIsInitialized = -1; @@ -20934,8 +33411,17 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < links_.size(); i++) { - output.writeMessage(1, links_.get(i)); + if (serviceIds_ != null) { + output.writeMessage(1, getServiceIds()); + } + if (includeEndpointIds_ != false) { + output.writeBool(2, includeEndpointIds_); + } + if (includeConstraints_ != false) { + output.writeBool(3, includeConstraints_); + } + if (includeConfigRules_ != false) { + output.writeBool(4, includeConfigRules_); } unknownFields.writeTo(output); } @@ -20946,9 +33432,21 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < links_.size(); i++) { + if (serviceIds_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, links_.get(i)); + .computeMessageSize(1, getServiceIds()); + } + if (includeEndpointIds_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(2, includeEndpointIds_); + } + if (includeConstraints_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(3, includeConstraints_); + } + if (includeConfigRules_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(4, includeConfigRules_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -20960,13 +33458,22 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.LinkList)) { + if (!(obj instanceof context.ContextOuterClass.ServiceFilter)) { return super.equals(obj); } - context.ContextOuterClass.LinkList other = (context.ContextOuterClass.LinkList) obj; + context.ContextOuterClass.ServiceFilter other = (context.ContextOuterClass.ServiceFilter) obj; - if (!getLinksList() - .equals(other.getLinksList())) return false; + if (hasServiceIds() != other.hasServiceIds()) return false; + if (hasServiceIds()) { + if (!getServiceIds() + .equals(other.getServiceIds())) return false; + } + if (getIncludeEndpointIds() + != other.getIncludeEndpointIds()) return false; + if (getIncludeConstraints() + != other.getIncludeConstraints()) return false; + if (getIncludeConfigRules() + != other.getIncludeConfigRules()) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -20978,78 +33485,87 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getLinksCount() > 0) { - hash = (37 * hash) + LINKS_FIELD_NUMBER; - hash = (53 * hash) + getLinksList().hashCode(); + if (hasServiceIds()) { + hash = (37 * hash) + SERVICE_IDS_FIELD_NUMBER; + hash = (53 * hash) + getServiceIds().hashCode(); } + hash = (37 * hash) + INCLUDE_ENDPOINT_IDS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getIncludeEndpointIds()); + hash = (37 * hash) + INCLUDE_CONSTRAINTS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getIncludeConstraints()); + hash = (37 * hash) + INCLUDE_CONFIG_RULES_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getIncludeConfigRules()); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.LinkList parseFrom( + public static context.ContextOuterClass.ServiceFilter parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.LinkList parseFrom( + public static context.ContextOuterClass.ServiceFilter parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.LinkList parseFrom( + public static context.ContextOuterClass.ServiceFilter parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.LinkList parseFrom( + public static context.ContextOuterClass.ServiceFilter parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.LinkList parseFrom(byte[] data) + public static context.ContextOuterClass.ServiceFilter parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.LinkList parseFrom( + public static context.ContextOuterClass.ServiceFilter parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.LinkList parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ServiceFilter parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.LinkList parseFrom( + public static context.ContextOuterClass.ServiceFilter 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 context.ContextOuterClass.LinkList parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ServiceFilter parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.LinkList parseDelimitedFrom( + public static context.ContextOuterClass.ServiceFilter 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 context.ContextOuterClass.LinkList parseFrom( + public static context.ContextOuterClass.ServiceFilter parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.LinkList parseFrom( + public static context.ContextOuterClass.ServiceFilter parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -21062,7 +33578,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.LinkList prototype) { + public static Builder newBuilder(context.ContextOuterClass.ServiceFilter prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -21078,26 +33594,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.LinkList} + * Protobuf type {@code context.ServiceFilter} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.LinkList) - context.ContextOuterClass.LinkListOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ServiceFilter) + context.ContextOuterClass.ServiceFilterOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_LinkList_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceFilter_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_LinkList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ServiceFilter_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.LinkList.class, context.ContextOuterClass.LinkList.Builder.class); + context.ContextOuterClass.ServiceFilter.class, context.ContextOuterClass.ServiceFilter.Builder.class); } - // Construct using context.ContextOuterClass.LinkList.newBuilder() + // Construct using context.ContextOuterClass.ServiceFilter.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -21110,35 +33626,40 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getLinksFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (linksBuilder_ == null) { - links_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + if (serviceIdsBuilder_ == null) { + serviceIds_ = null; } else { - linksBuilder_.clear(); + serviceIds_ = null; + serviceIdsBuilder_ = null; } + includeEndpointIds_ = false; + + includeConstraints_ = false; + + includeConfigRules_ = false; + return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_LinkList_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceFilter_descriptor; } @java.lang.Override - public context.ContextOuterClass.LinkList getDefaultInstanceForType() { - return context.ContextOuterClass.LinkList.getDefaultInstance(); + public context.ContextOuterClass.ServiceFilter getDefaultInstanceForType() { + return context.ContextOuterClass.ServiceFilter.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.LinkList build() { - context.ContextOuterClass.LinkList result = buildPartial(); + public context.ContextOuterClass.ServiceFilter build() { + context.ContextOuterClass.ServiceFilter result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -21146,18 +33667,16 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.LinkList buildPartial() { - context.ContextOuterClass.LinkList result = new context.ContextOuterClass.LinkList(this); - int from_bitField0_ = bitField0_; - if (linksBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { - links_ = java.util.Collections.unmodifiableList(links_); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.links_ = links_; + public context.ContextOuterClass.ServiceFilter buildPartial() { + context.ContextOuterClass.ServiceFilter result = new context.ContextOuterClass.ServiceFilter(this); + if (serviceIdsBuilder_ == null) { + result.serviceIds_ = serviceIds_; } else { - result.links_ = linksBuilder_.build(); + result.serviceIds_ = serviceIdsBuilder_.build(); } + result.includeEndpointIds_ = includeEndpointIds_; + result.includeConstraints_ = includeConstraints_; + result.includeConfigRules_ = includeConfigRules_; onBuilt(); return result; } @@ -21196,41 +33715,27 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.LinkList) { - return mergeFrom((context.ContextOuterClass.LinkList)other); + if (other instanceof context.ContextOuterClass.ServiceFilter) { + return mergeFrom((context.ContextOuterClass.ServiceFilter)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.LinkList other) { - if (other == context.ContextOuterClass.LinkList.getDefaultInstance()) return this; - if (linksBuilder_ == null) { - if (!other.links_.isEmpty()) { - if (links_.isEmpty()) { - links_ = other.links_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureLinksIsMutable(); - links_.addAll(other.links_); - } - onChanged(); - } - } else { - if (!other.links_.isEmpty()) { - if (linksBuilder_.isEmpty()) { - linksBuilder_.dispose(); - linksBuilder_ = null; - links_ = other.links_; - bitField0_ = (bitField0_ & ~0x00000001); - linksBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getLinksFieldBuilder() : null; - } else { - linksBuilder_.addAllMessages(other.links_); - } - } + public Builder mergeFrom(context.ContextOuterClass.ServiceFilter other) { + if (other == context.ContextOuterClass.ServiceFilter.getDefaultInstance()) return this; + if (other.hasServiceIds()) { + mergeServiceIds(other.getServiceIds()); + } + if (other.getIncludeEndpointIds() != false) { + setIncludeEndpointIds(other.getIncludeEndpointIds()); + } + if (other.getIncludeConstraints() != false) { + setIncludeConstraints(other.getIncludeConstraints()); + } + if (other.getIncludeConfigRules() != false) { + setIncludeConfigRules(other.getIncludeConfigRules()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -21247,11 +33752,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.LinkList parsedMessage = null; + context.ContextOuterClass.ServiceFilter parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.LinkList) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ServiceFilter) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -21260,246 +33765,217 @@ public final class ContextOuterClass { } return this; } - private int bitField0_; - - private java.util.List<context.ContextOuterClass.Link> links_ = - java.util.Collections.emptyList(); - private void ensureLinksIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - links_ = new java.util.ArrayList<context.ContextOuterClass.Link>(links_); - bitField0_ |= 0x00000001; - } - } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Link, context.ContextOuterClass.Link.Builder, context.ContextOuterClass.LinkOrBuilder> linksBuilder_; - - /** - * <code>repeated .context.Link links = 1;</code> - */ - public java.util.List<context.ContextOuterClass.Link> getLinksList() { - if (linksBuilder_ == null) { - return java.util.Collections.unmodifiableList(links_); - } else { - return linksBuilder_.getMessageList(); - } - } + private context.ContextOuterClass.ServiceIdList serviceIds_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ServiceIdList, context.ContextOuterClass.ServiceIdList.Builder, context.ContextOuterClass.ServiceIdListOrBuilder> serviceIdsBuilder_; /** - * <code>repeated .context.Link links = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> + * @return Whether the serviceIds field is set. */ - public int getLinksCount() { - if (linksBuilder_ == null) { - return links_.size(); - } else { - return linksBuilder_.getCount(); - } + public boolean hasServiceIds() { + return serviceIdsBuilder_ != null || serviceIds_ != null; } /** - * <code>repeated .context.Link links = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> + * @return The serviceIds. */ - public context.ContextOuterClass.Link getLinks(int index) { - if (linksBuilder_ == null) { - return links_.get(index); + public context.ContextOuterClass.ServiceIdList getServiceIds() { + if (serviceIdsBuilder_ == null) { + return serviceIds_ == null ? context.ContextOuterClass.ServiceIdList.getDefaultInstance() : serviceIds_; } else { - return linksBuilder_.getMessage(index); + return serviceIdsBuilder_.getMessage(); } } /** - * <code>repeated .context.Link links = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> */ - public Builder setLinks( - int index, context.ContextOuterClass.Link value) { - if (linksBuilder_ == null) { + public Builder setServiceIds(context.ContextOuterClass.ServiceIdList value) { + if (serviceIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureLinksIsMutable(); - links_.set(index, value); + serviceIds_ = value; onChanged(); } else { - linksBuilder_.setMessage(index, value); + serviceIdsBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.Link links = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> */ - public Builder setLinks( - int index, context.ContextOuterClass.Link.Builder builderForValue) { - if (linksBuilder_ == null) { - ensureLinksIsMutable(); - links_.set(index, builderForValue.build()); + public Builder setServiceIds( + context.ContextOuterClass.ServiceIdList.Builder builderForValue) { + if (serviceIdsBuilder_ == null) { + serviceIds_ = builderForValue.build(); onChanged(); } else { - linksBuilder_.setMessage(index, builderForValue.build()); + serviceIdsBuilder_.setMessage(builderForValue.build()); } + return this; } /** - * <code>repeated .context.Link links = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> */ - public Builder addLinks(context.ContextOuterClass.Link value) { - if (linksBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + public Builder mergeServiceIds(context.ContextOuterClass.ServiceIdList value) { + if (serviceIdsBuilder_ == null) { + if (serviceIds_ != null) { + serviceIds_ = + context.ContextOuterClass.ServiceIdList.newBuilder(serviceIds_).mergeFrom(value).buildPartial(); + } else { + serviceIds_ = value; } - ensureLinksIsMutable(); - links_.add(value); onChanged(); } else { - linksBuilder_.addMessage(value); + serviceIdsBuilder_.mergeFrom(value); } + return this; } /** - * <code>repeated .context.Link links = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> */ - public Builder addLinks( - int index, context.ContextOuterClass.Link value) { - if (linksBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureLinksIsMutable(); - links_.add(index, value); + public Builder clearServiceIds() { + if (serviceIdsBuilder_ == null) { + serviceIds_ = null; onChanged(); } else { - linksBuilder_.addMessage(index, value); + serviceIds_ = null; + serviceIdsBuilder_ = null; } + return this; } /** - * <code>repeated .context.Link links = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> */ - public Builder addLinks( - context.ContextOuterClass.Link.Builder builderForValue) { - if (linksBuilder_ == null) { - ensureLinksIsMutable(); - links_.add(builderForValue.build()); - onChanged(); - } else { - linksBuilder_.addMessage(builderForValue.build()); - } - return this; + public context.ContextOuterClass.ServiceIdList.Builder getServiceIdsBuilder() { + + onChanged(); + return getServiceIdsFieldBuilder().getBuilder(); } /** - * <code>repeated .context.Link links = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> */ - public Builder addLinks( - int index, context.ContextOuterClass.Link.Builder builderForValue) { - if (linksBuilder_ == null) { - ensureLinksIsMutable(); - links_.add(index, builderForValue.build()); - onChanged(); + public context.ContextOuterClass.ServiceIdListOrBuilder getServiceIdsOrBuilder() { + if (serviceIdsBuilder_ != null) { + return serviceIdsBuilder_.getMessageOrBuilder(); } else { - linksBuilder_.addMessage(index, builderForValue.build()); + return serviceIds_ == null ? + context.ContextOuterClass.ServiceIdList.getDefaultInstance() : serviceIds_; } - return this; } /** - * <code>repeated .context.Link links = 1;</code> + * <code>.context.ServiceIdList service_ids = 1;</code> */ - public Builder addAllLinks( - java.lang.Iterable<? extends context.ContextOuterClass.Link> values) { - if (linksBuilder_ == null) { - ensureLinksIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, links_); - onChanged(); - } else { - linksBuilder_.addAllMessages(values); + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ServiceIdList, context.ContextOuterClass.ServiceIdList.Builder, context.ContextOuterClass.ServiceIdListOrBuilder> + getServiceIdsFieldBuilder() { + if (serviceIdsBuilder_ == null) { + serviceIdsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ServiceIdList, context.ContextOuterClass.ServiceIdList.Builder, context.ContextOuterClass.ServiceIdListOrBuilder>( + getServiceIds(), + getParentForChildren(), + isClean()); + serviceIds_ = null; } - return this; + return serviceIdsBuilder_; } + + private boolean includeEndpointIds_ ; /** - * <code>repeated .context.Link links = 1;</code> + * <code>bool include_endpoint_ids = 2;</code> + * @return The includeEndpointIds. */ - public Builder clearLinks() { - if (linksBuilder_ == null) { - links_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - } else { - linksBuilder_.clear(); - } - return this; + @java.lang.Override + public boolean getIncludeEndpointIds() { + return includeEndpointIds_; } /** - * <code>repeated .context.Link links = 1;</code> + * <code>bool include_endpoint_ids = 2;</code> + * @param value The includeEndpointIds to set. + * @return This builder for chaining. */ - public Builder removeLinks(int index) { - if (linksBuilder_ == null) { - ensureLinksIsMutable(); - links_.remove(index); - onChanged(); - } else { - linksBuilder_.remove(index); - } + public Builder setIncludeEndpointIds(boolean value) { + + includeEndpointIds_ = value; + onChanged(); return this; } /** - * <code>repeated .context.Link links = 1;</code> + * <code>bool include_endpoint_ids = 2;</code> + * @return This builder for chaining. */ - public context.ContextOuterClass.Link.Builder getLinksBuilder( - int index) { - return getLinksFieldBuilder().getBuilder(index); + public Builder clearIncludeEndpointIds() { + + includeEndpointIds_ = false; + onChanged(); + return this; } + + private boolean includeConstraints_ ; /** - * <code>repeated .context.Link links = 1;</code> + * <code>bool include_constraints = 3;</code> + * @return The includeConstraints. */ - public context.ContextOuterClass.LinkOrBuilder getLinksOrBuilder( - int index) { - if (linksBuilder_ == null) { - return links_.get(index); } else { - return linksBuilder_.getMessageOrBuilder(index); - } + @java.lang.Override + public boolean getIncludeConstraints() { + return includeConstraints_; } /** - * <code>repeated .context.Link links = 1;</code> + * <code>bool include_constraints = 3;</code> + * @param value The includeConstraints to set. + * @return This builder for chaining. */ - public java.util.List<? extends context.ContextOuterClass.LinkOrBuilder> - getLinksOrBuilderList() { - if (linksBuilder_ != null) { - return linksBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(links_); - } + public Builder setIncludeConstraints(boolean value) { + + includeConstraints_ = value; + onChanged(); + return this; } /** - * <code>repeated .context.Link links = 1;</code> + * <code>bool include_constraints = 3;</code> + * @return This builder for chaining. */ - public context.ContextOuterClass.Link.Builder addLinksBuilder() { - return getLinksFieldBuilder().addBuilder( - context.ContextOuterClass.Link.getDefaultInstance()); + public Builder clearIncludeConstraints() { + + includeConstraints_ = false; + onChanged(); + return this; } + + private boolean includeConfigRules_ ; /** - * <code>repeated .context.Link links = 1;</code> + * <code>bool include_config_rules = 4;</code> + * @return The includeConfigRules. */ - public context.ContextOuterClass.Link.Builder addLinksBuilder( - int index) { - return getLinksFieldBuilder().addBuilder( - index, context.ContextOuterClass.Link.getDefaultInstance()); + @java.lang.Override + public boolean getIncludeConfigRules() { + return includeConfigRules_; } /** - * <code>repeated .context.Link links = 1;</code> + * <code>bool include_config_rules = 4;</code> + * @param value The includeConfigRules to set. + * @return This builder for chaining. */ - public java.util.List<context.ContextOuterClass.Link.Builder> - getLinksBuilderList() { - return getLinksFieldBuilder().getBuilderList(); + public Builder setIncludeConfigRules(boolean value) { + + includeConfigRules_ = value; + onChanged(); + return this; } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Link, context.ContextOuterClass.Link.Builder, context.ContextOuterClass.LinkOrBuilder> - getLinksFieldBuilder() { - if (linksBuilder_ == null) { - linksBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Link, context.ContextOuterClass.Link.Builder, context.ContextOuterClass.LinkOrBuilder>( - links_, - ((bitField0_ & 0x00000001) != 0), - getParentForChildren(), - isClean()); - links_ = null; - } - return linksBuilder_; + /** + * <code>bool include_config_rules = 4;</code> + * @return This builder for chaining. + */ + public Builder clearIncludeConfigRules() { + + includeConfigRules_ = false; + onChanged(); + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -21514,48 +33990,48 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.LinkList) + // @@protoc_insertion_point(builder_scope:context.ServiceFilter) } - // @@protoc_insertion_point(class_scope:context.LinkList) - private static final context.ContextOuterClass.LinkList DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ServiceFilter) + private static final context.ContextOuterClass.ServiceFilter DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.LinkList(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceFilter(); } - public static context.ContextOuterClass.LinkList getDefaultInstance() { + public static context.ContextOuterClass.ServiceFilter getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<LinkList> - PARSER = new com.google.protobuf.AbstractParser<LinkList>() { + private static final com.google.protobuf.Parser<ServiceFilter> + PARSER = new com.google.protobuf.AbstractParser<ServiceFilter>() { @java.lang.Override - public LinkList parsePartialFrom( + public ServiceFilter parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new LinkList(input, extensionRegistry); + return new ServiceFilter(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<LinkList> parser() { + public static com.google.protobuf.Parser<ServiceFilter> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<LinkList> getParserForType() { + public com.google.protobuf.Parser<ServiceFilter> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.LinkList getDefaultInstanceForType() { + public context.ContextOuterClass.ServiceFilter getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface LinkEventOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.LinkEvent) + public interface ServiceEventOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ServiceEvent) com.google.protobuf.MessageOrBuilder { /** @@ -21574,40 +34050,40 @@ public final class ContextOuterClass { context.ContextOuterClass.EventOrBuilder getEventOrBuilder(); /** - * <code>.context.LinkId link_id = 2;</code> - * @return Whether the linkId field is set. + * <code>.context.ServiceId service_id = 2;</code> + * @return Whether the serviceId field is set. */ - boolean hasLinkId(); + boolean hasServiceId(); /** - * <code>.context.LinkId link_id = 2;</code> - * @return The linkId. + * <code>.context.ServiceId service_id = 2;</code> + * @return The serviceId. */ - context.ContextOuterClass.LinkId getLinkId(); + context.ContextOuterClass.ServiceId getServiceId(); /** - * <code>.context.LinkId link_id = 2;</code> + * <code>.context.ServiceId service_id = 2;</code> */ - context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder(); + context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder(); } /** - * Protobuf type {@code context.LinkEvent} + * Protobuf type {@code context.ServiceEvent} */ - public static final class LinkEvent extends + public static final class ServiceEvent extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.LinkEvent) - LinkEventOrBuilder { + // @@protoc_insertion_point(message_implements:context.ServiceEvent) + ServiceEventOrBuilder { private static final long serialVersionUID = 0L; - // Use LinkEvent.newBuilder() to construct. - private LinkEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ServiceEvent.newBuilder() to construct. + private ServiceEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private LinkEvent() { + private ServiceEvent() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new LinkEvent(); + return new ServiceEvent(); } @java.lang.Override @@ -21615,7 +34091,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private LinkEvent( + private ServiceEvent( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -21647,14 +34123,14 @@ public final class ContextOuterClass { break; } case 18: { - context.ContextOuterClass.LinkId.Builder subBuilder = null; - if (linkId_ != null) { - subBuilder = linkId_.toBuilder(); + context.ContextOuterClass.ServiceId.Builder subBuilder = null; + if (serviceId_ != null) { + subBuilder = serviceId_.toBuilder(); } - linkId_ = input.readMessage(context.ContextOuterClass.LinkId.parser(), extensionRegistry); + serviceId_ = input.readMessage(context.ContextOuterClass.ServiceId.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(linkId_); - linkId_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(serviceId_); + serviceId_ = subBuilder.buildPartial(); } break; @@ -21680,15 +34156,15 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_LinkEvent_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceEvent_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_LinkEvent_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ServiceEvent_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.LinkEvent.class, context.ContextOuterClass.LinkEvent.Builder.class); + context.ContextOuterClass.ServiceEvent.class, context.ContextOuterClass.ServiceEvent.Builder.class); } public static final int EVENT_FIELD_NUMBER = 1; @@ -21717,30 +34193,30 @@ public final class ContextOuterClass { return getEvent(); } - public static final int LINK_ID_FIELD_NUMBER = 2; - private context.ContextOuterClass.LinkId linkId_; + public static final int SERVICE_ID_FIELD_NUMBER = 2; + private context.ContextOuterClass.ServiceId serviceId_; /** - * <code>.context.LinkId link_id = 2;</code> - * @return Whether the linkId field is set. + * <code>.context.ServiceId service_id = 2;</code> + * @return Whether the serviceId field is set. */ @java.lang.Override - public boolean hasLinkId() { - return linkId_ != null; + public boolean hasServiceId() { + return serviceId_ != null; } /** - * <code>.context.LinkId link_id = 2;</code> - * @return The linkId. + * <code>.context.ServiceId service_id = 2;</code> + * @return The serviceId. */ @java.lang.Override - public context.ContextOuterClass.LinkId getLinkId() { - return linkId_ == null ? context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_; + public context.ContextOuterClass.ServiceId getServiceId() { + return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; } /** - * <code>.context.LinkId link_id = 2;</code> + * <code>.context.ServiceId service_id = 2;</code> */ @java.lang.Override - public context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder() { - return getLinkId(); + public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() { + return getServiceId(); } private byte memoizedIsInitialized = -1; @@ -21760,8 +34236,8 @@ public final class ContextOuterClass { if (event_ != null) { output.writeMessage(1, getEvent()); } - if (linkId_ != null) { - output.writeMessage(2, getLinkId()); + if (serviceId_ != null) { + output.writeMessage(2, getServiceId()); } unknownFields.writeTo(output); } @@ -21776,9 +34252,9 @@ public final class ContextOuterClass { size += com.google.protobuf.CodedOutputStream .computeMessageSize(1, getEvent()); } - if (linkId_ != null) { + if (serviceId_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, getLinkId()); + .computeMessageSize(2, getServiceId()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -21790,20 +34266,20 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.LinkEvent)) { + if (!(obj instanceof context.ContextOuterClass.ServiceEvent)) { return super.equals(obj); } - context.ContextOuterClass.LinkEvent other = (context.ContextOuterClass.LinkEvent) obj; + context.ContextOuterClass.ServiceEvent other = (context.ContextOuterClass.ServiceEvent) obj; if (hasEvent() != other.hasEvent()) return false; if (hasEvent()) { if (!getEvent() .equals(other.getEvent())) return false; } - if (hasLinkId() != other.hasLinkId()) return false; - if (hasLinkId()) { - if (!getLinkId() - .equals(other.getLinkId())) return false; + if (hasServiceId() != other.hasServiceId()) return false; + if (hasServiceId()) { + if (!getServiceId() + .equals(other.getServiceId())) return false; } if (!unknownFields.equals(other.unknownFields)) return false; return true; @@ -21820,78 +34296,78 @@ public final class ContextOuterClass { hash = (37 * hash) + EVENT_FIELD_NUMBER; hash = (53 * hash) + getEvent().hashCode(); } - if (hasLinkId()) { - hash = (37 * hash) + LINK_ID_FIELD_NUMBER; - hash = (53 * hash) + getLinkId().hashCode(); + if (hasServiceId()) { + hash = (37 * hash) + SERVICE_ID_FIELD_NUMBER; + hash = (53 * hash) + getServiceId().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.LinkEvent parseFrom( + public static context.ContextOuterClass.ServiceEvent parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.LinkEvent parseFrom( + public static context.ContextOuterClass.ServiceEvent parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.LinkEvent parseFrom( + public static context.ContextOuterClass.ServiceEvent parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.LinkEvent parseFrom( + public static context.ContextOuterClass.ServiceEvent parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.LinkEvent parseFrom(byte[] data) + public static context.ContextOuterClass.ServiceEvent parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.LinkEvent parseFrom( + public static context.ContextOuterClass.ServiceEvent parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.LinkEvent parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ServiceEvent parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.LinkEvent parseFrom( + public static context.ContextOuterClass.ServiceEvent 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 context.ContextOuterClass.LinkEvent parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ServiceEvent parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.LinkEvent parseDelimitedFrom( + public static context.ContextOuterClass.ServiceEvent 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 context.ContextOuterClass.LinkEvent parseFrom( + public static context.ContextOuterClass.ServiceEvent parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.LinkEvent parseFrom( + public static context.ContextOuterClass.ServiceEvent parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -21904,7 +34380,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.LinkEvent prototype) { + public static Builder newBuilder(context.ContextOuterClass.ServiceEvent prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -21920,26 +34396,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.LinkEvent} + * Protobuf type {@code context.ServiceEvent} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.LinkEvent) - context.ContextOuterClass.LinkEventOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ServiceEvent) + context.ContextOuterClass.ServiceEventOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_LinkEvent_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceEvent_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_LinkEvent_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ServiceEvent_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.LinkEvent.class, context.ContextOuterClass.LinkEvent.Builder.class); + context.ContextOuterClass.ServiceEvent.class, context.ContextOuterClass.ServiceEvent.Builder.class); } - // Construct using context.ContextOuterClass.LinkEvent.newBuilder() + // Construct using context.ContextOuterClass.ServiceEvent.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -21963,11 +34439,11 @@ public final class ContextOuterClass { event_ = null; eventBuilder_ = null; } - if (linkIdBuilder_ == null) { - linkId_ = null; + if (serviceIdBuilder_ == null) { + serviceId_ = null; } else { - linkId_ = null; - linkIdBuilder_ = null; + serviceId_ = null; + serviceIdBuilder_ = null; } return this; } @@ -21975,17 +34451,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_LinkEvent_descriptor; + return context.ContextOuterClass.internal_static_context_ServiceEvent_descriptor; } @java.lang.Override - public context.ContextOuterClass.LinkEvent getDefaultInstanceForType() { - return context.ContextOuterClass.LinkEvent.getDefaultInstance(); + public context.ContextOuterClass.ServiceEvent getDefaultInstanceForType() { + return context.ContextOuterClass.ServiceEvent.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.LinkEvent build() { - context.ContextOuterClass.LinkEvent result = buildPartial(); + public context.ContextOuterClass.ServiceEvent build() { + context.ContextOuterClass.ServiceEvent result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -21993,17 +34469,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.LinkEvent buildPartial() { - context.ContextOuterClass.LinkEvent result = new context.ContextOuterClass.LinkEvent(this); + public context.ContextOuterClass.ServiceEvent buildPartial() { + context.ContextOuterClass.ServiceEvent result = new context.ContextOuterClass.ServiceEvent(this); if (eventBuilder_ == null) { result.event_ = event_; } else { result.event_ = eventBuilder_.build(); } - if (linkIdBuilder_ == null) { - result.linkId_ = linkId_; + if (serviceIdBuilder_ == null) { + result.serviceId_ = serviceId_; } else { - result.linkId_ = linkIdBuilder_.build(); + result.serviceId_ = serviceIdBuilder_.build(); } onBuilt(); return result; @@ -22043,21 +34519,21 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.LinkEvent) { - return mergeFrom((context.ContextOuterClass.LinkEvent)other); + if (other instanceof context.ContextOuterClass.ServiceEvent) { + return mergeFrom((context.ContextOuterClass.ServiceEvent)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.LinkEvent other) { - if (other == context.ContextOuterClass.LinkEvent.getDefaultInstance()) return this; + public Builder mergeFrom(context.ContextOuterClass.ServiceEvent other) { + if (other == context.ContextOuterClass.ServiceEvent.getDefaultInstance()) return this; if (other.hasEvent()) { mergeEvent(other.getEvent()); } - if (other.hasLinkId()) { - mergeLinkId(other.getLinkId()); + if (other.hasServiceId()) { + mergeServiceId(other.getServiceId()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -22074,11 +34550,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.LinkEvent parsedMessage = null; + context.ContextOuterClass.ServiceEvent parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.LinkEvent) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ServiceEvent) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -22207,123 +34683,123 @@ public final class ContextOuterClass { return eventBuilder_; } - private context.ContextOuterClass.LinkId linkId_; + private context.ContextOuterClass.ServiceId serviceId_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> linkIdBuilder_; + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> serviceIdBuilder_; /** - * <code>.context.LinkId link_id = 2;</code> - * @return Whether the linkId field is set. + * <code>.context.ServiceId service_id = 2;</code> + * @return Whether the serviceId field is set. */ - public boolean hasLinkId() { - return linkIdBuilder_ != null || linkId_ != null; + public boolean hasServiceId() { + return serviceIdBuilder_ != null || serviceId_ != null; } /** - * <code>.context.LinkId link_id = 2;</code> - * @return The linkId. + * <code>.context.ServiceId service_id = 2;</code> + * @return The serviceId. */ - public context.ContextOuterClass.LinkId getLinkId() { - if (linkIdBuilder_ == null) { - return linkId_ == null ? context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_; + public context.ContextOuterClass.ServiceId getServiceId() { + if (serviceIdBuilder_ == null) { + return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; } else { - return linkIdBuilder_.getMessage(); + return serviceIdBuilder_.getMessage(); } } /** - * <code>.context.LinkId link_id = 2;</code> + * <code>.context.ServiceId service_id = 2;</code> */ - public Builder setLinkId(context.ContextOuterClass.LinkId value) { - if (linkIdBuilder_ == null) { + public Builder setServiceId(context.ContextOuterClass.ServiceId value) { + if (serviceIdBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - linkId_ = value; + serviceId_ = value; onChanged(); } else { - linkIdBuilder_.setMessage(value); + serviceIdBuilder_.setMessage(value); } return this; } /** - * <code>.context.LinkId link_id = 2;</code> + * <code>.context.ServiceId service_id = 2;</code> */ - public Builder setLinkId( - context.ContextOuterClass.LinkId.Builder builderForValue) { - if (linkIdBuilder_ == null) { - linkId_ = builderForValue.build(); + public Builder setServiceId( + context.ContextOuterClass.ServiceId.Builder builderForValue) { + if (serviceIdBuilder_ == null) { + serviceId_ = builderForValue.build(); onChanged(); } else { - linkIdBuilder_.setMessage(builderForValue.build()); + serviceIdBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.LinkId link_id = 2;</code> + * <code>.context.ServiceId service_id = 2;</code> */ - public Builder mergeLinkId(context.ContextOuterClass.LinkId value) { - if (linkIdBuilder_ == null) { - if (linkId_ != null) { - linkId_ = - context.ContextOuterClass.LinkId.newBuilder(linkId_).mergeFrom(value).buildPartial(); + public Builder mergeServiceId(context.ContextOuterClass.ServiceId value) { + if (serviceIdBuilder_ == null) { + if (serviceId_ != null) { + serviceId_ = + context.ContextOuterClass.ServiceId.newBuilder(serviceId_).mergeFrom(value).buildPartial(); } else { - linkId_ = value; + serviceId_ = value; } onChanged(); } else { - linkIdBuilder_.mergeFrom(value); + serviceIdBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.LinkId link_id = 2;</code> + * <code>.context.ServiceId service_id = 2;</code> */ - public Builder clearLinkId() { - if (linkIdBuilder_ == null) { - linkId_ = null; + public Builder clearServiceId() { + if (serviceIdBuilder_ == null) { + serviceId_ = null; onChanged(); } else { - linkId_ = null; - linkIdBuilder_ = null; + serviceId_ = null; + serviceIdBuilder_ = null; } return this; } /** - * <code>.context.LinkId link_id = 2;</code> + * <code>.context.ServiceId service_id = 2;</code> */ - public context.ContextOuterClass.LinkId.Builder getLinkIdBuilder() { + public context.ContextOuterClass.ServiceId.Builder getServiceIdBuilder() { onChanged(); - return getLinkIdFieldBuilder().getBuilder(); + return getServiceIdFieldBuilder().getBuilder(); } /** - * <code>.context.LinkId link_id = 2;</code> + * <code>.context.ServiceId service_id = 2;</code> */ - public context.ContextOuterClass.LinkIdOrBuilder getLinkIdOrBuilder() { - if (linkIdBuilder_ != null) { - return linkIdBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() { + if (serviceIdBuilder_ != null) { + return serviceIdBuilder_.getMessageOrBuilder(); } else { - return linkId_ == null ? - context.ContextOuterClass.LinkId.getDefaultInstance() : linkId_; + return serviceId_ == null ? + context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; } } /** - * <code>.context.LinkId link_id = 2;</code> + * <code>.context.ServiceId service_id = 2;</code> */ private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> - getLinkIdFieldBuilder() { - if (linkIdBuilder_ == null) { - linkIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder>( - getLinkId(), + 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()); - linkId_ = null; + serviceId_ = null; } - return linkIdBuilder_; + return serviceIdBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -22338,48 +34814,48 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.LinkEvent) + // @@protoc_insertion_point(builder_scope:context.ServiceEvent) } - // @@protoc_insertion_point(class_scope:context.LinkEvent) - private static final context.ContextOuterClass.LinkEvent DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ServiceEvent) + private static final context.ContextOuterClass.ServiceEvent DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.LinkEvent(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceEvent(); } - public static context.ContextOuterClass.LinkEvent getDefaultInstance() { + public static context.ContextOuterClass.ServiceEvent getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<LinkEvent> - PARSER = new com.google.protobuf.AbstractParser<LinkEvent>() { + private static final com.google.protobuf.Parser<ServiceEvent> + PARSER = new com.google.protobuf.AbstractParser<ServiceEvent>() { @java.lang.Override - public LinkEvent parsePartialFrom( + public ServiceEvent parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new LinkEvent(input, extensionRegistry); + return new ServiceEvent(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<LinkEvent> parser() { + public static com.google.protobuf.Parser<ServiceEvent> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<LinkEvent> getParserForType() { + public com.google.protobuf.Parser<ServiceEvent> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.LinkEvent getDefaultInstanceForType() { + public context.ContextOuterClass.ServiceEvent getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ServiceIdOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ServiceId) + public interface SliceIdOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.SliceId) com.google.protobuf.MessageOrBuilder { /** @@ -22398,44 +34874,44 @@ public final class ContextOuterClass { context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder(); /** - * <code>.context.Uuid service_uuid = 2;</code> - * @return Whether the serviceUuid field is set. + * <code>.context.Uuid slice_uuid = 2;</code> + * @return Whether the sliceUuid field is set. */ - boolean hasServiceUuid(); + boolean hasSliceUuid(); /** - * <code>.context.Uuid service_uuid = 2;</code> - * @return The serviceUuid. + * <code>.context.Uuid slice_uuid = 2;</code> + * @return The sliceUuid. */ - context.ContextOuterClass.Uuid getServiceUuid(); + context.ContextOuterClass.Uuid getSliceUuid(); /** - * <code>.context.Uuid service_uuid = 2;</code> + * <code>.context.Uuid slice_uuid = 2;</code> */ - context.ContextOuterClass.UuidOrBuilder getServiceUuidOrBuilder(); + context.ContextOuterClass.UuidOrBuilder getSliceUuidOrBuilder(); } /** * <pre> - * ----- Service ------------------------------------------------------------------------------------------------------- + * ----- Slice --------------------------------------------------------------------------------------------------------- * </pre> * - * Protobuf type {@code context.ServiceId} + * Protobuf type {@code context.SliceId} */ - public static final class ServiceId extends + public static final class SliceId extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ServiceId) - ServiceIdOrBuilder { + // @@protoc_insertion_point(message_implements:context.SliceId) + SliceIdOrBuilder { private static final long serialVersionUID = 0L; - // Use ServiceId.newBuilder() to construct. - private ServiceId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use SliceId.newBuilder() to construct. + private SliceId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ServiceId() { + private SliceId() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ServiceId(); + return new SliceId(); } @java.lang.Override @@ -22443,7 +34919,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ServiceId( + private SliceId( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -22476,13 +34952,13 @@ public final class ContextOuterClass { } case 18: { context.ContextOuterClass.Uuid.Builder subBuilder = null; - if (serviceUuid_ != null) { - subBuilder = serviceUuid_.toBuilder(); + if (sliceUuid_ != null) { + subBuilder = sliceUuid_.toBuilder(); } - serviceUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); + sliceUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(serviceUuid_); - serviceUuid_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(sliceUuid_); + sliceUuid_ = subBuilder.buildPartial(); } break; @@ -22508,15 +34984,15 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ServiceId_descriptor; + return context.ContextOuterClass.internal_static_context_SliceId_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ServiceId_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_SliceId_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ServiceId.class, context.ContextOuterClass.ServiceId.Builder.class); + context.ContextOuterClass.SliceId.class, context.ContextOuterClass.SliceId.Builder.class); } public static final int CONTEXT_ID_FIELD_NUMBER = 1; @@ -22545,30 +35021,30 @@ public final class ContextOuterClass { return getContextId(); } - public static final int SERVICE_UUID_FIELD_NUMBER = 2; - private context.ContextOuterClass.Uuid serviceUuid_; + public static final int SLICE_UUID_FIELD_NUMBER = 2; + private context.ContextOuterClass.Uuid sliceUuid_; /** - * <code>.context.Uuid service_uuid = 2;</code> - * @return Whether the serviceUuid field is set. + * <code>.context.Uuid slice_uuid = 2;</code> + * @return Whether the sliceUuid field is set. */ @java.lang.Override - public boolean hasServiceUuid() { - return serviceUuid_ != null; + public boolean hasSliceUuid() { + return sliceUuid_ != null; } /** - * <code>.context.Uuid service_uuid = 2;</code> - * @return The serviceUuid. + * <code>.context.Uuid slice_uuid = 2;</code> + * @return The sliceUuid. */ @java.lang.Override - public context.ContextOuterClass.Uuid getServiceUuid() { - return serviceUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : serviceUuid_; + public context.ContextOuterClass.Uuid getSliceUuid() { + return sliceUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : sliceUuid_; } /** - * <code>.context.Uuid service_uuid = 2;</code> + * <code>.context.Uuid slice_uuid = 2;</code> */ @java.lang.Override - public context.ContextOuterClass.UuidOrBuilder getServiceUuidOrBuilder() { - return getServiceUuid(); + public context.ContextOuterClass.UuidOrBuilder getSliceUuidOrBuilder() { + return getSliceUuid(); } private byte memoizedIsInitialized = -1; @@ -22588,8 +35064,8 @@ public final class ContextOuterClass { if (contextId_ != null) { output.writeMessage(1, getContextId()); } - if (serviceUuid_ != null) { - output.writeMessage(2, getServiceUuid()); + if (sliceUuid_ != null) { + output.writeMessage(2, getSliceUuid()); } unknownFields.writeTo(output); } @@ -22604,9 +35080,9 @@ public final class ContextOuterClass { size += com.google.protobuf.CodedOutputStream .computeMessageSize(1, getContextId()); } - if (serviceUuid_ != null) { + if (sliceUuid_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, getServiceUuid()); + .computeMessageSize(2, getSliceUuid()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -22618,20 +35094,20 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ServiceId)) { + if (!(obj instanceof context.ContextOuterClass.SliceId)) { return super.equals(obj); } - context.ContextOuterClass.ServiceId other = (context.ContextOuterClass.ServiceId) obj; + context.ContextOuterClass.SliceId other = (context.ContextOuterClass.SliceId) obj; if (hasContextId() != other.hasContextId()) return false; if (hasContextId()) { if (!getContextId() .equals(other.getContextId())) return false; } - if (hasServiceUuid() != other.hasServiceUuid()) return false; - if (hasServiceUuid()) { - if (!getServiceUuid() - .equals(other.getServiceUuid())) return false; + if (hasSliceUuid() != other.hasSliceUuid()) return false; + if (hasSliceUuid()) { + if (!getSliceUuid() + .equals(other.getSliceUuid())) return false; } if (!unknownFields.equals(other.unknownFields)) return false; return true; @@ -22648,78 +35124,78 @@ public final class ContextOuterClass { hash = (37 * hash) + CONTEXT_ID_FIELD_NUMBER; hash = (53 * hash) + getContextId().hashCode(); } - if (hasServiceUuid()) { - hash = (37 * hash) + SERVICE_UUID_FIELD_NUMBER; - hash = (53 * hash) + getServiceUuid().hashCode(); + if (hasSliceUuid()) { + hash = (37 * hash) + SLICE_UUID_FIELD_NUMBER; + hash = (53 * hash) + getSliceUuid().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ServiceId parseFrom( + public static context.ContextOuterClass.SliceId parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceId parseFrom( + public static context.ContextOuterClass.SliceId parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceId parseFrom( + public static context.ContextOuterClass.SliceId parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceId parseFrom( + public static context.ContextOuterClass.SliceId parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceId parseFrom(byte[] data) + public static context.ContextOuterClass.SliceId parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceId parseFrom( + public static context.ContextOuterClass.SliceId parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceId parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.SliceId parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceId parseFrom( + public static context.ContextOuterClass.SliceId 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 context.ContextOuterClass.ServiceId parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.SliceId parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceId parseDelimitedFrom( + public static context.ContextOuterClass.SliceId 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 context.ContextOuterClass.ServiceId parseFrom( + public static context.ContextOuterClass.SliceId parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceId parseFrom( + public static context.ContextOuterClass.SliceId parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -22732,7 +35208,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ServiceId prototype) { + public static Builder newBuilder(context.ContextOuterClass.SliceId prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -22749,29 +35225,29 @@ public final class ContextOuterClass { } /** * <pre> - * ----- Service ------------------------------------------------------------------------------------------------------- + * ----- Slice --------------------------------------------------------------------------------------------------------- * </pre> * - * Protobuf type {@code context.ServiceId} + * Protobuf type {@code context.SliceId} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ServiceId) - context.ContextOuterClass.ServiceIdOrBuilder { + // @@protoc_insertion_point(builder_implements:context.SliceId) + context.ContextOuterClass.SliceIdOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ServiceId_descriptor; + return context.ContextOuterClass.internal_static_context_SliceId_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ServiceId_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_SliceId_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ServiceId.class, context.ContextOuterClass.ServiceId.Builder.class); + context.ContextOuterClass.SliceId.class, context.ContextOuterClass.SliceId.Builder.class); } - // Construct using context.ContextOuterClass.ServiceId.newBuilder() + // Construct using context.ContextOuterClass.SliceId.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -22795,11 +35271,11 @@ public final class ContextOuterClass { contextId_ = null; contextIdBuilder_ = null; } - if (serviceUuidBuilder_ == null) { - serviceUuid_ = null; + if (sliceUuidBuilder_ == null) { + sliceUuid_ = null; } else { - serviceUuid_ = null; - serviceUuidBuilder_ = null; + sliceUuid_ = null; + sliceUuidBuilder_ = null; } return this; } @@ -22807,17 +35283,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ServiceId_descriptor; + return context.ContextOuterClass.internal_static_context_SliceId_descriptor; } @java.lang.Override - public context.ContextOuterClass.ServiceId getDefaultInstanceForType() { - return context.ContextOuterClass.ServiceId.getDefaultInstance(); + public context.ContextOuterClass.SliceId getDefaultInstanceForType() { + return context.ContextOuterClass.SliceId.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ServiceId build() { - context.ContextOuterClass.ServiceId result = buildPartial(); + public context.ContextOuterClass.SliceId build() { + context.ContextOuterClass.SliceId result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -22825,17 +35301,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ServiceId buildPartial() { - context.ContextOuterClass.ServiceId result = new context.ContextOuterClass.ServiceId(this); + public context.ContextOuterClass.SliceId buildPartial() { + context.ContextOuterClass.SliceId result = new context.ContextOuterClass.SliceId(this); if (contextIdBuilder_ == null) { result.contextId_ = contextId_; } else { result.contextId_ = contextIdBuilder_.build(); } - if (serviceUuidBuilder_ == null) { - result.serviceUuid_ = serviceUuid_; + if (sliceUuidBuilder_ == null) { + result.sliceUuid_ = sliceUuid_; } else { - result.serviceUuid_ = serviceUuidBuilder_.build(); + result.sliceUuid_ = sliceUuidBuilder_.build(); } onBuilt(); return result; @@ -22875,21 +35351,21 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ServiceId) { - return mergeFrom((context.ContextOuterClass.ServiceId)other); + if (other instanceof context.ContextOuterClass.SliceId) { + return mergeFrom((context.ContextOuterClass.SliceId)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ServiceId other) { - if (other == context.ContextOuterClass.ServiceId.getDefaultInstance()) return this; + public Builder mergeFrom(context.ContextOuterClass.SliceId other) { + if (other == context.ContextOuterClass.SliceId.getDefaultInstance()) return this; if (other.hasContextId()) { mergeContextId(other.getContextId()); } - if (other.hasServiceUuid()) { - mergeServiceUuid(other.getServiceUuid()); + if (other.hasSliceUuid()) { + mergeSliceUuid(other.getSliceUuid()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -22906,11 +35382,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ServiceId parsedMessage = null; + context.ContextOuterClass.SliceId parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ServiceId) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.SliceId) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -23039,123 +35515,123 @@ public final class ContextOuterClass { return contextIdBuilder_; } - private context.ContextOuterClass.Uuid serviceUuid_; + private context.ContextOuterClass.Uuid sliceUuid_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> serviceUuidBuilder_; + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> sliceUuidBuilder_; /** - * <code>.context.Uuid service_uuid = 2;</code> - * @return Whether the serviceUuid field is set. + * <code>.context.Uuid slice_uuid = 2;</code> + * @return Whether the sliceUuid field is set. */ - public boolean hasServiceUuid() { - return serviceUuidBuilder_ != null || serviceUuid_ != null; + public boolean hasSliceUuid() { + return sliceUuidBuilder_ != null || sliceUuid_ != null; } /** - * <code>.context.Uuid service_uuid = 2;</code> - * @return The serviceUuid. + * <code>.context.Uuid slice_uuid = 2;</code> + * @return The sliceUuid. */ - public context.ContextOuterClass.Uuid getServiceUuid() { - if (serviceUuidBuilder_ == null) { - return serviceUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : serviceUuid_; + public context.ContextOuterClass.Uuid getSliceUuid() { + if (sliceUuidBuilder_ == null) { + return sliceUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : sliceUuid_; } else { - return serviceUuidBuilder_.getMessage(); + return sliceUuidBuilder_.getMessage(); } } /** - * <code>.context.Uuid service_uuid = 2;</code> + * <code>.context.Uuid slice_uuid = 2;</code> */ - public Builder setServiceUuid(context.ContextOuterClass.Uuid value) { - if (serviceUuidBuilder_ == null) { + public Builder setSliceUuid(context.ContextOuterClass.Uuid value) { + if (sliceUuidBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - serviceUuid_ = value; + sliceUuid_ = value; onChanged(); } else { - serviceUuidBuilder_.setMessage(value); + sliceUuidBuilder_.setMessage(value); } return this; } /** - * <code>.context.Uuid service_uuid = 2;</code> + * <code>.context.Uuid slice_uuid = 2;</code> */ - public Builder setServiceUuid( + public Builder setSliceUuid( context.ContextOuterClass.Uuid.Builder builderForValue) { - if (serviceUuidBuilder_ == null) { - serviceUuid_ = builderForValue.build(); + if (sliceUuidBuilder_ == null) { + sliceUuid_ = builderForValue.build(); onChanged(); } else { - serviceUuidBuilder_.setMessage(builderForValue.build()); + sliceUuidBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.Uuid service_uuid = 2;</code> + * <code>.context.Uuid slice_uuid = 2;</code> */ - public Builder mergeServiceUuid(context.ContextOuterClass.Uuid value) { - if (serviceUuidBuilder_ == null) { - if (serviceUuid_ != null) { - serviceUuid_ = - context.ContextOuterClass.Uuid.newBuilder(serviceUuid_).mergeFrom(value).buildPartial(); + public Builder mergeSliceUuid(context.ContextOuterClass.Uuid value) { + if (sliceUuidBuilder_ == null) { + if (sliceUuid_ != null) { + sliceUuid_ = + context.ContextOuterClass.Uuid.newBuilder(sliceUuid_).mergeFrom(value).buildPartial(); } else { - serviceUuid_ = value; + sliceUuid_ = value; } onChanged(); } else { - serviceUuidBuilder_.mergeFrom(value); + sliceUuidBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.Uuid service_uuid = 2;</code> + * <code>.context.Uuid slice_uuid = 2;</code> */ - public Builder clearServiceUuid() { - if (serviceUuidBuilder_ == null) { - serviceUuid_ = null; + public Builder clearSliceUuid() { + if (sliceUuidBuilder_ == null) { + sliceUuid_ = null; onChanged(); } else { - serviceUuid_ = null; - serviceUuidBuilder_ = null; + sliceUuid_ = null; + sliceUuidBuilder_ = null; } return this; } /** - * <code>.context.Uuid service_uuid = 2;</code> + * <code>.context.Uuid slice_uuid = 2;</code> */ - public context.ContextOuterClass.Uuid.Builder getServiceUuidBuilder() { + public context.ContextOuterClass.Uuid.Builder getSliceUuidBuilder() { onChanged(); - return getServiceUuidFieldBuilder().getBuilder(); + return getSliceUuidFieldBuilder().getBuilder(); } /** - * <code>.context.Uuid service_uuid = 2;</code> + * <code>.context.Uuid slice_uuid = 2;</code> */ - public context.ContextOuterClass.UuidOrBuilder getServiceUuidOrBuilder() { - if (serviceUuidBuilder_ != null) { - return serviceUuidBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.UuidOrBuilder getSliceUuidOrBuilder() { + if (sliceUuidBuilder_ != null) { + return sliceUuidBuilder_.getMessageOrBuilder(); } else { - return serviceUuid_ == null ? - context.ContextOuterClass.Uuid.getDefaultInstance() : serviceUuid_; + return sliceUuid_ == null ? + context.ContextOuterClass.Uuid.getDefaultInstance() : sliceUuid_; } } /** - * <code>.context.Uuid service_uuid = 2;</code> + * <code>.context.Uuid slice_uuid = 2;</code> */ private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> - getServiceUuidFieldBuilder() { - if (serviceUuidBuilder_ == null) { - serviceUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + getSliceUuidFieldBuilder() { + if (sliceUuidBuilder_ == null) { + sliceUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>( - getServiceUuid(), + getSliceUuid(), getParentForChildren(), isClean()); - serviceUuid_ = null; + sliceUuid_ = null; } - return serviceUuidBuilder_; + return sliceUuidBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -23170,192 +35646,258 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ServiceId) + // @@protoc_insertion_point(builder_scope:context.SliceId) } - // @@protoc_insertion_point(class_scope:context.ServiceId) - private static final context.ContextOuterClass.ServiceId DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.SliceId) + private static final context.ContextOuterClass.SliceId DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceId(); + DEFAULT_INSTANCE = new context.ContextOuterClass.SliceId(); } - public static context.ContextOuterClass.ServiceId getDefaultInstance() { + public static context.ContextOuterClass.SliceId getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ServiceId> - PARSER = new com.google.protobuf.AbstractParser<ServiceId>() { + private static final com.google.protobuf.Parser<SliceId> + PARSER = new com.google.protobuf.AbstractParser<SliceId>() { @java.lang.Override - public ServiceId parsePartialFrom( + public SliceId parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ServiceId(input, extensionRegistry); + return new SliceId(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ServiceId> parser() { + public static com.google.protobuf.Parser<SliceId> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ServiceId> getParserForType() { + public com.google.protobuf.Parser<SliceId> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ServiceId getDefaultInstanceForType() { + public context.ContextOuterClass.SliceId getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ServiceOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Service) + public interface SliceOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Slice) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.ServiceId service_id = 1;</code> - * @return Whether the serviceId field is set. + * <code>.context.SliceId slice_id = 1;</code> + * @return Whether the sliceId field is set. */ - boolean hasServiceId(); + boolean hasSliceId(); /** - * <code>.context.ServiceId service_id = 1;</code> - * @return The serviceId. + * <code>.context.SliceId slice_id = 1;</code> + * @return The sliceId. */ - context.ContextOuterClass.ServiceId getServiceId(); + context.ContextOuterClass.SliceId getSliceId(); /** - * <code>.context.ServiceId service_id = 1;</code> + * <code>.context.SliceId slice_id = 1;</code> */ - context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder(); + context.ContextOuterClass.SliceIdOrBuilder getSliceIdOrBuilder(); /** - * <code>.context.ServiceTypeEnum service_type = 2;</code> - * @return The enum numeric value on the wire for serviceType. + * <code>string name = 2;</code> + * @return The name. */ - int getServiceTypeValue(); + java.lang.String getName(); /** - * <code>.context.ServiceTypeEnum service_type = 2;</code> - * @return The serviceType. + * <code>string name = 2;</code> + * @return The bytes for name. */ - context.ContextOuterClass.ServiceTypeEnum getServiceType(); + com.google.protobuf.ByteString + getNameBytes(); /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ java.util.List<context.ContextOuterClass.EndPointId> - getServiceEndpointIdsList(); + getSliceEndpointIdsList(); /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ - context.ContextOuterClass.EndPointId getServiceEndpointIds(int index); + context.ContextOuterClass.EndPointId getSliceEndpointIds(int index); /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ - int getServiceEndpointIdsCount(); + int getSliceEndpointIdsCount(); /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> - getServiceEndpointIdsOrBuilderList(); + getSliceEndpointIdsOrBuilderList(); /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ - context.ContextOuterClass.EndPointIdOrBuilder getServiceEndpointIdsOrBuilder( + context.ContextOuterClass.EndPointIdOrBuilder getSliceEndpointIdsOrBuilder( int index); /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>repeated .context.Constraint slice_constraints = 4;</code> */ java.util.List<context.ContextOuterClass.Constraint> - getServiceConstraintsList(); + getSliceConstraintsList(); /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>repeated .context.Constraint slice_constraints = 4;</code> */ - context.ContextOuterClass.Constraint getServiceConstraints(int index); + context.ContextOuterClass.Constraint getSliceConstraints(int index); /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>repeated .context.Constraint slice_constraints = 4;</code> */ - int getServiceConstraintsCount(); + int getSliceConstraintsCount(); /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>repeated .context.Constraint slice_constraints = 4;</code> */ java.util.List<? extends context.ContextOuterClass.ConstraintOrBuilder> - getServiceConstraintsOrBuilderList(); + getSliceConstraintsOrBuilderList(); /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>repeated .context.Constraint slice_constraints = 4;</code> */ - context.ContextOuterClass.ConstraintOrBuilder getServiceConstraintsOrBuilder( + context.ContextOuterClass.ConstraintOrBuilder getSliceConstraintsOrBuilder( int index); /** - * <code>.context.ServiceStatus service_status = 5;</code> - * @return Whether the serviceStatus field is set. + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ - boolean hasServiceStatus(); + java.util.List<context.ContextOuterClass.ServiceId> + getSliceServiceIdsList(); /** - * <code>.context.ServiceStatus service_status = 5;</code> - * @return The serviceStatus. + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ - context.ContextOuterClass.ServiceStatus getServiceStatus(); + context.ContextOuterClass.ServiceId getSliceServiceIds(int index); /** - * <code>.context.ServiceStatus service_status = 5;</code> + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ - context.ContextOuterClass.ServiceStatusOrBuilder getServiceStatusOrBuilder(); + int getSliceServiceIdsCount(); + /** + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + */ + java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> + getSliceServiceIdsOrBuilderList(); + /** + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + */ + context.ContextOuterClass.ServiceIdOrBuilder getSliceServiceIdsOrBuilder( + int index); /** - * <code>.context.ServiceConfig service_config = 6;</code> - * @return Whether the serviceConfig field is set. + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> */ - boolean hasServiceConfig(); + java.util.List<context.ContextOuterClass.SliceId> + getSliceSubsliceIdsList(); /** - * <code>.context.ServiceConfig service_config = 6;</code> - * @return The serviceConfig. + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> */ - context.ContextOuterClass.ServiceConfig getServiceConfig(); + context.ContextOuterClass.SliceId getSliceSubsliceIds(int index); /** - * <code>.context.ServiceConfig service_config = 6;</code> + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> */ - context.ContextOuterClass.ServiceConfigOrBuilder getServiceConfigOrBuilder(); + int getSliceSubsliceIdsCount(); + /** + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> + */ + java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> + getSliceSubsliceIdsOrBuilderList(); + /** + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> + */ + context.ContextOuterClass.SliceIdOrBuilder getSliceSubsliceIdsOrBuilder( + int index); + + /** + * <code>.context.SliceStatus slice_status = 7;</code> + * @return Whether the sliceStatus field is set. + */ + boolean hasSliceStatus(); + /** + * <code>.context.SliceStatus slice_status = 7;</code> + * @return The sliceStatus. + */ + context.ContextOuterClass.SliceStatus getSliceStatus(); + /** + * <code>.context.SliceStatus slice_status = 7;</code> + */ + context.ContextOuterClass.SliceStatusOrBuilder getSliceStatusOrBuilder(); + + /** + * <code>.context.SliceConfig slice_config = 8;</code> + * @return Whether the sliceConfig field is set. + */ + boolean hasSliceConfig(); + /** + * <code>.context.SliceConfig slice_config = 8;</code> + * @return The sliceConfig. + */ + context.ContextOuterClass.SliceConfig getSliceConfig(); + /** + * <code>.context.SliceConfig slice_config = 8;</code> + */ + context.ContextOuterClass.SliceConfigOrBuilder getSliceConfigOrBuilder(); + + /** + * <code>.context.SliceOwner slice_owner = 9;</code> + * @return Whether the sliceOwner field is set. + */ + boolean hasSliceOwner(); + /** + * <code>.context.SliceOwner slice_owner = 9;</code> + * @return The sliceOwner. + */ + context.ContextOuterClass.SliceOwner getSliceOwner(); + /** + * <code>.context.SliceOwner slice_owner = 9;</code> + */ + context.ContextOuterClass.SliceOwnerOrBuilder getSliceOwnerOrBuilder(); /** - * <code>.context.Timestamp timestamp = 7;</code> + * <code>.context.Timestamp timestamp = 10;</code> * @return Whether the timestamp field is set. */ boolean hasTimestamp(); /** - * <code>.context.Timestamp timestamp = 7;</code> + * <code>.context.Timestamp timestamp = 10;</code> * @return The timestamp. */ context.ContextOuterClass.Timestamp getTimestamp(); /** - * <code>.context.Timestamp timestamp = 7;</code> + * <code>.context.Timestamp timestamp = 10;</code> */ context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder(); } /** - * Protobuf type {@code context.Service} + * Protobuf type {@code context.Slice} */ - public static final class Service extends + public static final class Slice extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Service) - ServiceOrBuilder { + // @@protoc_insertion_point(message_implements:context.Slice) + SliceOrBuilder { private static final long serialVersionUID = 0L; - // Use Service.newBuilder() to construct. - private Service(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Slice.newBuilder() to construct. + private Slice(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private Service() { - serviceType_ = 0; - serviceEndpointIds_ = java.util.Collections.emptyList(); - serviceConstraints_ = java.util.Collections.emptyList(); + private Slice() { + name_ = ""; + sliceEndpointIds_ = java.util.Collections.emptyList(); + sliceConstraints_ = java.util.Collections.emptyList(); + sliceServiceIds_ = java.util.Collections.emptyList(); + sliceSubsliceIds_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new Service(); + return new Slice(); } @java.lang.Override @@ -23363,7 +35905,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private Service( + private Slice( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -23383,69 +35925,100 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.ServiceId.Builder subBuilder = null; - if (serviceId_ != null) { - subBuilder = serviceId_.toBuilder(); + context.ContextOuterClass.SliceId.Builder subBuilder = null; + if (sliceId_ != null) { + subBuilder = sliceId_.toBuilder(); } - serviceId_ = input.readMessage(context.ContextOuterClass.ServiceId.parser(), extensionRegistry); + sliceId_ = input.readMessage(context.ContextOuterClass.SliceId.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(serviceId_); - serviceId_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(sliceId_); + sliceId_ = subBuilder.buildPartial(); } break; } - case 16: { - int rawValue = input.readEnum(); + case 18: { + java.lang.String s = input.readStringRequireUtf8(); - serviceType_ = rawValue; + name_ = s; break; } case 26: { if (!((mutable_bitField0_ & 0x00000001) != 0)) { - serviceEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(); + sliceEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(); mutable_bitField0_ |= 0x00000001; } - serviceEndpointIds_.add( + sliceEndpointIds_.add( input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry)); break; } case 34: { if (!((mutable_bitField0_ & 0x00000002) != 0)) { - serviceConstraints_ = new java.util.ArrayList<context.ContextOuterClass.Constraint>(); + sliceConstraints_ = new java.util.ArrayList<context.ContextOuterClass.Constraint>(); mutable_bitField0_ |= 0x00000002; } - serviceConstraints_.add( + sliceConstraints_.add( input.readMessage(context.ContextOuterClass.Constraint.parser(), extensionRegistry)); break; } case 42: { - context.ContextOuterClass.ServiceStatus.Builder subBuilder = null; - if (serviceStatus_ != null) { - subBuilder = serviceStatus_.toBuilder(); + if (!((mutable_bitField0_ & 0x00000004) != 0)) { + sliceServiceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(); + mutable_bitField0_ |= 0x00000004; } - serviceStatus_ = input.readMessage(context.ContextOuterClass.ServiceStatus.parser(), extensionRegistry); + sliceServiceIds_.add( + input.readMessage(context.ContextOuterClass.ServiceId.parser(), extensionRegistry)); + break; + } + case 50: { + if (!((mutable_bitField0_ & 0x00000008) != 0)) { + sliceSubsliceIds_ = new java.util.ArrayList<context.ContextOuterClass.SliceId>(); + mutable_bitField0_ |= 0x00000008; + } + sliceSubsliceIds_.add( + input.readMessage(context.ContextOuterClass.SliceId.parser(), extensionRegistry)); + break; + } + case 58: { + context.ContextOuterClass.SliceStatus.Builder subBuilder = null; + if (sliceStatus_ != null) { + subBuilder = sliceStatus_.toBuilder(); + } + sliceStatus_ = input.readMessage(context.ContextOuterClass.SliceStatus.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(serviceStatus_); - serviceStatus_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(sliceStatus_); + sliceStatus_ = subBuilder.buildPartial(); } break; } - case 50: { - context.ContextOuterClass.ServiceConfig.Builder subBuilder = null; - if (serviceConfig_ != null) { - subBuilder = serviceConfig_.toBuilder(); + case 66: { + context.ContextOuterClass.SliceConfig.Builder subBuilder = null; + if (sliceConfig_ != null) { + subBuilder = sliceConfig_.toBuilder(); } - serviceConfig_ = input.readMessage(context.ContextOuterClass.ServiceConfig.parser(), extensionRegistry); + sliceConfig_ = input.readMessage(context.ContextOuterClass.SliceConfig.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(serviceConfig_); - serviceConfig_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(sliceConfig_); + sliceConfig_ = subBuilder.buildPartial(); } break; } - case 58: { + case 74: { + context.ContextOuterClass.SliceOwner.Builder subBuilder = null; + if (sliceOwner_ != null) { + subBuilder = sliceOwner_.toBuilder(); + } + sliceOwner_ = input.readMessage(context.ContextOuterClass.SliceOwner.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(sliceOwner_); + sliceOwner_ = subBuilder.buildPartial(); + } + + break; + } + case 82: { context.ContextOuterClass.Timestamp.Builder subBuilder = null; if (timestamp_ != null) { subBuilder = timestamp_.toBuilder(); @@ -23474,10 +36047,16 @@ public final class ContextOuterClass { e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { - serviceEndpointIds_ = java.util.Collections.unmodifiableList(serviceEndpointIds_); + sliceEndpointIds_ = java.util.Collections.unmodifiableList(sliceEndpointIds_); } if (((mutable_bitField0_ & 0x00000002) != 0)) { - serviceConstraints_ = java.util.Collections.unmodifiableList(serviceConstraints_); + sliceConstraints_ = java.util.Collections.unmodifiableList(sliceConstraints_); + } + if (((mutable_bitField0_ & 0x00000004) != 0)) { + sliceServiceIds_ = java.util.Collections.unmodifiableList(sliceServiceIds_); + } + if (((mutable_bitField0_ & 0x00000008) != 0)) { + sliceSubsliceIds_ = java.util.Collections.unmodifiableList(sliceSubsliceIds_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); @@ -23485,198 +36064,323 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Service_descriptor; + return context.ContextOuterClass.internal_static_context_Slice_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Service_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Slice_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Service.class, context.ContextOuterClass.Service.Builder.class); + context.ContextOuterClass.Slice.class, context.ContextOuterClass.Slice.Builder.class); } - public static final int SERVICE_ID_FIELD_NUMBER = 1; - private context.ContextOuterClass.ServiceId serviceId_; + public static final int SLICE_ID_FIELD_NUMBER = 1; + private context.ContextOuterClass.SliceId sliceId_; /** - * <code>.context.ServiceId service_id = 1;</code> - * @return Whether the serviceId field is set. + * <code>.context.SliceId slice_id = 1;</code> + * @return Whether the sliceId field is set. */ @java.lang.Override - public boolean hasServiceId() { - return serviceId_ != null; + public boolean hasSliceId() { + return sliceId_ != null; } /** - * <code>.context.ServiceId service_id = 1;</code> - * @return The serviceId. + * <code>.context.SliceId slice_id = 1;</code> + * @return The sliceId. */ @java.lang.Override - public context.ContextOuterClass.ServiceId getServiceId() { - return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; + public context.ContextOuterClass.SliceId getSliceId() { + return sliceId_ == null ? context.ContextOuterClass.SliceId.getDefaultInstance() : sliceId_; } /** - * <code>.context.ServiceId service_id = 1;</code> + * <code>.context.SliceId slice_id = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() { - return getServiceId(); + public context.ContextOuterClass.SliceIdOrBuilder getSliceIdOrBuilder() { + return getSliceId(); } - public static final int SERVICE_TYPE_FIELD_NUMBER = 2; - private int serviceType_; + public static final int NAME_FIELD_NUMBER = 2; + private volatile java.lang.Object name_; /** - * <code>.context.ServiceTypeEnum service_type = 2;</code> - * @return The enum numeric value on the wire for serviceType. + * <code>string name = 2;</code> + * @return The name. */ - @java.lang.Override public int getServiceTypeValue() { - return serviceType_; + @java.lang.Override + public java.lang.String getName() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } } /** - * <code>.context.ServiceTypeEnum service_type = 2;</code> - * @return The serviceType. + * <code>string name = 2;</code> + * @return The bytes for name. */ - @java.lang.Override public context.ContextOuterClass.ServiceTypeEnum getServiceType() { - @SuppressWarnings("deprecation") - context.ContextOuterClass.ServiceTypeEnum result = context.ContextOuterClass.ServiceTypeEnum.valueOf(serviceType_); - return result == null ? context.ContextOuterClass.ServiceTypeEnum.UNRECOGNIZED : result; + @java.lang.Override + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } - public static final int SERVICE_ENDPOINT_IDS_FIELD_NUMBER = 3; - private java.util.List<context.ContextOuterClass.EndPointId> serviceEndpointIds_; + public static final int SLICE_ENDPOINT_IDS_FIELD_NUMBER = 3; + private java.util.List<context.ContextOuterClass.EndPointId> sliceEndpointIds_; /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ @java.lang.Override - public java.util.List<context.ContextOuterClass.EndPointId> getServiceEndpointIdsList() { - return serviceEndpointIds_; + public java.util.List<context.ContextOuterClass.EndPointId> getSliceEndpointIdsList() { + return sliceEndpointIds_; } /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ @java.lang.Override public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> - getServiceEndpointIdsOrBuilderList() { - return serviceEndpointIds_; + getSliceEndpointIdsOrBuilderList() { + return sliceEndpointIds_; } /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ @java.lang.Override - public int getServiceEndpointIdsCount() { - return serviceEndpointIds_.size(); + public int getSliceEndpointIdsCount() { + return sliceEndpointIds_.size(); } /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ @java.lang.Override - public context.ContextOuterClass.EndPointId getServiceEndpointIds(int index) { - return serviceEndpointIds_.get(index); + public context.ContextOuterClass.EndPointId getSliceEndpointIds(int index) { + return sliceEndpointIds_.get(index); } /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ @java.lang.Override - public context.ContextOuterClass.EndPointIdOrBuilder getServiceEndpointIdsOrBuilder( + public context.ContextOuterClass.EndPointIdOrBuilder getSliceEndpointIdsOrBuilder( int index) { - return serviceEndpointIds_.get(index); + return sliceEndpointIds_.get(index); } - public static final int SERVICE_CONSTRAINTS_FIELD_NUMBER = 4; - private java.util.List<context.ContextOuterClass.Constraint> serviceConstraints_; + public static final int SLICE_CONSTRAINTS_FIELD_NUMBER = 4; + private java.util.List<context.ContextOuterClass.Constraint> sliceConstraints_; /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>repeated .context.Constraint slice_constraints = 4;</code> */ @java.lang.Override - public java.util.List<context.ContextOuterClass.Constraint> getServiceConstraintsList() { - return serviceConstraints_; + public java.util.List<context.ContextOuterClass.Constraint> getSliceConstraintsList() { + return sliceConstraints_; } /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>repeated .context.Constraint slice_constraints = 4;</code> */ @java.lang.Override public java.util.List<? extends context.ContextOuterClass.ConstraintOrBuilder> - getServiceConstraintsOrBuilderList() { - return serviceConstraints_; + getSliceConstraintsOrBuilderList() { + return sliceConstraints_; } /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>repeated .context.Constraint slice_constraints = 4;</code> */ @java.lang.Override - public int getServiceConstraintsCount() { - return serviceConstraints_.size(); + public int getSliceConstraintsCount() { + return sliceConstraints_.size(); } /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>repeated .context.Constraint slice_constraints = 4;</code> */ @java.lang.Override - public context.ContextOuterClass.Constraint getServiceConstraints(int index) { - return serviceConstraints_.get(index); + public context.ContextOuterClass.Constraint getSliceConstraints(int index) { + return sliceConstraints_.get(index); } /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>repeated .context.Constraint slice_constraints = 4;</code> */ @java.lang.Override - public context.ContextOuterClass.ConstraintOrBuilder getServiceConstraintsOrBuilder( + public context.ContextOuterClass.ConstraintOrBuilder getSliceConstraintsOrBuilder( int index) { - return serviceConstraints_.get(index); + return sliceConstraints_.get(index); } - public static final int SERVICE_STATUS_FIELD_NUMBER = 5; - private context.ContextOuterClass.ServiceStatus serviceStatus_; + public static final int SLICE_SERVICE_IDS_FIELD_NUMBER = 5; + private java.util.List<context.ContextOuterClass.ServiceId> sliceServiceIds_; /** - * <code>.context.ServiceStatus service_status = 5;</code> - * @return Whether the serviceStatus field is set. + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ @java.lang.Override - public boolean hasServiceStatus() { - return serviceStatus_ != null; + public java.util.List<context.ContextOuterClass.ServiceId> getSliceServiceIdsList() { + return sliceServiceIds_; } /** - * <code>.context.ServiceStatus service_status = 5;</code> - * @return The serviceStatus. + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ @java.lang.Override - public context.ContextOuterClass.ServiceStatus getServiceStatus() { - return serviceStatus_ == null ? context.ContextOuterClass.ServiceStatus.getDefaultInstance() : serviceStatus_; + public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> + getSliceServiceIdsOrBuilderList() { + return sliceServiceIds_; } /** - * <code>.context.ServiceStatus service_status = 5;</code> + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ @java.lang.Override - public context.ContextOuterClass.ServiceStatusOrBuilder getServiceStatusOrBuilder() { - return getServiceStatus(); + public int getSliceServiceIdsCount() { + return sliceServiceIds_.size(); + } + /** + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ServiceId getSliceServiceIds(int index) { + return sliceServiceIds_.get(index); + } + /** + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ServiceIdOrBuilder getSliceServiceIdsOrBuilder( + int index) { + return sliceServiceIds_.get(index); } - public static final int SERVICE_CONFIG_FIELD_NUMBER = 6; - private context.ContextOuterClass.ServiceConfig serviceConfig_; + public static final int SLICE_SUBSLICE_IDS_FIELD_NUMBER = 6; + private java.util.List<context.ContextOuterClass.SliceId> sliceSubsliceIds_; /** - * <code>.context.ServiceConfig service_config = 6;</code> - * @return Whether the serviceConfig field is set. + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> */ @java.lang.Override - public boolean hasServiceConfig() { - return serviceConfig_ != null; + public java.util.List<context.ContextOuterClass.SliceId> getSliceSubsliceIdsList() { + return sliceSubsliceIds_; } /** - * <code>.context.ServiceConfig service_config = 6;</code> - * @return The serviceConfig. + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> */ @java.lang.Override - public context.ContextOuterClass.ServiceConfig getServiceConfig() { - return serviceConfig_ == null ? context.ContextOuterClass.ServiceConfig.getDefaultInstance() : serviceConfig_; + public java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> + getSliceSubsliceIdsOrBuilderList() { + return sliceSubsliceIds_; } /** - * <code>.context.ServiceConfig service_config = 6;</code> + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> */ @java.lang.Override - public context.ContextOuterClass.ServiceConfigOrBuilder getServiceConfigOrBuilder() { - return getServiceConfig(); + public int getSliceSubsliceIdsCount() { + return sliceSubsliceIds_.size(); + } + /** + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> + */ + @java.lang.Override + public context.ContextOuterClass.SliceId getSliceSubsliceIds(int index) { + return sliceSubsliceIds_.get(index); + } + /** + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> + */ + @java.lang.Override + public context.ContextOuterClass.SliceIdOrBuilder getSliceSubsliceIdsOrBuilder( + int index) { + return sliceSubsliceIds_.get(index); + } + + public static final int SLICE_STATUS_FIELD_NUMBER = 7; + private context.ContextOuterClass.SliceStatus sliceStatus_; + /** + * <code>.context.SliceStatus slice_status = 7;</code> + * @return Whether the sliceStatus field is set. + */ + @java.lang.Override + public boolean hasSliceStatus() { + return sliceStatus_ != null; + } + /** + * <code>.context.SliceStatus slice_status = 7;</code> + * @return The sliceStatus. + */ + @java.lang.Override + public context.ContextOuterClass.SliceStatus getSliceStatus() { + return sliceStatus_ == null ? context.ContextOuterClass.SliceStatus.getDefaultInstance() : sliceStatus_; + } + /** + * <code>.context.SliceStatus slice_status = 7;</code> + */ + @java.lang.Override + public context.ContextOuterClass.SliceStatusOrBuilder getSliceStatusOrBuilder() { + return getSliceStatus(); + } + + public static final int SLICE_CONFIG_FIELD_NUMBER = 8; + private context.ContextOuterClass.SliceConfig sliceConfig_; + /** + * <code>.context.SliceConfig slice_config = 8;</code> + * @return Whether the sliceConfig field is set. + */ + @java.lang.Override + public boolean hasSliceConfig() { + return sliceConfig_ != null; + } + /** + * <code>.context.SliceConfig slice_config = 8;</code> + * @return The sliceConfig. + */ + @java.lang.Override + public context.ContextOuterClass.SliceConfig getSliceConfig() { + return sliceConfig_ == null ? context.ContextOuterClass.SliceConfig.getDefaultInstance() : sliceConfig_; + } + /** + * <code>.context.SliceConfig slice_config = 8;</code> + */ + @java.lang.Override + public context.ContextOuterClass.SliceConfigOrBuilder getSliceConfigOrBuilder() { + return getSliceConfig(); + } + + public static final int SLICE_OWNER_FIELD_NUMBER = 9; + private context.ContextOuterClass.SliceOwner sliceOwner_; + /** + * <code>.context.SliceOwner slice_owner = 9;</code> + * @return Whether the sliceOwner field is set. + */ + @java.lang.Override + public boolean hasSliceOwner() { + return sliceOwner_ != null; + } + /** + * <code>.context.SliceOwner slice_owner = 9;</code> + * @return The sliceOwner. + */ + @java.lang.Override + public context.ContextOuterClass.SliceOwner getSliceOwner() { + return sliceOwner_ == null ? context.ContextOuterClass.SliceOwner.getDefaultInstance() : sliceOwner_; + } + /** + * <code>.context.SliceOwner slice_owner = 9;</code> + */ + @java.lang.Override + public context.ContextOuterClass.SliceOwnerOrBuilder getSliceOwnerOrBuilder() { + return getSliceOwner(); } - public static final int TIMESTAMP_FIELD_NUMBER = 7; + public static final int TIMESTAMP_FIELD_NUMBER = 10; private context.ContextOuterClass.Timestamp timestamp_; /** - * <code>.context.Timestamp timestamp = 7;</code> + * <code>.context.Timestamp timestamp = 10;</code> * @return Whether the timestamp field is set. */ @java.lang.Override @@ -23684,7 +36388,7 @@ public final class ContextOuterClass { return timestamp_ != null; } /** - * <code>.context.Timestamp timestamp = 7;</code> + * <code>.context.Timestamp timestamp = 10;</code> * @return The timestamp. */ @java.lang.Override @@ -23692,7 +36396,7 @@ public final class ContextOuterClass { return timestamp_ == null ? context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_; } /** - * <code>.context.Timestamp timestamp = 7;</code> + * <code>.context.Timestamp timestamp = 10;</code> */ @java.lang.Override public context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder() { @@ -23713,26 +36417,35 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (serviceId_ != null) { - output.writeMessage(1, getServiceId()); + if (sliceId_ != null) { + output.writeMessage(1, getSliceId()); } - if (serviceType_ != context.ContextOuterClass.ServiceTypeEnum.SERVICETYPE_UNKNOWN.getNumber()) { - output.writeEnum(2, serviceType_); + if (!getNameBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_); } - for (int i = 0; i < serviceEndpointIds_.size(); i++) { - output.writeMessage(3, serviceEndpointIds_.get(i)); + for (int i = 0; i < sliceEndpointIds_.size(); i++) { + output.writeMessage(3, sliceEndpointIds_.get(i)); } - for (int i = 0; i < serviceConstraints_.size(); i++) { - output.writeMessage(4, serviceConstraints_.get(i)); + for (int i = 0; i < sliceConstraints_.size(); i++) { + output.writeMessage(4, sliceConstraints_.get(i)); } - if (serviceStatus_ != null) { - output.writeMessage(5, getServiceStatus()); + for (int i = 0; i < sliceServiceIds_.size(); i++) { + output.writeMessage(5, sliceServiceIds_.get(i)); } - if (serviceConfig_ != null) { - output.writeMessage(6, getServiceConfig()); + for (int i = 0; i < sliceSubsliceIds_.size(); i++) { + output.writeMessage(6, sliceSubsliceIds_.get(i)); + } + if (sliceStatus_ != null) { + output.writeMessage(7, getSliceStatus()); + } + if (sliceConfig_ != null) { + output.writeMessage(8, getSliceConfig()); + } + if (sliceOwner_ != null) { + output.writeMessage(9, getSliceOwner()); } if (timestamp_ != null) { - output.writeMessage(7, getTimestamp()); + output.writeMessage(10, getTimestamp()); } unknownFields.writeTo(output); } @@ -23743,33 +36456,44 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (serviceId_ != null) { + if (sliceId_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getServiceId()); + .computeMessageSize(1, getSliceId()); } - if (serviceType_ != context.ContextOuterClass.ServiceTypeEnum.SERVICETYPE_UNKNOWN.getNumber()) { + if (!getNameBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_); + } + for (int i = 0; i < sliceEndpointIds_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeEnumSize(2, serviceType_); + .computeMessageSize(3, sliceEndpointIds_.get(i)); } - for (int i = 0; i < serviceEndpointIds_.size(); i++) { + for (int i = 0; i < sliceConstraints_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(3, serviceEndpointIds_.get(i)); + .computeMessageSize(4, sliceConstraints_.get(i)); } - for (int i = 0; i < serviceConstraints_.size(); i++) { + for (int i = 0; i < sliceServiceIds_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(4, serviceConstraints_.get(i)); + .computeMessageSize(5, sliceServiceIds_.get(i)); } - if (serviceStatus_ != null) { + for (int i = 0; i < sliceSubsliceIds_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(5, getServiceStatus()); + .computeMessageSize(6, sliceSubsliceIds_.get(i)); } - if (serviceConfig_ != null) { + if (sliceStatus_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(7, getSliceStatus()); + } + if (sliceConfig_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(8, getSliceConfig()); + } + if (sliceOwner_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(6, getServiceConfig()); + .computeMessageSize(9, getSliceOwner()); } if (timestamp_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(7, getTimestamp()); + .computeMessageSize(10, getTimestamp()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -23781,30 +36505,40 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.Service)) { + if (!(obj instanceof context.ContextOuterClass.Slice)) { return super.equals(obj); } - context.ContextOuterClass.Service other = (context.ContextOuterClass.Service) obj; + context.ContextOuterClass.Slice other = (context.ContextOuterClass.Slice) obj; - if (hasServiceId() != other.hasServiceId()) return false; - if (hasServiceId()) { - if (!getServiceId() - .equals(other.getServiceId())) return false; + if (hasSliceId() != other.hasSliceId()) return false; + if (hasSliceId()) { + if (!getSliceId() + .equals(other.getSliceId())) return false; } - if (serviceType_ != other.serviceType_) return false; - if (!getServiceEndpointIdsList() - .equals(other.getServiceEndpointIdsList())) return false; - if (!getServiceConstraintsList() - .equals(other.getServiceConstraintsList())) return false; - if (hasServiceStatus() != other.hasServiceStatus()) return false; - if (hasServiceStatus()) { - if (!getServiceStatus() - .equals(other.getServiceStatus())) return false; + if (!getName() + .equals(other.getName())) return false; + if (!getSliceEndpointIdsList() + .equals(other.getSliceEndpointIdsList())) return false; + if (!getSliceConstraintsList() + .equals(other.getSliceConstraintsList())) return false; + if (!getSliceServiceIdsList() + .equals(other.getSliceServiceIdsList())) return false; + if (!getSliceSubsliceIdsList() + .equals(other.getSliceSubsliceIdsList())) return false; + if (hasSliceStatus() != other.hasSliceStatus()) return false; + if (hasSliceStatus()) { + if (!getSliceStatus() + .equals(other.getSliceStatus())) return false; } - if (hasServiceConfig() != other.hasServiceConfig()) return false; - if (hasServiceConfig()) { - if (!getServiceConfig() - .equals(other.getServiceConfig())) return false; + if (hasSliceConfig() != other.hasSliceConfig()) return false; + if (hasSliceConfig()) { + if (!getSliceConfig() + .equals(other.getSliceConfig())) return false; + } + if (hasSliceOwner() != other.hasSliceOwner()) return false; + if (hasSliceOwner()) { + if (!getSliceOwner() + .equals(other.getSliceOwner())) return false; } if (hasTimestamp() != other.hasTimestamp()) return false; if (hasTimestamp()) { @@ -23822,27 +36556,39 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasServiceId()) { - hash = (37 * hash) + SERVICE_ID_FIELD_NUMBER; - hash = (53 * hash) + getServiceId().hashCode(); + if (hasSliceId()) { + hash = (37 * hash) + SLICE_ID_FIELD_NUMBER; + hash = (53 * hash) + getSliceId().hashCode(); } - hash = (37 * hash) + SERVICE_TYPE_FIELD_NUMBER; - hash = (53 * hash) + serviceType_; - if (getServiceEndpointIdsCount() > 0) { - hash = (37 * hash) + SERVICE_ENDPOINT_IDS_FIELD_NUMBER; - hash = (53 * hash) + getServiceEndpointIdsList().hashCode(); + hash = (37 * hash) + NAME_FIELD_NUMBER; + hash = (53 * hash) + getName().hashCode(); + if (getSliceEndpointIdsCount() > 0) { + hash = (37 * hash) + SLICE_ENDPOINT_IDS_FIELD_NUMBER; + hash = (53 * hash) + getSliceEndpointIdsList().hashCode(); } - if (getServiceConstraintsCount() > 0) { - hash = (37 * hash) + SERVICE_CONSTRAINTS_FIELD_NUMBER; - hash = (53 * hash) + getServiceConstraintsList().hashCode(); + if (getSliceConstraintsCount() > 0) { + hash = (37 * hash) + SLICE_CONSTRAINTS_FIELD_NUMBER; + hash = (53 * hash) + getSliceConstraintsList().hashCode(); } - if (hasServiceStatus()) { - hash = (37 * hash) + SERVICE_STATUS_FIELD_NUMBER; - hash = (53 * hash) + getServiceStatus().hashCode(); + if (getSliceServiceIdsCount() > 0) { + hash = (37 * hash) + SLICE_SERVICE_IDS_FIELD_NUMBER; + hash = (53 * hash) + getSliceServiceIdsList().hashCode(); } - if (hasServiceConfig()) { - hash = (37 * hash) + SERVICE_CONFIG_FIELD_NUMBER; - hash = (53 * hash) + getServiceConfig().hashCode(); + if (getSliceSubsliceIdsCount() > 0) { + hash = (37 * hash) + SLICE_SUBSLICE_IDS_FIELD_NUMBER; + hash = (53 * hash) + getSliceSubsliceIdsList().hashCode(); + } + if (hasSliceStatus()) { + hash = (37 * hash) + SLICE_STATUS_FIELD_NUMBER; + hash = (53 * hash) + getSliceStatus().hashCode(); + } + if (hasSliceConfig()) { + hash = (37 * hash) + SLICE_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getSliceConfig().hashCode(); + } + if (hasSliceOwner()) { + hash = (37 * hash) + SLICE_OWNER_FIELD_NUMBER; + hash = (53 * hash) + getSliceOwner().hashCode(); } if (hasTimestamp()) { hash = (37 * hash) + TIMESTAMP_FIELD_NUMBER; @@ -23853,69 +36599,69 @@ public final class ContextOuterClass { return hash; } - public static context.ContextOuterClass.Service parseFrom( + public static context.ContextOuterClass.Slice parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Service parseFrom( + public static context.ContextOuterClass.Slice parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Service parseFrom( + public static context.ContextOuterClass.Slice parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Service parseFrom( + public static context.ContextOuterClass.Slice parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Service parseFrom(byte[] data) + public static context.ContextOuterClass.Slice parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Service parseFrom( + public static context.ContextOuterClass.Slice parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Service parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Slice parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Service parseFrom( + public static context.ContextOuterClass.Slice 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 context.ContextOuterClass.Service parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Slice parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.Service parseDelimitedFrom( + public static context.ContextOuterClass.Slice 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 context.ContextOuterClass.Service parseFrom( + public static context.ContextOuterClass.Slice parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Service parseFrom( + public static context.ContextOuterClass.Slice parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -23928,7 +36674,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.Service prototype) { + public static Builder newBuilder(context.ContextOuterClass.Slice prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -23944,26 +36690,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.Service} + * Protobuf type {@code context.Slice} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Service) - context.ContextOuterClass.ServiceOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Slice) + context.ContextOuterClass.SliceOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Service_descriptor; + return context.ContextOuterClass.internal_static_context_Slice_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Service_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Slice_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Service.class, context.ContextOuterClass.Service.Builder.class); + context.ContextOuterClass.Slice.class, context.ContextOuterClass.Slice.Builder.class); } - // Construct using context.ContextOuterClass.Service.newBuilder() + // Construct using context.ContextOuterClass.Slice.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -23976,2588 +36722,1990 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getServiceEndpointIdsFieldBuilder(); - getServiceConstraintsFieldBuilder(); + getSliceEndpointIdsFieldBuilder(); + getSliceConstraintsFieldBuilder(); + getSliceServiceIdsFieldBuilder(); + getSliceSubsliceIdsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (serviceIdBuilder_ == null) { - serviceId_ = null; + if (sliceIdBuilder_ == null) { + sliceId_ = null; } else { - serviceId_ = null; - serviceIdBuilder_ = null; + sliceId_ = null; + sliceIdBuilder_ = null; } - serviceType_ = 0; + name_ = ""; - if (serviceEndpointIdsBuilder_ == null) { - serviceEndpointIds_ = java.util.Collections.emptyList(); + if (sliceEndpointIdsBuilder_ == null) { + sliceEndpointIds_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); } else { - serviceEndpointIdsBuilder_.clear(); + sliceEndpointIdsBuilder_.clear(); } - if (serviceConstraintsBuilder_ == null) { - serviceConstraints_ = java.util.Collections.emptyList(); + if (sliceConstraintsBuilder_ == null) { + sliceConstraints_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000002); } else { - serviceConstraintsBuilder_.clear(); - } - if (serviceStatusBuilder_ == null) { - serviceStatus_ = null; - } else { - serviceStatus_ = null; - serviceStatusBuilder_ = null; - } - if (serviceConfigBuilder_ == null) { - serviceConfig_ = null; - } else { - serviceConfig_ = null; - serviceConfigBuilder_ = null; - } - if (timestampBuilder_ == null) { - timestamp_ = null; - } else { - timestamp_ = null; - timestampBuilder_ = null; - } - return this; - } - - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor - getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Service_descriptor; - } - - @java.lang.Override - public context.ContextOuterClass.Service getDefaultInstanceForType() { - return context.ContextOuterClass.Service.getDefaultInstance(); - } - - @java.lang.Override - public context.ContextOuterClass.Service build() { - context.ContextOuterClass.Service result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; - } - - @java.lang.Override - public context.ContextOuterClass.Service buildPartial() { - context.ContextOuterClass.Service result = new context.ContextOuterClass.Service(this); - int from_bitField0_ = bitField0_; - if (serviceIdBuilder_ == null) { - result.serviceId_ = serviceId_; - } else { - result.serviceId_ = serviceIdBuilder_.build(); - } - result.serviceType_ = serviceType_; - if (serviceEndpointIdsBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { - serviceEndpointIds_ = java.util.Collections.unmodifiableList(serviceEndpointIds_); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.serviceEndpointIds_ = serviceEndpointIds_; - } else { - result.serviceEndpointIds_ = serviceEndpointIdsBuilder_.build(); - } - if (serviceConstraintsBuilder_ == null) { - if (((bitField0_ & 0x00000002) != 0)) { - serviceConstraints_ = java.util.Collections.unmodifiableList(serviceConstraints_); - bitField0_ = (bitField0_ & ~0x00000002); - } - result.serviceConstraints_ = serviceConstraints_; - } else { - result.serviceConstraints_ = serviceConstraintsBuilder_.build(); - } - if (serviceStatusBuilder_ == null) { - result.serviceStatus_ = serviceStatus_; - } else { - result.serviceStatus_ = serviceStatusBuilder_.build(); - } - if (serviceConfigBuilder_ == null) { - result.serviceConfig_ = serviceConfig_; - } else { - result.serviceConfig_ = serviceConfigBuilder_.build(); - } - if (timestampBuilder_ == null) { - result.timestamp_ = timestamp_; - } else { - result.timestamp_ = timestampBuilder_.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 context.ContextOuterClass.Service) { - return mergeFrom((context.ContextOuterClass.Service)other); - } else { - super.mergeFrom(other); - return this; - } - } - - public Builder mergeFrom(context.ContextOuterClass.Service other) { - if (other == context.ContextOuterClass.Service.getDefaultInstance()) return this; - if (other.hasServiceId()) { - mergeServiceId(other.getServiceId()); - } - if (other.serviceType_ != 0) { - setServiceTypeValue(other.getServiceTypeValue()); - } - if (serviceEndpointIdsBuilder_ == null) { - if (!other.serviceEndpointIds_.isEmpty()) { - if (serviceEndpointIds_.isEmpty()) { - serviceEndpointIds_ = other.serviceEndpointIds_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureServiceEndpointIdsIsMutable(); - serviceEndpointIds_.addAll(other.serviceEndpointIds_); - } - onChanged(); - } - } else { - if (!other.serviceEndpointIds_.isEmpty()) { - if (serviceEndpointIdsBuilder_.isEmpty()) { - serviceEndpointIdsBuilder_.dispose(); - serviceEndpointIdsBuilder_ = null; - serviceEndpointIds_ = other.serviceEndpointIds_; - bitField0_ = (bitField0_ & ~0x00000001); - serviceEndpointIdsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getServiceEndpointIdsFieldBuilder() : null; - } else { - serviceEndpointIdsBuilder_.addAllMessages(other.serviceEndpointIds_); - } - } - } - if (serviceConstraintsBuilder_ == null) { - if (!other.serviceConstraints_.isEmpty()) { - if (serviceConstraints_.isEmpty()) { - serviceConstraints_ = other.serviceConstraints_; - bitField0_ = (bitField0_ & ~0x00000002); - } else { - ensureServiceConstraintsIsMutable(); - serviceConstraints_.addAll(other.serviceConstraints_); - } - onChanged(); - } - } else { - if (!other.serviceConstraints_.isEmpty()) { - if (serviceConstraintsBuilder_.isEmpty()) { - serviceConstraintsBuilder_.dispose(); - serviceConstraintsBuilder_ = null; - serviceConstraints_ = other.serviceConstraints_; - bitField0_ = (bitField0_ & ~0x00000002); - serviceConstraintsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getServiceConstraintsFieldBuilder() : null; - } else { - serviceConstraintsBuilder_.addAllMessages(other.serviceConstraints_); - } - } - } - if (other.hasServiceStatus()) { - mergeServiceStatus(other.getServiceStatus()); - } - if (other.hasServiceConfig()) { - mergeServiceConfig(other.getServiceConfig()); - } - if (other.hasTimestamp()) { - mergeTimestamp(other.getTimestamp()); - } - this.mergeUnknownFields(other.unknownFields); - onChanged(); - return this; - } - - @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 { - context.ContextOuterClass.Service parsedMessage = null; - try { - parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Service) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); - } - } - return this; - } - private int bitField0_; - - private context.ContextOuterClass.ServiceId serviceId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> serviceIdBuilder_; - /** - * <code>.context.ServiceId service_id = 1;</code> - * @return Whether the serviceId field is set. - */ - public boolean hasServiceId() { - return serviceIdBuilder_ != null || serviceId_ != null; - } - /** - * <code>.context.ServiceId service_id = 1;</code> - * @return The serviceId. - */ - public context.ContextOuterClass.ServiceId getServiceId() { - if (serviceIdBuilder_ == null) { - return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; - } else { - return serviceIdBuilder_.getMessage(); + sliceConstraintsBuilder_.clear(); } - } - /** - * <code>.context.ServiceId service_id = 1;</code> - */ - public Builder setServiceId(context.ContextOuterClass.ServiceId value) { - if (serviceIdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - serviceId_ = value; - onChanged(); + if (sliceServiceIdsBuilder_ == null) { + sliceServiceIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); } else { - serviceIdBuilder_.setMessage(value); + sliceServiceIdsBuilder_.clear(); } - - return this; - } - /** - * <code>.context.ServiceId service_id = 1;</code> - */ - public Builder setServiceId( - context.ContextOuterClass.ServiceId.Builder builderForValue) { - if (serviceIdBuilder_ == null) { - serviceId_ = builderForValue.build(); - onChanged(); + if (sliceSubsliceIdsBuilder_ == null) { + sliceSubsliceIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000008); } else { - serviceIdBuilder_.setMessage(builderForValue.build()); + sliceSubsliceIdsBuilder_.clear(); } - - return this; - } - /** - * <code>.context.ServiceId service_id = 1;</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(); + if (sliceStatusBuilder_ == null) { + sliceStatus_ = null; } else { - serviceIdBuilder_.mergeFrom(value); + sliceStatus_ = null; + sliceStatusBuilder_ = null; } - - return this; - } - /** - * <code>.context.ServiceId service_id = 1;</code> - */ - public Builder clearServiceId() { - if (serviceIdBuilder_ == null) { - serviceId_ = null; - onChanged(); + if (sliceConfigBuilder_ == null) { + sliceConfig_ = null; } else { - serviceId_ = null; - serviceIdBuilder_ = null; - } - - return this; - } - /** - * <code>.context.ServiceId service_id = 1;</code> - */ - public context.ContextOuterClass.ServiceId.Builder getServiceIdBuilder() { - - onChanged(); - return getServiceIdFieldBuilder().getBuilder(); - } - /** - * <code>.context.ServiceId service_id = 1;</code> - */ - public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() { - if (serviceIdBuilder_ != null) { - return serviceIdBuilder_.getMessageOrBuilder(); + sliceConfig_ = null; + sliceConfigBuilder_ = null; + } + if (sliceOwnerBuilder_ == null) { + sliceOwner_ = null; } else { - return serviceId_ == null ? - context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; + sliceOwner_ = null; + sliceOwnerBuilder_ = null; } - } - /** - * <code>.context.ServiceId service_id = 1;</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; + if (timestampBuilder_ == null) { + timestamp_ = null; + } else { + timestamp_ = null; + timestampBuilder_ = null; } - return serviceIdBuilder_; - } - - private int serviceType_ = 0; - /** - * <code>.context.ServiceTypeEnum service_type = 2;</code> - * @return The enum numeric value on the wire for serviceType. - */ - @java.lang.Override public int getServiceTypeValue() { - return serviceType_; - } - /** - * <code>.context.ServiceTypeEnum service_type = 2;</code> - * @param value The enum numeric value on the wire for serviceType to set. - * @return This builder for chaining. - */ - public Builder setServiceTypeValue(int value) { - - serviceType_ = value; - onChanged(); return this; } - /** - * <code>.context.ServiceTypeEnum service_type = 2;</code> - * @return The serviceType. - */ + @java.lang.Override - public context.ContextOuterClass.ServiceTypeEnum getServiceType() { - @SuppressWarnings("deprecation") - context.ContextOuterClass.ServiceTypeEnum result = context.ContextOuterClass.ServiceTypeEnum.valueOf(serviceType_); - return result == null ? context.ContextOuterClass.ServiceTypeEnum.UNRECOGNIZED : result; - } - /** - * <code>.context.ServiceTypeEnum service_type = 2;</code> - * @param value The serviceType to set. - * @return This builder for chaining. - */ - public Builder setServiceType(context.ContextOuterClass.ServiceTypeEnum value) { - if (value == null) { - throw new NullPointerException(); - } - - serviceType_ = value.getNumber(); - onChanged(); - return this; - } - /** - * <code>.context.ServiceTypeEnum service_type = 2;</code> - * @return This builder for chaining. - */ - public Builder clearServiceType() { - - serviceType_ = 0; - onChanged(); - return this; + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return context.ContextOuterClass.internal_static_context_Slice_descriptor; } - private java.util.List<context.ContextOuterClass.EndPointId> serviceEndpointIds_ = - java.util.Collections.emptyList(); - private void ensureServiceEndpointIdsIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - serviceEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(serviceEndpointIds_); - bitField0_ |= 0x00000001; - } + @java.lang.Override + public context.ContextOuterClass.Slice getDefaultInstanceForType() { + return context.ContextOuterClass.Slice.getDefaultInstance(); } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> serviceEndpointIdsBuilder_; - - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> - */ - public java.util.List<context.ContextOuterClass.EndPointId> getServiceEndpointIdsList() { - if (serviceEndpointIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(serviceEndpointIds_); - } else { - return serviceEndpointIdsBuilder_.getMessageList(); + @java.lang.Override + public context.ContextOuterClass.Slice build() { + context.ContextOuterClass.Slice result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); } + return result; } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> - */ - public int getServiceEndpointIdsCount() { - if (serviceEndpointIdsBuilder_ == null) { - return serviceEndpointIds_.size(); + + @java.lang.Override + public context.ContextOuterClass.Slice buildPartial() { + context.ContextOuterClass.Slice result = new context.ContextOuterClass.Slice(this); + int from_bitField0_ = bitField0_; + if (sliceIdBuilder_ == null) { + result.sliceId_ = sliceId_; } else { - return serviceEndpointIdsBuilder_.getCount(); + result.sliceId_ = sliceIdBuilder_.build(); } - } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> - */ - public context.ContextOuterClass.EndPointId getServiceEndpointIds(int index) { - if (serviceEndpointIdsBuilder_ == null) { - return serviceEndpointIds_.get(index); + result.name_ = name_; + if (sliceEndpointIdsBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + sliceEndpointIds_ = java.util.Collections.unmodifiableList(sliceEndpointIds_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.sliceEndpointIds_ = sliceEndpointIds_; } else { - return serviceEndpointIdsBuilder_.getMessage(index); + result.sliceEndpointIds_ = sliceEndpointIdsBuilder_.build(); } - } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> - */ - public Builder setServiceEndpointIds( - int index, context.ContextOuterClass.EndPointId value) { - if (serviceEndpointIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + if (sliceConstraintsBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0)) { + sliceConstraints_ = java.util.Collections.unmodifiableList(sliceConstraints_); + bitField0_ = (bitField0_ & ~0x00000002); } - ensureServiceEndpointIdsIsMutable(); - serviceEndpointIds_.set(index, value); - onChanged(); + result.sliceConstraints_ = sliceConstraints_; } else { - serviceEndpointIdsBuilder_.setMessage(index, value); + result.sliceConstraints_ = sliceConstraintsBuilder_.build(); } - return this; - } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> - */ - public Builder setServiceEndpointIds( - int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (serviceEndpointIdsBuilder_ == null) { - ensureServiceEndpointIdsIsMutable(); - serviceEndpointIds_.set(index, builderForValue.build()); - onChanged(); + if (sliceServiceIdsBuilder_ == null) { + if (((bitField0_ & 0x00000004) != 0)) { + sliceServiceIds_ = java.util.Collections.unmodifiableList(sliceServiceIds_); + bitField0_ = (bitField0_ & ~0x00000004); + } + result.sliceServiceIds_ = sliceServiceIds_; } else { - serviceEndpointIdsBuilder_.setMessage(index, builderForValue.build()); + result.sliceServiceIds_ = sliceServiceIdsBuilder_.build(); } - return this; - } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> - */ - public Builder addServiceEndpointIds(context.ContextOuterClass.EndPointId value) { - if (serviceEndpointIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + if (sliceSubsliceIdsBuilder_ == null) { + if (((bitField0_ & 0x00000008) != 0)) { + sliceSubsliceIds_ = java.util.Collections.unmodifiableList(sliceSubsliceIds_); + bitField0_ = (bitField0_ & ~0x00000008); } - ensureServiceEndpointIdsIsMutable(); - serviceEndpointIds_.add(value); - onChanged(); + result.sliceSubsliceIds_ = sliceSubsliceIds_; } else { - serviceEndpointIdsBuilder_.addMessage(value); + result.sliceSubsliceIds_ = sliceSubsliceIdsBuilder_.build(); } - return this; - } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> - */ - public Builder addServiceEndpointIds( - int index, context.ContextOuterClass.EndPointId value) { - if (serviceEndpointIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureServiceEndpointIdsIsMutable(); - serviceEndpointIds_.add(index, value); - onChanged(); + if (sliceStatusBuilder_ == null) { + result.sliceStatus_ = sliceStatus_; } else { - serviceEndpointIdsBuilder_.addMessage(index, value); + result.sliceStatus_ = sliceStatusBuilder_.build(); } - return this; - } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> - */ - public Builder addServiceEndpointIds( - context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (serviceEndpointIdsBuilder_ == null) { - ensureServiceEndpointIdsIsMutable(); - serviceEndpointIds_.add(builderForValue.build()); - onChanged(); + if (sliceConfigBuilder_ == null) { + result.sliceConfig_ = sliceConfig_; } else { - serviceEndpointIdsBuilder_.addMessage(builderForValue.build()); + result.sliceConfig_ = sliceConfigBuilder_.build(); } - return this; - } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> - */ - public Builder addServiceEndpointIds( - int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (serviceEndpointIdsBuilder_ == null) { - ensureServiceEndpointIdsIsMutable(); - serviceEndpointIds_.add(index, builderForValue.build()); - onChanged(); + if (sliceOwnerBuilder_ == null) { + result.sliceOwner_ = sliceOwner_; } else { - serviceEndpointIdsBuilder_.addMessage(index, builderForValue.build()); + result.sliceOwner_ = sliceOwnerBuilder_.build(); } - return this; - } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> - */ - public Builder addAllServiceEndpointIds( - java.lang.Iterable<? extends context.ContextOuterClass.EndPointId> values) { - if (serviceEndpointIdsBuilder_ == null) { - ensureServiceEndpointIdsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, serviceEndpointIds_); - onChanged(); + if (timestampBuilder_ == null) { + result.timestamp_ = timestamp_; } else { - serviceEndpointIdsBuilder_.addAllMessages(values); + result.timestamp_ = timestampBuilder_.build(); } - return this; + onBuilt(); + return result; } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> - */ - public Builder clearServiceEndpointIds() { - if (serviceEndpointIdsBuilder_ == null) { - serviceEndpointIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); + + @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 context.ContextOuterClass.Slice) { + return mergeFrom((context.ContextOuterClass.Slice)other); } else { - serviceEndpointIdsBuilder_.clear(); + super.mergeFrom(other); + return this; } - return this; } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> - */ - public Builder removeServiceEndpointIds(int index) { - if (serviceEndpointIdsBuilder_ == null) { - ensureServiceEndpointIdsIsMutable(); - serviceEndpointIds_.remove(index); + + public Builder mergeFrom(context.ContextOuterClass.Slice other) { + if (other == context.ContextOuterClass.Slice.getDefaultInstance()) return this; + if (other.hasSliceId()) { + mergeSliceId(other.getSliceId()); + } + if (!other.getName().isEmpty()) { + name_ = other.name_; onChanged(); + } + if (sliceEndpointIdsBuilder_ == null) { + if (!other.sliceEndpointIds_.isEmpty()) { + if (sliceEndpointIds_.isEmpty()) { + sliceEndpointIds_ = other.sliceEndpointIds_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureSliceEndpointIdsIsMutable(); + sliceEndpointIds_.addAll(other.sliceEndpointIds_); + } + onChanged(); + } } else { - serviceEndpointIdsBuilder_.remove(index); + if (!other.sliceEndpointIds_.isEmpty()) { + if (sliceEndpointIdsBuilder_.isEmpty()) { + sliceEndpointIdsBuilder_.dispose(); + sliceEndpointIdsBuilder_ = null; + sliceEndpointIds_ = other.sliceEndpointIds_; + bitField0_ = (bitField0_ & ~0x00000001); + sliceEndpointIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getSliceEndpointIdsFieldBuilder() : null; + } else { + sliceEndpointIdsBuilder_.addAllMessages(other.sliceEndpointIds_); + } + } } - return this; - } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> - */ - public context.ContextOuterClass.EndPointId.Builder getServiceEndpointIdsBuilder( - int index) { - return getServiceEndpointIdsFieldBuilder().getBuilder(index); - } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> - */ - public context.ContextOuterClass.EndPointIdOrBuilder getServiceEndpointIdsOrBuilder( - int index) { - if (serviceEndpointIdsBuilder_ == null) { - return serviceEndpointIds_.get(index); } else { - return serviceEndpointIdsBuilder_.getMessageOrBuilder(index); + if (sliceConstraintsBuilder_ == null) { + if (!other.sliceConstraints_.isEmpty()) { + if (sliceConstraints_.isEmpty()) { + sliceConstraints_ = other.sliceConstraints_; + bitField0_ = (bitField0_ & ~0x00000002); + } else { + ensureSliceConstraintsIsMutable(); + sliceConstraints_.addAll(other.sliceConstraints_); + } + onChanged(); + } + } else { + if (!other.sliceConstraints_.isEmpty()) { + if (sliceConstraintsBuilder_.isEmpty()) { + sliceConstraintsBuilder_.dispose(); + sliceConstraintsBuilder_ = null; + sliceConstraints_ = other.sliceConstraints_; + bitField0_ = (bitField0_ & ~0x00000002); + sliceConstraintsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getSliceConstraintsFieldBuilder() : null; + } else { + sliceConstraintsBuilder_.addAllMessages(other.sliceConstraints_); + } + } } - } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> - */ - public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> - getServiceEndpointIdsOrBuilderList() { - if (serviceEndpointIdsBuilder_ != null) { - return serviceEndpointIdsBuilder_.getMessageOrBuilderList(); + if (sliceServiceIdsBuilder_ == null) { + if (!other.sliceServiceIds_.isEmpty()) { + if (sliceServiceIds_.isEmpty()) { + sliceServiceIds_ = other.sliceServiceIds_; + bitField0_ = (bitField0_ & ~0x00000004); + } else { + ensureSliceServiceIdsIsMutable(); + sliceServiceIds_.addAll(other.sliceServiceIds_); + } + onChanged(); + } } else { - return java.util.Collections.unmodifiableList(serviceEndpointIds_); + if (!other.sliceServiceIds_.isEmpty()) { + if (sliceServiceIdsBuilder_.isEmpty()) { + sliceServiceIdsBuilder_.dispose(); + sliceServiceIdsBuilder_ = null; + sliceServiceIds_ = other.sliceServiceIds_; + bitField0_ = (bitField0_ & ~0x00000004); + sliceServiceIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getSliceServiceIdsFieldBuilder() : null; + } else { + sliceServiceIdsBuilder_.addAllMessages(other.sliceServiceIds_); + } + } } - } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> - */ - public context.ContextOuterClass.EndPointId.Builder addServiceEndpointIdsBuilder() { - return getServiceEndpointIdsFieldBuilder().addBuilder( - context.ContextOuterClass.EndPointId.getDefaultInstance()); - } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> - */ - public context.ContextOuterClass.EndPointId.Builder addServiceEndpointIdsBuilder( - int index) { - return getServiceEndpointIdsFieldBuilder().addBuilder( - index, context.ContextOuterClass.EndPointId.getDefaultInstance()); - } - /** - * <code>repeated .context.EndPointId service_endpoint_ids = 3;</code> - */ - public java.util.List<context.ContextOuterClass.EndPointId.Builder> - getServiceEndpointIdsBuilderList() { - return getServiceEndpointIdsFieldBuilder().getBuilderList(); - } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> - getServiceEndpointIdsFieldBuilder() { - if (serviceEndpointIdsBuilder_ == null) { - serviceEndpointIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( - serviceEndpointIds_, - ((bitField0_ & 0x00000001) != 0), - getParentForChildren(), - isClean()); - serviceEndpointIds_ = null; + if (sliceSubsliceIdsBuilder_ == null) { + if (!other.sliceSubsliceIds_.isEmpty()) { + if (sliceSubsliceIds_.isEmpty()) { + sliceSubsliceIds_ = other.sliceSubsliceIds_; + bitField0_ = (bitField0_ & ~0x00000008); + } else { + ensureSliceSubsliceIdsIsMutable(); + sliceSubsliceIds_.addAll(other.sliceSubsliceIds_); + } + onChanged(); + } + } else { + if (!other.sliceSubsliceIds_.isEmpty()) { + if (sliceSubsliceIdsBuilder_.isEmpty()) { + sliceSubsliceIdsBuilder_.dispose(); + sliceSubsliceIdsBuilder_ = null; + sliceSubsliceIds_ = other.sliceSubsliceIds_; + bitField0_ = (bitField0_ & ~0x00000008); + sliceSubsliceIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getSliceSubsliceIdsFieldBuilder() : null; + } else { + sliceSubsliceIdsBuilder_.addAllMessages(other.sliceSubsliceIds_); + } + } } - return serviceEndpointIdsBuilder_; + if (other.hasSliceStatus()) { + mergeSliceStatus(other.getSliceStatus()); + } + if (other.hasSliceConfig()) { + mergeSliceConfig(other.getSliceConfig()); + } + if (other.hasSliceOwner()) { + mergeSliceOwner(other.getSliceOwner()); + } + if (other.hasTimestamp()) { + mergeTimestamp(other.getTimestamp()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; } - private java.util.List<context.ContextOuterClass.Constraint> serviceConstraints_ = - java.util.Collections.emptyList(); - private void ensureServiceConstraintsIsMutable() { - if (!((bitField0_ & 0x00000002) != 0)) { - serviceConstraints_ = new java.util.ArrayList<context.ContextOuterClass.Constraint>(serviceConstraints_); - bitField0_ |= 0x00000002; - } + @java.lang.Override + public final boolean isInitialized() { + return true; } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Constraint, context.ContextOuterClass.Constraint.Builder, context.ContextOuterClass.ConstraintOrBuilder> serviceConstraintsBuilder_; - - /** - * <code>repeated .context.Constraint service_constraints = 4;</code> - */ - public java.util.List<context.ContextOuterClass.Constraint> getServiceConstraintsList() { - if (serviceConstraintsBuilder_ == null) { - return java.util.Collections.unmodifiableList(serviceConstraints_); - } else { - return serviceConstraintsBuilder_.getMessageList(); + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + context.ContextOuterClass.Slice parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.Slice) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } } + return this; } + private int bitField0_; + + private context.ContextOuterClass.SliceId sliceId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> sliceIdBuilder_; /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>.context.SliceId slice_id = 1;</code> + * @return Whether the sliceId field is set. */ - public int getServiceConstraintsCount() { - if (serviceConstraintsBuilder_ == null) { - return serviceConstraints_.size(); - } else { - return serviceConstraintsBuilder_.getCount(); - } + public boolean hasSliceId() { + return sliceIdBuilder_ != null || sliceId_ != null; } /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>.context.SliceId slice_id = 1;</code> + * @return The sliceId. */ - public context.ContextOuterClass.Constraint getServiceConstraints(int index) { - if (serviceConstraintsBuilder_ == null) { - return serviceConstraints_.get(index); + public context.ContextOuterClass.SliceId getSliceId() { + if (sliceIdBuilder_ == null) { + return sliceId_ == null ? context.ContextOuterClass.SliceId.getDefaultInstance() : sliceId_; } else { - return serviceConstraintsBuilder_.getMessage(index); + return sliceIdBuilder_.getMessage(); } } /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>.context.SliceId slice_id = 1;</code> */ - public Builder setServiceConstraints( - int index, context.ContextOuterClass.Constraint value) { - if (serviceConstraintsBuilder_ == null) { + public Builder setSliceId(context.ContextOuterClass.SliceId value) { + if (sliceIdBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureServiceConstraintsIsMutable(); - serviceConstraints_.set(index, value); + sliceId_ = value; onChanged(); } else { - serviceConstraintsBuilder_.setMessage(index, value); + sliceIdBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>.context.SliceId slice_id = 1;</code> */ - public Builder setServiceConstraints( - int index, context.ContextOuterClass.Constraint.Builder builderForValue) { - if (serviceConstraintsBuilder_ == null) { - ensureServiceConstraintsIsMutable(); - serviceConstraints_.set(index, builderForValue.build()); + public Builder setSliceId( + context.ContextOuterClass.SliceId.Builder builderForValue) { + if (sliceIdBuilder_ == null) { + sliceId_ = builderForValue.build(); onChanged(); } else { - serviceConstraintsBuilder_.setMessage(index, builderForValue.build()); + sliceIdBuilder_.setMessage(builderForValue.build()); } + return this; } /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>.context.SliceId slice_id = 1;</code> */ - public Builder addServiceConstraints(context.ContextOuterClass.Constraint value) { - if (serviceConstraintsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + public Builder mergeSliceId(context.ContextOuterClass.SliceId value) { + if (sliceIdBuilder_ == null) { + if (sliceId_ != null) { + sliceId_ = + context.ContextOuterClass.SliceId.newBuilder(sliceId_).mergeFrom(value).buildPartial(); + } else { + sliceId_ = value; } - ensureServiceConstraintsIsMutable(); - serviceConstraints_.add(value); onChanged(); } else { - serviceConstraintsBuilder_.addMessage(value); + sliceIdBuilder_.mergeFrom(value); } + return this; } /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>.context.SliceId slice_id = 1;</code> */ - public Builder addServiceConstraints( - int index, context.ContextOuterClass.Constraint value) { - if (serviceConstraintsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureServiceConstraintsIsMutable(); - serviceConstraints_.add(index, value); + public Builder clearSliceId() { + if (sliceIdBuilder_ == null) { + sliceId_ = null; onChanged(); } else { - serviceConstraintsBuilder_.addMessage(index, value); + sliceId_ = null; + sliceIdBuilder_ = null; } + return this; } /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>.context.SliceId slice_id = 1;</code> */ - public Builder addServiceConstraints( - context.ContextOuterClass.Constraint.Builder builderForValue) { - if (serviceConstraintsBuilder_ == null) { - ensureServiceConstraintsIsMutable(); - serviceConstraints_.add(builderForValue.build()); - onChanged(); - } else { - serviceConstraintsBuilder_.addMessage(builderForValue.build()); - } - return this; + public context.ContextOuterClass.SliceId.Builder getSliceIdBuilder() { + + onChanged(); + return getSliceIdFieldBuilder().getBuilder(); } /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>.context.SliceId slice_id = 1;</code> */ - public Builder addServiceConstraints( - int index, context.ContextOuterClass.Constraint.Builder builderForValue) { - if (serviceConstraintsBuilder_ == null) { - ensureServiceConstraintsIsMutable(); - serviceConstraints_.add(index, builderForValue.build()); - onChanged(); + public context.ContextOuterClass.SliceIdOrBuilder getSliceIdOrBuilder() { + if (sliceIdBuilder_ != null) { + return sliceIdBuilder_.getMessageOrBuilder(); } else { - serviceConstraintsBuilder_.addMessage(index, builderForValue.build()); + return sliceId_ == null ? + context.ContextOuterClass.SliceId.getDefaultInstance() : sliceId_; } - return this; } /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>.context.SliceId slice_id = 1;</code> */ - public Builder addAllServiceConstraints( - java.lang.Iterable<? extends context.ContextOuterClass.Constraint> values) { - if (serviceConstraintsBuilder_ == null) { - ensureServiceConstraintsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, serviceConstraints_); - onChanged(); - } else { - serviceConstraintsBuilder_.addAllMessages(values); + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> + getSliceIdFieldBuilder() { + if (sliceIdBuilder_ == null) { + sliceIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder>( + getSliceId(), + getParentForChildren(), + isClean()); + sliceId_ = null; } - return this; + return sliceIdBuilder_; } + + private java.lang.Object name_ = ""; /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>string name = 2;</code> + * @return The name. */ - public Builder clearServiceConstraints() { - if (serviceConstraintsBuilder_ == null) { - serviceConstraints_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000002); - onChanged(); + public java.lang.String getName() { + java.lang.Object ref = name_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; } else { - serviceConstraintsBuilder_.clear(); + return (java.lang.String) ref; } - return this; } /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>string name = 2;</code> + * @return The bytes for name. */ - public Builder removeServiceConstraints(int index) { - if (serviceConstraintsBuilder_ == null) { - ensureServiceConstraintsIsMutable(); - serviceConstraints_.remove(index); - onChanged(); + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; } else { - serviceConstraintsBuilder_.remove(index); + return (com.google.protobuf.ByteString) ref; } - return this; - } - /** - * <code>repeated .context.Constraint service_constraints = 4;</code> - */ - public context.ContextOuterClass.Constraint.Builder getServiceConstraintsBuilder( - int index) { - return getServiceConstraintsFieldBuilder().getBuilder(index); } /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>string name = 2;</code> + * @param value The name to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.ConstraintOrBuilder getServiceConstraintsOrBuilder( - int index) { - if (serviceConstraintsBuilder_ == null) { - return serviceConstraints_.get(index); } else { - return serviceConstraintsBuilder_.getMessageOrBuilder(index); - } + public Builder setName( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + name_ = value; + onChanged(); + return this; } /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>string name = 2;</code> + * @return This builder for chaining. */ - public java.util.List<? extends context.ContextOuterClass.ConstraintOrBuilder> - getServiceConstraintsOrBuilderList() { - if (serviceConstraintsBuilder_ != null) { - return serviceConstraintsBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(serviceConstraints_); - } + public Builder clearName() { + + name_ = getDefaultInstance().getName(); + onChanged(); + return this; } /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>string name = 2;</code> + * @param value The bytes for name to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.Constraint.Builder addServiceConstraintsBuilder() { - return getServiceConstraintsFieldBuilder().addBuilder( - context.ContextOuterClass.Constraint.getDefaultInstance()); + public Builder setNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + name_ = value; + onChanged(); + return this; } - /** - * <code>repeated .context.Constraint service_constraints = 4;</code> - */ - public context.ContextOuterClass.Constraint.Builder addServiceConstraintsBuilder( - int index) { - return getServiceConstraintsFieldBuilder().addBuilder( - index, context.ContextOuterClass.Constraint.getDefaultInstance()); + + private java.util.List<context.ContextOuterClass.EndPointId> sliceEndpointIds_ = + java.util.Collections.emptyList(); + private void ensureSliceEndpointIdsIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + sliceEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(sliceEndpointIds_); + bitField0_ |= 0x00000001; + } } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> sliceEndpointIdsBuilder_; + /** - * <code>repeated .context.Constraint service_constraints = 4;</code> + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ - public java.util.List<context.ContextOuterClass.Constraint.Builder> - getServiceConstraintsBuilderList() { - return getServiceConstraintsFieldBuilder().getBuilderList(); - } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Constraint, context.ContextOuterClass.Constraint.Builder, context.ContextOuterClass.ConstraintOrBuilder> - getServiceConstraintsFieldBuilder() { - if (serviceConstraintsBuilder_ == null) { - serviceConstraintsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Constraint, context.ContextOuterClass.Constraint.Builder, context.ContextOuterClass.ConstraintOrBuilder>( - serviceConstraints_, - ((bitField0_ & 0x00000002) != 0), - getParentForChildren(), - isClean()); - serviceConstraints_ = null; + public java.util.List<context.ContextOuterClass.EndPointId> getSliceEndpointIdsList() { + if (sliceEndpointIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(sliceEndpointIds_); + } else { + return sliceEndpointIdsBuilder_.getMessageList(); } - return serviceConstraintsBuilder_; } - - private context.ContextOuterClass.ServiceStatus serviceStatus_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ServiceStatus, context.ContextOuterClass.ServiceStatus.Builder, context.ContextOuterClass.ServiceStatusOrBuilder> serviceStatusBuilder_; /** - * <code>.context.ServiceStatus service_status = 5;</code> - * @return Whether the serviceStatus field is set. + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ - public boolean hasServiceStatus() { - return serviceStatusBuilder_ != null || serviceStatus_ != null; + public int getSliceEndpointIdsCount() { + if (sliceEndpointIdsBuilder_ == null) { + return sliceEndpointIds_.size(); + } else { + return sliceEndpointIdsBuilder_.getCount(); + } } /** - * <code>.context.ServiceStatus service_status = 5;</code> - * @return The serviceStatus. + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ - public context.ContextOuterClass.ServiceStatus getServiceStatus() { - if (serviceStatusBuilder_ == null) { - return serviceStatus_ == null ? context.ContextOuterClass.ServiceStatus.getDefaultInstance() : serviceStatus_; + public context.ContextOuterClass.EndPointId getSliceEndpointIds(int index) { + if (sliceEndpointIdsBuilder_ == null) { + return sliceEndpointIds_.get(index); } else { - return serviceStatusBuilder_.getMessage(); + return sliceEndpointIdsBuilder_.getMessage(index); } } /** - * <code>.context.ServiceStatus service_status = 5;</code> + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ - public Builder setServiceStatus(context.ContextOuterClass.ServiceStatus value) { - if (serviceStatusBuilder_ == null) { + public Builder setSliceEndpointIds( + int index, context.ContextOuterClass.EndPointId value) { + if (sliceEndpointIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - serviceStatus_ = value; + ensureSliceEndpointIdsIsMutable(); + sliceEndpointIds_.set(index, value); onChanged(); } else { - serviceStatusBuilder_.setMessage(value); + sliceEndpointIdsBuilder_.setMessage(index, value); } - return this; } /** - * <code>.context.ServiceStatus service_status = 5;</code> + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ - public Builder setServiceStatus( - context.ContextOuterClass.ServiceStatus.Builder builderForValue) { - if (serviceStatusBuilder_ == null) { - serviceStatus_ = builderForValue.build(); + public Builder setSliceEndpointIds( + int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (sliceEndpointIdsBuilder_ == null) { + ensureSliceEndpointIdsIsMutable(); + sliceEndpointIds_.set(index, builderForValue.build()); onChanged(); } else { - serviceStatusBuilder_.setMessage(builderForValue.build()); + sliceEndpointIdsBuilder_.setMessage(index, builderForValue.build()); } - return this; } /** - * <code>.context.ServiceStatus service_status = 5;</code> + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ - public Builder mergeServiceStatus(context.ContextOuterClass.ServiceStatus value) { - if (serviceStatusBuilder_ == null) { - if (serviceStatus_ != null) { - serviceStatus_ = - context.ContextOuterClass.ServiceStatus.newBuilder(serviceStatus_).mergeFrom(value).buildPartial(); - } else { - serviceStatus_ = value; + public Builder addSliceEndpointIds(context.ContextOuterClass.EndPointId value) { + if (sliceEndpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + ensureSliceEndpointIdsIsMutable(); + sliceEndpointIds_.add(value); onChanged(); } else { - serviceStatusBuilder_.mergeFrom(value); + sliceEndpointIdsBuilder_.addMessage(value); } - return this; } /** - * <code>.context.ServiceStatus service_status = 5;</code> + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ - public Builder clearServiceStatus() { - if (serviceStatusBuilder_ == null) { - serviceStatus_ = null; + public Builder addSliceEndpointIds( + int index, context.ContextOuterClass.EndPointId value) { + if (sliceEndpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSliceEndpointIdsIsMutable(); + sliceEndpointIds_.add(index, value); onChanged(); } else { - serviceStatus_ = null; - serviceStatusBuilder_ = null; + sliceEndpointIdsBuilder_.addMessage(index, value); } - return this; } /** - * <code>.context.ServiceStatus service_status = 5;</code> - */ - public context.ContextOuterClass.ServiceStatus.Builder getServiceStatusBuilder() { - - onChanged(); - return getServiceStatusFieldBuilder().getBuilder(); - } - /** - * <code>.context.ServiceStatus service_status = 5;</code> + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ - public context.ContextOuterClass.ServiceStatusOrBuilder getServiceStatusOrBuilder() { - if (serviceStatusBuilder_ != null) { - return serviceStatusBuilder_.getMessageOrBuilder(); + public Builder addSliceEndpointIds( + context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (sliceEndpointIdsBuilder_ == null) { + ensureSliceEndpointIdsIsMutable(); + sliceEndpointIds_.add(builderForValue.build()); + onChanged(); } else { - return serviceStatus_ == null ? - context.ContextOuterClass.ServiceStatus.getDefaultInstance() : serviceStatus_; + sliceEndpointIdsBuilder_.addMessage(builderForValue.build()); } + return this; } /** - * <code>.context.ServiceStatus service_status = 5;</code> + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ServiceStatus, context.ContextOuterClass.ServiceStatus.Builder, context.ContextOuterClass.ServiceStatusOrBuilder> - getServiceStatusFieldBuilder() { - if (serviceStatusBuilder_ == null) { - serviceStatusBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ServiceStatus, context.ContextOuterClass.ServiceStatus.Builder, context.ContextOuterClass.ServiceStatusOrBuilder>( - getServiceStatus(), - getParentForChildren(), - isClean()); - serviceStatus_ = null; + public Builder addSliceEndpointIds( + int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (sliceEndpointIdsBuilder_ == null) { + ensureSliceEndpointIdsIsMutable(); + sliceEndpointIds_.add(index, builderForValue.build()); + onChanged(); + } else { + sliceEndpointIdsBuilder_.addMessage(index, builderForValue.build()); } - return serviceStatusBuilder_; - } - - private context.ContextOuterClass.ServiceConfig serviceConfig_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ServiceConfig, context.ContextOuterClass.ServiceConfig.Builder, context.ContextOuterClass.ServiceConfigOrBuilder> serviceConfigBuilder_; - /** - * <code>.context.ServiceConfig service_config = 6;</code> - * @return Whether the serviceConfig field is set. - */ - public boolean hasServiceConfig() { - return serviceConfigBuilder_ != null || serviceConfig_ != null; + return this; } /** - * <code>.context.ServiceConfig service_config = 6;</code> - * @return The serviceConfig. + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ - public context.ContextOuterClass.ServiceConfig getServiceConfig() { - if (serviceConfigBuilder_ == null) { - return serviceConfig_ == null ? context.ContextOuterClass.ServiceConfig.getDefaultInstance() : serviceConfig_; + public Builder addAllSliceEndpointIds( + java.lang.Iterable<? extends context.ContextOuterClass.EndPointId> values) { + if (sliceEndpointIdsBuilder_ == null) { + ensureSliceEndpointIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, sliceEndpointIds_); + onChanged(); } else { - return serviceConfigBuilder_.getMessage(); + sliceEndpointIdsBuilder_.addAllMessages(values); } + return this; } /** - * <code>.context.ServiceConfig service_config = 6;</code> + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ - public Builder setServiceConfig(context.ContextOuterClass.ServiceConfig value) { - if (serviceConfigBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - serviceConfig_ = value; + public Builder clearSliceEndpointIds() { + if (sliceEndpointIdsBuilder_ == null) { + sliceEndpointIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { - serviceConfigBuilder_.setMessage(value); + sliceEndpointIdsBuilder_.clear(); } - return this; } /** - * <code>.context.ServiceConfig service_config = 6;</code> + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ - public Builder setServiceConfig( - context.ContextOuterClass.ServiceConfig.Builder builderForValue) { - if (serviceConfigBuilder_ == null) { - serviceConfig_ = builderForValue.build(); + public Builder removeSliceEndpointIds(int index) { + if (sliceEndpointIdsBuilder_ == null) { + ensureSliceEndpointIdsIsMutable(); + sliceEndpointIds_.remove(index); onChanged(); } else { - serviceConfigBuilder_.setMessage(builderForValue.build()); + sliceEndpointIdsBuilder_.remove(index); } - return this; } /** - * <code>.context.ServiceConfig service_config = 6;</code> + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ - public Builder mergeServiceConfig(context.ContextOuterClass.ServiceConfig value) { - if (serviceConfigBuilder_ == null) { - if (serviceConfig_ != null) { - serviceConfig_ = - context.ContextOuterClass.ServiceConfig.newBuilder(serviceConfig_).mergeFrom(value).buildPartial(); - } else { - serviceConfig_ = value; - } - onChanged(); - } else { - serviceConfigBuilder_.mergeFrom(value); + public context.ContextOuterClass.EndPointId.Builder getSliceEndpointIdsBuilder( + int index) { + return getSliceEndpointIdsFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointIdOrBuilder getSliceEndpointIdsOrBuilder( + int index) { + if (sliceEndpointIdsBuilder_ == null) { + return sliceEndpointIds_.get(index); } else { + return sliceEndpointIdsBuilder_.getMessageOrBuilder(index); } - - return this; } /** - * <code>.context.ServiceConfig service_config = 6;</code> + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ - public Builder clearServiceConfig() { - if (serviceConfigBuilder_ == null) { - serviceConfig_ = null; - onChanged(); + public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getSliceEndpointIdsOrBuilderList() { + if (sliceEndpointIdsBuilder_ != null) { + return sliceEndpointIdsBuilder_.getMessageOrBuilderList(); } else { - serviceConfig_ = null; - serviceConfigBuilder_ = null; + return java.util.Collections.unmodifiableList(sliceEndpointIds_); } - - return this; } /** - * <code>.context.ServiceConfig service_config = 6;</code> + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ - public context.ContextOuterClass.ServiceConfig.Builder getServiceConfigBuilder() { - - onChanged(); - return getServiceConfigFieldBuilder().getBuilder(); + public context.ContextOuterClass.EndPointId.Builder addSliceEndpointIdsBuilder() { + return getSliceEndpointIdsFieldBuilder().addBuilder( + context.ContextOuterClass.EndPointId.getDefaultInstance()); } /** - * <code>.context.ServiceConfig service_config = 6;</code> + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ - public context.ContextOuterClass.ServiceConfigOrBuilder getServiceConfigOrBuilder() { - if (serviceConfigBuilder_ != null) { - return serviceConfigBuilder_.getMessageOrBuilder(); - } else { - return serviceConfig_ == null ? - context.ContextOuterClass.ServiceConfig.getDefaultInstance() : serviceConfig_; - } + public context.ContextOuterClass.EndPointId.Builder addSliceEndpointIdsBuilder( + int index) { + return getSliceEndpointIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.EndPointId.getDefaultInstance()); } /** - * <code>.context.ServiceConfig service_config = 6;</code> + * <code>repeated .context.EndPointId slice_endpoint_ids = 3;</code> */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ServiceConfig, context.ContextOuterClass.ServiceConfig.Builder, context.ContextOuterClass.ServiceConfigOrBuilder> - getServiceConfigFieldBuilder() { - if (serviceConfigBuilder_ == null) { - serviceConfigBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ServiceConfig, context.ContextOuterClass.ServiceConfig.Builder, context.ContextOuterClass.ServiceConfigOrBuilder>( - getServiceConfig(), + public java.util.List<context.ContextOuterClass.EndPointId.Builder> + getSliceEndpointIdsBuilderList() { + return getSliceEndpointIdsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> + getSliceEndpointIdsFieldBuilder() { + if (sliceEndpointIdsBuilder_ == null) { + sliceEndpointIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( + sliceEndpointIds_, + ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); - serviceConfig_ = null; + sliceEndpointIds_ = null; } - return serviceConfigBuilder_; + return sliceEndpointIdsBuilder_; } - private context.ContextOuterClass.Timestamp timestamp_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> timestampBuilder_; + private java.util.List<context.ContextOuterClass.Constraint> sliceConstraints_ = + java.util.Collections.emptyList(); + private void ensureSliceConstraintsIsMutable() { + if (!((bitField0_ & 0x00000002) != 0)) { + sliceConstraints_ = new java.util.ArrayList<context.ContextOuterClass.Constraint>(sliceConstraints_); + bitField0_ |= 0x00000002; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Constraint, context.ContextOuterClass.Constraint.Builder, context.ContextOuterClass.ConstraintOrBuilder> sliceConstraintsBuilder_; + + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public java.util.List<context.ContextOuterClass.Constraint> getSliceConstraintsList() { + if (sliceConstraintsBuilder_ == null) { + return java.util.Collections.unmodifiableList(sliceConstraints_); + } else { + return sliceConstraintsBuilder_.getMessageList(); + } + } /** - * <code>.context.Timestamp timestamp = 7;</code> - * @return Whether the timestamp field is set. + * <code>repeated .context.Constraint slice_constraints = 4;</code> */ - public boolean hasTimestamp() { - return timestampBuilder_ != null || timestamp_ != null; + public int getSliceConstraintsCount() { + if (sliceConstraintsBuilder_ == null) { + return sliceConstraints_.size(); + } else { + return sliceConstraintsBuilder_.getCount(); + } } /** - * <code>.context.Timestamp timestamp = 7;</code> - * @return The timestamp. + * <code>repeated .context.Constraint slice_constraints = 4;</code> */ - public context.ContextOuterClass.Timestamp getTimestamp() { - if (timestampBuilder_ == null) { - return timestamp_ == null ? context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_; + public context.ContextOuterClass.Constraint getSliceConstraints(int index) { + if (sliceConstraintsBuilder_ == null) { + return sliceConstraints_.get(index); } else { - return timestampBuilder_.getMessage(); + return sliceConstraintsBuilder_.getMessage(index); } } /** - * <code>.context.Timestamp timestamp = 7;</code> + * <code>repeated .context.Constraint slice_constraints = 4;</code> */ - public Builder setTimestamp(context.ContextOuterClass.Timestamp value) { - if (timestampBuilder_ == null) { + public Builder setSliceConstraints( + int index, context.ContextOuterClass.Constraint value) { + if (sliceConstraintsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - timestamp_ = value; + ensureSliceConstraintsIsMutable(); + sliceConstraints_.set(index, value); onChanged(); } else { - timestampBuilder_.setMessage(value); + sliceConstraintsBuilder_.setMessage(index, value); } - return this; } /** - * <code>.context.Timestamp timestamp = 7;</code> + * <code>repeated .context.Constraint slice_constraints = 4;</code> */ - public Builder setTimestamp( - context.ContextOuterClass.Timestamp.Builder builderForValue) { - if (timestampBuilder_ == null) { - timestamp_ = builderForValue.build(); + public Builder setSliceConstraints( + int index, context.ContextOuterClass.Constraint.Builder builderForValue) { + if (sliceConstraintsBuilder_ == null) { + ensureSliceConstraintsIsMutable(); + sliceConstraints_.set(index, builderForValue.build()); onChanged(); } else { - timestampBuilder_.setMessage(builderForValue.build()); + sliceConstraintsBuilder_.setMessage(index, builderForValue.build()); } - return this; } /** - * <code>.context.Timestamp timestamp = 7;</code> + * <code>repeated .context.Constraint slice_constraints = 4;</code> */ - public Builder mergeTimestamp(context.ContextOuterClass.Timestamp value) { - if (timestampBuilder_ == null) { - if (timestamp_ != null) { - timestamp_ = - context.ContextOuterClass.Timestamp.newBuilder(timestamp_).mergeFrom(value).buildPartial(); - } else { - timestamp_ = value; + public Builder addSliceConstraints(context.ContextOuterClass.Constraint value) { + if (sliceConstraintsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + ensureSliceConstraintsIsMutable(); + sliceConstraints_.add(value); onChanged(); } else { - timestampBuilder_.mergeFrom(value); + sliceConstraintsBuilder_.addMessage(value); } - return this; } /** - * <code>.context.Timestamp timestamp = 7;</code> + * <code>repeated .context.Constraint slice_constraints = 4;</code> */ - public Builder clearTimestamp() { - if (timestampBuilder_ == null) { - timestamp_ = null; + public Builder addSliceConstraints( + int index, context.ContextOuterClass.Constraint value) { + if (sliceConstraintsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSliceConstraintsIsMutable(); + sliceConstraints_.add(index, value); onChanged(); } else { - timestamp_ = null; - timestampBuilder_ = null; + sliceConstraintsBuilder_.addMessage(index, value); } - return this; } /** - * <code>.context.Timestamp timestamp = 7;</code> + * <code>repeated .context.Constraint slice_constraints = 4;</code> */ - public context.ContextOuterClass.Timestamp.Builder getTimestampBuilder() { - - onChanged(); - return getTimestampFieldBuilder().getBuilder(); + public Builder addSliceConstraints( + context.ContextOuterClass.Constraint.Builder builderForValue) { + if (sliceConstraintsBuilder_ == null) { + ensureSliceConstraintsIsMutable(); + sliceConstraints_.add(builderForValue.build()); + onChanged(); + } else { + sliceConstraintsBuilder_.addMessage(builderForValue.build()); + } + return this; } /** - * <code>.context.Timestamp timestamp = 7;</code> + * <code>repeated .context.Constraint slice_constraints = 4;</code> */ - public context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder() { - if (timestampBuilder_ != null) { - return timestampBuilder_.getMessageOrBuilder(); + public Builder addSliceConstraints( + int index, context.ContextOuterClass.Constraint.Builder builderForValue) { + if (sliceConstraintsBuilder_ == null) { + ensureSliceConstraintsIsMutable(); + sliceConstraints_.add(index, builderForValue.build()); + onChanged(); } else { - return timestamp_ == null ? - context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_; + sliceConstraintsBuilder_.addMessage(index, builderForValue.build()); } + return this; } /** - * <code>.context.Timestamp timestamp = 7;</code> + * <code>repeated .context.Constraint slice_constraints = 4;</code> */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> - getTimestampFieldBuilder() { - if (timestampBuilder_ == null) { - timestampBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder>( - getTimestamp(), - getParentForChildren(), - isClean()); - timestamp_ = null; + public Builder addAllSliceConstraints( + java.lang.Iterable<? extends context.ContextOuterClass.Constraint> values) { + if (sliceConstraintsBuilder_ == null) { + ensureSliceConstraintsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, sliceConstraints_); + onChanged(); + } else { + sliceConstraintsBuilder_.addAllMessages(values); } - return timestampBuilder_; - } - @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:context.Service) - } - - // @@protoc_insertion_point(class_scope:context.Service) - private static final context.ContextOuterClass.Service DEFAULT_INSTANCE; - static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Service(); - } - - public static context.ContextOuterClass.Service getDefaultInstance() { - return DEFAULT_INSTANCE; - } - - private static final com.google.protobuf.Parser<Service> - PARSER = new com.google.protobuf.AbstractParser<Service>() { - @java.lang.Override - public Service parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return new Service(input, extensionRegistry); - } - }; - - public static com.google.protobuf.Parser<Service> parser() { - return PARSER; - } - - @java.lang.Override - public com.google.protobuf.Parser<Service> getParserForType() { - return PARSER; - } - - @java.lang.Override - public context.ContextOuterClass.Service getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - - } - - public interface ServiceStatusOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ServiceStatus) - com.google.protobuf.MessageOrBuilder { - - /** - * <code>.context.ServiceStatusEnum service_status = 1;</code> - * @return The enum numeric value on the wire for serviceStatus. - */ - int getServiceStatusValue(); - /** - * <code>.context.ServiceStatusEnum service_status = 1;</code> - * @return The serviceStatus. - */ - context.ContextOuterClass.ServiceStatusEnum getServiceStatus(); - } - /** - * Protobuf type {@code context.ServiceStatus} - */ - public static final class ServiceStatus extends - com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ServiceStatus) - ServiceStatusOrBuilder { - private static final long serialVersionUID = 0L; - // Use ServiceStatus.newBuilder() to construct. - private ServiceStatus(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { - super(builder); - } - private ServiceStatus() { - serviceStatus_ = 0; - } - - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new ServiceStatus(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } - private ServiceStatus( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - this(); - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); + return this; } - 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 8: { - int rawValue = input.readEnum(); - - serviceStatus_ = rawValue; - break; - } - default: { - if (!parseUnknownField( - input, unknownFields, extensionRegistry, tag)) { - done = true; - } - break; - } - } + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public Builder clearSliceConstraints() { + if (sliceConstraintsBuilder_ == null) { + sliceConstraints_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + } else { + sliceConstraintsBuilder_.clear(); } - } 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 { - this.unknownFields = unknownFields.build(); - makeExtensionsImmutable(); - } - } - public static final com.google.protobuf.Descriptors.Descriptor - getDescriptor() { - return context.ContextOuterClass.internal_static_context_ServiceStatus_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ServiceStatus_fieldAccessorTable - .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ServiceStatus.class, context.ContextOuterClass.ServiceStatus.Builder.class); - } - - public static final int SERVICE_STATUS_FIELD_NUMBER = 1; - private int serviceStatus_; - /** - * <code>.context.ServiceStatusEnum service_status = 1;</code> - * @return The enum numeric value on the wire for serviceStatus. - */ - @java.lang.Override public int getServiceStatusValue() { - return serviceStatus_; - } - /** - * <code>.context.ServiceStatusEnum service_status = 1;</code> - * @return The serviceStatus. - */ - @java.lang.Override public context.ContextOuterClass.ServiceStatusEnum getServiceStatus() { - @SuppressWarnings("deprecation") - context.ContextOuterClass.ServiceStatusEnum result = context.ContextOuterClass.ServiceStatusEnum.valueOf(serviceStatus_); - return result == null ? context.ContextOuterClass.ServiceStatusEnum.UNRECOGNIZED : result; - } - - 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 (serviceStatus_ != context.ContextOuterClass.ServiceStatusEnum.SERVICESTATUS_UNDEFINED.getNumber()) { - output.writeEnum(1, serviceStatus_); - } - unknownFields.writeTo(output); - } - - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; - - size = 0; - if (serviceStatus_ != context.ContextOuterClass.ServiceStatusEnum.SERVICESTATUS_UNDEFINED.getNumber()) { - size += com.google.protobuf.CodedOutputStream - .computeEnumSize(1, serviceStatus_); - } - 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 context.ContextOuterClass.ServiceStatus)) { - return super.equals(obj); - } - context.ContextOuterClass.ServiceStatus other = (context.ContextOuterClass.ServiceStatus) obj; - - if (serviceStatus_ != other.serviceStatus_) 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(); - hash = (37 * hash) + SERVICE_STATUS_FIELD_NUMBER; - hash = (53 * hash) + serviceStatus_; - hash = (29 * hash) + unknownFields.hashCode(); - memoizedHashCode = hash; - return hash; - } - - public static context.ContextOuterClass.ServiceStatus parseFrom( - java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static context.ContextOuterClass.ServiceStatus parseFrom( - java.nio.ByteBuffer data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static context.ContextOuterClass.ServiceStatus parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static context.ContextOuterClass.ServiceStatus parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static context.ContextOuterClass.ServiceStatus parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static context.ContextOuterClass.ServiceStatus parseFrom( - byte[] data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static context.ContextOuterClass.ServiceStatus parseFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseWithIOException(PARSER, input); - } - public static context.ContextOuterClass.ServiceStatus 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 context.ContextOuterClass.ServiceStatus parseDelimitedFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseDelimitedWithIOException(PARSER, input); - } - public static context.ContextOuterClass.ServiceStatus 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 context.ContextOuterClass.ServiceStatus parseFrom( - com.google.protobuf.CodedInputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseWithIOException(PARSER, input); - } - public static context.ContextOuterClass.ServiceStatus 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(context.ContextOuterClass.ServiceStatus 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; - } - /** - * Protobuf type {@code context.ServiceStatus} - */ - public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ServiceStatus) - context.ContextOuterClass.ServiceStatusOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor - getDescriptor() { - return context.ContextOuterClass.internal_static_context_ServiceStatus_descriptor; + return this; } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ServiceStatus_fieldAccessorTable - .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ServiceStatus.class, context.ContextOuterClass.ServiceStatus.Builder.class); + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public Builder removeSliceConstraints(int index) { + if (sliceConstraintsBuilder_ == null) { + ensureSliceConstraintsIsMutable(); + sliceConstraints_.remove(index); + onChanged(); + } else { + sliceConstraintsBuilder_.remove(index); + } + return this; } - - // Construct using context.ContextOuterClass.ServiceStatus.newBuilder() - private Builder() { - maybeForceBuilderInitialization(); + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public context.ContextOuterClass.Constraint.Builder getSliceConstraintsBuilder( + int index) { + return getSliceConstraintsFieldBuilder().getBuilder(index); } - - private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - super(parent); - maybeForceBuilderInitialization(); + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public context.ContextOuterClass.ConstraintOrBuilder getSliceConstraintsOrBuilder( + int index) { + if (sliceConstraintsBuilder_ == null) { + return sliceConstraints_.get(index); } else { + return sliceConstraintsBuilder_.getMessageOrBuilder(index); + } } - private void maybeForceBuilderInitialization() { - if (com.google.protobuf.GeneratedMessageV3 - .alwaysUseFieldBuilders) { + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public java.util.List<? extends context.ContextOuterClass.ConstraintOrBuilder> + getSliceConstraintsOrBuilderList() { + if (sliceConstraintsBuilder_ != null) { + return sliceConstraintsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(sliceConstraints_); } } - @java.lang.Override - public Builder clear() { - super.clear(); - serviceStatus_ = 0; - - return this; + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public context.ContextOuterClass.Constraint.Builder addSliceConstraintsBuilder() { + return getSliceConstraintsFieldBuilder().addBuilder( + context.ContextOuterClass.Constraint.getDefaultInstance()); } - - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor - getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ServiceStatus_descriptor; + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public context.ContextOuterClass.Constraint.Builder addSliceConstraintsBuilder( + int index) { + return getSliceConstraintsFieldBuilder().addBuilder( + index, context.ContextOuterClass.Constraint.getDefaultInstance()); } - - @java.lang.Override - public context.ContextOuterClass.ServiceStatus getDefaultInstanceForType() { - return context.ContextOuterClass.ServiceStatus.getDefaultInstance(); + /** + * <code>repeated .context.Constraint slice_constraints = 4;</code> + */ + public java.util.List<context.ContextOuterClass.Constraint.Builder> + getSliceConstraintsBuilderList() { + return getSliceConstraintsFieldBuilder().getBuilderList(); } - - @java.lang.Override - public context.ContextOuterClass.ServiceStatus build() { - context.ContextOuterClass.ServiceStatus result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Constraint, context.ContextOuterClass.Constraint.Builder, context.ContextOuterClass.ConstraintOrBuilder> + getSliceConstraintsFieldBuilder() { + if (sliceConstraintsBuilder_ == null) { + sliceConstraintsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Constraint, context.ContextOuterClass.Constraint.Builder, context.ContextOuterClass.ConstraintOrBuilder>( + sliceConstraints_, + ((bitField0_ & 0x00000002) != 0), + getParentForChildren(), + isClean()); + sliceConstraints_ = null; } - return result; + return sliceConstraintsBuilder_; } - @java.lang.Override - public context.ContextOuterClass.ServiceStatus buildPartial() { - context.ContextOuterClass.ServiceStatus result = new context.ContextOuterClass.ServiceStatus(this); - result.serviceStatus_ = serviceStatus_; - onBuilt(); - return result; + private java.util.List<context.ContextOuterClass.ServiceId> sliceServiceIds_ = + java.util.Collections.emptyList(); + private void ensureSliceServiceIdsIsMutable() { + if (!((bitField0_ & 0x00000004) != 0)) { + sliceServiceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(sliceServiceIds_); + bitField0_ |= 0x00000004; + } } - @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); + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> sliceServiceIdsBuilder_; + + /** + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + */ + public java.util.List<context.ContextOuterClass.ServiceId> getSliceServiceIdsList() { + if (sliceServiceIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(sliceServiceIds_); + } else { + return sliceServiceIdsBuilder_.getMessageList(); + } } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + /** + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + */ + public int getSliceServiceIdsCount() { + if (sliceServiceIdsBuilder_ == null) { + return sliceServiceIds_.size(); + } else { + return sliceServiceIdsBuilder_.getCount(); + } } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ServiceStatus) { - return mergeFrom((context.ContextOuterClass.ServiceStatus)other); + /** + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + */ + public context.ContextOuterClass.ServiceId getSliceServiceIds(int index) { + if (sliceServiceIdsBuilder_ == null) { + return sliceServiceIds_.get(index); } else { - super.mergeFrom(other); - return this; + return sliceServiceIdsBuilder_.getMessage(index); } } - - public Builder mergeFrom(context.ContextOuterClass.ServiceStatus other) { - if (other == context.ContextOuterClass.ServiceStatus.getDefaultInstance()) return this; - if (other.serviceStatus_ != 0) { - setServiceStatusValue(other.getServiceStatusValue()); + /** + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + */ + public Builder setSliceServiceIds( + int index, context.ContextOuterClass.ServiceId value) { + if (sliceServiceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSliceServiceIdsIsMutable(); + sliceServiceIds_.set(index, value); + onChanged(); + } else { + sliceServiceIdsBuilder_.setMessage(index, value); } - this.mergeUnknownFields(other.unknownFields); - onChanged(); return this; } - - @java.lang.Override - public final boolean isInitialized() { - return true; + /** + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + */ + public Builder setSliceServiceIds( + int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { + if (sliceServiceIdsBuilder_ == null) { + ensureSliceServiceIdsIsMutable(); + sliceServiceIds_.set(index, builderForValue.build()); + onChanged(); + } else { + sliceServiceIdsBuilder_.setMessage(index, builderForValue.build()); + } + return this; } - - @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - context.ContextOuterClass.ServiceStatus parsedMessage = null; - try { - parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ServiceStatus) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); + /** + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + */ + public Builder addSliceServiceIds(context.ContextOuterClass.ServiceId value) { + if (sliceServiceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + ensureSliceServiceIdsIsMutable(); + sliceServiceIds_.add(value); + onChanged(); + } else { + sliceServiceIdsBuilder_.addMessage(value); } return this; } - - private int serviceStatus_ = 0; /** - * <code>.context.ServiceStatusEnum service_status = 1;</code> - * @return The enum numeric value on the wire for serviceStatus. + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ - @java.lang.Override public int getServiceStatusValue() { - return serviceStatus_; + public Builder addSliceServiceIds( + int index, context.ContextOuterClass.ServiceId value) { + if (sliceServiceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSliceServiceIdsIsMutable(); + sliceServiceIds_.add(index, value); + onChanged(); + } else { + sliceServiceIdsBuilder_.addMessage(index, value); + } + return this; } /** - * <code>.context.ServiceStatusEnum service_status = 1;</code> - * @param value The enum numeric value on the wire for serviceStatus to set. - * @return This builder for chaining. + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ - public Builder setServiceStatusValue(int value) { - - serviceStatus_ = value; - onChanged(); + public Builder addSliceServiceIds( + context.ContextOuterClass.ServiceId.Builder builderForValue) { + if (sliceServiceIdsBuilder_ == null) { + ensureSliceServiceIdsIsMutable(); + sliceServiceIds_.add(builderForValue.build()); + onChanged(); + } else { + sliceServiceIdsBuilder_.addMessage(builderForValue.build()); + } return this; } /** - * <code>.context.ServiceStatusEnum service_status = 1;</code> - * @return The serviceStatus. + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ - @java.lang.Override - public context.ContextOuterClass.ServiceStatusEnum getServiceStatus() { - @SuppressWarnings("deprecation") - context.ContextOuterClass.ServiceStatusEnum result = context.ContextOuterClass.ServiceStatusEnum.valueOf(serviceStatus_); - return result == null ? context.ContextOuterClass.ServiceStatusEnum.UNRECOGNIZED : result; + public Builder addSliceServiceIds( + int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { + if (sliceServiceIdsBuilder_ == null) { + ensureSliceServiceIdsIsMutable(); + sliceServiceIds_.add(index, builderForValue.build()); + onChanged(); + } else { + sliceServiceIdsBuilder_.addMessage(index, builderForValue.build()); + } + return this; } /** - * <code>.context.ServiceStatusEnum service_status = 1;</code> - * @param value The serviceStatus to set. - * @return This builder for chaining. + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ - public Builder setServiceStatus(context.ContextOuterClass.ServiceStatusEnum value) { - if (value == null) { - throw new NullPointerException(); + public Builder addAllSliceServiceIds( + java.lang.Iterable<? extends context.ContextOuterClass.ServiceId> values) { + if (sliceServiceIdsBuilder_ == null) { + ensureSliceServiceIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, sliceServiceIds_); + onChanged(); + } else { + sliceServiceIdsBuilder_.addAllMessages(values); } - - serviceStatus_ = value.getNumber(); - onChanged(); return this; } /** - * <code>.context.ServiceStatusEnum service_status = 1;</code> - * @return This builder for chaining. + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> */ - public Builder clearServiceStatus() { - - serviceStatus_ = 0; - onChanged(); + public Builder clearSliceServiceIds() { + if (sliceServiceIdsBuilder_ == null) { + sliceServiceIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + } else { + sliceServiceIdsBuilder_.clear(); + } return this; } - @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:context.ServiceStatus) - } - - // @@protoc_insertion_point(class_scope:context.ServiceStatus) - private static final context.ContextOuterClass.ServiceStatus DEFAULT_INSTANCE; - static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceStatus(); - } - - public static context.ContextOuterClass.ServiceStatus getDefaultInstance() { - return DEFAULT_INSTANCE; - } - - private static final com.google.protobuf.Parser<ServiceStatus> - PARSER = new com.google.protobuf.AbstractParser<ServiceStatus>() { - @java.lang.Override - public ServiceStatus parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return new ServiceStatus(input, extensionRegistry); - } - }; - - public static com.google.protobuf.Parser<ServiceStatus> parser() { - return PARSER; - } - - @java.lang.Override - public com.google.protobuf.Parser<ServiceStatus> getParserForType() { - return PARSER; - } - - @java.lang.Override - public context.ContextOuterClass.ServiceStatus getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - - } - - public interface ServiceConfigOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ServiceConfig) - com.google.protobuf.MessageOrBuilder { - - /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> - */ - java.util.List<context.ContextOuterClass.ConfigRule> - getConfigRulesList(); - /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> - */ - context.ContextOuterClass.ConfigRule getConfigRules(int index); - /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> - */ - int getConfigRulesCount(); - /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> - */ - java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> - getConfigRulesOrBuilderList(); - /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> - */ - context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( - int index); - } - /** - * Protobuf type {@code context.ServiceConfig} - */ - public static final class ServiceConfig extends - com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ServiceConfig) - ServiceConfigOrBuilder { - private static final long serialVersionUID = 0L; - // Use ServiceConfig.newBuilder() to construct. - private ServiceConfig(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { - super(builder); - } - private ServiceConfig() { - configRules_ = java.util.Collections.emptyList(); - } - - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new ServiceConfig(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } - private ServiceConfig( - 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)) { - configRules_ = new java.util.ArrayList<context.ContextOuterClass.ConfigRule>(); - mutable_bitField0_ |= 0x00000001; - } - configRules_.add( - input.readMessage(context.ContextOuterClass.ConfigRule.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)) { - configRules_ = java.util.Collections.unmodifiableList(configRules_); + /** + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + */ + public Builder removeSliceServiceIds(int index) { + if (sliceServiceIdsBuilder_ == null) { + ensureSliceServiceIdsIsMutable(); + sliceServiceIds_.remove(index); + onChanged(); + } else { + sliceServiceIdsBuilder_.remove(index); } - this.unknownFields = unknownFields.build(); - makeExtensionsImmutable(); + return this; } - } - public static final com.google.protobuf.Descriptors.Descriptor - getDescriptor() { - return context.ContextOuterClass.internal_static_context_ServiceConfig_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ServiceConfig_fieldAccessorTable - .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ServiceConfig.class, context.ContextOuterClass.ServiceConfig.Builder.class); - } - - public static final int CONFIG_RULES_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.ConfigRule> configRules_; - /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> - */ - @java.lang.Override - public java.util.List<context.ContextOuterClass.ConfigRule> getConfigRulesList() { - return configRules_; - } - /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> - */ - @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> - getConfigRulesOrBuilderList() { - return configRules_; - } - /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> - */ - @java.lang.Override - public int getConfigRulesCount() { - return configRules_.size(); - } - /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> - */ - @java.lang.Override - public context.ContextOuterClass.ConfigRule getConfigRules(int index) { - return configRules_.get(index); - } - /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> - */ - @java.lang.Override - public context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( - int index) { - return configRules_.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 < configRules_.size(); i++) { - output.writeMessage(1, configRules_.get(i)); + /** + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + */ + public context.ContextOuterClass.ServiceId.Builder getSliceServiceIdsBuilder( + int index) { + return getSliceServiceIdsFieldBuilder().getBuilder(index); } - unknownFields.writeTo(output); - } - - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; - - size = 0; - for (int i = 0; i < configRules_.size(); i++) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, configRules_.get(i)); + /** + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + */ + public context.ContextOuterClass.ServiceIdOrBuilder getSliceServiceIdsOrBuilder( + int index) { + if (sliceServiceIdsBuilder_ == null) { + return sliceServiceIds_.get(index); } else { + return sliceServiceIdsBuilder_.getMessageOrBuilder(index); + } } - size += unknownFields.getSerializedSize(); - memoizedSize = size; - return size; - } - - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; + /** + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + */ + public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> + getSliceServiceIdsOrBuilderList() { + if (sliceServiceIdsBuilder_ != null) { + return sliceServiceIdsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(sliceServiceIds_); + } } - if (!(obj instanceof context.ContextOuterClass.ServiceConfig)) { - return super.equals(obj); + /** + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + */ + public context.ContextOuterClass.ServiceId.Builder addSliceServiceIdsBuilder() { + return getSliceServiceIdsFieldBuilder().addBuilder( + context.ContextOuterClass.ServiceId.getDefaultInstance()); } - context.ContextOuterClass.ServiceConfig other = (context.ContextOuterClass.ServiceConfig) obj; - - if (!getConfigRulesList() - .equals(other.getConfigRulesList())) return false; - if (!unknownFields.equals(other.unknownFields)) return false; - return true; - } - - @java.lang.Override - public int hashCode() { - if (memoizedHashCode != 0) { - return memoizedHashCode; + /** + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + */ + public context.ContextOuterClass.ServiceId.Builder addSliceServiceIdsBuilder( + int index) { + return getSliceServiceIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.ServiceId.getDefaultInstance()); } - int hash = 41; - hash = (19 * hash) + getDescriptor().hashCode(); - if (getConfigRulesCount() > 0) { - hash = (37 * hash) + CONFIG_RULES_FIELD_NUMBER; - hash = (53 * hash) + getConfigRulesList().hashCode(); + /** + * <code>repeated .context.ServiceId slice_service_ids = 5;</code> + */ + public java.util.List<context.ContextOuterClass.ServiceId.Builder> + getSliceServiceIdsBuilderList() { + return getSliceServiceIdsFieldBuilder().getBuilderList(); } - hash = (29 * hash) + unknownFields.hashCode(); - memoizedHashCode = hash; - return hash; - } - - public static context.ContextOuterClass.ServiceConfig parseFrom( - java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static context.ContextOuterClass.ServiceConfig parseFrom( - java.nio.ByteBuffer data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static context.ContextOuterClass.ServiceConfig parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static context.ContextOuterClass.ServiceConfig parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static context.ContextOuterClass.ServiceConfig parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static context.ContextOuterClass.ServiceConfig parseFrom( - byte[] data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static context.ContextOuterClass.ServiceConfig parseFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseWithIOException(PARSER, input); - } - public static context.ContextOuterClass.ServiceConfig 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 context.ContextOuterClass.ServiceConfig parseDelimitedFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseDelimitedWithIOException(PARSER, input); - } - public static context.ContextOuterClass.ServiceConfig 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 context.ContextOuterClass.ServiceConfig parseFrom( - com.google.protobuf.CodedInputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseWithIOException(PARSER, input); - } - public static context.ContextOuterClass.ServiceConfig 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(context.ContextOuterClass.ServiceConfig 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; - } - /** - * Protobuf type {@code context.ServiceConfig} - */ - public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ServiceConfig) - context.ContextOuterClass.ServiceConfigOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor - getDescriptor() { - return context.ContextOuterClass.internal_static_context_ServiceConfig_descriptor; + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> + getSliceServiceIdsFieldBuilder() { + if (sliceServiceIdsBuilder_ == null) { + sliceServiceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder>( + sliceServiceIds_, + ((bitField0_ & 0x00000004) != 0), + getParentForChildren(), + isClean()); + sliceServiceIds_ = null; + } + return sliceServiceIdsBuilder_; } - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ServiceConfig_fieldAccessorTable - .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ServiceConfig.class, context.ContextOuterClass.ServiceConfig.Builder.class); + private java.util.List<context.ContextOuterClass.SliceId> sliceSubsliceIds_ = + java.util.Collections.emptyList(); + private void ensureSliceSubsliceIdsIsMutable() { + if (!((bitField0_ & 0x00000008) != 0)) { + sliceSubsliceIds_ = new java.util.ArrayList<context.ContextOuterClass.SliceId>(sliceSubsliceIds_); + bitField0_ |= 0x00000008; + } } - // Construct using context.ContextOuterClass.ServiceConfig.newBuilder() - private Builder() { - maybeForceBuilderInitialization(); - } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> sliceSubsliceIdsBuilder_; - private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - super(parent); - maybeForceBuilderInitialization(); + /** + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> + */ + public java.util.List<context.ContextOuterClass.SliceId> getSliceSubsliceIdsList() { + if (sliceSubsliceIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(sliceSubsliceIds_); + } else { + return sliceSubsliceIdsBuilder_.getMessageList(); + } } - private void maybeForceBuilderInitialization() { - if (com.google.protobuf.GeneratedMessageV3 - .alwaysUseFieldBuilders) { - getConfigRulesFieldBuilder(); + /** + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> + */ + public int getSliceSubsliceIdsCount() { + if (sliceSubsliceIdsBuilder_ == null) { + return sliceSubsliceIds_.size(); + } else { + return sliceSubsliceIdsBuilder_.getCount(); } } - @java.lang.Override - public Builder clear() { - super.clear(); - if (configRulesBuilder_ == null) { - configRules_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + /** + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> + */ + public context.ContextOuterClass.SliceId getSliceSubsliceIds(int index) { + if (sliceSubsliceIdsBuilder_ == null) { + return sliceSubsliceIds_.get(index); } else { - configRulesBuilder_.clear(); + return sliceSubsliceIdsBuilder_.getMessage(index); } - return this; } - - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor - getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ServiceConfig_descriptor; + /** + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> + */ + public Builder setSliceSubsliceIds( + int index, context.ContextOuterClass.SliceId value) { + if (sliceSubsliceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSliceSubsliceIdsIsMutable(); + sliceSubsliceIds_.set(index, value); + onChanged(); + } else { + sliceSubsliceIdsBuilder_.setMessage(index, value); + } + return this; } - - @java.lang.Override - public context.ContextOuterClass.ServiceConfig getDefaultInstanceForType() { - return context.ContextOuterClass.ServiceConfig.getDefaultInstance(); + /** + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> + */ + public Builder setSliceSubsliceIds( + int index, context.ContextOuterClass.SliceId.Builder builderForValue) { + if (sliceSubsliceIdsBuilder_ == null) { + ensureSliceSubsliceIdsIsMutable(); + sliceSubsliceIds_.set(index, builderForValue.build()); + onChanged(); + } else { + sliceSubsliceIdsBuilder_.setMessage(index, builderForValue.build()); + } + return this; } - - @java.lang.Override - public context.ContextOuterClass.ServiceConfig build() { - context.ContextOuterClass.ServiceConfig result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); + /** + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> + */ + public Builder addSliceSubsliceIds(context.ContextOuterClass.SliceId value) { + if (sliceSubsliceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSliceSubsliceIdsIsMutable(); + sliceSubsliceIds_.add(value); + onChanged(); + } else { + sliceSubsliceIdsBuilder_.addMessage(value); } - return result; + return this; } - - @java.lang.Override - public context.ContextOuterClass.ServiceConfig buildPartial() { - context.ContextOuterClass.ServiceConfig result = new context.ContextOuterClass.ServiceConfig(this); - int from_bitField0_ = bitField0_; - if (configRulesBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { - configRules_ = java.util.Collections.unmodifiableList(configRules_); - bitField0_ = (bitField0_ & ~0x00000001); + /** + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> + */ + public Builder addSliceSubsliceIds( + int index, context.ContextOuterClass.SliceId value) { + if (sliceSubsliceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } - result.configRules_ = configRules_; + ensureSliceSubsliceIdsIsMutable(); + sliceSubsliceIds_.add(index, value); + onChanged(); } else { - result.configRules_ = configRulesBuilder_.build(); + sliceSubsliceIdsBuilder_.addMessage(index, value); } - onBuilt(); - return result; + return this; } - - @java.lang.Override - public Builder clone() { - return super.clone(); + /** + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> + */ + public Builder addSliceSubsliceIds( + context.ContextOuterClass.SliceId.Builder builderForValue) { + if (sliceSubsliceIdsBuilder_ == null) { + ensureSliceSubsliceIdsIsMutable(); + sliceSubsliceIds_.add(builderForValue.build()); + onChanged(); + } else { + sliceSubsliceIdsBuilder_.addMessage(builderForValue.build()); + } + return this; } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); + /** + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> + */ + public Builder addSliceSubsliceIds( + int index, context.ContextOuterClass.SliceId.Builder builderForValue) { + if (sliceSubsliceIdsBuilder_ == null) { + ensureSliceSubsliceIdsIsMutable(); + sliceSubsliceIds_.add(index, builderForValue.build()); + onChanged(); + } else { + sliceSubsliceIdsBuilder_.addMessage(index, builderForValue.build()); + } + return this; } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); + /** + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> + */ + public Builder addAllSliceSubsliceIds( + java.lang.Iterable<? extends context.ContextOuterClass.SliceId> values) { + if (sliceSubsliceIdsBuilder_ == null) { + ensureSliceSubsliceIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, sliceSubsliceIds_); + onChanged(); + } else { + sliceSubsliceIdsBuilder_.addAllMessages(values); + } + return this; } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); + /** + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> + */ + public Builder clearSliceSubsliceIds() { + if (sliceSubsliceIdsBuilder_ == null) { + sliceSubsliceIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + } else { + sliceSubsliceIdsBuilder_.clear(); + } + return this; } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); + /** + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> + */ + public Builder removeSliceSubsliceIds(int index) { + if (sliceSubsliceIdsBuilder_ == null) { + ensureSliceSubsliceIdsIsMutable(); + sliceSubsliceIds_.remove(index); + onChanged(); + } else { + sliceSubsliceIdsBuilder_.remove(index); + } + return this; } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + /** + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> + */ + public context.ContextOuterClass.SliceId.Builder getSliceSubsliceIdsBuilder( + int index) { + return getSliceSubsliceIdsFieldBuilder().getBuilder(index); } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ServiceConfig) { - return mergeFrom((context.ContextOuterClass.ServiceConfig)other); + /** + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> + */ + public context.ContextOuterClass.SliceIdOrBuilder getSliceSubsliceIdsOrBuilder( + int index) { + if (sliceSubsliceIdsBuilder_ == null) { + return sliceSubsliceIds_.get(index); } else { + return sliceSubsliceIdsBuilder_.getMessageOrBuilder(index); + } + } + /** + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> + */ + public java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> + getSliceSubsliceIdsOrBuilderList() { + if (sliceSubsliceIdsBuilder_ != null) { + return sliceSubsliceIdsBuilder_.getMessageOrBuilderList(); } else { - super.mergeFrom(other); - return this; + return java.util.Collections.unmodifiableList(sliceSubsliceIds_); + } + } + /** + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> + */ + public context.ContextOuterClass.SliceId.Builder addSliceSubsliceIdsBuilder() { + return getSliceSubsliceIdsFieldBuilder().addBuilder( + context.ContextOuterClass.SliceId.getDefaultInstance()); + } + /** + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> + */ + public context.ContextOuterClass.SliceId.Builder addSliceSubsliceIdsBuilder( + int index) { + return getSliceSubsliceIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.SliceId.getDefaultInstance()); + } + /** + * <code>repeated .context.SliceId slice_subslice_ids = 6;</code> + */ + public java.util.List<context.ContextOuterClass.SliceId.Builder> + getSliceSubsliceIdsBuilderList() { + return getSliceSubsliceIdsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> + getSliceSubsliceIdsFieldBuilder() { + if (sliceSubsliceIdsBuilder_ == null) { + sliceSubsliceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder>( + sliceSubsliceIds_, + ((bitField0_ & 0x00000008) != 0), + getParentForChildren(), + isClean()); + sliceSubsliceIds_ = null; } + return sliceSubsliceIdsBuilder_; } - public Builder mergeFrom(context.ContextOuterClass.ServiceConfig other) { - if (other == context.ContextOuterClass.ServiceConfig.getDefaultInstance()) return this; - if (configRulesBuilder_ == null) { - if (!other.configRules_.isEmpty()) { - if (configRules_.isEmpty()) { - configRules_ = other.configRules_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureConfigRulesIsMutable(); - configRules_.addAll(other.configRules_); - } - onChanged(); + private context.ContextOuterClass.SliceStatus sliceStatus_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceStatus, context.ContextOuterClass.SliceStatus.Builder, context.ContextOuterClass.SliceStatusOrBuilder> sliceStatusBuilder_; + /** + * <code>.context.SliceStatus slice_status = 7;</code> + * @return Whether the sliceStatus field is set. + */ + public boolean hasSliceStatus() { + return sliceStatusBuilder_ != null || sliceStatus_ != null; + } + /** + * <code>.context.SliceStatus slice_status = 7;</code> + * @return The sliceStatus. + */ + public context.ContextOuterClass.SliceStatus getSliceStatus() { + if (sliceStatusBuilder_ == null) { + return sliceStatus_ == null ? context.ContextOuterClass.SliceStatus.getDefaultInstance() : sliceStatus_; + } else { + return sliceStatusBuilder_.getMessage(); + } + } + /** + * <code>.context.SliceStatus slice_status = 7;</code> + */ + public Builder setSliceStatus(context.ContextOuterClass.SliceStatus value) { + if (sliceStatusBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + sliceStatus_ = value; + onChanged(); } else { - if (!other.configRules_.isEmpty()) { - if (configRulesBuilder_.isEmpty()) { - configRulesBuilder_.dispose(); - configRulesBuilder_ = null; - configRules_ = other.configRules_; - bitField0_ = (bitField0_ & ~0x00000001); - configRulesBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getConfigRulesFieldBuilder() : null; - } else { - configRulesBuilder_.addAllMessages(other.configRules_); - } - } + sliceStatusBuilder_.setMessage(value); } - this.mergeUnknownFields(other.unknownFields); - onChanged(); + return this; } + /** + * <code>.context.SliceStatus slice_status = 7;</code> + */ + public Builder setSliceStatus( + context.ContextOuterClass.SliceStatus.Builder builderForValue) { + if (sliceStatusBuilder_ == null) { + sliceStatus_ = builderForValue.build(); + onChanged(); + } else { + sliceStatusBuilder_.setMessage(builderForValue.build()); + } - @java.lang.Override - public final boolean isInitialized() { - return true; + return this; } - - @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - context.ContextOuterClass.ServiceConfig parsedMessage = null; - try { - parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ServiceConfig) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); + /** + * <code>.context.SliceStatus slice_status = 7;</code> + */ + public Builder mergeSliceStatus(context.ContextOuterClass.SliceStatus value) { + if (sliceStatusBuilder_ == null) { + if (sliceStatus_ != null) { + sliceStatus_ = + context.ContextOuterClass.SliceStatus.newBuilder(sliceStatus_).mergeFrom(value).buildPartial(); + } else { + sliceStatus_ = value; } + onChanged(); + } else { + sliceStatusBuilder_.mergeFrom(value); } + return this; } - private int bitField0_; + /** + * <code>.context.SliceStatus slice_status = 7;</code> + */ + public Builder clearSliceStatus() { + if (sliceStatusBuilder_ == null) { + sliceStatus_ = null; + onChanged(); + } else { + sliceStatus_ = null; + sliceStatusBuilder_ = null; + } - private java.util.List<context.ContextOuterClass.ConfigRule> configRules_ = - java.util.Collections.emptyList(); - private void ensureConfigRulesIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - configRules_ = new java.util.ArrayList<context.ContextOuterClass.ConfigRule>(configRules_); - bitField0_ |= 0x00000001; - } + return this; } - - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder> configRulesBuilder_; - /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.SliceStatus slice_status = 7;</code> */ - public java.util.List<context.ContextOuterClass.ConfigRule> getConfigRulesList() { - if (configRulesBuilder_ == null) { - return java.util.Collections.unmodifiableList(configRules_); + public context.ContextOuterClass.SliceStatus.Builder getSliceStatusBuilder() { + + onChanged(); + return getSliceStatusFieldBuilder().getBuilder(); + } + /** + * <code>.context.SliceStatus slice_status = 7;</code> + */ + public context.ContextOuterClass.SliceStatusOrBuilder getSliceStatusOrBuilder() { + if (sliceStatusBuilder_ != null) { + return sliceStatusBuilder_.getMessageOrBuilder(); } else { - return configRulesBuilder_.getMessageList(); + return sliceStatus_ == null ? + context.ContextOuterClass.SliceStatus.getDefaultInstance() : sliceStatus_; } } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.SliceStatus slice_status = 7;</code> */ - public int getConfigRulesCount() { - if (configRulesBuilder_ == null) { - return configRules_.size(); - } else { - return configRulesBuilder_.getCount(); + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceStatus, context.ContextOuterClass.SliceStatus.Builder, context.ContextOuterClass.SliceStatusOrBuilder> + getSliceStatusFieldBuilder() { + if (sliceStatusBuilder_ == null) { + sliceStatusBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceStatus, context.ContextOuterClass.SliceStatus.Builder, context.ContextOuterClass.SliceStatusOrBuilder>( + getSliceStatus(), + getParentForChildren(), + isClean()); + sliceStatus_ = null; } + return sliceStatusBuilder_; } + + private context.ContextOuterClass.SliceConfig sliceConfig_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceConfig, context.ContextOuterClass.SliceConfig.Builder, context.ContextOuterClass.SliceConfigOrBuilder> sliceConfigBuilder_; /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.SliceConfig slice_config = 8;</code> + * @return Whether the sliceConfig field is set. */ - public context.ContextOuterClass.ConfigRule getConfigRules(int index) { - if (configRulesBuilder_ == null) { - return configRules_.get(index); + public boolean hasSliceConfig() { + return sliceConfigBuilder_ != null || sliceConfig_ != null; + } + /** + * <code>.context.SliceConfig slice_config = 8;</code> + * @return The sliceConfig. + */ + public context.ContextOuterClass.SliceConfig getSliceConfig() { + if (sliceConfigBuilder_ == null) { + return sliceConfig_ == null ? context.ContextOuterClass.SliceConfig.getDefaultInstance() : sliceConfig_; } else { - return configRulesBuilder_.getMessage(index); + return sliceConfigBuilder_.getMessage(); } } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.SliceConfig slice_config = 8;</code> */ - public Builder setConfigRules( - int index, context.ContextOuterClass.ConfigRule value) { - if (configRulesBuilder_ == null) { + public Builder setSliceConfig(context.ContextOuterClass.SliceConfig value) { + if (sliceConfigBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureConfigRulesIsMutable(); - configRules_.set(index, value); + sliceConfig_ = value; onChanged(); } else { - configRulesBuilder_.setMessage(index, value); + sliceConfigBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.SliceConfig slice_config = 8;</code> */ - public Builder setConfigRules( - int index, context.ContextOuterClass.ConfigRule.Builder builderForValue) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); - configRules_.set(index, builderForValue.build()); + public Builder setSliceConfig( + context.ContextOuterClass.SliceConfig.Builder builderForValue) { + if (sliceConfigBuilder_ == null) { + sliceConfig_ = builderForValue.build(); onChanged(); } else { - configRulesBuilder_.setMessage(index, builderForValue.build()); + sliceConfigBuilder_.setMessage(builderForValue.build()); } + return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.SliceConfig slice_config = 8;</code> */ - public Builder addConfigRules(context.ContextOuterClass.ConfigRule value) { - if (configRulesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + public Builder mergeSliceConfig(context.ContextOuterClass.SliceConfig value) { + if (sliceConfigBuilder_ == null) { + if (sliceConfig_ != null) { + sliceConfig_ = + context.ContextOuterClass.SliceConfig.newBuilder(sliceConfig_).mergeFrom(value).buildPartial(); + } else { + sliceConfig_ = value; } - ensureConfigRulesIsMutable(); - configRules_.add(value); onChanged(); } else { - configRulesBuilder_.addMessage(value); + sliceConfigBuilder_.mergeFrom(value); } + return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.SliceConfig slice_config = 8;</code> */ - public Builder addConfigRules( - int index, context.ContextOuterClass.ConfigRule value) { - if (configRulesBuilder_ == null) { + public Builder clearSliceConfig() { + if (sliceConfigBuilder_ == null) { + sliceConfig_ = null; + onChanged(); + } else { + sliceConfig_ = null; + sliceConfigBuilder_ = null; + } + + return this; + } + /** + * <code>.context.SliceConfig slice_config = 8;</code> + */ + public context.ContextOuterClass.SliceConfig.Builder getSliceConfigBuilder() { + + onChanged(); + return getSliceConfigFieldBuilder().getBuilder(); + } + /** + * <code>.context.SliceConfig slice_config = 8;</code> + */ + public context.ContextOuterClass.SliceConfigOrBuilder getSliceConfigOrBuilder() { + if (sliceConfigBuilder_ != null) { + return sliceConfigBuilder_.getMessageOrBuilder(); + } else { + return sliceConfig_ == null ? + context.ContextOuterClass.SliceConfig.getDefaultInstance() : sliceConfig_; + } + } + /** + * <code>.context.SliceConfig slice_config = 8;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceConfig, context.ContextOuterClass.SliceConfig.Builder, context.ContextOuterClass.SliceConfigOrBuilder> + getSliceConfigFieldBuilder() { + if (sliceConfigBuilder_ == null) { + sliceConfigBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceConfig, context.ContextOuterClass.SliceConfig.Builder, context.ContextOuterClass.SliceConfigOrBuilder>( + getSliceConfig(), + getParentForChildren(), + isClean()); + sliceConfig_ = null; + } + return sliceConfigBuilder_; + } + + private context.ContextOuterClass.SliceOwner sliceOwner_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceOwner, context.ContextOuterClass.SliceOwner.Builder, context.ContextOuterClass.SliceOwnerOrBuilder> sliceOwnerBuilder_; + /** + * <code>.context.SliceOwner slice_owner = 9;</code> + * @return Whether the sliceOwner field is set. + */ + public boolean hasSliceOwner() { + return sliceOwnerBuilder_ != null || sliceOwner_ != null; + } + /** + * <code>.context.SliceOwner slice_owner = 9;</code> + * @return The sliceOwner. + */ + public context.ContextOuterClass.SliceOwner getSliceOwner() { + if (sliceOwnerBuilder_ == null) { + return sliceOwner_ == null ? context.ContextOuterClass.SliceOwner.getDefaultInstance() : sliceOwner_; + } else { + return sliceOwnerBuilder_.getMessage(); + } + } + /** + * <code>.context.SliceOwner slice_owner = 9;</code> + */ + public Builder setSliceOwner(context.ContextOuterClass.SliceOwner value) { + if (sliceOwnerBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureConfigRulesIsMutable(); - configRules_.add(index, value); + sliceOwner_ = value; onChanged(); } else { - configRulesBuilder_.addMessage(index, value); + sliceOwnerBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.SliceOwner slice_owner = 9;</code> */ - public Builder addConfigRules( - context.ContextOuterClass.ConfigRule.Builder builderForValue) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); - configRules_.add(builderForValue.build()); + public Builder setSliceOwner( + context.ContextOuterClass.SliceOwner.Builder builderForValue) { + if (sliceOwnerBuilder_ == null) { + sliceOwner_ = builderForValue.build(); onChanged(); } else { - configRulesBuilder_.addMessage(builderForValue.build()); + sliceOwnerBuilder_.setMessage(builderForValue.build()); } + return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.SliceOwner slice_owner = 9;</code> */ - public Builder addConfigRules( - int index, context.ContextOuterClass.ConfigRule.Builder builderForValue) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); - configRules_.add(index, builderForValue.build()); + public Builder mergeSliceOwner(context.ContextOuterClass.SliceOwner value) { + if (sliceOwnerBuilder_ == null) { + if (sliceOwner_ != null) { + sliceOwner_ = + context.ContextOuterClass.SliceOwner.newBuilder(sliceOwner_).mergeFrom(value).buildPartial(); + } else { + sliceOwner_ = value; + } onChanged(); } else { - configRulesBuilder_.addMessage(index, builderForValue.build()); + sliceOwnerBuilder_.mergeFrom(value); } + return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.SliceOwner slice_owner = 9;</code> */ - public Builder addAllConfigRules( - java.lang.Iterable<? extends context.ContextOuterClass.ConfigRule> values) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, configRules_); + public Builder clearSliceOwner() { + if (sliceOwnerBuilder_ == null) { + sliceOwner_ = null; onChanged(); } else { - configRulesBuilder_.addAllMessages(values); + sliceOwner_ = null; + sliceOwnerBuilder_ = null; } + return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.SliceOwner slice_owner = 9;</code> */ - public Builder clearConfigRules() { - if (configRulesBuilder_ == null) { - configRules_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); + public context.ContextOuterClass.SliceOwner.Builder getSliceOwnerBuilder() { + + onChanged(); + return getSliceOwnerFieldBuilder().getBuilder(); + } + /** + * <code>.context.SliceOwner slice_owner = 9;</code> + */ + public context.ContextOuterClass.SliceOwnerOrBuilder getSliceOwnerOrBuilder() { + if (sliceOwnerBuilder_ != null) { + return sliceOwnerBuilder_.getMessageOrBuilder(); } else { - configRulesBuilder_.clear(); + return sliceOwner_ == null ? + context.ContextOuterClass.SliceOwner.getDefaultInstance() : sliceOwner_; } - return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.SliceOwner slice_owner = 9;</code> */ - public Builder removeConfigRules(int index) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); - configRules_.remove(index); + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceOwner, context.ContextOuterClass.SliceOwner.Builder, context.ContextOuterClass.SliceOwnerOrBuilder> + getSliceOwnerFieldBuilder() { + if (sliceOwnerBuilder_ == null) { + sliceOwnerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceOwner, context.ContextOuterClass.SliceOwner.Builder, context.ContextOuterClass.SliceOwnerOrBuilder>( + getSliceOwner(), + getParentForChildren(), + isClean()); + sliceOwner_ = null; + } + return sliceOwnerBuilder_; + } + + private context.ContextOuterClass.Timestamp timestamp_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> timestampBuilder_; + /** + * <code>.context.Timestamp timestamp = 10;</code> + * @return Whether the timestamp field is set. + */ + public boolean hasTimestamp() { + return timestampBuilder_ != null || timestamp_ != null; + } + /** + * <code>.context.Timestamp timestamp = 10;</code> + * @return The timestamp. + */ + public context.ContextOuterClass.Timestamp getTimestamp() { + if (timestampBuilder_ == null) { + return timestamp_ == null ? context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_; + } else { + return timestampBuilder_.getMessage(); + } + } + /** + * <code>.context.Timestamp timestamp = 10;</code> + */ + public Builder setTimestamp(context.ContextOuterClass.Timestamp value) { + if (timestampBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + timestamp_ = value; onChanged(); } else { - configRulesBuilder_.remove(index); + timestampBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.Timestamp timestamp = 10;</code> */ - public context.ContextOuterClass.ConfigRule.Builder getConfigRulesBuilder( - int index) { - return getConfigRulesFieldBuilder().getBuilder(index); + public Builder setTimestamp( + context.ContextOuterClass.Timestamp.Builder builderForValue) { + if (timestampBuilder_ == null) { + timestamp_ = builderForValue.build(); + onChanged(); + } else { + timestampBuilder_.setMessage(builderForValue.build()); + } + + return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.Timestamp timestamp = 10;</code> */ - public context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( - int index) { - if (configRulesBuilder_ == null) { - return configRules_.get(index); } else { - return configRulesBuilder_.getMessageOrBuilder(index); + public Builder mergeTimestamp(context.ContextOuterClass.Timestamp value) { + if (timestampBuilder_ == null) { + if (timestamp_ != null) { + timestamp_ = + context.ContextOuterClass.Timestamp.newBuilder(timestamp_).mergeFrom(value).buildPartial(); + } else { + timestamp_ = value; + } + onChanged(); + } else { + timestampBuilder_.mergeFrom(value); } + + return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.Timestamp timestamp = 10;</code> */ - public java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> - getConfigRulesOrBuilderList() { - if (configRulesBuilder_ != null) { - return configRulesBuilder_.getMessageOrBuilderList(); + public Builder clearTimestamp() { + if (timestampBuilder_ == null) { + timestamp_ = null; + onChanged(); } else { - return java.util.Collections.unmodifiableList(configRules_); + timestamp_ = null; + timestampBuilder_ = null; } + + return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.Timestamp timestamp = 10;</code> */ - public context.ContextOuterClass.ConfigRule.Builder addConfigRulesBuilder() { - return getConfigRulesFieldBuilder().addBuilder( - context.ContextOuterClass.ConfigRule.getDefaultInstance()); + public context.ContextOuterClass.Timestamp.Builder getTimestampBuilder() { + + onChanged(); + return getTimestampFieldBuilder().getBuilder(); } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.Timestamp timestamp = 10;</code> */ - public context.ContextOuterClass.ConfigRule.Builder addConfigRulesBuilder( - int index) { - return getConfigRulesFieldBuilder().addBuilder( - index, context.ContextOuterClass.ConfigRule.getDefaultInstance()); + public context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder() { + if (timestampBuilder_ != null) { + return timestampBuilder_.getMessageOrBuilder(); + } else { + return timestamp_ == null ? + context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_; + } } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>.context.Timestamp timestamp = 10;</code> */ - public java.util.List<context.ContextOuterClass.ConfigRule.Builder> - getConfigRulesBuilderList() { - return getConfigRulesFieldBuilder().getBuilderList(); - } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder> - getConfigRulesFieldBuilder() { - if (configRulesBuilder_ == null) { - configRulesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder>( - configRules_, - ((bitField0_ & 0x00000001) != 0), + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> + getTimestampFieldBuilder() { + if (timestampBuilder_ == null) { + timestampBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder>( + getTimestamp(), getParentForChildren(), isClean()); - configRules_ = null; + timestamp_ = null; } - return configRulesBuilder_; + return timestampBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -26572,95 +38720,98 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ServiceConfig) + // @@protoc_insertion_point(builder_scope:context.Slice) } - // @@protoc_insertion_point(class_scope:context.ServiceConfig) - private static final context.ContextOuterClass.ServiceConfig DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Slice) + private static final context.ContextOuterClass.Slice DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceConfig(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Slice(); } - public static context.ContextOuterClass.ServiceConfig getDefaultInstance() { + public static context.ContextOuterClass.Slice getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ServiceConfig> - PARSER = new com.google.protobuf.AbstractParser<ServiceConfig>() { + private static final com.google.protobuf.Parser<Slice> + PARSER = new com.google.protobuf.AbstractParser<Slice>() { @java.lang.Override - public ServiceConfig parsePartialFrom( + public Slice parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ServiceConfig(input, extensionRegistry); + return new Slice(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ServiceConfig> parser() { + public static com.google.protobuf.Parser<Slice> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ServiceConfig> getParserForType() { + public com.google.protobuf.Parser<Slice> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ServiceConfig getDefaultInstanceForType() { + public context.ContextOuterClass.Slice getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ServiceIdListOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ServiceIdList) + public interface SliceOwnerOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.SliceOwner) com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>.context.Uuid owner_uuid = 1;</code> + * @return Whether the ownerUuid field is set. */ - java.util.List<context.ContextOuterClass.ServiceId> - getServiceIdsList(); + boolean hasOwnerUuid(); /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>.context.Uuid owner_uuid = 1;</code> + * @return The ownerUuid. */ - context.ContextOuterClass.ServiceId getServiceIds(int index); + context.ContextOuterClass.Uuid getOwnerUuid(); /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>.context.Uuid owner_uuid = 1;</code> */ - int getServiceIdsCount(); + context.ContextOuterClass.UuidOrBuilder getOwnerUuidOrBuilder(); + /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>string owner_string = 2;</code> + * @return The ownerString. */ - java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> - getServiceIdsOrBuilderList(); + java.lang.String getOwnerString(); /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>string owner_string = 2;</code> + * @return The bytes for ownerString. */ - context.ContextOuterClass.ServiceIdOrBuilder getServiceIdsOrBuilder( - int index); + com.google.protobuf.ByteString + getOwnerStringBytes(); } /** - * Protobuf type {@code context.ServiceIdList} + * Protobuf type {@code context.SliceOwner} */ - public static final class ServiceIdList extends + public static final class SliceOwner extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ServiceIdList) - ServiceIdListOrBuilder { + // @@protoc_insertion_point(message_implements:context.SliceOwner) + SliceOwnerOrBuilder { private static final long serialVersionUID = 0L; - // Use ServiceIdList.newBuilder() to construct. - private ServiceIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use SliceOwner.newBuilder() to construct. + private SliceOwner(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ServiceIdList() { - serviceIds_ = java.util.Collections.emptyList(); + private SliceOwner() { + ownerString_ = ""; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ServiceIdList(); + return new SliceOwner(); } @java.lang.Override @@ -26668,7 +38819,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ServiceIdList( + private SliceOwner( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -26676,7 +38827,6 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } - int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -26688,12 +38838,22 @@ public final class ContextOuterClass { done = true; break; case 10: { - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - serviceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(); - mutable_bitField0_ |= 0x00000001; + context.ContextOuterClass.Uuid.Builder subBuilder = null; + if (ownerUuid_ != null) { + subBuilder = ownerUuid_.toBuilder(); } - serviceIds_.add( - input.readMessage(context.ContextOuterClass.ServiceId.parser(), extensionRegistry)); + ownerUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(ownerUuid_); + ownerUuid_ = subBuilder.buildPartial(); + } + + break; + } + case 18: { + java.lang.String s = input.readStringRequireUtf8(); + + ownerString_ = s; break; } default: { @@ -26711,64 +38871,85 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { - if (((mutable_bitField0_ & 0x00000001) != 0)) { - serviceIds_ = java.util.Collections.unmodifiableList(serviceIds_); - } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ServiceIdList_descriptor; + return context.ContextOuterClass.internal_static_context_SliceOwner_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ServiceIdList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_SliceOwner_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ServiceIdList.class, context.ContextOuterClass.ServiceIdList.Builder.class); + context.ContextOuterClass.SliceOwner.class, context.ContextOuterClass.SliceOwner.Builder.class); } - public static final int SERVICE_IDS_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.ServiceId> serviceIds_; + public static final int OWNER_UUID_FIELD_NUMBER = 1; + private context.ContextOuterClass.Uuid ownerUuid_; /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>.context.Uuid owner_uuid = 1;</code> + * @return Whether the ownerUuid field is set. */ @java.lang.Override - public java.util.List<context.ContextOuterClass.ServiceId> getServiceIdsList() { - return serviceIds_; + public boolean hasOwnerUuid() { + return ownerUuid_ != null; } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>.context.Uuid owner_uuid = 1;</code> + * @return The ownerUuid. */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> - getServiceIdsOrBuilderList() { - return serviceIds_; + public context.ContextOuterClass.Uuid getOwnerUuid() { + return ownerUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : ownerUuid_; } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>.context.Uuid owner_uuid = 1;</code> */ @java.lang.Override - public int getServiceIdsCount() { - return serviceIds_.size(); + public context.ContextOuterClass.UuidOrBuilder getOwnerUuidOrBuilder() { + return getOwnerUuid(); } + + public static final int OWNER_STRING_FIELD_NUMBER = 2; + private volatile java.lang.Object ownerString_; /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>string owner_string = 2;</code> + * @return The ownerString. */ @java.lang.Override - public context.ContextOuterClass.ServiceId getServiceIds(int index) { - return serviceIds_.get(index); + public java.lang.String getOwnerString() { + java.lang.Object ref = ownerString_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + ownerString_ = s; + return s; + } } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>string owner_string = 2;</code> + * @return The bytes for ownerString. */ @java.lang.Override - public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdsOrBuilder( - int index) { - return serviceIds_.get(index); + public com.google.protobuf.ByteString + getOwnerStringBytes() { + java.lang.Object ref = ownerString_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + ownerString_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } private byte memoizedIsInitialized = -1; @@ -26785,8 +38966,11 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < serviceIds_.size(); i++) { - output.writeMessage(1, serviceIds_.get(i)); + if (ownerUuid_ != null) { + output.writeMessage(1, getOwnerUuid()); + } + if (!getOwnerStringBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, ownerString_); } unknownFields.writeTo(output); } @@ -26797,9 +38981,12 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < serviceIds_.size(); i++) { + if (ownerUuid_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, serviceIds_.get(i)); + .computeMessageSize(1, getOwnerUuid()); + } + if (!getOwnerStringBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, ownerString_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -26811,13 +38998,18 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ServiceIdList)) { + if (!(obj instanceof context.ContextOuterClass.SliceOwner)) { return super.equals(obj); } - context.ContextOuterClass.ServiceIdList other = (context.ContextOuterClass.ServiceIdList) obj; + context.ContextOuterClass.SliceOwner other = (context.ContextOuterClass.SliceOwner) obj; - if (!getServiceIdsList() - .equals(other.getServiceIdsList())) return false; + if (hasOwnerUuid() != other.hasOwnerUuid()) return false; + if (hasOwnerUuid()) { + if (!getOwnerUuid() + .equals(other.getOwnerUuid())) return false; + } + if (!getOwnerString() + .equals(other.getOwnerString())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -26829,78 +39021,80 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getServiceIdsCount() > 0) { - hash = (37 * hash) + SERVICE_IDS_FIELD_NUMBER; - hash = (53 * hash) + getServiceIdsList().hashCode(); + if (hasOwnerUuid()) { + hash = (37 * hash) + OWNER_UUID_FIELD_NUMBER; + hash = (53 * hash) + getOwnerUuid().hashCode(); } + hash = (37 * hash) + OWNER_STRING_FIELD_NUMBER; + hash = (53 * hash) + getOwnerString().hashCode(); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ServiceIdList parseFrom( + public static context.ContextOuterClass.SliceOwner parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceIdList parseFrom( + public static context.ContextOuterClass.SliceOwner parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceIdList parseFrom( + public static context.ContextOuterClass.SliceOwner parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceIdList parseFrom( + public static context.ContextOuterClass.SliceOwner parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceIdList parseFrom(byte[] data) + public static context.ContextOuterClass.SliceOwner parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceIdList parseFrom( + public static context.ContextOuterClass.SliceOwner parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceIdList parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.SliceOwner parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceIdList parseFrom( + public static context.ContextOuterClass.SliceOwner 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 context.ContextOuterClass.ServiceIdList parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.SliceOwner parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceIdList parseDelimitedFrom( + public static context.ContextOuterClass.SliceOwner 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 context.ContextOuterClass.ServiceIdList parseFrom( + public static context.ContextOuterClass.SliceOwner parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceIdList parseFrom( + public static context.ContextOuterClass.SliceOwner parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -26913,7 +39107,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ServiceIdList prototype) { + public static Builder newBuilder(context.ContextOuterClass.SliceOwner prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -26929,26 +39123,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ServiceIdList} + * Protobuf type {@code context.SliceOwner} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ServiceIdList) - context.ContextOuterClass.ServiceIdListOrBuilder { + // @@protoc_insertion_point(builder_implements:context.SliceOwner) + context.ContextOuterClass.SliceOwnerOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ServiceIdList_descriptor; + return context.ContextOuterClass.internal_static_context_SliceOwner_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ServiceIdList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_SliceOwner_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ServiceIdList.class, context.ContextOuterClass.ServiceIdList.Builder.class); + context.ContextOuterClass.SliceOwner.class, context.ContextOuterClass.SliceOwner.Builder.class); } - // Construct using context.ContextOuterClass.ServiceIdList.newBuilder() + // Construct using context.ContextOuterClass.SliceOwner.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -26961,35 +39155,36 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getServiceIdsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (serviceIdsBuilder_ == null) { - serviceIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + if (ownerUuidBuilder_ == null) { + ownerUuid_ = null; } else { - serviceIdsBuilder_.clear(); + ownerUuid_ = null; + ownerUuidBuilder_ = null; } + ownerString_ = ""; + return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ServiceIdList_descriptor; + return context.ContextOuterClass.internal_static_context_SliceOwner_descriptor; } @java.lang.Override - public context.ContextOuterClass.ServiceIdList getDefaultInstanceForType() { - return context.ContextOuterClass.ServiceIdList.getDefaultInstance(); + public context.ContextOuterClass.SliceOwner getDefaultInstanceForType() { + return context.ContextOuterClass.SliceOwner.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ServiceIdList build() { - context.ContextOuterClass.ServiceIdList result = buildPartial(); + public context.ContextOuterClass.SliceOwner build() { + context.ContextOuterClass.SliceOwner result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -26997,18 +39192,14 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ServiceIdList buildPartial() { - context.ContextOuterClass.ServiceIdList result = new context.ContextOuterClass.ServiceIdList(this); - int from_bitField0_ = bitField0_; - if (serviceIdsBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { - serviceIds_ = java.util.Collections.unmodifiableList(serviceIds_); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.serviceIds_ = serviceIds_; + public context.ContextOuterClass.SliceOwner buildPartial() { + context.ContextOuterClass.SliceOwner result = new context.ContextOuterClass.SliceOwner(this); + if (ownerUuidBuilder_ == null) { + result.ownerUuid_ = ownerUuid_; } else { - result.serviceIds_ = serviceIdsBuilder_.build(); + result.ownerUuid_ = ownerUuidBuilder_.build(); } + result.ownerString_ = ownerString_; onBuilt(); return result; } @@ -27047,41 +39238,22 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ServiceIdList) { - return mergeFrom((context.ContextOuterClass.ServiceIdList)other); + if (other instanceof context.ContextOuterClass.SliceOwner) { + return mergeFrom((context.ContextOuterClass.SliceOwner)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ServiceIdList other) { - if (other == context.ContextOuterClass.ServiceIdList.getDefaultInstance()) return this; - if (serviceIdsBuilder_ == null) { - if (!other.serviceIds_.isEmpty()) { - if (serviceIds_.isEmpty()) { - serviceIds_ = other.serviceIds_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureServiceIdsIsMutable(); - serviceIds_.addAll(other.serviceIds_); - } - onChanged(); - } - } else { - if (!other.serviceIds_.isEmpty()) { - if (serviceIdsBuilder_.isEmpty()) { - serviceIdsBuilder_.dispose(); - serviceIdsBuilder_ = null; - serviceIds_ = other.serviceIds_; - bitField0_ = (bitField0_ & ~0x00000001); - serviceIdsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getServiceIdsFieldBuilder() : null; - } else { - serviceIdsBuilder_.addAllMessages(other.serviceIds_); - } - } + public Builder mergeFrom(context.ContextOuterClass.SliceOwner other) { + if (other == context.ContextOuterClass.SliceOwner.getDefaultInstance()) return this; + if (other.hasOwnerUuid()) { + mergeOwnerUuid(other.getOwnerUuid()); + } + if (!other.getOwnerString().isEmpty()) { + ownerString_ = other.ownerString_; + onChanged(); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -27098,11 +39270,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ServiceIdList parsedMessage = null; + context.ContextOuterClass.SliceOwner parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ServiceIdList) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.SliceOwner) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -27111,246 +39283,200 @@ public final class ContextOuterClass { } return this; } - private int bitField0_; - - private java.util.List<context.ContextOuterClass.ServiceId> serviceIds_ = - java.util.Collections.emptyList(); - private void ensureServiceIdsIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - serviceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(serviceIds_); - bitField0_ |= 0x00000001; - } - } - - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> serviceIdsBuilder_; + private context.ContextOuterClass.Uuid ownerUuid_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> ownerUuidBuilder_; /** - * <code>repeated .context.ServiceId service_ids = 1;</code> - */ - public java.util.List<context.ContextOuterClass.ServiceId> getServiceIdsList() { - if (serviceIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(serviceIds_); - } else { - return serviceIdsBuilder_.getMessageList(); - } - } - /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>.context.Uuid owner_uuid = 1;</code> + * @return Whether the ownerUuid field is set. */ - public int getServiceIdsCount() { - if (serviceIdsBuilder_ == null) { - return serviceIds_.size(); - } else { - return serviceIdsBuilder_.getCount(); - } + public boolean hasOwnerUuid() { + return ownerUuidBuilder_ != null || ownerUuid_ != null; } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>.context.Uuid owner_uuid = 1;</code> + * @return The ownerUuid. */ - public context.ContextOuterClass.ServiceId getServiceIds(int index) { - if (serviceIdsBuilder_ == null) { - return serviceIds_.get(index); + public context.ContextOuterClass.Uuid getOwnerUuid() { + if (ownerUuidBuilder_ == null) { + return ownerUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : ownerUuid_; } else { - return serviceIdsBuilder_.getMessage(index); + return ownerUuidBuilder_.getMessage(); } } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>.context.Uuid owner_uuid = 1;</code> */ - public Builder setServiceIds( - int index, context.ContextOuterClass.ServiceId value) { - if (serviceIdsBuilder_ == null) { + public Builder setOwnerUuid(context.ContextOuterClass.Uuid value) { + if (ownerUuidBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureServiceIdsIsMutable(); - serviceIds_.set(index, value); - onChanged(); - } else { - serviceIdsBuilder_.setMessage(index, value); - } - return this; - } - /** - * <code>repeated .context.ServiceId service_ids = 1;</code> - */ - public Builder setServiceIds( - int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { - if (serviceIdsBuilder_ == null) { - ensureServiceIdsIsMutable(); - serviceIds_.set(index, builderForValue.build()); + ownerUuid_ = value; onChanged(); } else { - serviceIdsBuilder_.setMessage(index, builderForValue.build()); + ownerUuidBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>.context.Uuid owner_uuid = 1;</code> */ - public Builder addServiceIds(context.ContextOuterClass.ServiceId value) { - if (serviceIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureServiceIdsIsMutable(); - serviceIds_.add(value); + public Builder setOwnerUuid( + context.ContextOuterClass.Uuid.Builder builderForValue) { + if (ownerUuidBuilder_ == null) { + ownerUuid_ = builderForValue.build(); onChanged(); } else { - serviceIdsBuilder_.addMessage(value); + ownerUuidBuilder_.setMessage(builderForValue.build()); } + return this; } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>.context.Uuid owner_uuid = 1;</code> */ - public Builder addServiceIds( - int index, context.ContextOuterClass.ServiceId value) { - if (serviceIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + public Builder mergeOwnerUuid(context.ContextOuterClass.Uuid value) { + if (ownerUuidBuilder_ == null) { + if (ownerUuid_ != null) { + ownerUuid_ = + context.ContextOuterClass.Uuid.newBuilder(ownerUuid_).mergeFrom(value).buildPartial(); + } else { + ownerUuid_ = value; } - ensureServiceIdsIsMutable(); - serviceIds_.add(index, value); onChanged(); } else { - serviceIdsBuilder_.addMessage(index, value); + ownerUuidBuilder_.mergeFrom(value); } + return this; } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>.context.Uuid owner_uuid = 1;</code> */ - public Builder addServiceIds( - context.ContextOuterClass.ServiceId.Builder builderForValue) { - if (serviceIdsBuilder_ == null) { - ensureServiceIdsIsMutable(); - serviceIds_.add(builderForValue.build()); + public Builder clearOwnerUuid() { + if (ownerUuidBuilder_ == null) { + ownerUuid_ = null; onChanged(); } else { - serviceIdsBuilder_.addMessage(builderForValue.build()); + ownerUuid_ = null; + ownerUuidBuilder_ = null; } + return this; } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>.context.Uuid owner_uuid = 1;</code> */ - public Builder addServiceIds( - int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { - if (serviceIdsBuilder_ == null) { - ensureServiceIdsIsMutable(); - serviceIds_.add(index, builderForValue.build()); - onChanged(); - } else { - serviceIdsBuilder_.addMessage(index, builderForValue.build()); - } - return this; + public context.ContextOuterClass.Uuid.Builder getOwnerUuidBuilder() { + + onChanged(); + return getOwnerUuidFieldBuilder().getBuilder(); } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>.context.Uuid owner_uuid = 1;</code> */ - public Builder addAllServiceIds( - java.lang.Iterable<? extends context.ContextOuterClass.ServiceId> values) { - if (serviceIdsBuilder_ == null) { - ensureServiceIdsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, serviceIds_); - onChanged(); + public context.ContextOuterClass.UuidOrBuilder getOwnerUuidOrBuilder() { + if (ownerUuidBuilder_ != null) { + return ownerUuidBuilder_.getMessageOrBuilder(); } else { - serviceIdsBuilder_.addAllMessages(values); + return ownerUuid_ == null ? + context.ContextOuterClass.Uuid.getDefaultInstance() : ownerUuid_; } - return this; } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>.context.Uuid owner_uuid = 1;</code> */ - public Builder clearServiceIds() { - if (serviceIdsBuilder_ == null) { - serviceIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - } else { - serviceIdsBuilder_.clear(); + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> + getOwnerUuidFieldBuilder() { + if (ownerUuidBuilder_ == null) { + ownerUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>( + getOwnerUuid(), + getParentForChildren(), + isClean()); + ownerUuid_ = null; } - return this; + return ownerUuidBuilder_; } + + private java.lang.Object ownerString_ = ""; /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>string owner_string = 2;</code> + * @return The ownerString. */ - public Builder removeServiceIds(int index) { - if (serviceIdsBuilder_ == null) { - ensureServiceIdsIsMutable(); - serviceIds_.remove(index); - onChanged(); + public java.lang.String getOwnerString() { + java.lang.Object ref = ownerString_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + ownerString_ = s; + return s; } else { - serviceIdsBuilder_.remove(index); - } - return this; - } - /** - * <code>repeated .context.ServiceId service_ids = 1;</code> - */ - public context.ContextOuterClass.ServiceId.Builder getServiceIdsBuilder( - int index) { - return getServiceIdsFieldBuilder().getBuilder(index); - } - /** - * <code>repeated .context.ServiceId service_ids = 1;</code> - */ - public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdsOrBuilder( - int index) { - if (serviceIdsBuilder_ == null) { - return serviceIds_.get(index); } else { - return serviceIdsBuilder_.getMessageOrBuilder(index); + return (java.lang.String) ref; } } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>string owner_string = 2;</code> + * @return The bytes for ownerString. */ - public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> - getServiceIdsOrBuilderList() { - if (serviceIdsBuilder_ != null) { - return serviceIdsBuilder_.getMessageOrBuilderList(); + public com.google.protobuf.ByteString + getOwnerStringBytes() { + java.lang.Object ref = ownerString_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + ownerString_ = b; + return b; } else { - return java.util.Collections.unmodifiableList(serviceIds_); + return (com.google.protobuf.ByteString) ref; } } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>string owner_string = 2;</code> + * @param value The ownerString to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.ServiceId.Builder addServiceIdsBuilder() { - return getServiceIdsFieldBuilder().addBuilder( - context.ContextOuterClass.ServiceId.getDefaultInstance()); + public Builder setOwnerString( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + ownerString_ = value; + onChanged(); + return this; } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>string owner_string = 2;</code> + * @return This builder for chaining. */ - public context.ContextOuterClass.ServiceId.Builder addServiceIdsBuilder( - int index) { - return getServiceIdsFieldBuilder().addBuilder( - index, context.ContextOuterClass.ServiceId.getDefaultInstance()); + public Builder clearOwnerString() { + + ownerString_ = getDefaultInstance().getOwnerString(); + onChanged(); + return this; } /** - * <code>repeated .context.ServiceId service_ids = 1;</code> + * <code>string owner_string = 2;</code> + * @param value The bytes for ownerString to set. + * @return This builder for chaining. */ - public java.util.List<context.ContextOuterClass.ServiceId.Builder> - getServiceIdsBuilderList() { - return getServiceIdsFieldBuilder().getBuilderList(); - } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> - getServiceIdsFieldBuilder() { - if (serviceIdsBuilder_ == null) { - serviceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder>( - serviceIds_, - ((bitField0_ & 0x00000001) != 0), - getParentForChildren(), - isClean()); - serviceIds_ = null; - } - return serviceIdsBuilder_; + public Builder setOwnerStringBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + ownerString_ = value; + onChanged(); + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -27365,95 +39491,82 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ServiceIdList) + // @@protoc_insertion_point(builder_scope:context.SliceOwner) } - // @@protoc_insertion_point(class_scope:context.ServiceIdList) - private static final context.ContextOuterClass.ServiceIdList DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.SliceOwner) + private static final context.ContextOuterClass.SliceOwner DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceIdList(); + DEFAULT_INSTANCE = new context.ContextOuterClass.SliceOwner(); } - public static context.ContextOuterClass.ServiceIdList getDefaultInstance() { + public static context.ContextOuterClass.SliceOwner getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ServiceIdList> - PARSER = new com.google.protobuf.AbstractParser<ServiceIdList>() { + private static final com.google.protobuf.Parser<SliceOwner> + PARSER = new com.google.protobuf.AbstractParser<SliceOwner>() { @java.lang.Override - public ServiceIdList parsePartialFrom( + public SliceOwner parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ServiceIdList(input, extensionRegistry); + return new SliceOwner(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ServiceIdList> parser() { + public static com.google.protobuf.Parser<SliceOwner> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ServiceIdList> getParserForType() { + public com.google.protobuf.Parser<SliceOwner> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ServiceIdList getDefaultInstanceForType() { + public context.ContextOuterClass.SliceOwner getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ServiceListOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ServiceList) + public interface SliceStatusOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.SliceStatus) com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .context.Service services = 1;</code> - */ - java.util.List<context.ContextOuterClass.Service> - getServicesList(); - /** - * <code>repeated .context.Service services = 1;</code> - */ - context.ContextOuterClass.Service getServices(int index); - /** - * <code>repeated .context.Service services = 1;</code> - */ - int getServicesCount(); - /** - * <code>repeated .context.Service services = 1;</code> + * <code>.context.SliceStatusEnum slice_status = 1;</code> + * @return The enum numeric value on the wire for sliceStatus. */ - java.util.List<? extends context.ContextOuterClass.ServiceOrBuilder> - getServicesOrBuilderList(); + int getSliceStatusValue(); /** - * <code>repeated .context.Service services = 1;</code> + * <code>.context.SliceStatusEnum slice_status = 1;</code> + * @return The sliceStatus. */ - context.ContextOuterClass.ServiceOrBuilder getServicesOrBuilder( - int index); + context.ContextOuterClass.SliceStatusEnum getSliceStatus(); } /** - * Protobuf type {@code context.ServiceList} + * Protobuf type {@code context.SliceStatus} */ - public static final class ServiceList extends + public static final class SliceStatus extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ServiceList) - ServiceListOrBuilder { + // @@protoc_insertion_point(message_implements:context.SliceStatus) + SliceStatusOrBuilder { private static final long serialVersionUID = 0L; - // Use ServiceList.newBuilder() to construct. - private ServiceList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use SliceStatus.newBuilder() to construct. + private SliceStatus(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ServiceList() { - services_ = java.util.Collections.emptyList(); + private SliceStatus() { + sliceStatus_ = 0; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ServiceList(); + return new SliceStatus(); } @java.lang.Override @@ -27461,7 +39574,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ServiceList( + private SliceStatus( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -27469,7 +39582,6 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } - int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -27480,13 +39592,10 @@ public final class ContextOuterClass { case 0: done = true; break; - case 10: { - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - services_ = new java.util.ArrayList<context.ContextOuterClass.Service>(); - mutable_bitField0_ |= 0x00000001; - } - services_.add( - input.readMessage(context.ContextOuterClass.Service.parser(), extensionRegistry)); + case 8: { + int rawValue = input.readEnum(); + + sliceStatus_ = rawValue; break; } default: { @@ -27504,64 +39613,40 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { - if (((mutable_bitField0_ & 0x00000001) != 0)) { - services_ = java.util.Collections.unmodifiableList(services_); - } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ServiceList_descriptor; + return context.ContextOuterClass.internal_static_context_SliceStatus_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ServiceList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_SliceStatus_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ServiceList.class, context.ContextOuterClass.ServiceList.Builder.class); + context.ContextOuterClass.SliceStatus.class, context.ContextOuterClass.SliceStatus.Builder.class); } - public static final int SERVICES_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.Service> services_; - /** - * <code>repeated .context.Service services = 1;</code> - */ - @java.lang.Override - public java.util.List<context.ContextOuterClass.Service> getServicesList() { - return services_; - } - /** - * <code>repeated .context.Service services = 1;</code> - */ - @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.ServiceOrBuilder> - getServicesOrBuilderList() { - return services_; - } - /** - * <code>repeated .context.Service services = 1;</code> - */ - @java.lang.Override - public int getServicesCount() { - return services_.size(); - } + public static final int SLICE_STATUS_FIELD_NUMBER = 1; + private int sliceStatus_; /** - * <code>repeated .context.Service services = 1;</code> + * <code>.context.SliceStatusEnum slice_status = 1;</code> + * @return The enum numeric value on the wire for sliceStatus. */ - @java.lang.Override - public context.ContextOuterClass.Service getServices(int index) { - return services_.get(index); + @java.lang.Override public int getSliceStatusValue() { + return sliceStatus_; } /** - * <code>repeated .context.Service services = 1;</code> + * <code>.context.SliceStatusEnum slice_status = 1;</code> + * @return The sliceStatus. */ - @java.lang.Override - public context.ContextOuterClass.ServiceOrBuilder getServicesOrBuilder( - int index) { - return services_.get(index); + @java.lang.Override public context.ContextOuterClass.SliceStatusEnum getSliceStatus() { + @SuppressWarnings("deprecation") + context.ContextOuterClass.SliceStatusEnum result = context.ContextOuterClass.SliceStatusEnum.valueOf(sliceStatus_); + return result == null ? context.ContextOuterClass.SliceStatusEnum.UNRECOGNIZED : result; } private byte memoizedIsInitialized = -1; @@ -27578,8 +39663,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < services_.size(); i++) { - output.writeMessage(1, services_.get(i)); + if (sliceStatus_ != context.ContextOuterClass.SliceStatusEnum.SLICESTATUS_UNDEFINED.getNumber()) { + output.writeEnum(1, sliceStatus_); } unknownFields.writeTo(output); } @@ -27590,9 +39675,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < services_.size(); i++) { + if (sliceStatus_ != context.ContextOuterClass.SliceStatusEnum.SLICESTATUS_UNDEFINED.getNumber()) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, services_.get(i)); + .computeEnumSize(1, sliceStatus_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -27604,13 +39689,12 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ServiceList)) { + if (!(obj instanceof context.ContextOuterClass.SliceStatus)) { return super.equals(obj); } - context.ContextOuterClass.ServiceList other = (context.ContextOuterClass.ServiceList) obj; + context.ContextOuterClass.SliceStatus other = (context.ContextOuterClass.SliceStatus) obj; - if (!getServicesList() - .equals(other.getServicesList())) return false; + if (sliceStatus_ != other.sliceStatus_) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -27622,78 +39706,76 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getServicesCount() > 0) { - hash = (37 * hash) + SERVICES_FIELD_NUMBER; - hash = (53 * hash) + getServicesList().hashCode(); - } + hash = (37 * hash) + SLICE_STATUS_FIELD_NUMBER; + hash = (53 * hash) + sliceStatus_; hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ServiceList parseFrom( + public static context.ContextOuterClass.SliceStatus parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceList parseFrom( + public static context.ContextOuterClass.SliceStatus parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceList parseFrom( + public static context.ContextOuterClass.SliceStatus parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceList parseFrom( + public static context.ContextOuterClass.SliceStatus parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceList parseFrom(byte[] data) + public static context.ContextOuterClass.SliceStatus parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceList parseFrom( + public static context.ContextOuterClass.SliceStatus parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceList parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.SliceStatus parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceList parseFrom( + public static context.ContextOuterClass.SliceStatus 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 context.ContextOuterClass.ServiceList parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.SliceStatus parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceList parseDelimitedFrom( + public static context.ContextOuterClass.SliceStatus 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 context.ContextOuterClass.ServiceList parseFrom( + public static context.ContextOuterClass.SliceStatus parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceList parseFrom( + public static context.ContextOuterClass.SliceStatus parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -27706,7 +39788,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ServiceList prototype) { + public static Builder newBuilder(context.ContextOuterClass.SliceStatus prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -27722,26 +39804,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ServiceList} + * Protobuf type {@code context.SliceStatus} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ServiceList) - context.ContextOuterClass.ServiceListOrBuilder { + // @@protoc_insertion_point(builder_implements:context.SliceStatus) + context.ContextOuterClass.SliceStatusOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ServiceList_descriptor; + return context.ContextOuterClass.internal_static_context_SliceStatus_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ServiceList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_SliceStatus_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ServiceList.class, context.ContextOuterClass.ServiceList.Builder.class); + context.ContextOuterClass.SliceStatus.class, context.ContextOuterClass.SliceStatus.Builder.class); } - // Construct using context.ContextOuterClass.ServiceList.newBuilder() + // Construct using context.ContextOuterClass.SliceStatus.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -27754,35 +39836,30 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getServicesFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (servicesBuilder_ == null) { - services_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - } else { - servicesBuilder_.clear(); - } + sliceStatus_ = 0; + return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ServiceList_descriptor; + return context.ContextOuterClass.internal_static_context_SliceStatus_descriptor; } @java.lang.Override - public context.ContextOuterClass.ServiceList getDefaultInstanceForType() { - return context.ContextOuterClass.ServiceList.getDefaultInstance(); + public context.ContextOuterClass.SliceStatus getDefaultInstanceForType() { + return context.ContextOuterClass.SliceStatus.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ServiceList build() { - context.ContextOuterClass.ServiceList result = buildPartial(); + public context.ContextOuterClass.SliceStatus build() { + context.ContextOuterClass.SliceStatus result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -27790,18 +39867,9 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ServiceList buildPartial() { - context.ContextOuterClass.ServiceList result = new context.ContextOuterClass.ServiceList(this); - int from_bitField0_ = bitField0_; - if (servicesBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { - services_ = java.util.Collections.unmodifiableList(services_); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.services_ = services_; - } else { - result.services_ = servicesBuilder_.build(); - } + public context.ContextOuterClass.SliceStatus buildPartial() { + context.ContextOuterClass.SliceStatus result = new context.ContextOuterClass.SliceStatus(this); + result.sliceStatus_ = sliceStatus_; onBuilt(); return result; } @@ -27840,310 +39908,100 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ServiceList) { - return mergeFrom((context.ContextOuterClass.ServiceList)other); + if (other instanceof context.ContextOuterClass.SliceStatus) { + return mergeFrom((context.ContextOuterClass.SliceStatus)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ServiceList other) { - if (other == context.ContextOuterClass.ServiceList.getDefaultInstance()) return this; - if (servicesBuilder_ == null) { - if (!other.services_.isEmpty()) { - if (services_.isEmpty()) { - services_ = other.services_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureServicesIsMutable(); - services_.addAll(other.services_); - } - onChanged(); - } - } else { - if (!other.services_.isEmpty()) { - if (servicesBuilder_.isEmpty()) { - servicesBuilder_.dispose(); - servicesBuilder_ = null; - services_ = other.services_; - bitField0_ = (bitField0_ & ~0x00000001); - servicesBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getServicesFieldBuilder() : null; - } else { - servicesBuilder_.addAllMessages(other.services_); - } - } - } - this.mergeUnknownFields(other.unknownFields); - onChanged(); - return this; - } - - @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 { - context.ContextOuterClass.ServiceList parsedMessage = null; - try { - parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ServiceList) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); - } - } - return this; - } - private int bitField0_; - - private java.util.List<context.ContextOuterClass.Service> services_ = - java.util.Collections.emptyList(); - private void ensureServicesIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - services_ = new java.util.ArrayList<context.ContextOuterClass.Service>(services_); - bitField0_ |= 0x00000001; - } - } - - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Service, context.ContextOuterClass.Service.Builder, context.ContextOuterClass.ServiceOrBuilder> servicesBuilder_; - - /** - * <code>repeated .context.Service services = 1;</code> - */ - public java.util.List<context.ContextOuterClass.Service> getServicesList() { - if (servicesBuilder_ == null) { - return java.util.Collections.unmodifiableList(services_); - } else { - return servicesBuilder_.getMessageList(); - } - } - /** - * <code>repeated .context.Service services = 1;</code> - */ - public int getServicesCount() { - if (servicesBuilder_ == null) { - return services_.size(); - } else { - return servicesBuilder_.getCount(); - } - } - /** - * <code>repeated .context.Service services = 1;</code> - */ - public context.ContextOuterClass.Service getServices(int index) { - if (servicesBuilder_ == null) { - return services_.get(index); - } else { - return servicesBuilder_.getMessage(index); - } - } - /** - * <code>repeated .context.Service services = 1;</code> - */ - public Builder setServices( - int index, context.ContextOuterClass.Service value) { - if (servicesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureServicesIsMutable(); - services_.set(index, value); - onChanged(); - } else { - servicesBuilder_.setMessage(index, value); - } - return this; - } - /** - * <code>repeated .context.Service services = 1;</code> - */ - public Builder setServices( - int index, context.ContextOuterClass.Service.Builder builderForValue) { - if (servicesBuilder_ == null) { - ensureServicesIsMutable(); - services_.set(index, builderForValue.build()); - onChanged(); - } else { - servicesBuilder_.setMessage(index, builderForValue.build()); - } - return this; - } - /** - * <code>repeated .context.Service services = 1;</code> - */ - public Builder addServices(context.ContextOuterClass.Service value) { - if (servicesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureServicesIsMutable(); - services_.add(value); - onChanged(); - } else { - servicesBuilder_.addMessage(value); - } - return this; - } - /** - * <code>repeated .context.Service services = 1;</code> - */ - public Builder addServices( - int index, context.ContextOuterClass.Service value) { - if (servicesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureServicesIsMutable(); - services_.add(index, value); - onChanged(); - } else { - servicesBuilder_.addMessage(index, value); - } - return this; - } - /** - * <code>repeated .context.Service services = 1;</code> - */ - public Builder addServices( - context.ContextOuterClass.Service.Builder builderForValue) { - if (servicesBuilder_ == null) { - ensureServicesIsMutable(); - services_.add(builderForValue.build()); - onChanged(); - } else { - servicesBuilder_.addMessage(builderForValue.build()); - } - return this; - } - /** - * <code>repeated .context.Service services = 1;</code> - */ - public Builder addServices( - int index, context.ContextOuterClass.Service.Builder builderForValue) { - if (servicesBuilder_ == null) { - ensureServicesIsMutable(); - services_.add(index, builderForValue.build()); - onChanged(); - } else { - servicesBuilder_.addMessage(index, builderForValue.build()); - } - return this; - } - /** - * <code>repeated .context.Service services = 1;</code> - */ - public Builder addAllServices( - java.lang.Iterable<? extends context.ContextOuterClass.Service> values) { - if (servicesBuilder_ == null) { - ensureServicesIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, services_); - onChanged(); - } else { - servicesBuilder_.addAllMessages(values); - } - return this; - } - /** - * <code>repeated .context.Service services = 1;</code> - */ - public Builder clearServices() { - if (servicesBuilder_ == null) { - services_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - } else { - servicesBuilder_.clear(); + public Builder mergeFrom(context.ContextOuterClass.SliceStatus other) { + if (other == context.ContextOuterClass.SliceStatus.getDefaultInstance()) return this; + if (other.sliceStatus_ != 0) { + setSliceStatusValue(other.getSliceStatusValue()); } + this.mergeUnknownFields(other.unknownFields); + onChanged(); return this; } - /** - * <code>repeated .context.Service services = 1;</code> - */ - public Builder removeServices(int index) { - if (servicesBuilder_ == null) { - ensureServicesIsMutable(); - services_.remove(index); - onChanged(); - } else { - servicesBuilder_.remove(index); + + @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 { + context.ContextOuterClass.SliceStatus parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.SliceStatus) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } } return this; } + + private int sliceStatus_ = 0; /** - * <code>repeated .context.Service services = 1;</code> - */ - public context.ContextOuterClass.Service.Builder getServicesBuilder( - int index) { - return getServicesFieldBuilder().getBuilder(index); - } - /** - * <code>repeated .context.Service services = 1;</code> + * <code>.context.SliceStatusEnum slice_status = 1;</code> + * @return The enum numeric value on the wire for sliceStatus. */ - public context.ContextOuterClass.ServiceOrBuilder getServicesOrBuilder( - int index) { - if (servicesBuilder_ == null) { - return services_.get(index); } else { - return servicesBuilder_.getMessageOrBuilder(index); - } + @java.lang.Override public int getSliceStatusValue() { + return sliceStatus_; } /** - * <code>repeated .context.Service services = 1;</code> + * <code>.context.SliceStatusEnum slice_status = 1;</code> + * @param value The enum numeric value on the wire for sliceStatus to set. + * @return This builder for chaining. */ - public java.util.List<? extends context.ContextOuterClass.ServiceOrBuilder> - getServicesOrBuilderList() { - if (servicesBuilder_ != null) { - return servicesBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(services_); - } + public Builder setSliceStatusValue(int value) { + + sliceStatus_ = value; + onChanged(); + return this; } /** - * <code>repeated .context.Service services = 1;</code> + * <code>.context.SliceStatusEnum slice_status = 1;</code> + * @return The sliceStatus. */ - public context.ContextOuterClass.Service.Builder addServicesBuilder() { - return getServicesFieldBuilder().addBuilder( - context.ContextOuterClass.Service.getDefaultInstance()); + @java.lang.Override + public context.ContextOuterClass.SliceStatusEnum getSliceStatus() { + @SuppressWarnings("deprecation") + context.ContextOuterClass.SliceStatusEnum result = context.ContextOuterClass.SliceStatusEnum.valueOf(sliceStatus_); + return result == null ? context.ContextOuterClass.SliceStatusEnum.UNRECOGNIZED : result; } /** - * <code>repeated .context.Service services = 1;</code> + * <code>.context.SliceStatusEnum slice_status = 1;</code> + * @param value The sliceStatus to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.Service.Builder addServicesBuilder( - int index) { - return getServicesFieldBuilder().addBuilder( - index, context.ContextOuterClass.Service.getDefaultInstance()); + public Builder setSliceStatus(context.ContextOuterClass.SliceStatusEnum value) { + if (value == null) { + throw new NullPointerException(); + } + + sliceStatus_ = value.getNumber(); + onChanged(); + return this; } /** - * <code>repeated .context.Service services = 1;</code> + * <code>.context.SliceStatusEnum slice_status = 1;</code> + * @return This builder for chaining. */ - public java.util.List<context.ContextOuterClass.Service.Builder> - getServicesBuilderList() { - return getServicesFieldBuilder().getBuilderList(); - } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Service, context.ContextOuterClass.Service.Builder, context.ContextOuterClass.ServiceOrBuilder> - getServicesFieldBuilder() { - if (servicesBuilder_ == null) { - servicesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Service, context.ContextOuterClass.Service.Builder, context.ContextOuterClass.ServiceOrBuilder>( - services_, - ((bitField0_ & 0x00000001) != 0), - getParentForChildren(), - isClean()); - services_ = null; - } - return servicesBuilder_; + public Builder clearSliceStatus() { + + sliceStatus_ = 0; + onChanged(); + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -28158,100 +40016,95 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ServiceList) + // @@protoc_insertion_point(builder_scope:context.SliceStatus) } - // @@protoc_insertion_point(class_scope:context.ServiceList) - private static final context.ContextOuterClass.ServiceList DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.SliceStatus) + private static final context.ContextOuterClass.SliceStatus DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceList(); + DEFAULT_INSTANCE = new context.ContextOuterClass.SliceStatus(); } - public static context.ContextOuterClass.ServiceList getDefaultInstance() { + public static context.ContextOuterClass.SliceStatus getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ServiceList> - PARSER = new com.google.protobuf.AbstractParser<ServiceList>() { + private static final com.google.protobuf.Parser<SliceStatus> + PARSER = new com.google.protobuf.AbstractParser<SliceStatus>() { @java.lang.Override - public ServiceList parsePartialFrom( + public SliceStatus parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ServiceList(input, extensionRegistry); + return new SliceStatus(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ServiceList> parser() { + public static com.google.protobuf.Parser<SliceStatus> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ServiceList> getParserForType() { + public com.google.protobuf.Parser<SliceStatus> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ServiceList getDefaultInstanceForType() { + public context.ContextOuterClass.SliceStatus getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ServiceEventOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ServiceEvent) + public interface SliceConfigOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.SliceConfig) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. - */ - boolean hasEvent(); - /** - * <code>.context.Event event = 1;</code> - * @return The event. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - context.ContextOuterClass.Event getEvent(); + java.util.List<context.ContextOuterClass.ConfigRule> + getConfigRulesList(); /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - context.ContextOuterClass.EventOrBuilder getEventOrBuilder(); - + context.ContextOuterClass.ConfigRule getConfigRules(int index); /** - * <code>.context.ServiceId service_id = 2;</code> - * @return Whether the serviceId field is set. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - boolean hasServiceId(); + int getConfigRulesCount(); /** - * <code>.context.ServiceId service_id = 2;</code> - * @return The serviceId. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - context.ContextOuterClass.ServiceId getServiceId(); + java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> + getConfigRulesOrBuilderList(); /** - * <code>.context.ServiceId service_id = 2;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder(); + context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( + int index); } /** - * Protobuf type {@code context.ServiceEvent} + * Protobuf type {@code context.SliceConfig} */ - public static final class ServiceEvent extends + public static final class SliceConfig extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ServiceEvent) - ServiceEventOrBuilder { + // @@protoc_insertion_point(message_implements:context.SliceConfig) + SliceConfigOrBuilder { private static final long serialVersionUID = 0L; - // Use ServiceEvent.newBuilder() to construct. - private ServiceEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use SliceConfig.newBuilder() to construct. + private SliceConfig(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ServiceEvent() { + private SliceConfig() { + configRules_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ServiceEvent(); + return new SliceConfig(); } @java.lang.Override @@ -28259,7 +40112,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ServiceEvent( + private SliceConfig( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -28267,6 +40120,7 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } + int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -28278,29 +40132,12 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.Event.Builder subBuilder = null; - if (event_ != null) { - subBuilder = event_.toBuilder(); - } - event_ = input.readMessage(context.ContextOuterClass.Event.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(event_); - event_ = 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(); + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + configRules_ = new java.util.ArrayList<context.ContextOuterClass.ConfigRule>(); + mutable_bitField0_ |= 0x00000001; } - + configRules_.add( + input.readMessage(context.ContextOuterClass.ConfigRule.parser(), extensionRegistry)); break; } default: { @@ -28318,73 +40155,64 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { + if (((mutable_bitField0_ & 0x00000001) != 0)) { + configRules_ = java.util.Collections.unmodifiableList(configRules_); + } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ServiceEvent_descriptor; + return context.ContextOuterClass.internal_static_context_SliceConfig_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ServiceEvent_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_SliceConfig_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ServiceEvent.class, context.ContextOuterClass.ServiceEvent.Builder.class); + context.ContextOuterClass.SliceConfig.class, context.ContextOuterClass.SliceConfig.Builder.class); } - public static final int EVENT_FIELD_NUMBER = 1; - private context.ContextOuterClass.Event event_; - /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. - */ - @java.lang.Override - public boolean hasEvent() { - return event_ != null; - } + public static final int CONFIG_RULES_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.ConfigRule> configRules_; /** - * <code>.context.Event event = 1;</code> - * @return The event. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.Event getEvent() { - return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; + public java.util.List<context.ContextOuterClass.ConfigRule> getConfigRulesList() { + return configRules_; } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { - return getEvent(); + public java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> + getConfigRulesOrBuilderList() { + return configRules_; } - - public static final int SERVICE_ID_FIELD_NUMBER = 2; - private context.ContextOuterClass.ServiceId serviceId_; /** - * <code>.context.ServiceId service_id = 2;</code> - * @return Whether the serviceId field is set. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ @java.lang.Override - public boolean hasServiceId() { - return serviceId_ != null; + public int getConfigRulesCount() { + return configRules_.size(); } /** - * <code>.context.ServiceId service_id = 2;</code> - * @return The serviceId. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.ServiceId getServiceId() { - return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; + public context.ContextOuterClass.ConfigRule getConfigRules(int index) { + return configRules_.get(index); } /** - * <code>.context.ServiceId service_id = 2;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() { - return getServiceId(); + public context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( + int index) { + return configRules_.get(index); } private byte memoizedIsInitialized = -1; @@ -28401,11 +40229,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (event_ != null) { - output.writeMessage(1, getEvent()); - } - if (serviceId_ != null) { - output.writeMessage(2, getServiceId()); + for (int i = 0; i < configRules_.size(); i++) { + output.writeMessage(1, configRules_.get(i)); } unknownFields.writeTo(output); } @@ -28416,13 +40241,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (event_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getEvent()); - } - if (serviceId_ != null) { + for (int i = 0; i < configRules_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, getServiceId()); + .computeMessageSize(1, configRules_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -28434,21 +40255,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ServiceEvent)) { + if (!(obj instanceof context.ContextOuterClass.SliceConfig)) { return super.equals(obj); } - context.ContextOuterClass.ServiceEvent other = (context.ContextOuterClass.ServiceEvent) obj; + context.ContextOuterClass.SliceConfig other = (context.ContextOuterClass.SliceConfig) obj; - if (hasEvent() != other.hasEvent()) return false; - if (hasEvent()) { - if (!getEvent() - .equals(other.getEvent())) return false; - } - if (hasServiceId() != other.hasServiceId()) return false; - if (hasServiceId()) { - if (!getServiceId() - .equals(other.getServiceId())) return false; - } + if (!getConfigRulesList() + .equals(other.getConfigRulesList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -28460,82 +40273,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasEvent()) { - hash = (37 * hash) + EVENT_FIELD_NUMBER; - hash = (53 * hash) + getEvent().hashCode(); - } - if (hasServiceId()) { - hash = (37 * hash) + SERVICE_ID_FIELD_NUMBER; - hash = (53 * hash) + getServiceId().hashCode(); + if (getConfigRulesCount() > 0) { + hash = (37 * hash) + CONFIG_RULES_FIELD_NUMBER; + hash = (53 * hash) + getConfigRulesList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ServiceEvent parseFrom( + public static context.ContextOuterClass.SliceConfig parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceEvent parseFrom( + public static context.ContextOuterClass.SliceConfig parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceEvent parseFrom( + public static context.ContextOuterClass.SliceConfig parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceEvent parseFrom( + public static context.ContextOuterClass.SliceConfig parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceEvent parseFrom(byte[] data) + public static context.ContextOuterClass.SliceConfig parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ServiceEvent parseFrom( + public static context.ContextOuterClass.SliceConfig parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ServiceEvent parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.SliceConfig parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceEvent parseFrom( + public static context.ContextOuterClass.SliceConfig 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 context.ContextOuterClass.ServiceEvent parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.SliceConfig parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceEvent parseDelimitedFrom( + public static context.ContextOuterClass.SliceConfig 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 context.ContextOuterClass.ServiceEvent parseFrom( + public static context.ContextOuterClass.SliceConfig parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ServiceEvent parseFrom( + public static context.ContextOuterClass.SliceConfig parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -28548,7 +40357,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ServiceEvent prototype) { + public static Builder newBuilder(context.ContextOuterClass.SliceConfig prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -28564,26 +40373,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ServiceEvent} + * Protobuf type {@code context.SliceConfig} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ServiceEvent) - context.ContextOuterClass.ServiceEventOrBuilder { + // @@protoc_insertion_point(builder_implements:context.SliceConfig) + context.ContextOuterClass.SliceConfigOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ServiceEvent_descriptor; + return context.ContextOuterClass.internal_static_context_SliceConfig_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ServiceEvent_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_SliceConfig_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ServiceEvent.class, context.ContextOuterClass.ServiceEvent.Builder.class); + context.ContextOuterClass.SliceConfig.class, context.ContextOuterClass.SliceConfig.Builder.class); } - // Construct using context.ContextOuterClass.ServiceEvent.newBuilder() + // Construct using context.ContextOuterClass.SliceConfig.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -28596,22 +40405,17 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { + getConfigRulesFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (eventBuilder_ == null) { - event_ = null; - } else { - event_ = null; - eventBuilder_ = null; - } - if (serviceIdBuilder_ == null) { - serviceId_ = null; + if (configRulesBuilder_ == null) { + configRules_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); } else { - serviceId_ = null; - serviceIdBuilder_ = null; + configRulesBuilder_.clear(); } return this; } @@ -28619,17 +40423,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ServiceEvent_descriptor; + return context.ContextOuterClass.internal_static_context_SliceConfig_descriptor; } @java.lang.Override - public context.ContextOuterClass.ServiceEvent getDefaultInstanceForType() { - return context.ContextOuterClass.ServiceEvent.getDefaultInstance(); + public context.ContextOuterClass.SliceConfig getDefaultInstanceForType() { + return context.ContextOuterClass.SliceConfig.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ServiceEvent build() { - context.ContextOuterClass.ServiceEvent result = buildPartial(); + public context.ContextOuterClass.SliceConfig build() { + context.ContextOuterClass.SliceConfig result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -28637,17 +40441,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ServiceEvent buildPartial() { - context.ContextOuterClass.ServiceEvent result = new context.ContextOuterClass.ServiceEvent(this); - if (eventBuilder_ == null) { - result.event_ = event_; - } else { - result.event_ = eventBuilder_.build(); - } - if (serviceIdBuilder_ == null) { - result.serviceId_ = serviceId_; + public context.ContextOuterClass.SliceConfig buildPartial() { + context.ContextOuterClass.SliceConfig result = new context.ContextOuterClass.SliceConfig(this); + int from_bitField0_ = bitField0_; + if (configRulesBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + configRules_ = java.util.Collections.unmodifiableList(configRules_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.configRules_ = configRules_; } else { - result.serviceId_ = serviceIdBuilder_.build(); + result.configRules_ = configRulesBuilder_.build(); } onBuilt(); return result; @@ -28687,21 +40491,41 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ServiceEvent) { - return mergeFrom((context.ContextOuterClass.ServiceEvent)other); + if (other instanceof context.ContextOuterClass.SliceConfig) { + return mergeFrom((context.ContextOuterClass.SliceConfig)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ServiceEvent other) { - if (other == context.ContextOuterClass.ServiceEvent.getDefaultInstance()) return this; - if (other.hasEvent()) { - mergeEvent(other.getEvent()); - } - if (other.hasServiceId()) { - mergeServiceId(other.getServiceId()); + public Builder mergeFrom(context.ContextOuterClass.SliceConfig other) { + if (other == context.ContextOuterClass.SliceConfig.getDefaultInstance()) return this; + if (configRulesBuilder_ == null) { + if (!other.configRules_.isEmpty()) { + if (configRules_.isEmpty()) { + configRules_ = other.configRules_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureConfigRulesIsMutable(); + configRules_.addAll(other.configRules_); + } + onChanged(); + } + } else { + if (!other.configRules_.isEmpty()) { + if (configRulesBuilder_.isEmpty()) { + configRulesBuilder_.dispose(); + configRulesBuilder_ = null; + configRules_ = other.configRules_; + bitField0_ = (bitField0_ & ~0x00000001); + configRulesBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getConfigRulesFieldBuilder() : null; + } else { + configRulesBuilder_.addAllMessages(other.configRules_); + } + } } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -28718,11 +40542,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ServiceEvent parsedMessage = null; + context.ContextOuterClass.SliceConfig parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ServiceEvent) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.SliceConfig) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -28731,243 +40555,246 @@ public final class ContextOuterClass { } return this; } + private int bitField0_; + + private java.util.List<context.ContextOuterClass.ConfigRule> configRules_ = + java.util.Collections.emptyList(); + private void ensureConfigRulesIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + configRules_ = new java.util.ArrayList<context.ContextOuterClass.ConfigRule>(configRules_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder> configRulesBuilder_; - private context.ContextOuterClass.Event event_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> eventBuilder_; /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public boolean hasEvent() { - return eventBuilder_ != null || event_ != null; + public java.util.List<context.ContextOuterClass.ConfigRule> getConfigRulesList() { + if (configRulesBuilder_ == null) { + return java.util.Collections.unmodifiableList(configRules_); + } else { + return configRulesBuilder_.getMessageList(); + } } /** - * <code>.context.Event event = 1;</code> - * @return The event. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public context.ContextOuterClass.Event getEvent() { - if (eventBuilder_ == null) { - return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; + public int getConfigRulesCount() { + if (configRulesBuilder_ == null) { + return configRules_.size(); } else { - return eventBuilder_.getMessage(); + return configRulesBuilder_.getCount(); } } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public Builder setEvent(context.ContextOuterClass.Event value) { - if (eventBuilder_ == null) { + public context.ContextOuterClass.ConfigRule getConfigRules(int index) { + if (configRulesBuilder_ == null) { + return configRules_.get(index); + } else { + return configRulesBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public Builder setConfigRules( + int index, context.ContextOuterClass.ConfigRule value) { + if (configRulesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - event_ = value; + ensureConfigRulesIsMutable(); + configRules_.set(index, value); onChanged(); } else { - eventBuilder_.setMessage(value); + configRulesBuilder_.setMessage(index, value); } - return this; } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public Builder setEvent( - context.ContextOuterClass.Event.Builder builderForValue) { - if (eventBuilder_ == null) { - event_ = builderForValue.build(); + public Builder setConfigRules( + int index, context.ContextOuterClass.ConfigRule.Builder builderForValue) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + configRules_.set(index, builderForValue.build()); onChanged(); } else { - eventBuilder_.setMessage(builderForValue.build()); + configRulesBuilder_.setMessage(index, builderForValue.build()); } - return this; } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public Builder mergeEvent(context.ContextOuterClass.Event value) { - if (eventBuilder_ == null) { - if (event_ != null) { - event_ = - context.ContextOuterClass.Event.newBuilder(event_).mergeFrom(value).buildPartial(); - } else { - event_ = value; + public Builder addConfigRules(context.ContextOuterClass.ConfigRule value) { + if (configRulesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + ensureConfigRulesIsMutable(); + configRules_.add(value); onChanged(); } else { - eventBuilder_.mergeFrom(value); + configRulesBuilder_.addMessage(value); } - return this; } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public Builder clearEvent() { - if (eventBuilder_ == null) { - event_ = null; + public Builder addConfigRules( + int index, context.ContextOuterClass.ConfigRule value) { + if (configRulesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConfigRulesIsMutable(); + configRules_.add(index, value); onChanged(); } else { - event_ = null; - eventBuilder_ = null; + configRulesBuilder_.addMessage(index, value); } - return this; } /** - * <code>.context.Event event = 1;</code> - */ - public context.ContextOuterClass.Event.Builder getEventBuilder() { - - onChanged(); - return getEventFieldBuilder().getBuilder(); - } - /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { - if (eventBuilder_ != null) { - return eventBuilder_.getMessageOrBuilder(); + public Builder addConfigRules( + context.ContextOuterClass.ConfigRule.Builder builderForValue) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + configRules_.add(builderForValue.build()); + onChanged(); } else { - return event_ == null ? - context.ContextOuterClass.Event.getDefaultInstance() : event_; + configRulesBuilder_.addMessage(builderForValue.build()); } + return this; } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.ConfigRule config_rules = 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(), - getParentForChildren(), - isClean()); - event_ = null; + public Builder addConfigRules( + int index, context.ContextOuterClass.ConfigRule.Builder builderForValue) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + configRules_.add(index, builderForValue.build()); + onChanged(); + } else { + configRulesBuilder_.addMessage(index, builderForValue.build()); } - return eventBuilder_; - } - - private context.ContextOuterClass.ServiceId serviceId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> serviceIdBuilder_; - /** - * <code>.context.ServiceId service_id = 2;</code> - * @return Whether the serviceId field is set. - */ - public boolean hasServiceId() { - return serviceIdBuilder_ != null || serviceId_ != null; + return this; } /** - * <code>.context.ServiceId service_id = 2;</code> - * @return The serviceId. + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public context.ContextOuterClass.ServiceId getServiceId() { - if (serviceIdBuilder_ == null) { - return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; + public Builder addAllConfigRules( + java.lang.Iterable<? extends context.ContextOuterClass.ConfigRule> values) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, configRules_); + onChanged(); } else { - return serviceIdBuilder_.getMessage(); + configRulesBuilder_.addAllMessages(values); } + return this; } /** - * <code>.context.ServiceId service_id = 2;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public Builder setServiceId(context.ContextOuterClass.ServiceId value) { - if (serviceIdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - serviceId_ = value; + public Builder clearConfigRules() { + if (configRulesBuilder_ == null) { + configRules_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { - serviceIdBuilder_.setMessage(value); + configRulesBuilder_.clear(); } - return this; } /** - * <code>.context.ServiceId service_id = 2;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public Builder setServiceId( - context.ContextOuterClass.ServiceId.Builder builderForValue) { - if (serviceIdBuilder_ == null) { - serviceId_ = builderForValue.build(); + public Builder removeConfigRules(int index) { + if (configRulesBuilder_ == null) { + ensureConfigRulesIsMutable(); + configRules_.remove(index); onChanged(); } else { - serviceIdBuilder_.setMessage(builderForValue.build()); + configRulesBuilder_.remove(index); } - return this; } /** - * <code>.context.ServiceId service_id = 2;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</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); + public context.ContextOuterClass.ConfigRule.Builder getConfigRulesBuilder( + int index) { + return getConfigRulesFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .context.ConfigRule config_rules = 1;</code> + */ + public context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( + int index) { + if (configRulesBuilder_ == null) { + return configRules_.get(index); } else { + return configRulesBuilder_.getMessageOrBuilder(index); } - - return this; } /** - * <code>.context.ServiceId service_id = 2;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public Builder clearServiceId() { - if (serviceIdBuilder_ == null) { - serviceId_ = null; - onChanged(); + public java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> + getConfigRulesOrBuilderList() { + if (configRulesBuilder_ != null) { + return configRulesBuilder_.getMessageOrBuilderList(); } else { - serviceId_ = null; - serviceIdBuilder_ = null; + return java.util.Collections.unmodifiableList(configRules_); } - - return this; } /** - * <code>.context.ServiceId service_id = 2;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public context.ContextOuterClass.ServiceId.Builder getServiceIdBuilder() { - - onChanged(); - return getServiceIdFieldBuilder().getBuilder(); + public context.ContextOuterClass.ConfigRule.Builder addConfigRulesBuilder() { + return getConfigRulesFieldBuilder().addBuilder( + context.ContextOuterClass.ConfigRule.getDefaultInstance()); } /** - * <code>.context.ServiceId service_id = 2;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</code> */ - public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() { - if (serviceIdBuilder_ != null) { - return serviceIdBuilder_.getMessageOrBuilder(); - } else { - return serviceId_ == null ? - context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; - } + public context.ContextOuterClass.ConfigRule.Builder addConfigRulesBuilder( + int index) { + return getConfigRulesFieldBuilder().addBuilder( + index, context.ContextOuterClass.ConfigRule.getDefaultInstance()); } /** - * <code>.context.ServiceId service_id = 2;</code> + * <code>repeated .context.ConfigRule config_rules = 1;</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(), + public java.util.List<context.ContextOuterClass.ConfigRule.Builder> + getConfigRulesBuilderList() { + return getConfigRulesFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder> + getConfigRulesFieldBuilder() { + if (configRulesBuilder_ == null) { + configRulesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder>( + configRules_, + ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); - serviceId_ = null; + configRules_ = null; } - return serviceIdBuilder_; + return configRulesBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -28982,104 +40809,95 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ServiceEvent) + // @@protoc_insertion_point(builder_scope:context.SliceConfig) } - // @@protoc_insertion_point(class_scope:context.ServiceEvent) - private static final context.ContextOuterClass.ServiceEvent DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.SliceConfig) + private static final context.ContextOuterClass.SliceConfig DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ServiceEvent(); + DEFAULT_INSTANCE = new context.ContextOuterClass.SliceConfig(); } - public static context.ContextOuterClass.ServiceEvent getDefaultInstance() { + public static context.ContextOuterClass.SliceConfig getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ServiceEvent> - PARSER = new com.google.protobuf.AbstractParser<ServiceEvent>() { + private static final com.google.protobuf.Parser<SliceConfig> + PARSER = new com.google.protobuf.AbstractParser<SliceConfig>() { @java.lang.Override - public ServiceEvent parsePartialFrom( + public SliceConfig parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ServiceEvent(input, extensionRegistry); + return new SliceConfig(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ServiceEvent> parser() { + public static com.google.protobuf.Parser<SliceConfig> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ServiceEvent> getParserForType() { + public com.google.protobuf.Parser<SliceConfig> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ServiceEvent getDefaultInstanceForType() { + public context.ContextOuterClass.SliceConfig getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface SliceIdOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.SliceId) + public interface SliceIdListOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.SliceIdList) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.ContextId context_id = 1;</code> - * @return Whether the contextId field is set. - */ - boolean hasContextId(); - /** - * <code>.context.ContextId context_id = 1;</code> - * @return The contextId. + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - context.ContextOuterClass.ContextId getContextId(); + java.util.List<context.ContextOuterClass.SliceId> + getSliceIdsList(); /** - * <code>.context.ContextId context_id = 1;</code> + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder(); - + context.ContextOuterClass.SliceId getSliceIds(int index); /** - * <code>.context.Uuid slice_uuid = 2;</code> - * @return Whether the sliceUuid field is set. + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - boolean hasSliceUuid(); + int getSliceIdsCount(); /** - * <code>.context.Uuid slice_uuid = 2;</code> - * @return The sliceUuid. + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - context.ContextOuterClass.Uuid getSliceUuid(); + java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> + getSliceIdsOrBuilderList(); /** - * <code>.context.Uuid slice_uuid = 2;</code> + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - context.ContextOuterClass.UuidOrBuilder getSliceUuidOrBuilder(); + context.ContextOuterClass.SliceIdOrBuilder getSliceIdsOrBuilder( + int index); } /** - * <pre> - * ----- Slice --------------------------------------------------------------------------------------------------------- - * </pre> - * - * Protobuf type {@code context.SliceId} + * Protobuf type {@code context.SliceIdList} */ - public static final class SliceId extends + public static final class SliceIdList extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.SliceId) - SliceIdOrBuilder { + // @@protoc_insertion_point(message_implements:context.SliceIdList) + SliceIdListOrBuilder { private static final long serialVersionUID = 0L; - // Use SliceId.newBuilder() to construct. - private SliceId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use SliceIdList.newBuilder() to construct. + private SliceIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private SliceId() { + private SliceIdList() { + sliceIds_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new SliceId(); + return new SliceIdList(); } @java.lang.Override @@ -29087,7 +40905,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private SliceId( + private SliceIdList( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -29095,6 +40913,7 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } + int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -29106,29 +40925,12 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.ContextId.Builder subBuilder = null; - if (contextId_ != null) { - subBuilder = contextId_.toBuilder(); - } - contextId_ = input.readMessage(context.ContextOuterClass.ContextId.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(contextId_); - contextId_ = subBuilder.buildPartial(); - } - - break; - } - case 18: { - context.ContextOuterClass.Uuid.Builder subBuilder = null; - if (sliceUuid_ != null) { - subBuilder = sliceUuid_.toBuilder(); - } - sliceUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(sliceUuid_); - sliceUuid_ = subBuilder.buildPartial(); + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + sliceIds_ = new java.util.ArrayList<context.ContextOuterClass.SliceId>(); + mutable_bitField0_ |= 0x00000001; } - + sliceIds_.add( + input.readMessage(context.ContextOuterClass.SliceId.parser(), extensionRegistry)); break; } default: { @@ -29146,73 +40948,64 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { + if (((mutable_bitField0_ & 0x00000001) != 0)) { + sliceIds_ = java.util.Collections.unmodifiableList(sliceIds_); + } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceId_descriptor; + return context.ContextOuterClass.internal_static_context_SliceIdList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceId_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_SliceIdList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceId.class, context.ContextOuterClass.SliceId.Builder.class); + context.ContextOuterClass.SliceIdList.class, context.ContextOuterClass.SliceIdList.Builder.class); } - public static final int CONTEXT_ID_FIELD_NUMBER = 1; - private context.ContextOuterClass.ContextId contextId_; - /** - * <code>.context.ContextId context_id = 1;</code> - * @return Whether the contextId field is set. - */ - @java.lang.Override - public boolean hasContextId() { - return contextId_ != null; - } + public static final int SLICE_IDS_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.SliceId> sliceIds_; /** - * <code>.context.ContextId context_id = 1;</code> - * @return The contextId. + * <code>repeated .context.SliceId slice_ids = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.ContextId getContextId() { - return contextId_ == null ? context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_; + public java.util.List<context.ContextOuterClass.SliceId> getSliceIdsList() { + return sliceIds_; } /** - * <code>.context.ContextId context_id = 1;</code> + * <code>repeated .context.SliceId slice_ids = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder() { - return getContextId(); + public java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> + getSliceIdsOrBuilderList() { + return sliceIds_; } - - public static final int SLICE_UUID_FIELD_NUMBER = 2; - private context.ContextOuterClass.Uuid sliceUuid_; /** - * <code>.context.Uuid slice_uuid = 2;</code> - * @return Whether the sliceUuid field is set. + * <code>repeated .context.SliceId slice_ids = 1;</code> */ @java.lang.Override - public boolean hasSliceUuid() { - return sliceUuid_ != null; + public int getSliceIdsCount() { + return sliceIds_.size(); } /** - * <code>.context.Uuid slice_uuid = 2;</code> - * @return The sliceUuid. + * <code>repeated .context.SliceId slice_ids = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.Uuid getSliceUuid() { - return sliceUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : sliceUuid_; + public context.ContextOuterClass.SliceId getSliceIds(int index) { + return sliceIds_.get(index); } /** - * <code>.context.Uuid slice_uuid = 2;</code> + * <code>repeated .context.SliceId slice_ids = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.UuidOrBuilder getSliceUuidOrBuilder() { - return getSliceUuid(); + public context.ContextOuterClass.SliceIdOrBuilder getSliceIdsOrBuilder( + int index) { + return sliceIds_.get(index); } private byte memoizedIsInitialized = -1; @@ -29229,11 +41022,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (contextId_ != null) { - output.writeMessage(1, getContextId()); - } - if (sliceUuid_ != null) { - output.writeMessage(2, getSliceUuid()); + for (int i = 0; i < sliceIds_.size(); i++) { + output.writeMessage(1, sliceIds_.get(i)); } unknownFields.writeTo(output); } @@ -29244,13 +41034,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (contextId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getContextId()); - } - if (sliceUuid_ != null) { + for (int i = 0; i < sliceIds_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, getSliceUuid()); + .computeMessageSize(1, sliceIds_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -29262,21 +41048,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.SliceId)) { + if (!(obj instanceof context.ContextOuterClass.SliceIdList)) { return super.equals(obj); } - context.ContextOuterClass.SliceId other = (context.ContextOuterClass.SliceId) obj; + context.ContextOuterClass.SliceIdList other = (context.ContextOuterClass.SliceIdList) obj; - if (hasContextId() != other.hasContextId()) return false; - if (hasContextId()) { - if (!getContextId() - .equals(other.getContextId())) return false; - } - if (hasSliceUuid() != other.hasSliceUuid()) return false; - if (hasSliceUuid()) { - if (!getSliceUuid() - .equals(other.getSliceUuid())) return false; - } + if (!getSliceIdsList() + .equals(other.getSliceIdsList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -29288,82 +41066,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasContextId()) { - hash = (37 * hash) + CONTEXT_ID_FIELD_NUMBER; - hash = (53 * hash) + getContextId().hashCode(); - } - if (hasSliceUuid()) { - hash = (37 * hash) + SLICE_UUID_FIELD_NUMBER; - hash = (53 * hash) + getSliceUuid().hashCode(); + if (getSliceIdsCount() > 0) { + hash = (37 * hash) + SLICE_IDS_FIELD_NUMBER; + hash = (53 * hash) + getSliceIdsList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.SliceId parseFrom( + public static context.ContextOuterClass.SliceIdList parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceId parseFrom( + public static context.ContextOuterClass.SliceIdList parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceId parseFrom( + public static context.ContextOuterClass.SliceIdList parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceId parseFrom( + public static context.ContextOuterClass.SliceIdList parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceId parseFrom(byte[] data) + public static context.ContextOuterClass.SliceIdList parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceId parseFrom( + public static context.ContextOuterClass.SliceIdList parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceId parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.SliceIdList parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceId parseFrom( + public static context.ContextOuterClass.SliceIdList 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 context.ContextOuterClass.SliceId parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.SliceIdList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceId parseDelimitedFrom( + public static context.ContextOuterClass.SliceIdList 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 context.ContextOuterClass.SliceId parseFrom( + public static context.ContextOuterClass.SliceIdList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceId parseFrom( + public static context.ContextOuterClass.SliceIdList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -29376,7 +41150,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.SliceId prototype) { + public static Builder newBuilder(context.ContextOuterClass.SliceIdList prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -29392,30 +41166,26 @@ public final class ContextOuterClass { return builder; } /** - * <pre> - * ----- Slice --------------------------------------------------------------------------------------------------------- - * </pre> - * - * Protobuf type {@code context.SliceId} + * Protobuf type {@code context.SliceIdList} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.SliceId) - context.ContextOuterClass.SliceIdOrBuilder { + // @@protoc_insertion_point(builder_implements:context.SliceIdList) + context.ContextOuterClass.SliceIdListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceId_descriptor; + return context.ContextOuterClass.internal_static_context_SliceIdList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceId_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_SliceIdList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceId.class, context.ContextOuterClass.SliceId.Builder.class); + context.ContextOuterClass.SliceIdList.class, context.ContextOuterClass.SliceIdList.Builder.class); } - // Construct using context.ContextOuterClass.SliceId.newBuilder() + // Construct using context.ContextOuterClass.SliceIdList.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -29428,22 +41198,17 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { + getSliceIdsFieldBuilder(); } - } - @java.lang.Override - public Builder clear() { - super.clear(); - if (contextIdBuilder_ == null) { - contextId_ = null; - } else { - contextId_ = null; - contextIdBuilder_ = null; - } - if (sliceUuidBuilder_ == null) { - sliceUuid_ = null; + } + @java.lang.Override + public Builder clear() { + super.clear(); + if (sliceIdsBuilder_ == null) { + sliceIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); } else { - sliceUuid_ = null; - sliceUuidBuilder_ = null; + sliceIdsBuilder_.clear(); } return this; } @@ -29451,17 +41216,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_SliceId_descriptor; + return context.ContextOuterClass.internal_static_context_SliceIdList_descriptor; } @java.lang.Override - public context.ContextOuterClass.SliceId getDefaultInstanceForType() { - return context.ContextOuterClass.SliceId.getDefaultInstance(); + public context.ContextOuterClass.SliceIdList getDefaultInstanceForType() { + return context.ContextOuterClass.SliceIdList.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.SliceId build() { - context.ContextOuterClass.SliceId result = buildPartial(); + public context.ContextOuterClass.SliceIdList build() { + context.ContextOuterClass.SliceIdList result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -29469,17 +41234,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.SliceId buildPartial() { - context.ContextOuterClass.SliceId result = new context.ContextOuterClass.SliceId(this); - if (contextIdBuilder_ == null) { - result.contextId_ = contextId_; - } else { - result.contextId_ = contextIdBuilder_.build(); - } - if (sliceUuidBuilder_ == null) { - result.sliceUuid_ = sliceUuid_; + public context.ContextOuterClass.SliceIdList buildPartial() { + context.ContextOuterClass.SliceIdList result = new context.ContextOuterClass.SliceIdList(this); + int from_bitField0_ = bitField0_; + if (sliceIdsBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + sliceIds_ = java.util.Collections.unmodifiableList(sliceIds_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.sliceIds_ = sliceIds_; } else { - result.sliceUuid_ = sliceUuidBuilder_.build(); + result.sliceIds_ = sliceIdsBuilder_.build(); } onBuilt(); return result; @@ -29519,21 +41284,41 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.SliceId) { - return mergeFrom((context.ContextOuterClass.SliceId)other); + if (other instanceof context.ContextOuterClass.SliceIdList) { + return mergeFrom((context.ContextOuterClass.SliceIdList)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.SliceId other) { - if (other == context.ContextOuterClass.SliceId.getDefaultInstance()) return this; - if (other.hasContextId()) { - mergeContextId(other.getContextId()); - } - if (other.hasSliceUuid()) { - mergeSliceUuid(other.getSliceUuid()); + public Builder mergeFrom(context.ContextOuterClass.SliceIdList other) { + if (other == context.ContextOuterClass.SliceIdList.getDefaultInstance()) return this; + if (sliceIdsBuilder_ == null) { + if (!other.sliceIds_.isEmpty()) { + if (sliceIds_.isEmpty()) { + sliceIds_ = other.sliceIds_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureSliceIdsIsMutable(); + sliceIds_.addAll(other.sliceIds_); + } + onChanged(); + } + } else { + if (!other.sliceIds_.isEmpty()) { + if (sliceIdsBuilder_.isEmpty()) { + sliceIdsBuilder_.dispose(); + sliceIdsBuilder_ = null; + sliceIds_ = other.sliceIds_; + bitField0_ = (bitField0_ & ~0x00000001); + sliceIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getSliceIdsFieldBuilder() : null; + } else { + sliceIdsBuilder_.addAllMessages(other.sliceIds_); + } + } } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -29550,11 +41335,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.SliceId parsedMessage = null; + context.ContextOuterClass.SliceIdList parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.SliceId) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.SliceIdList) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -29563,243 +41348,246 @@ public final class ContextOuterClass { } return this; } + private int bitField0_; + + private java.util.List<context.ContextOuterClass.SliceId> sliceIds_ = + java.util.Collections.emptyList(); + private void ensureSliceIdsIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + sliceIds_ = new java.util.ArrayList<context.ContextOuterClass.SliceId>(sliceIds_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> sliceIdsBuilder_; - private context.ContextOuterClass.ContextId contextId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder> contextIdBuilder_; /** - * <code>.context.ContextId context_id = 1;</code> - * @return Whether the contextId field is set. + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - public boolean hasContextId() { - return contextIdBuilder_ != null || contextId_ != null; + public java.util.List<context.ContextOuterClass.SliceId> getSliceIdsList() { + if (sliceIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(sliceIds_); + } else { + return sliceIdsBuilder_.getMessageList(); + } } /** - * <code>.context.ContextId context_id = 1;</code> - * @return The contextId. + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - public context.ContextOuterClass.ContextId getContextId() { - if (contextIdBuilder_ == null) { - return contextId_ == null ? context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_; + public int getSliceIdsCount() { + if (sliceIdsBuilder_ == null) { + return sliceIds_.size(); } else { - return contextIdBuilder_.getMessage(); + return sliceIdsBuilder_.getCount(); } } /** - * <code>.context.ContextId context_id = 1;</code> + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - public Builder setContextId(context.ContextOuterClass.ContextId value) { - if (contextIdBuilder_ == null) { + public context.ContextOuterClass.SliceId getSliceIds(int index) { + if (sliceIdsBuilder_ == null) { + return sliceIds_.get(index); + } else { + return sliceIdsBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.SliceId slice_ids = 1;</code> + */ + public Builder setSliceIds( + int index, context.ContextOuterClass.SliceId value) { + if (sliceIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - contextId_ = value; + ensureSliceIdsIsMutable(); + sliceIds_.set(index, value); onChanged(); } else { - contextIdBuilder_.setMessage(value); + sliceIdsBuilder_.setMessage(index, value); } - return this; } /** - * <code>.context.ContextId context_id = 1;</code> + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - public Builder setContextId( - context.ContextOuterClass.ContextId.Builder builderForValue) { - if (contextIdBuilder_ == null) { - contextId_ = builderForValue.build(); + public Builder setSliceIds( + int index, context.ContextOuterClass.SliceId.Builder builderForValue) { + if (sliceIdsBuilder_ == null) { + ensureSliceIdsIsMutable(); + sliceIds_.set(index, builderForValue.build()); onChanged(); } else { - contextIdBuilder_.setMessage(builderForValue.build()); + sliceIdsBuilder_.setMessage(index, builderForValue.build()); } - return this; } /** - * <code>.context.ContextId context_id = 1;</code> + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - public Builder mergeContextId(context.ContextOuterClass.ContextId value) { - if (contextIdBuilder_ == null) { - if (contextId_ != null) { - contextId_ = - context.ContextOuterClass.ContextId.newBuilder(contextId_).mergeFrom(value).buildPartial(); - } else { - contextId_ = value; + public Builder addSliceIds(context.ContextOuterClass.SliceId value) { + if (sliceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + ensureSliceIdsIsMutable(); + sliceIds_.add(value); onChanged(); } else { - contextIdBuilder_.mergeFrom(value); + sliceIdsBuilder_.addMessage(value); } - return this; } /** - * <code>.context.ContextId context_id = 1;</code> + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - public Builder clearContextId() { - if (contextIdBuilder_ == null) { - contextId_ = null; + public Builder addSliceIds( + int index, context.ContextOuterClass.SliceId value) { + if (sliceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSliceIdsIsMutable(); + sliceIds_.add(index, value); onChanged(); } else { - contextId_ = null; - contextIdBuilder_ = null; + sliceIdsBuilder_.addMessage(index, value); } - return this; } /** - * <code>.context.ContextId context_id = 1;</code> - */ - public context.ContextOuterClass.ContextId.Builder getContextIdBuilder() { - - onChanged(); - return getContextIdFieldBuilder().getBuilder(); - } - /** - * <code>.context.ContextId context_id = 1;</code> + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - public context.ContextOuterClass.ContextIdOrBuilder getContextIdOrBuilder() { - if (contextIdBuilder_ != null) { - return contextIdBuilder_.getMessageOrBuilder(); + public Builder addSliceIds( + context.ContextOuterClass.SliceId.Builder builderForValue) { + if (sliceIdsBuilder_ == null) { + ensureSliceIdsIsMutable(); + sliceIds_.add(builderForValue.build()); + onChanged(); } else { - return contextId_ == null ? - context.ContextOuterClass.ContextId.getDefaultInstance() : contextId_; + sliceIdsBuilder_.addMessage(builderForValue.build()); } + return this; } /** - * <code>.context.ContextId context_id = 1;</code> + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder> - getContextIdFieldBuilder() { - if (contextIdBuilder_ == null) { - contextIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ContextId, context.ContextOuterClass.ContextId.Builder, context.ContextOuterClass.ContextIdOrBuilder>( - getContextId(), - getParentForChildren(), - isClean()); - contextId_ = null; + public Builder addSliceIds( + int index, context.ContextOuterClass.SliceId.Builder builderForValue) { + if (sliceIdsBuilder_ == null) { + ensureSliceIdsIsMutable(); + sliceIds_.add(index, builderForValue.build()); + onChanged(); + } else { + sliceIdsBuilder_.addMessage(index, builderForValue.build()); } - return contextIdBuilder_; - } - - private context.ContextOuterClass.Uuid sliceUuid_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> sliceUuidBuilder_; - /** - * <code>.context.Uuid slice_uuid = 2;</code> - * @return Whether the sliceUuid field is set. - */ - public boolean hasSliceUuid() { - return sliceUuidBuilder_ != null || sliceUuid_ != null; + return this; } /** - * <code>.context.Uuid slice_uuid = 2;</code> - * @return The sliceUuid. + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - public context.ContextOuterClass.Uuid getSliceUuid() { - if (sliceUuidBuilder_ == null) { - return sliceUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : sliceUuid_; + public Builder addAllSliceIds( + java.lang.Iterable<? extends context.ContextOuterClass.SliceId> values) { + if (sliceIdsBuilder_ == null) { + ensureSliceIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, sliceIds_); + onChanged(); } else { - return sliceUuidBuilder_.getMessage(); + sliceIdsBuilder_.addAllMessages(values); } + return this; } /** - * <code>.context.Uuid slice_uuid = 2;</code> + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - public Builder setSliceUuid(context.ContextOuterClass.Uuid value) { - if (sliceUuidBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - sliceUuid_ = value; + public Builder clearSliceIds() { + if (sliceIdsBuilder_ == null) { + sliceIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { - sliceUuidBuilder_.setMessage(value); + sliceIdsBuilder_.clear(); } - return this; } /** - * <code>.context.Uuid slice_uuid = 2;</code> + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - public Builder setSliceUuid( - context.ContextOuterClass.Uuid.Builder builderForValue) { - if (sliceUuidBuilder_ == null) { - sliceUuid_ = builderForValue.build(); + public Builder removeSliceIds(int index) { + if (sliceIdsBuilder_ == null) { + ensureSliceIdsIsMutable(); + sliceIds_.remove(index); onChanged(); } else { - sliceUuidBuilder_.setMessage(builderForValue.build()); + sliceIdsBuilder_.remove(index); } - return this; } /** - * <code>.context.Uuid slice_uuid = 2;</code> + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - public Builder mergeSliceUuid(context.ContextOuterClass.Uuid value) { - if (sliceUuidBuilder_ == null) { - if (sliceUuid_ != null) { - sliceUuid_ = - context.ContextOuterClass.Uuid.newBuilder(sliceUuid_).mergeFrom(value).buildPartial(); - } else { - sliceUuid_ = value; - } - onChanged(); - } else { - sliceUuidBuilder_.mergeFrom(value); + public context.ContextOuterClass.SliceId.Builder getSliceIdsBuilder( + int index) { + return getSliceIdsFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .context.SliceId slice_ids = 1;</code> + */ + public context.ContextOuterClass.SliceIdOrBuilder getSliceIdsOrBuilder( + int index) { + if (sliceIdsBuilder_ == null) { + return sliceIds_.get(index); } else { + return sliceIdsBuilder_.getMessageOrBuilder(index); } - - return this; } /** - * <code>.context.Uuid slice_uuid = 2;</code> + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - public Builder clearSliceUuid() { - if (sliceUuidBuilder_ == null) { - sliceUuid_ = null; - onChanged(); + public java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> + getSliceIdsOrBuilderList() { + if (sliceIdsBuilder_ != null) { + return sliceIdsBuilder_.getMessageOrBuilderList(); } else { - sliceUuid_ = null; - sliceUuidBuilder_ = null; + return java.util.Collections.unmodifiableList(sliceIds_); } - - return this; } /** - * <code>.context.Uuid slice_uuid = 2;</code> + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - public context.ContextOuterClass.Uuid.Builder getSliceUuidBuilder() { - - onChanged(); - return getSliceUuidFieldBuilder().getBuilder(); + public context.ContextOuterClass.SliceId.Builder addSliceIdsBuilder() { + return getSliceIdsFieldBuilder().addBuilder( + context.ContextOuterClass.SliceId.getDefaultInstance()); } /** - * <code>.context.Uuid slice_uuid = 2;</code> + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - public context.ContextOuterClass.UuidOrBuilder getSliceUuidOrBuilder() { - if (sliceUuidBuilder_ != null) { - return sliceUuidBuilder_.getMessageOrBuilder(); - } else { - return sliceUuid_ == null ? - context.ContextOuterClass.Uuid.getDefaultInstance() : sliceUuid_; - } + public context.ContextOuterClass.SliceId.Builder addSliceIdsBuilder( + int index) { + return getSliceIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.SliceId.getDefaultInstance()); } /** - * <code>.context.Uuid slice_uuid = 2;</code> + * <code>repeated .context.SliceId slice_ids = 1;</code> */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> - getSliceUuidFieldBuilder() { - if (sliceUuidBuilder_ == null) { - sliceUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>( - getSliceUuid(), + public java.util.List<context.ContextOuterClass.SliceId.Builder> + getSliceIdsBuilderList() { + return getSliceIdsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> + getSliceIdsFieldBuilder() { + if (sliceIdsBuilder_ == null) { + sliceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder>( + sliceIds_, + ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); - sliceUuid_ = null; + sliceIds_ = null; } - return sliceUuidBuilder_; + return sliceIdsBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -29814,245 +41602,95 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.SliceId) + // @@protoc_insertion_point(builder_scope:context.SliceIdList) } - // @@protoc_insertion_point(class_scope:context.SliceId) - private static final context.ContextOuterClass.SliceId DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.SliceIdList) + private static final context.ContextOuterClass.SliceIdList DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.SliceId(); + DEFAULT_INSTANCE = new context.ContextOuterClass.SliceIdList(); } - public static context.ContextOuterClass.SliceId getDefaultInstance() { + public static context.ContextOuterClass.SliceIdList getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<SliceId> - PARSER = new com.google.protobuf.AbstractParser<SliceId>() { + private static final com.google.protobuf.Parser<SliceIdList> + PARSER = new com.google.protobuf.AbstractParser<SliceIdList>() { @java.lang.Override - public SliceId parsePartialFrom( + public SliceIdList parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new SliceId(input, extensionRegistry); - } - }; - - public static com.google.protobuf.Parser<SliceId> parser() { - return PARSER; - } - - @java.lang.Override - public com.google.protobuf.Parser<SliceId> getParserForType() { - return PARSER; - } - - @java.lang.Override - public context.ContextOuterClass.SliceId getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - - } - - public interface SliceOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Slice) - com.google.protobuf.MessageOrBuilder { - - /** - * <code>.context.SliceId slice_id = 1;</code> - * @return Whether the sliceId field is set. - */ - boolean hasSliceId(); - /** - * <code>.context.SliceId slice_id = 1;</code> - * @return The sliceId. - */ - context.ContextOuterClass.SliceId getSliceId(); - /** - * <code>.context.SliceId slice_id = 1;</code> - */ - context.ContextOuterClass.SliceIdOrBuilder getSliceIdOrBuilder(); - - /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> - */ - java.util.List<context.ContextOuterClass.EndPointId> - getSliceEndpointIdsList(); - /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> - */ - context.ContextOuterClass.EndPointId getSliceEndpointIds(int index); - /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> - */ - int getSliceEndpointIdsCount(); - /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> - */ - java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> - getSliceEndpointIdsOrBuilderList(); - /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> - */ - context.ContextOuterClass.EndPointIdOrBuilder getSliceEndpointIdsOrBuilder( - int index); - - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - java.util.List<context.ContextOuterClass.Constraint> - getSliceConstraintsList(); - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - context.ContextOuterClass.Constraint getSliceConstraints(int index); - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - int getSliceConstraintsCount(); - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - java.util.List<? extends context.ContextOuterClass.ConstraintOrBuilder> - getSliceConstraintsOrBuilderList(); - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - context.ContextOuterClass.ConstraintOrBuilder getSliceConstraintsOrBuilder( - int index); - - /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> - */ - java.util.List<context.ContextOuterClass.ServiceId> - getSliceServiceIdsList(); - /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> - */ - context.ContextOuterClass.ServiceId getSliceServiceIds(int index); - /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> - */ - int getSliceServiceIdsCount(); - /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> - */ - java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> - getSliceServiceIdsOrBuilderList(); - /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> - */ - context.ContextOuterClass.ServiceIdOrBuilder getSliceServiceIdsOrBuilder( - int index); - - /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> - */ - java.util.List<context.ContextOuterClass.SliceId> - getSliceSubsliceIdsList(); - /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> - */ - context.ContextOuterClass.SliceId getSliceSubsliceIds(int index); - /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> - */ - int getSliceSubsliceIdsCount(); - /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> - */ - java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> - getSliceSubsliceIdsOrBuilderList(); - /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> - */ - context.ContextOuterClass.SliceIdOrBuilder getSliceSubsliceIdsOrBuilder( - int index); + return new SliceIdList(input, extensionRegistry); + } + }; - /** - * <code>.context.SliceStatus slice_status = 6;</code> - * @return Whether the sliceStatus field is set. - */ - boolean hasSliceStatus(); - /** - * <code>.context.SliceStatus slice_status = 6;</code> - * @return The sliceStatus. - */ - context.ContextOuterClass.SliceStatus getSliceStatus(); - /** - * <code>.context.SliceStatus slice_status = 6;</code> - */ - context.ContextOuterClass.SliceStatusOrBuilder getSliceStatusOrBuilder(); + public static com.google.protobuf.Parser<SliceIdList> parser() { + return PARSER; + } - /** - * <code>.context.SliceConfig slice_config = 7;</code> - * @return Whether the sliceConfig field is set. - */ - boolean hasSliceConfig(); - /** - * <code>.context.SliceConfig slice_config = 7;</code> - * @return The sliceConfig. - */ - context.ContextOuterClass.SliceConfig getSliceConfig(); - /** - * <code>.context.SliceConfig slice_config = 7;</code> - */ - context.ContextOuterClass.SliceConfigOrBuilder getSliceConfigOrBuilder(); + @java.lang.Override + public com.google.protobuf.Parser<SliceIdList> getParserForType() { + return PARSER; + } + + @java.lang.Override + public context.ContextOuterClass.SliceIdList getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface SliceListOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.SliceList) + com.google.protobuf.MessageOrBuilder { /** - * <code>.context.SliceOwner slice_owner = 8;</code> - * @return Whether the sliceOwner field is set. - */ - boolean hasSliceOwner(); - /** - * <code>.context.SliceOwner slice_owner = 8;</code> - * @return The sliceOwner. + * <code>repeated .context.Slice slices = 1;</code> */ - context.ContextOuterClass.SliceOwner getSliceOwner(); + java.util.List<context.ContextOuterClass.Slice> + getSlicesList(); /** - * <code>.context.SliceOwner slice_owner = 8;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - context.ContextOuterClass.SliceOwnerOrBuilder getSliceOwnerOrBuilder(); - + context.ContextOuterClass.Slice getSlices(int index); /** - * <code>.context.Timestamp timestamp = 9;</code> - * @return Whether the timestamp field is set. + * <code>repeated .context.Slice slices = 1;</code> */ - boolean hasTimestamp(); + int getSlicesCount(); /** - * <code>.context.Timestamp timestamp = 9;</code> - * @return The timestamp. + * <code>repeated .context.Slice slices = 1;</code> */ - context.ContextOuterClass.Timestamp getTimestamp(); + java.util.List<? extends context.ContextOuterClass.SliceOrBuilder> + getSlicesOrBuilderList(); /** - * <code>.context.Timestamp timestamp = 9;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder(); + context.ContextOuterClass.SliceOrBuilder getSlicesOrBuilder( + int index); } /** - * Protobuf type {@code context.Slice} + * Protobuf type {@code context.SliceList} */ - public static final class Slice extends + public static final class SliceList extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Slice) - SliceOrBuilder { + // @@protoc_insertion_point(message_implements:context.SliceList) + SliceListOrBuilder { private static final long serialVersionUID = 0L; - // Use Slice.newBuilder() to construct. - private Slice(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use SliceList.newBuilder() to construct. + private SliceList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private Slice() { - sliceEndpointIds_ = java.util.Collections.emptyList(); - sliceConstraints_ = java.util.Collections.emptyList(); - sliceServiceIds_ = java.util.Collections.emptyList(); - sliceSubsliceIds_ = java.util.Collections.emptyList(); + private SliceList() { + slices_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new Slice(); + return new SliceList(); } @java.lang.Override @@ -30060,7 +41698,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private Slice( + private SliceList( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -30080,104 +41718,12 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.SliceId.Builder subBuilder = null; - if (sliceId_ != null) { - subBuilder = sliceId_.toBuilder(); - } - sliceId_ = input.readMessage(context.ContextOuterClass.SliceId.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(sliceId_); - sliceId_ = subBuilder.buildPartial(); - } - - break; - } - case 18: { if (!((mutable_bitField0_ & 0x00000001) != 0)) { - sliceEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(); + slices_ = new java.util.ArrayList<context.ContextOuterClass.Slice>(); mutable_bitField0_ |= 0x00000001; } - sliceEndpointIds_.add( - input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry)); - break; - } - case 26: { - if (!((mutable_bitField0_ & 0x00000002) != 0)) { - sliceConstraints_ = new java.util.ArrayList<context.ContextOuterClass.Constraint>(); - mutable_bitField0_ |= 0x00000002; - } - sliceConstraints_.add( - input.readMessage(context.ContextOuterClass.Constraint.parser(), extensionRegistry)); - break; - } - case 34: { - if (!((mutable_bitField0_ & 0x00000004) != 0)) { - sliceServiceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(); - mutable_bitField0_ |= 0x00000004; - } - sliceServiceIds_.add( - input.readMessage(context.ContextOuterClass.ServiceId.parser(), extensionRegistry)); - break; - } - case 42: { - if (!((mutable_bitField0_ & 0x00000008) != 0)) { - sliceSubsliceIds_ = new java.util.ArrayList<context.ContextOuterClass.SliceId>(); - mutable_bitField0_ |= 0x00000008; - } - sliceSubsliceIds_.add( - input.readMessage(context.ContextOuterClass.SliceId.parser(), extensionRegistry)); - break; - } - case 50: { - context.ContextOuterClass.SliceStatus.Builder subBuilder = null; - if (sliceStatus_ != null) { - subBuilder = sliceStatus_.toBuilder(); - } - sliceStatus_ = input.readMessage(context.ContextOuterClass.SliceStatus.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(sliceStatus_); - sliceStatus_ = subBuilder.buildPartial(); - } - - break; - } - case 58: { - context.ContextOuterClass.SliceConfig.Builder subBuilder = null; - if (sliceConfig_ != null) { - subBuilder = sliceConfig_.toBuilder(); - } - sliceConfig_ = input.readMessage(context.ContextOuterClass.SliceConfig.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(sliceConfig_); - sliceConfig_ = subBuilder.buildPartial(); - } - - break; - } - case 66: { - context.ContextOuterClass.SliceOwner.Builder subBuilder = null; - if (sliceOwner_ != null) { - subBuilder = sliceOwner_.toBuilder(); - } - sliceOwner_ = input.readMessage(context.ContextOuterClass.SliceOwner.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(sliceOwner_); - sliceOwner_ = subBuilder.buildPartial(); - } - - break; - } - case 74: { - context.ContextOuterClass.Timestamp.Builder subBuilder = null; - if (timestamp_ != null) { - subBuilder = timestamp_.toBuilder(); - } - timestamp_ = input.readMessage(context.ContextOuterClass.Timestamp.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(timestamp_); - timestamp_ = subBuilder.buildPartial(); - } - + slices_.add( + input.readMessage(context.ContextOuterClass.Slice.parser(), extensionRegistry)); break; } default: { @@ -30196,16 +41742,7 @@ public final class ContextOuterClass { e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { - sliceEndpointIds_ = java.util.Collections.unmodifiableList(sliceEndpointIds_); - } - if (((mutable_bitField0_ & 0x00000002) != 0)) { - sliceConstraints_ = java.util.Collections.unmodifiableList(sliceConstraints_); - } - if (((mutable_bitField0_ & 0x00000004) != 0)) { - sliceServiceIds_ = java.util.Collections.unmodifiableList(sliceServiceIds_); - } - if (((mutable_bitField0_ & 0x00000008) != 0)) { - sliceSubsliceIds_ = java.util.Collections.unmodifiableList(sliceSubsliceIds_); + slices_ = java.util.Collections.unmodifiableList(slices_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); @@ -30213,305 +41750,55 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Slice_descriptor; + return context.ContextOuterClass.internal_static_context_SliceList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Slice_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_SliceList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Slice.class, context.ContextOuterClass.Slice.Builder.class); - } - - public static final int SLICE_ID_FIELD_NUMBER = 1; - private context.ContextOuterClass.SliceId sliceId_; - /** - * <code>.context.SliceId slice_id = 1;</code> - * @return Whether the sliceId field is set. - */ - @java.lang.Override - public boolean hasSliceId() { - return sliceId_ != null; - } - /** - * <code>.context.SliceId slice_id = 1;</code> - * @return The sliceId. - */ - @java.lang.Override - public context.ContextOuterClass.SliceId getSliceId() { - return sliceId_ == null ? context.ContextOuterClass.SliceId.getDefaultInstance() : sliceId_; - } - /** - * <code>.context.SliceId slice_id = 1;</code> - */ - @java.lang.Override - public context.ContextOuterClass.SliceIdOrBuilder getSliceIdOrBuilder() { - return getSliceId(); - } - - public static final int SLICE_ENDPOINT_IDS_FIELD_NUMBER = 2; - private java.util.List<context.ContextOuterClass.EndPointId> sliceEndpointIds_; - /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> - */ - @java.lang.Override - public java.util.List<context.ContextOuterClass.EndPointId> getSliceEndpointIdsList() { - return sliceEndpointIds_; - } - /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> - */ - @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> - getSliceEndpointIdsOrBuilderList() { - return sliceEndpointIds_; - } - /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> - */ - @java.lang.Override - public int getSliceEndpointIdsCount() { - return sliceEndpointIds_.size(); - } - /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> - */ - @java.lang.Override - public context.ContextOuterClass.EndPointId getSliceEndpointIds(int index) { - return sliceEndpointIds_.get(index); - } - /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> - */ - @java.lang.Override - public context.ContextOuterClass.EndPointIdOrBuilder getSliceEndpointIdsOrBuilder( - int index) { - return sliceEndpointIds_.get(index); - } - - public static final int SLICE_CONSTRAINTS_FIELD_NUMBER = 3; - private java.util.List<context.ContextOuterClass.Constraint> sliceConstraints_; - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - @java.lang.Override - public java.util.List<context.ContextOuterClass.Constraint> getSliceConstraintsList() { - return sliceConstraints_; - } - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.ConstraintOrBuilder> - getSliceConstraintsOrBuilderList() { - return sliceConstraints_; - } - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - @java.lang.Override - public int getSliceConstraintsCount() { - return sliceConstraints_.size(); - } - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - @java.lang.Override - public context.ContextOuterClass.Constraint getSliceConstraints(int index) { - return sliceConstraints_.get(index); - } - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - @java.lang.Override - public context.ContextOuterClass.ConstraintOrBuilder getSliceConstraintsOrBuilder( - int index) { - return sliceConstraints_.get(index); - } - - public static final int SLICE_SERVICE_IDS_FIELD_NUMBER = 4; - private java.util.List<context.ContextOuterClass.ServiceId> sliceServiceIds_; - /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> - */ - @java.lang.Override - public java.util.List<context.ContextOuterClass.ServiceId> getSliceServiceIdsList() { - return sliceServiceIds_; - } - /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> - */ - @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> - getSliceServiceIdsOrBuilderList() { - return sliceServiceIds_; - } - /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> - */ - @java.lang.Override - public int getSliceServiceIdsCount() { - return sliceServiceIds_.size(); - } - /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> - */ - @java.lang.Override - public context.ContextOuterClass.ServiceId getSliceServiceIds(int index) { - return sliceServiceIds_.get(index); - } - /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> - */ - @java.lang.Override - public context.ContextOuterClass.ServiceIdOrBuilder getSliceServiceIdsOrBuilder( - int index) { - return sliceServiceIds_.get(index); + context.ContextOuterClass.SliceList.class, context.ContextOuterClass.SliceList.Builder.class); } - public static final int SLICE_SUBSLICE_IDS_FIELD_NUMBER = 5; - private java.util.List<context.ContextOuterClass.SliceId> sliceSubsliceIds_; + public static final int SLICES_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.Slice> slices_; /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> + * <code>repeated .context.Slice slices = 1;</code> */ @java.lang.Override - public java.util.List<context.ContextOuterClass.SliceId> getSliceSubsliceIdsList() { - return sliceSubsliceIds_; + public java.util.List<context.ContextOuterClass.Slice> getSlicesList() { + return slices_; } /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> + * <code>repeated .context.Slice slices = 1;</code> */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> - getSliceSubsliceIdsOrBuilderList() { - return sliceSubsliceIds_; + public java.util.List<? extends context.ContextOuterClass.SliceOrBuilder> + getSlicesOrBuilderList() { + return slices_; } /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> + * <code>repeated .context.Slice slices = 1;</code> */ @java.lang.Override - public int getSliceSubsliceIdsCount() { - return sliceSubsliceIds_.size(); + public int getSlicesCount() { + return slices_.size(); } /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> + * <code>repeated .context.Slice slices = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.SliceId getSliceSubsliceIds(int index) { - return sliceSubsliceIds_.get(index); + public context.ContextOuterClass.Slice getSlices(int index) { + return slices_.get(index); } /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> + * <code>repeated .context.Slice slices = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.SliceIdOrBuilder getSliceSubsliceIdsOrBuilder( + public context.ContextOuterClass.SliceOrBuilder getSlicesOrBuilder( int index) { - return sliceSubsliceIds_.get(index); - } - - public static final int SLICE_STATUS_FIELD_NUMBER = 6; - private context.ContextOuterClass.SliceStatus sliceStatus_; - /** - * <code>.context.SliceStatus slice_status = 6;</code> - * @return Whether the sliceStatus field is set. - */ - @java.lang.Override - public boolean hasSliceStatus() { - return sliceStatus_ != null; - } - /** - * <code>.context.SliceStatus slice_status = 6;</code> - * @return The sliceStatus. - */ - @java.lang.Override - public context.ContextOuterClass.SliceStatus getSliceStatus() { - return sliceStatus_ == null ? context.ContextOuterClass.SliceStatus.getDefaultInstance() : sliceStatus_; - } - /** - * <code>.context.SliceStatus slice_status = 6;</code> - */ - @java.lang.Override - public context.ContextOuterClass.SliceStatusOrBuilder getSliceStatusOrBuilder() { - return getSliceStatus(); - } - - public static final int SLICE_CONFIG_FIELD_NUMBER = 7; - private context.ContextOuterClass.SliceConfig sliceConfig_; - /** - * <code>.context.SliceConfig slice_config = 7;</code> - * @return Whether the sliceConfig field is set. - */ - @java.lang.Override - public boolean hasSliceConfig() { - return sliceConfig_ != null; - } - /** - * <code>.context.SliceConfig slice_config = 7;</code> - * @return The sliceConfig. - */ - @java.lang.Override - public context.ContextOuterClass.SliceConfig getSliceConfig() { - return sliceConfig_ == null ? context.ContextOuterClass.SliceConfig.getDefaultInstance() : sliceConfig_; - } - /** - * <code>.context.SliceConfig slice_config = 7;</code> - */ - @java.lang.Override - public context.ContextOuterClass.SliceConfigOrBuilder getSliceConfigOrBuilder() { - return getSliceConfig(); - } - - public static final int SLICE_OWNER_FIELD_NUMBER = 8; - private context.ContextOuterClass.SliceOwner sliceOwner_; - /** - * <code>.context.SliceOwner slice_owner = 8;</code> - * @return Whether the sliceOwner field is set. - */ - @java.lang.Override - public boolean hasSliceOwner() { - return sliceOwner_ != null; - } - /** - * <code>.context.SliceOwner slice_owner = 8;</code> - * @return The sliceOwner. - */ - @java.lang.Override - public context.ContextOuterClass.SliceOwner getSliceOwner() { - return sliceOwner_ == null ? context.ContextOuterClass.SliceOwner.getDefaultInstance() : sliceOwner_; - } - /** - * <code>.context.SliceOwner slice_owner = 8;</code> - */ - @java.lang.Override - public context.ContextOuterClass.SliceOwnerOrBuilder getSliceOwnerOrBuilder() { - return getSliceOwner(); - } - - public static final int TIMESTAMP_FIELD_NUMBER = 9; - private context.ContextOuterClass.Timestamp timestamp_; - /** - * <code>.context.Timestamp timestamp = 9;</code> - * @return Whether the timestamp field is set. - */ - @java.lang.Override - public boolean hasTimestamp() { - return timestamp_ != null; - } - /** - * <code>.context.Timestamp timestamp = 9;</code> - * @return The timestamp. - */ - @java.lang.Override - public context.ContextOuterClass.Timestamp getTimestamp() { - return timestamp_ == null ? context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_; - } - /** - * <code>.context.Timestamp timestamp = 9;</code> - */ - @java.lang.Override - public context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder() { - return getTimestamp(); + return slices_.get(index); } private byte memoizedIsInitialized = -1; @@ -30520,85 +41807,29 @@ public final class ContextOuterClass { 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 (sliceId_ != null) { - output.writeMessage(1, getSliceId()); - } - for (int i = 0; i < sliceEndpointIds_.size(); i++) { - output.writeMessage(2, sliceEndpointIds_.get(i)); - } - for (int i = 0; i < sliceConstraints_.size(); i++) { - output.writeMessage(3, sliceConstraints_.get(i)); - } - for (int i = 0; i < sliceServiceIds_.size(); i++) { - output.writeMessage(4, sliceServiceIds_.get(i)); - } - for (int i = 0; i < sliceSubsliceIds_.size(); i++) { - output.writeMessage(5, sliceSubsliceIds_.get(i)); - } - if (sliceStatus_ != null) { - output.writeMessage(6, getSliceStatus()); - } - if (sliceConfig_ != null) { - output.writeMessage(7, getSliceConfig()); - } - if (sliceOwner_ != null) { - output.writeMessage(8, getSliceOwner()); - } - if (timestamp_ != null) { - output.writeMessage(9, getTimestamp()); - } - unknownFields.writeTo(output); - } - - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; - - size = 0; - if (sliceId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getSliceId()); - } - for (int i = 0; i < sliceEndpointIds_.size(); i++) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, sliceEndpointIds_.get(i)); - } - for (int i = 0; i < sliceConstraints_.size(); i++) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(3, sliceConstraints_.get(i)); - } - for (int i = 0; i < sliceServiceIds_.size(); i++) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(4, sliceServiceIds_.get(i)); - } - for (int i = 0; i < sliceSubsliceIds_.size(); i++) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(5, sliceSubsliceIds_.get(i)); - } - if (sliceStatus_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(6, getSliceStatus()); - } - if (sliceConfig_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(7, getSliceConfig()); - } - if (sliceOwner_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(8, getSliceOwner()); + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + for (int i = 0; i < slices_.size(); i++) { + output.writeMessage(1, slices_.get(i)); } - if (timestamp_ != null) { + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + for (int i = 0; i < slices_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(9, getTimestamp()); + .computeMessageSize(1, slices_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -30610,44 +41841,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.Slice)) { + if (!(obj instanceof context.ContextOuterClass.SliceList)) { return super.equals(obj); } - context.ContextOuterClass.Slice other = (context.ContextOuterClass.Slice) obj; + context.ContextOuterClass.SliceList other = (context.ContextOuterClass.SliceList) obj; - if (hasSliceId() != other.hasSliceId()) return false; - if (hasSliceId()) { - if (!getSliceId() - .equals(other.getSliceId())) return false; - } - if (!getSliceEndpointIdsList() - .equals(other.getSliceEndpointIdsList())) return false; - if (!getSliceConstraintsList() - .equals(other.getSliceConstraintsList())) return false; - if (!getSliceServiceIdsList() - .equals(other.getSliceServiceIdsList())) return false; - if (!getSliceSubsliceIdsList() - .equals(other.getSliceSubsliceIdsList())) return false; - if (hasSliceStatus() != other.hasSliceStatus()) return false; - if (hasSliceStatus()) { - if (!getSliceStatus() - .equals(other.getSliceStatus())) return false; - } - if (hasSliceConfig() != other.hasSliceConfig()) return false; - if (hasSliceConfig()) { - if (!getSliceConfig() - .equals(other.getSliceConfig())) return false; - } - if (hasSliceOwner() != other.hasSliceOwner()) return false; - if (hasSliceOwner()) { - if (!getSliceOwner() - .equals(other.getSliceOwner())) return false; - } - if (hasTimestamp() != other.hasTimestamp()) return false; - if (hasTimestamp()) { - if (!getTimestamp() - .equals(other.getTimestamp())) return false; - } + if (!getSlicesList() + .equals(other.getSlicesList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -30659,110 +41859,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasSliceId()) { - hash = (37 * hash) + SLICE_ID_FIELD_NUMBER; - hash = (53 * hash) + getSliceId().hashCode(); - } - if (getSliceEndpointIdsCount() > 0) { - hash = (37 * hash) + SLICE_ENDPOINT_IDS_FIELD_NUMBER; - hash = (53 * hash) + getSliceEndpointIdsList().hashCode(); - } - if (getSliceConstraintsCount() > 0) { - hash = (37 * hash) + SLICE_CONSTRAINTS_FIELD_NUMBER; - hash = (53 * hash) + getSliceConstraintsList().hashCode(); - } - if (getSliceServiceIdsCount() > 0) { - hash = (37 * hash) + SLICE_SERVICE_IDS_FIELD_NUMBER; - hash = (53 * hash) + getSliceServiceIdsList().hashCode(); - } - if (getSliceSubsliceIdsCount() > 0) { - hash = (37 * hash) + SLICE_SUBSLICE_IDS_FIELD_NUMBER; - hash = (53 * hash) + getSliceSubsliceIdsList().hashCode(); - } - if (hasSliceStatus()) { - hash = (37 * hash) + SLICE_STATUS_FIELD_NUMBER; - hash = (53 * hash) + getSliceStatus().hashCode(); - } - if (hasSliceConfig()) { - hash = (37 * hash) + SLICE_CONFIG_FIELD_NUMBER; - hash = (53 * hash) + getSliceConfig().hashCode(); - } - if (hasSliceOwner()) { - hash = (37 * hash) + SLICE_OWNER_FIELD_NUMBER; - hash = (53 * hash) + getSliceOwner().hashCode(); - } - if (hasTimestamp()) { - hash = (37 * hash) + TIMESTAMP_FIELD_NUMBER; - hash = (53 * hash) + getTimestamp().hashCode(); + if (getSlicesCount() > 0) { + hash = (37 * hash) + SLICES_FIELD_NUMBER; + hash = (53 * hash) + getSlicesList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.Slice parseFrom( + public static context.ContextOuterClass.SliceList parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Slice parseFrom( + public static context.ContextOuterClass.SliceList parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Slice parseFrom( + public static context.ContextOuterClass.SliceList parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Slice parseFrom( + public static context.ContextOuterClass.SliceList parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Slice parseFrom(byte[] data) + public static context.ContextOuterClass.SliceList parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Slice parseFrom( + public static context.ContextOuterClass.SliceList parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Slice parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.SliceList parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Slice parseFrom( + public static context.ContextOuterClass.SliceList 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 context.ContextOuterClass.Slice parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.SliceList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.Slice parseDelimitedFrom( + public static context.ContextOuterClass.SliceList 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 context.ContextOuterClass.Slice parseFrom( + public static context.ContextOuterClass.SliceList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Slice parseFrom( + public static context.ContextOuterClass.SliceList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -30775,7 +41943,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.Slice prototype) { + public static Builder newBuilder(context.ContextOuterClass.SliceList prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -30791,26 +41959,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.Slice} + * Protobuf type {@code context.SliceList} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Slice) - context.ContextOuterClass.SliceOrBuilder { + // @@protoc_insertion_point(builder_implements:context.SliceList) + context.ContextOuterClass.SliceListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Slice_descriptor; + return context.ContextOuterClass.internal_static_context_SliceList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Slice_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_SliceList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Slice.class, context.ContextOuterClass.Slice.Builder.class); + context.ContextOuterClass.SliceList.class, context.ContextOuterClass.SliceList.Builder.class); } - // Construct using context.ContextOuterClass.Slice.newBuilder() + // Construct using context.ContextOuterClass.SliceList.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -30823,68 +41991,17 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getSliceEndpointIdsFieldBuilder(); - getSliceConstraintsFieldBuilder(); - getSliceServiceIdsFieldBuilder(); - getSliceSubsliceIdsFieldBuilder(); + getSlicesFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (sliceIdBuilder_ == null) { - sliceId_ = null; - } else { - sliceId_ = null; - sliceIdBuilder_ = null; - } - if (sliceEndpointIdsBuilder_ == null) { - sliceEndpointIds_ = java.util.Collections.emptyList(); + if (slicesBuilder_ == null) { + slices_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); } else { - sliceEndpointIdsBuilder_.clear(); - } - if (sliceConstraintsBuilder_ == null) { - sliceConstraints_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000002); - } else { - sliceConstraintsBuilder_.clear(); - } - if (sliceServiceIdsBuilder_ == null) { - sliceServiceIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000004); - } else { - sliceServiceIdsBuilder_.clear(); - } - if (sliceSubsliceIdsBuilder_ == null) { - sliceSubsliceIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000008); - } else { - sliceSubsliceIdsBuilder_.clear(); - } - if (sliceStatusBuilder_ == null) { - sliceStatus_ = null; - } else { - sliceStatus_ = null; - sliceStatusBuilder_ = null; - } - if (sliceConfigBuilder_ == null) { - sliceConfig_ = null; - } else { - sliceConfig_ = null; - sliceConfigBuilder_ = null; - } - if (sliceOwnerBuilder_ == null) { - sliceOwner_ = null; - } else { - sliceOwner_ = null; - sliceOwnerBuilder_ = null; - } - if (timestampBuilder_ == null) { - timestamp_ = null; - } else { - timestamp_ = null; - timestampBuilder_ = null; + slicesBuilder_.clear(); } return this; } @@ -30892,17 +42009,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Slice_descriptor; + return context.ContextOuterClass.internal_static_context_SliceList_descriptor; } @java.lang.Override - public context.ContextOuterClass.Slice getDefaultInstanceForType() { - return context.ContextOuterClass.Slice.getDefaultInstance(); + public context.ContextOuterClass.SliceList getDefaultInstanceForType() { + return context.ContextOuterClass.SliceList.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.Slice build() { - context.ContextOuterClass.Slice result = buildPartial(); + public context.ContextOuterClass.SliceList build() { + context.ContextOuterClass.SliceList result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -30910,69 +42027,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.Slice buildPartial() { - context.ContextOuterClass.Slice result = new context.ContextOuterClass.Slice(this); + public context.ContextOuterClass.SliceList buildPartial() { + context.ContextOuterClass.SliceList result = new context.ContextOuterClass.SliceList(this); int from_bitField0_ = bitField0_; - if (sliceIdBuilder_ == null) { - result.sliceId_ = sliceId_; - } else { - result.sliceId_ = sliceIdBuilder_.build(); - } - if (sliceEndpointIdsBuilder_ == null) { + if (slicesBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { - sliceEndpointIds_ = java.util.Collections.unmodifiableList(sliceEndpointIds_); + slices_ = java.util.Collections.unmodifiableList(slices_); bitField0_ = (bitField0_ & ~0x00000001); } - result.sliceEndpointIds_ = sliceEndpointIds_; - } else { - result.sliceEndpointIds_ = sliceEndpointIdsBuilder_.build(); - } - if (sliceConstraintsBuilder_ == null) { - if (((bitField0_ & 0x00000002) != 0)) { - sliceConstraints_ = java.util.Collections.unmodifiableList(sliceConstraints_); - bitField0_ = (bitField0_ & ~0x00000002); - } - result.sliceConstraints_ = sliceConstraints_; - } else { - result.sliceConstraints_ = sliceConstraintsBuilder_.build(); - } - if (sliceServiceIdsBuilder_ == null) { - if (((bitField0_ & 0x00000004) != 0)) { - sliceServiceIds_ = java.util.Collections.unmodifiableList(sliceServiceIds_); - bitField0_ = (bitField0_ & ~0x00000004); - } - result.sliceServiceIds_ = sliceServiceIds_; - } else { - result.sliceServiceIds_ = sliceServiceIdsBuilder_.build(); - } - if (sliceSubsliceIdsBuilder_ == null) { - if (((bitField0_ & 0x00000008) != 0)) { - sliceSubsliceIds_ = java.util.Collections.unmodifiableList(sliceSubsliceIds_); - bitField0_ = (bitField0_ & ~0x00000008); - } - result.sliceSubsliceIds_ = sliceSubsliceIds_; - } else { - result.sliceSubsliceIds_ = sliceSubsliceIdsBuilder_.build(); - } - if (sliceStatusBuilder_ == null) { - result.sliceStatus_ = sliceStatus_; - } else { - result.sliceStatus_ = sliceStatusBuilder_.build(); - } - if (sliceConfigBuilder_ == null) { - result.sliceConfig_ = sliceConfig_; - } else { - result.sliceConfig_ = sliceConfigBuilder_.build(); - } - if (sliceOwnerBuilder_ == null) { - result.sliceOwner_ = sliceOwner_; - } else { - result.sliceOwner_ = sliceOwnerBuilder_.build(); - } - if (timestampBuilder_ == null) { - result.timestamp_ = timestamp_; + result.slices_ = slices_; } else { - result.timestamp_ = timestampBuilder_.build(); + result.slices_ = slicesBuilder_.build(); } onBuilt(); return result; @@ -31012,1718 +42077,2110 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.Slice) { - return mergeFrom((context.ContextOuterClass.Slice)other); + if (other instanceof context.ContextOuterClass.SliceList) { + return mergeFrom((context.ContextOuterClass.SliceList)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.Slice other) { - if (other == context.ContextOuterClass.Slice.getDefaultInstance()) return this; - if (other.hasSliceId()) { - mergeSliceId(other.getSliceId()); - } - if (sliceEndpointIdsBuilder_ == null) { - if (!other.sliceEndpointIds_.isEmpty()) { - if (sliceEndpointIds_.isEmpty()) { - sliceEndpointIds_ = other.sliceEndpointIds_; + public Builder mergeFrom(context.ContextOuterClass.SliceList other) { + if (other == context.ContextOuterClass.SliceList.getDefaultInstance()) return this; + if (slicesBuilder_ == null) { + if (!other.slices_.isEmpty()) { + if (slices_.isEmpty()) { + slices_ = other.slices_; bitField0_ = (bitField0_ & ~0x00000001); } else { - ensureSliceEndpointIdsIsMutable(); - sliceEndpointIds_.addAll(other.sliceEndpointIds_); + ensureSlicesIsMutable(); + slices_.addAll(other.slices_); } onChanged(); } } else { - if (!other.sliceEndpointIds_.isEmpty()) { - if (sliceEndpointIdsBuilder_.isEmpty()) { - sliceEndpointIdsBuilder_.dispose(); - sliceEndpointIdsBuilder_ = null; - sliceEndpointIds_ = other.sliceEndpointIds_; + if (!other.slices_.isEmpty()) { + if (slicesBuilder_.isEmpty()) { + slicesBuilder_.dispose(); + slicesBuilder_ = null; + slices_ = other.slices_; bitField0_ = (bitField0_ & ~0x00000001); - sliceEndpointIdsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getSliceEndpointIdsFieldBuilder() : null; - } else { - sliceEndpointIdsBuilder_.addAllMessages(other.sliceEndpointIds_); - } - } - } - if (sliceConstraintsBuilder_ == null) { - if (!other.sliceConstraints_.isEmpty()) { - if (sliceConstraints_.isEmpty()) { - sliceConstraints_ = other.sliceConstraints_; - bitField0_ = (bitField0_ & ~0x00000002); - } else { - ensureSliceConstraintsIsMutable(); - sliceConstraints_.addAll(other.sliceConstraints_); - } - onChanged(); - } - } else { - if (!other.sliceConstraints_.isEmpty()) { - if (sliceConstraintsBuilder_.isEmpty()) { - sliceConstraintsBuilder_.dispose(); - sliceConstraintsBuilder_ = null; - sliceConstraints_ = other.sliceConstraints_; - bitField0_ = (bitField0_ & ~0x00000002); - sliceConstraintsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getSliceConstraintsFieldBuilder() : null; - } else { - sliceConstraintsBuilder_.addAllMessages(other.sliceConstraints_); - } - } - } - if (sliceServiceIdsBuilder_ == null) { - if (!other.sliceServiceIds_.isEmpty()) { - if (sliceServiceIds_.isEmpty()) { - sliceServiceIds_ = other.sliceServiceIds_; - bitField0_ = (bitField0_ & ~0x00000004); - } else { - ensureSliceServiceIdsIsMutable(); - sliceServiceIds_.addAll(other.sliceServiceIds_); - } - onChanged(); - } - } else { - if (!other.sliceServiceIds_.isEmpty()) { - if (sliceServiceIdsBuilder_.isEmpty()) { - sliceServiceIdsBuilder_.dispose(); - sliceServiceIdsBuilder_ = null; - sliceServiceIds_ = other.sliceServiceIds_; - bitField0_ = (bitField0_ & ~0x00000004); - sliceServiceIdsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getSliceServiceIdsFieldBuilder() : null; - } else { - sliceServiceIdsBuilder_.addAllMessages(other.sliceServiceIds_); - } - } - } - if (sliceSubsliceIdsBuilder_ == null) { - if (!other.sliceSubsliceIds_.isEmpty()) { - if (sliceSubsliceIds_.isEmpty()) { - sliceSubsliceIds_ = other.sliceSubsliceIds_; - bitField0_ = (bitField0_ & ~0x00000008); - } else { - ensureSliceSubsliceIdsIsMutable(); - sliceSubsliceIds_.addAll(other.sliceSubsliceIds_); - } - onChanged(); - } - } else { - if (!other.sliceSubsliceIds_.isEmpty()) { - if (sliceSubsliceIdsBuilder_.isEmpty()) { - sliceSubsliceIdsBuilder_.dispose(); - sliceSubsliceIdsBuilder_ = null; - sliceSubsliceIds_ = other.sliceSubsliceIds_; - bitField0_ = (bitField0_ & ~0x00000008); - sliceSubsliceIdsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getSliceSubsliceIdsFieldBuilder() : null; - } else { - sliceSubsliceIdsBuilder_.addAllMessages(other.sliceSubsliceIds_); - } - } - } - if (other.hasSliceStatus()) { - mergeSliceStatus(other.getSliceStatus()); - } - if (other.hasSliceConfig()) { - mergeSliceConfig(other.getSliceConfig()); - } - if (other.hasSliceOwner()) { - mergeSliceOwner(other.getSliceOwner()); - } - if (other.hasTimestamp()) { - mergeTimestamp(other.getTimestamp()); - } - this.mergeUnknownFields(other.unknownFields); - onChanged(); - return this; - } - - @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 { - context.ContextOuterClass.Slice parsedMessage = null; - try { - parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Slice) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); - } - } - return this; - } - private int bitField0_; - - private context.ContextOuterClass.SliceId sliceId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> sliceIdBuilder_; - /** - * <code>.context.SliceId slice_id = 1;</code> - * @return Whether the sliceId field is set. - */ - public boolean hasSliceId() { - return sliceIdBuilder_ != null || sliceId_ != null; - } - /** - * <code>.context.SliceId slice_id = 1;</code> - * @return The sliceId. - */ - public context.ContextOuterClass.SliceId getSliceId() { - if (sliceIdBuilder_ == null) { - return sliceId_ == null ? context.ContextOuterClass.SliceId.getDefaultInstance() : sliceId_; - } else { - return sliceIdBuilder_.getMessage(); - } - } - /** - * <code>.context.SliceId slice_id = 1;</code> - */ - public Builder setSliceId(context.ContextOuterClass.SliceId value) { - if (sliceIdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - sliceId_ = value; - onChanged(); - } else { - sliceIdBuilder_.setMessage(value); - } - - return this; - } - /** - * <code>.context.SliceId slice_id = 1;</code> - */ - public Builder setSliceId( - context.ContextOuterClass.SliceId.Builder builderForValue) { - if (sliceIdBuilder_ == null) { - sliceId_ = builderForValue.build(); - onChanged(); - } else { - sliceIdBuilder_.setMessage(builderForValue.build()); - } - - return this; - } - /** - * <code>.context.SliceId slice_id = 1;</code> - */ - public Builder mergeSliceId(context.ContextOuterClass.SliceId value) { - if (sliceIdBuilder_ == null) { - if (sliceId_ != null) { - sliceId_ = - context.ContextOuterClass.SliceId.newBuilder(sliceId_).mergeFrom(value).buildPartial(); - } else { - sliceId_ = value; - } - onChanged(); - } else { - sliceIdBuilder_.mergeFrom(value); - } - - return this; - } - /** - * <code>.context.SliceId slice_id = 1;</code> - */ - public Builder clearSliceId() { - if (sliceIdBuilder_ == null) { - sliceId_ = null; - onChanged(); - } else { - sliceId_ = null; - sliceIdBuilder_ = null; + slicesBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getSlicesFieldBuilder() : null; + } else { + slicesBuilder_.addAllMessages(other.slices_); + } + } } - - return this; - } - /** - * <code>.context.SliceId slice_id = 1;</code> - */ - public context.ContextOuterClass.SliceId.Builder getSliceIdBuilder() { - + this.mergeUnknownFields(other.unknownFields); onChanged(); - return getSliceIdFieldBuilder().getBuilder(); + return this; } - /** - * <code>.context.SliceId slice_id = 1;</code> - */ - public context.ContextOuterClass.SliceIdOrBuilder getSliceIdOrBuilder() { - if (sliceIdBuilder_ != null) { - return sliceIdBuilder_.getMessageOrBuilder(); - } else { - return sliceId_ == null ? - context.ContextOuterClass.SliceId.getDefaultInstance() : sliceId_; - } + + @java.lang.Override + public final boolean isInitialized() { + return true; } - /** - * <code>.context.SliceId slice_id = 1;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> - getSliceIdFieldBuilder() { - if (sliceIdBuilder_ == null) { - sliceIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder>( - getSliceId(), - getParentForChildren(), - isClean()); - sliceId_ = null; + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + context.ContextOuterClass.SliceList parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.SliceList) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } } - return sliceIdBuilder_; + return this; } + private int bitField0_; - private java.util.List<context.ContextOuterClass.EndPointId> sliceEndpointIds_ = + private java.util.List<context.ContextOuterClass.Slice> slices_ = java.util.Collections.emptyList(); - private void ensureSliceEndpointIdsIsMutable() { + private void ensureSlicesIsMutable() { if (!((bitField0_ & 0x00000001) != 0)) { - sliceEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(sliceEndpointIds_); + slices_ = new java.util.ArrayList<context.ContextOuterClass.Slice>(slices_); bitField0_ |= 0x00000001; } } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> sliceEndpointIdsBuilder_; + context.ContextOuterClass.Slice, context.ContextOuterClass.Slice.Builder, context.ContextOuterClass.SliceOrBuilder> slicesBuilder_; /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public java.util.List<context.ContextOuterClass.EndPointId> getSliceEndpointIdsList() { - if (sliceEndpointIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(sliceEndpointIds_); + public java.util.List<context.ContextOuterClass.Slice> getSlicesList() { + if (slicesBuilder_ == null) { + return java.util.Collections.unmodifiableList(slices_); } else { - return sliceEndpointIdsBuilder_.getMessageList(); + return slicesBuilder_.getMessageList(); } } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public int getSliceEndpointIdsCount() { - if (sliceEndpointIdsBuilder_ == null) { - return sliceEndpointIds_.size(); + public int getSlicesCount() { + if (slicesBuilder_ == null) { + return slices_.size(); } else { - return sliceEndpointIdsBuilder_.getCount(); + return slicesBuilder_.getCount(); } } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public context.ContextOuterClass.EndPointId getSliceEndpointIds(int index) { - if (sliceEndpointIdsBuilder_ == null) { - return sliceEndpointIds_.get(index); + public context.ContextOuterClass.Slice getSlices(int index) { + if (slicesBuilder_ == null) { + return slices_.get(index); } else { - return sliceEndpointIdsBuilder_.getMessage(index); + return slicesBuilder_.getMessage(index); } } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public Builder setSliceEndpointIds( - int index, context.ContextOuterClass.EndPointId value) { - if (sliceEndpointIdsBuilder_ == null) { + public Builder setSlices( + int index, context.ContextOuterClass.Slice value) { + if (slicesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureSliceEndpointIdsIsMutable(); - sliceEndpointIds_.set(index, value); + ensureSlicesIsMutable(); + slices_.set(index, value); onChanged(); } else { - sliceEndpointIdsBuilder_.setMessage(index, value); + slicesBuilder_.setMessage(index, value); } return this; } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public Builder setSliceEndpointIds( - int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (sliceEndpointIdsBuilder_ == null) { - ensureSliceEndpointIdsIsMutable(); - sliceEndpointIds_.set(index, builderForValue.build()); + public Builder setSlices( + int index, context.ContextOuterClass.Slice.Builder builderForValue) { + if (slicesBuilder_ == null) { + ensureSlicesIsMutable(); + slices_.set(index, builderForValue.build()); onChanged(); } else { - sliceEndpointIdsBuilder_.setMessage(index, builderForValue.build()); + slicesBuilder_.setMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public Builder addSliceEndpointIds(context.ContextOuterClass.EndPointId value) { - if (sliceEndpointIdsBuilder_ == null) { + public Builder addSlices(context.ContextOuterClass.Slice value) { + if (slicesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureSliceEndpointIdsIsMutable(); - sliceEndpointIds_.add(value); + ensureSlicesIsMutable(); + slices_.add(value); onChanged(); } else { - sliceEndpointIdsBuilder_.addMessage(value); + slicesBuilder_.addMessage(value); } return this; } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public Builder addSliceEndpointIds( - int index, context.ContextOuterClass.EndPointId value) { - if (sliceEndpointIdsBuilder_ == null) { + public Builder addSlices( + int index, context.ContextOuterClass.Slice value) { + if (slicesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureSliceEndpointIdsIsMutable(); - sliceEndpointIds_.add(index, value); + ensureSlicesIsMutable(); + slices_.add(index, value); onChanged(); } else { - sliceEndpointIdsBuilder_.addMessage(index, value); + slicesBuilder_.addMessage(index, value); } return this; } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public Builder addSliceEndpointIds( - context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (sliceEndpointIdsBuilder_ == null) { - ensureSliceEndpointIdsIsMutable(); - sliceEndpointIds_.add(builderForValue.build()); + public Builder addSlices( + context.ContextOuterClass.Slice.Builder builderForValue) { + if (slicesBuilder_ == null) { + ensureSlicesIsMutable(); + slices_.add(builderForValue.build()); onChanged(); } else { - sliceEndpointIdsBuilder_.addMessage(builderForValue.build()); + slicesBuilder_.addMessage(builderForValue.build()); } return this; } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public Builder addSliceEndpointIds( - int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (sliceEndpointIdsBuilder_ == null) { - ensureSliceEndpointIdsIsMutable(); - sliceEndpointIds_.add(index, builderForValue.build()); + public Builder addSlices( + int index, context.ContextOuterClass.Slice.Builder builderForValue) { + if (slicesBuilder_ == null) { + ensureSlicesIsMutable(); + slices_.add(index, builderForValue.build()); onChanged(); } else { - sliceEndpointIdsBuilder_.addMessage(index, builderForValue.build()); + slicesBuilder_.addMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public Builder addAllSliceEndpointIds( - java.lang.Iterable<? extends context.ContextOuterClass.EndPointId> values) { - if (sliceEndpointIdsBuilder_ == null) { - ensureSliceEndpointIdsIsMutable(); + public Builder addAllSlices( + java.lang.Iterable<? extends context.ContextOuterClass.Slice> values) { + if (slicesBuilder_ == null) { + ensureSlicesIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, sliceEndpointIds_); + values, slices_); onChanged(); } else { - sliceEndpointIdsBuilder_.addAllMessages(values); + slicesBuilder_.addAllMessages(values); } return this; } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public Builder clearSliceEndpointIds() { - if (sliceEndpointIdsBuilder_ == null) { - sliceEndpointIds_ = java.util.Collections.emptyList(); + public Builder clearSlices() { + if (slicesBuilder_ == null) { + slices_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { - sliceEndpointIdsBuilder_.clear(); + slicesBuilder_.clear(); } return this; } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public Builder removeSliceEndpointIds(int index) { - if (sliceEndpointIdsBuilder_ == null) { - ensureSliceEndpointIdsIsMutable(); - sliceEndpointIds_.remove(index); + public Builder removeSlices(int index) { + if (slicesBuilder_ == null) { + ensureSlicesIsMutable(); + slices_.remove(index); onChanged(); } else { - sliceEndpointIdsBuilder_.remove(index); + slicesBuilder_.remove(index); } return this; } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public context.ContextOuterClass.EndPointId.Builder getSliceEndpointIdsBuilder( + public context.ContextOuterClass.Slice.Builder getSlicesBuilder( int index) { - return getSliceEndpointIdsFieldBuilder().getBuilder(index); + return getSlicesFieldBuilder().getBuilder(index); } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public context.ContextOuterClass.EndPointIdOrBuilder getSliceEndpointIdsOrBuilder( + public context.ContextOuterClass.SliceOrBuilder getSlicesOrBuilder( int index) { - if (sliceEndpointIdsBuilder_ == null) { - return sliceEndpointIds_.get(index); } else { - return sliceEndpointIdsBuilder_.getMessageOrBuilder(index); + if (slicesBuilder_ == null) { + return slices_.get(index); } else { + return slicesBuilder_.getMessageOrBuilder(index); } } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> - getSliceEndpointIdsOrBuilderList() { - if (sliceEndpointIdsBuilder_ != null) { - return sliceEndpointIdsBuilder_.getMessageOrBuilderList(); + public java.util.List<? extends context.ContextOuterClass.SliceOrBuilder> + getSlicesOrBuilderList() { + if (slicesBuilder_ != null) { + return slicesBuilder_.getMessageOrBuilderList(); } else { - return java.util.Collections.unmodifiableList(sliceEndpointIds_); + return java.util.Collections.unmodifiableList(slices_); } } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public context.ContextOuterClass.EndPointId.Builder addSliceEndpointIdsBuilder() { - return getSliceEndpointIdsFieldBuilder().addBuilder( - context.ContextOuterClass.EndPointId.getDefaultInstance()); + public context.ContextOuterClass.Slice.Builder addSlicesBuilder() { + return getSlicesFieldBuilder().addBuilder( + context.ContextOuterClass.Slice.getDefaultInstance()); } /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> + * <code>repeated .context.Slice slices = 1;</code> */ - public context.ContextOuterClass.EndPointId.Builder addSliceEndpointIdsBuilder( + public context.ContextOuterClass.Slice.Builder addSlicesBuilder( int index) { - return getSliceEndpointIdsFieldBuilder().addBuilder( - index, context.ContextOuterClass.EndPointId.getDefaultInstance()); + return getSlicesFieldBuilder().addBuilder( + index, context.ContextOuterClass.Slice.getDefaultInstance()); + } + /** + * <code>repeated .context.Slice slices = 1;</code> + */ + public java.util.List<context.ContextOuterClass.Slice.Builder> + getSlicesBuilderList() { + return getSlicesFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Slice, context.ContextOuterClass.Slice.Builder, context.ContextOuterClass.SliceOrBuilder> + getSlicesFieldBuilder() { + if (slicesBuilder_ == null) { + slicesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Slice, context.ContextOuterClass.Slice.Builder, context.ContextOuterClass.SliceOrBuilder>( + slices_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + slices_ = null; + } + return slicesBuilder_; + } + @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:context.SliceList) + } + + // @@protoc_insertion_point(class_scope:context.SliceList) + private static final context.ContextOuterClass.SliceList DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new context.ContextOuterClass.SliceList(); + } + + public static context.ContextOuterClass.SliceList getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<SliceList> + PARSER = new com.google.protobuf.AbstractParser<SliceList>() { + @java.lang.Override + public SliceList parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new SliceList(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<SliceList> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<SliceList> getParserForType() { + return PARSER; + } + + @java.lang.Override + public context.ContextOuterClass.SliceList getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface SliceFilterOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.SliceFilter) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>.context.SliceIdList slice_ids = 1;</code> + * @return Whether the sliceIds field is set. + */ + boolean hasSliceIds(); + /** + * <code>.context.SliceIdList slice_ids = 1;</code> + * @return The sliceIds. + */ + context.ContextOuterClass.SliceIdList getSliceIds(); + /** + * <code>.context.SliceIdList slice_ids = 1;</code> + */ + context.ContextOuterClass.SliceIdListOrBuilder getSliceIdsOrBuilder(); + + /** + * <code>bool include_endpoint_ids = 2;</code> + * @return The includeEndpointIds. + */ + boolean getIncludeEndpointIds(); + + /** + * <code>bool include_constraints = 3;</code> + * @return The includeConstraints. + */ + boolean getIncludeConstraints(); + + /** + * <code>bool include_service_ids = 4;</code> + * @return The includeServiceIds. + */ + boolean getIncludeServiceIds(); + + /** + * <code>bool include_subslice_ids = 5;</code> + * @return The includeSubsliceIds. + */ + boolean getIncludeSubsliceIds(); + + /** + * <code>bool include_config_rules = 6;</code> + * @return The includeConfigRules. + */ + boolean getIncludeConfigRules(); + } + /** + * Protobuf type {@code context.SliceFilter} + */ + public static final class SliceFilter extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:context.SliceFilter) + SliceFilterOrBuilder { + private static final long serialVersionUID = 0L; + // Use SliceFilter.newBuilder() to construct. + private SliceFilter(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private SliceFilter() { + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new SliceFilter(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private SliceFilter( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + 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: { + context.ContextOuterClass.SliceIdList.Builder subBuilder = null; + if (sliceIds_ != null) { + subBuilder = sliceIds_.toBuilder(); + } + sliceIds_ = input.readMessage(context.ContextOuterClass.SliceIdList.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(sliceIds_); + sliceIds_ = subBuilder.buildPartial(); + } + + break; + } + case 16: { + + includeEndpointIds_ = input.readBool(); + break; + } + case 24: { + + includeConstraints_ = input.readBool(); + break; + } + case 32: { + + includeServiceIds_ = input.readBool(); + break; + } + case 40: { + + includeSubsliceIds_ = input.readBool(); + break; + } + case 48: { + + includeConfigRules_ = input.readBool(); + 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 { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_SliceFilter_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_SliceFilter_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.SliceFilter.class, context.ContextOuterClass.SliceFilter.Builder.class); + } + + public static final int SLICE_IDS_FIELD_NUMBER = 1; + private context.ContextOuterClass.SliceIdList sliceIds_; + /** + * <code>.context.SliceIdList slice_ids = 1;</code> + * @return Whether the sliceIds field is set. + */ + @java.lang.Override + public boolean hasSliceIds() { + return sliceIds_ != null; + } + /** + * <code>.context.SliceIdList slice_ids = 1;</code> + * @return The sliceIds. + */ + @java.lang.Override + public context.ContextOuterClass.SliceIdList getSliceIds() { + return sliceIds_ == null ? context.ContextOuterClass.SliceIdList.getDefaultInstance() : sliceIds_; + } + /** + * <code>.context.SliceIdList slice_ids = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.SliceIdListOrBuilder getSliceIdsOrBuilder() { + return getSliceIds(); + } + + public static final int INCLUDE_ENDPOINT_IDS_FIELD_NUMBER = 2; + private boolean includeEndpointIds_; + /** + * <code>bool include_endpoint_ids = 2;</code> + * @return The includeEndpointIds. + */ + @java.lang.Override + public boolean getIncludeEndpointIds() { + return includeEndpointIds_; + } + + public static final int INCLUDE_CONSTRAINTS_FIELD_NUMBER = 3; + private boolean includeConstraints_; + /** + * <code>bool include_constraints = 3;</code> + * @return The includeConstraints. + */ + @java.lang.Override + public boolean getIncludeConstraints() { + return includeConstraints_; + } + + public static final int INCLUDE_SERVICE_IDS_FIELD_NUMBER = 4; + private boolean includeServiceIds_; + /** + * <code>bool include_service_ids = 4;</code> + * @return The includeServiceIds. + */ + @java.lang.Override + public boolean getIncludeServiceIds() { + return includeServiceIds_; + } + + public static final int INCLUDE_SUBSLICE_IDS_FIELD_NUMBER = 5; + private boolean includeSubsliceIds_; + /** + * <code>bool include_subslice_ids = 5;</code> + * @return The includeSubsliceIds. + */ + @java.lang.Override + public boolean getIncludeSubsliceIds() { + return includeSubsliceIds_; + } + + public static final int INCLUDE_CONFIG_RULES_FIELD_NUMBER = 6; + private boolean includeConfigRules_; + /** + * <code>bool include_config_rules = 6;</code> + * @return The includeConfigRules. + */ + @java.lang.Override + public boolean getIncludeConfigRules() { + return includeConfigRules_; + } + + 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 (sliceIds_ != null) { + output.writeMessage(1, getSliceIds()); + } + if (includeEndpointIds_ != false) { + output.writeBool(2, includeEndpointIds_); + } + if (includeConstraints_ != false) { + output.writeBool(3, includeConstraints_); + } + if (includeServiceIds_ != false) { + output.writeBool(4, includeServiceIds_); + } + if (includeSubsliceIds_ != false) { + output.writeBool(5, includeSubsliceIds_); + } + if (includeConfigRules_ != false) { + output.writeBool(6, includeConfigRules_); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (sliceIds_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getSliceIds()); + } + if (includeEndpointIds_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(2, includeEndpointIds_); + } + if (includeConstraints_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(3, includeConstraints_); + } + if (includeServiceIds_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(4, includeServiceIds_); } - /** - * <code>repeated .context.EndPointId slice_endpoint_ids = 2;</code> - */ - public java.util.List<context.ContextOuterClass.EndPointId.Builder> - getSliceEndpointIdsBuilderList() { - return getSliceEndpointIdsFieldBuilder().getBuilderList(); + if (includeSubsliceIds_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(5, includeSubsliceIds_); } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> - getSliceEndpointIdsFieldBuilder() { - if (sliceEndpointIdsBuilder_ == null) { - sliceEndpointIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( - sliceEndpointIds_, - ((bitField0_ & 0x00000001) != 0), - getParentForChildren(), - isClean()); - sliceEndpointIds_ = null; - } - return sliceEndpointIdsBuilder_; + if (includeConfigRules_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(6, includeConfigRules_); } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } - private java.util.List<context.ContextOuterClass.Constraint> sliceConstraints_ = - java.util.Collections.emptyList(); - private void ensureSliceConstraintsIsMutable() { - if (!((bitField0_ & 0x00000002) != 0)) { - sliceConstraints_ = new java.util.ArrayList<context.ContextOuterClass.Constraint>(sliceConstraints_); - bitField0_ |= 0x00000002; - } + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; } + if (!(obj instanceof context.ContextOuterClass.SliceFilter)) { + return super.equals(obj); + } + context.ContextOuterClass.SliceFilter other = (context.ContextOuterClass.SliceFilter) obj; + + if (hasSliceIds() != other.hasSliceIds()) return false; + if (hasSliceIds()) { + if (!getSliceIds() + .equals(other.getSliceIds())) return false; + } + if (getIncludeEndpointIds() + != other.getIncludeEndpointIds()) return false; + if (getIncludeConstraints() + != other.getIncludeConstraints()) return false; + if (getIncludeServiceIds() + != other.getIncludeServiceIds()) return false; + if (getIncludeSubsliceIds() + != other.getIncludeSubsliceIds()) return false; + if (getIncludeConfigRules() + != other.getIncludeConfigRules()) return false; + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Constraint, context.ContextOuterClass.Constraint.Builder, context.ContextOuterClass.ConstraintOrBuilder> sliceConstraintsBuilder_; - - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - public java.util.List<context.ContextOuterClass.Constraint> getSliceConstraintsList() { - if (sliceConstraintsBuilder_ == null) { - return java.util.Collections.unmodifiableList(sliceConstraints_); - } else { - return sliceConstraintsBuilder_.getMessageList(); - } + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; } - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - public int getSliceConstraintsCount() { - if (sliceConstraintsBuilder_ == null) { - return sliceConstraints_.size(); - } else { - return sliceConstraintsBuilder_.getCount(); - } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasSliceIds()) { + hash = (37 * hash) + SLICE_IDS_FIELD_NUMBER; + hash = (53 * hash) + getSliceIds().hashCode(); } - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - public context.ContextOuterClass.Constraint getSliceConstraints(int index) { - if (sliceConstraintsBuilder_ == null) { - return sliceConstraints_.get(index); - } else { - return sliceConstraintsBuilder_.getMessage(index); - } + hash = (37 * hash) + INCLUDE_ENDPOINT_IDS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getIncludeEndpointIds()); + hash = (37 * hash) + INCLUDE_CONSTRAINTS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getIncludeConstraints()); + hash = (37 * hash) + INCLUDE_SERVICE_IDS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getIncludeServiceIds()); + hash = (37 * hash) + INCLUDE_SUBSLICE_IDS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getIncludeSubsliceIds()); + hash = (37 * hash) + INCLUDE_CONFIG_RULES_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getIncludeConfigRules()); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static context.ContextOuterClass.SliceFilter parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.SliceFilter parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.SliceFilter parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.SliceFilter parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.SliceFilter parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.SliceFilter parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.SliceFilter parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.SliceFilter 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 context.ContextOuterClass.SliceFilter parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static context.ContextOuterClass.SliceFilter 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 context.ContextOuterClass.SliceFilter parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.SliceFilter 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(context.ContextOuterClass.SliceFilter 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; + } + /** + * Protobuf type {@code context.SliceFilter} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:context.SliceFilter) + context.ContextOuterClass.SliceFilterOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_SliceFilter_descriptor; } - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - public Builder setSliceConstraints( - int index, context.ContextOuterClass.Constraint value) { - if (sliceConstraintsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSliceConstraintsIsMutable(); - sliceConstraints_.set(index, value); - onChanged(); - } else { - sliceConstraintsBuilder_.setMessage(index, value); - } - return this; + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_SliceFilter_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.SliceFilter.class, context.ContextOuterClass.SliceFilter.Builder.class); } - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - public Builder setSliceConstraints( - int index, context.ContextOuterClass.Constraint.Builder builderForValue) { - if (sliceConstraintsBuilder_ == null) { - ensureSliceConstraintsIsMutable(); - sliceConstraints_.set(index, builderForValue.build()); - onChanged(); - } else { - sliceConstraintsBuilder_.setMessage(index, builderForValue.build()); - } - return this; + + // Construct using context.ContextOuterClass.SliceFilter.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); } - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - public Builder addSliceConstraints(context.ContextOuterClass.Constraint value) { - if (sliceConstraintsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSliceConstraintsIsMutable(); - sliceConstraints_.add(value); - onChanged(); - } else { - sliceConstraintsBuilder_.addMessage(value); - } - return this; + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); } - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - public Builder addSliceConstraints( - int index, context.ContextOuterClass.Constraint value) { - if (sliceConstraintsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSliceConstraintsIsMutable(); - sliceConstraints_.add(index, value); - onChanged(); - } else { - sliceConstraintsBuilder_.addMessage(index, value); + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { } - return this; } - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - public Builder addSliceConstraints( - context.ContextOuterClass.Constraint.Builder builderForValue) { - if (sliceConstraintsBuilder_ == null) { - ensureSliceConstraintsIsMutable(); - sliceConstraints_.add(builderForValue.build()); - onChanged(); + @java.lang.Override + public Builder clear() { + super.clear(); + if (sliceIdsBuilder_ == null) { + sliceIds_ = null; } else { - sliceConstraintsBuilder_.addMessage(builderForValue.build()); + sliceIds_ = null; + sliceIdsBuilder_ = null; } + includeEndpointIds_ = false; + + includeConstraints_ = false; + + includeServiceIds_ = false; + + includeSubsliceIds_ = false; + + includeConfigRules_ = false; + return this; } - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - public Builder addSliceConstraints( - int index, context.ContextOuterClass.Constraint.Builder builderForValue) { - if (sliceConstraintsBuilder_ == null) { - ensureSliceConstraintsIsMutable(); - sliceConstraints_.add(index, builderForValue.build()); - onChanged(); - } else { - sliceConstraintsBuilder_.addMessage(index, builderForValue.build()); - } - return this; + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return context.ContextOuterClass.internal_static_context_SliceFilter_descriptor; } - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - public Builder addAllSliceConstraints( - java.lang.Iterable<? extends context.ContextOuterClass.Constraint> values) { - if (sliceConstraintsBuilder_ == null) { - ensureSliceConstraintsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, sliceConstraints_); - onChanged(); - } else { - sliceConstraintsBuilder_.addAllMessages(values); - } - return this; + + @java.lang.Override + public context.ContextOuterClass.SliceFilter getDefaultInstanceForType() { + return context.ContextOuterClass.SliceFilter.getDefaultInstance(); } - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - public Builder clearSliceConstraints() { - if (sliceConstraintsBuilder_ == null) { - sliceConstraints_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000002); - onChanged(); - } else { - sliceConstraintsBuilder_.clear(); + + @java.lang.Override + public context.ContextOuterClass.SliceFilter build() { + context.ContextOuterClass.SliceFilter result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); } - return this; + return result; } - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - public Builder removeSliceConstraints(int index) { - if (sliceConstraintsBuilder_ == null) { - ensureSliceConstraintsIsMutable(); - sliceConstraints_.remove(index); - onChanged(); + + @java.lang.Override + public context.ContextOuterClass.SliceFilter buildPartial() { + context.ContextOuterClass.SliceFilter result = new context.ContextOuterClass.SliceFilter(this); + if (sliceIdsBuilder_ == null) { + result.sliceIds_ = sliceIds_; } else { - sliceConstraintsBuilder_.remove(index); + result.sliceIds_ = sliceIdsBuilder_.build(); } - return this; + result.includeEndpointIds_ = includeEndpointIds_; + result.includeConstraints_ = includeConstraints_; + result.includeServiceIds_ = includeServiceIds_; + result.includeSubsliceIds_ = includeSubsliceIds_; + result.includeConfigRules_ = includeConfigRules_; + onBuilt(); + return result; } - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - public context.ContextOuterClass.Constraint.Builder getSliceConstraintsBuilder( - int index) { - return getSliceConstraintsFieldBuilder().getBuilder(index); + + @java.lang.Override + public Builder clone() { + return super.clone(); } - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - public context.ContextOuterClass.ConstraintOrBuilder getSliceConstraintsOrBuilder( - int index) { - if (sliceConstraintsBuilder_ == null) { - return sliceConstraints_.get(index); } else { - return sliceConstraintsBuilder_.getMessageOrBuilder(index); - } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); } - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - public java.util.List<? extends context.ContextOuterClass.ConstraintOrBuilder> - getSliceConstraintsOrBuilderList() { - if (sliceConstraintsBuilder_ != null) { - return sliceConstraintsBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(sliceConstraints_); - } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); } - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - public context.ContextOuterClass.Constraint.Builder addSliceConstraintsBuilder() { - return getSliceConstraintsFieldBuilder().addBuilder( - context.ContextOuterClass.Constraint.getDefaultInstance()); + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); } - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - public context.ContextOuterClass.Constraint.Builder addSliceConstraintsBuilder( - int index) { - return getSliceConstraintsFieldBuilder().addBuilder( - index, context.ContextOuterClass.Constraint.getDefaultInstance()); + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); } - /** - * <code>repeated .context.Constraint slice_constraints = 3;</code> - */ - public java.util.List<context.ContextOuterClass.Constraint.Builder> - getSliceConstraintsBuilderList() { - return getSliceConstraintsFieldBuilder().getBuilderList(); + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Constraint, context.ContextOuterClass.Constraint.Builder, context.ContextOuterClass.ConstraintOrBuilder> - getSliceConstraintsFieldBuilder() { - if (sliceConstraintsBuilder_ == null) { - sliceConstraintsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Constraint, context.ContextOuterClass.Constraint.Builder, context.ContextOuterClass.ConstraintOrBuilder>( - sliceConstraints_, - ((bitField0_ & 0x00000002) != 0), - getParentForChildren(), - isClean()); - sliceConstraints_ = null; + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof context.ContextOuterClass.SliceFilter) { + return mergeFrom((context.ContextOuterClass.SliceFilter)other); + } else { + super.mergeFrom(other); + return this; } - return sliceConstraintsBuilder_; - } - - private java.util.List<context.ContextOuterClass.ServiceId> sliceServiceIds_ = - java.util.Collections.emptyList(); - private void ensureSliceServiceIdsIsMutable() { - if (!((bitField0_ & 0x00000004) != 0)) { - sliceServiceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(sliceServiceIds_); - bitField0_ |= 0x00000004; - } } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> sliceServiceIdsBuilder_; - - /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> - */ - public java.util.List<context.ContextOuterClass.ServiceId> getSliceServiceIdsList() { - if (sliceServiceIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(sliceServiceIds_); - } else { - return sliceServiceIdsBuilder_.getMessageList(); + public Builder mergeFrom(context.ContextOuterClass.SliceFilter other) { + if (other == context.ContextOuterClass.SliceFilter.getDefaultInstance()) return this; + if (other.hasSliceIds()) { + mergeSliceIds(other.getSliceIds()); } - } - /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> - */ - public int getSliceServiceIdsCount() { - if (sliceServiceIdsBuilder_ == null) { - return sliceServiceIds_.size(); - } else { - return sliceServiceIdsBuilder_.getCount(); + if (other.getIncludeEndpointIds() != false) { + setIncludeEndpointIds(other.getIncludeEndpointIds()); } - } - /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> - */ - public context.ContextOuterClass.ServiceId getSliceServiceIds(int index) { - if (sliceServiceIdsBuilder_ == null) { - return sliceServiceIds_.get(index); - } else { - return sliceServiceIdsBuilder_.getMessage(index); + if (other.getIncludeConstraints() != false) { + setIncludeConstraints(other.getIncludeConstraints()); } - } - /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> - */ - public Builder setSliceServiceIds( - int index, context.ContextOuterClass.ServiceId value) { - if (sliceServiceIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSliceServiceIdsIsMutable(); - sliceServiceIds_.set(index, value); - onChanged(); - } else { - sliceServiceIdsBuilder_.setMessage(index, value); + if (other.getIncludeServiceIds() != false) { + setIncludeServiceIds(other.getIncludeServiceIds()); } - return this; - } - /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> - */ - public Builder setSliceServiceIds( - int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { - if (sliceServiceIdsBuilder_ == null) { - ensureSliceServiceIdsIsMutable(); - sliceServiceIds_.set(index, builderForValue.build()); - onChanged(); - } else { - sliceServiceIdsBuilder_.setMessage(index, builderForValue.build()); + if (other.getIncludeSubsliceIds() != false) { + setIncludeSubsliceIds(other.getIncludeSubsliceIds()); } - return this; - } - /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> - */ - public Builder addSliceServiceIds(context.ContextOuterClass.ServiceId value) { - if (sliceServiceIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSliceServiceIdsIsMutable(); - sliceServiceIds_.add(value); - onChanged(); - } else { - sliceServiceIdsBuilder_.addMessage(value); + if (other.getIncludeConfigRules() != false) { + setIncludeConfigRules(other.getIncludeConfigRules()); } + this.mergeUnknownFields(other.unknownFields); + onChanged(); return this; } - /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> - */ - public Builder addSliceServiceIds( - int index, context.ContextOuterClass.ServiceId value) { - if (sliceServiceIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + + @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 { + context.ContextOuterClass.SliceFilter parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.SliceFilter) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); } - ensureSliceServiceIdsIsMutable(); - sliceServiceIds_.add(index, value); - onChanged(); - } else { - sliceServiceIdsBuilder_.addMessage(index, value); } return this; } + + private context.ContextOuterClass.SliceIdList sliceIds_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceIdList, context.ContextOuterClass.SliceIdList.Builder, context.ContextOuterClass.SliceIdListOrBuilder> sliceIdsBuilder_; + /** + * <code>.context.SliceIdList slice_ids = 1;</code> + * @return Whether the sliceIds field is set. + */ + public boolean hasSliceIds() { + return sliceIdsBuilder_ != null || sliceIds_ != null; + } /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> + * <code>.context.SliceIdList slice_ids = 1;</code> + * @return The sliceIds. */ - public Builder addSliceServiceIds( - context.ContextOuterClass.ServiceId.Builder builderForValue) { - if (sliceServiceIdsBuilder_ == null) { - ensureSliceServiceIdsIsMutable(); - sliceServiceIds_.add(builderForValue.build()); - onChanged(); + public context.ContextOuterClass.SliceIdList getSliceIds() { + if (sliceIdsBuilder_ == null) { + return sliceIds_ == null ? context.ContextOuterClass.SliceIdList.getDefaultInstance() : sliceIds_; } else { - sliceServiceIdsBuilder_.addMessage(builderForValue.build()); + return sliceIdsBuilder_.getMessage(); } - return this; } /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> + * <code>.context.SliceIdList slice_ids = 1;</code> */ - public Builder addSliceServiceIds( - int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { - if (sliceServiceIdsBuilder_ == null) { - ensureSliceServiceIdsIsMutable(); - sliceServiceIds_.add(index, builderForValue.build()); + public Builder setSliceIds(context.ContextOuterClass.SliceIdList value) { + if (sliceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + sliceIds_ = value; onChanged(); } else { - sliceServiceIdsBuilder_.addMessage(index, builderForValue.build()); + sliceIdsBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> + * <code>.context.SliceIdList slice_ids = 1;</code> */ - public Builder addAllSliceServiceIds( - java.lang.Iterable<? extends context.ContextOuterClass.ServiceId> values) { - if (sliceServiceIdsBuilder_ == null) { - ensureSliceServiceIdsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, sliceServiceIds_); + public Builder setSliceIds( + context.ContextOuterClass.SliceIdList.Builder builderForValue) { + if (sliceIdsBuilder_ == null) { + sliceIds_ = builderForValue.build(); onChanged(); } else { - sliceServiceIdsBuilder_.addAllMessages(values); + sliceIdsBuilder_.setMessage(builderForValue.build()); } + return this; } /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> + * <code>.context.SliceIdList slice_ids = 1;</code> */ - public Builder clearSliceServiceIds() { - if (sliceServiceIdsBuilder_ == null) { - sliceServiceIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000004); + public Builder mergeSliceIds(context.ContextOuterClass.SliceIdList value) { + if (sliceIdsBuilder_ == null) { + if (sliceIds_ != null) { + sliceIds_ = + context.ContextOuterClass.SliceIdList.newBuilder(sliceIds_).mergeFrom(value).buildPartial(); + } else { + sliceIds_ = value; + } onChanged(); } else { - sliceServiceIdsBuilder_.clear(); + sliceIdsBuilder_.mergeFrom(value); } + return this; } /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> + * <code>.context.SliceIdList slice_ids = 1;</code> */ - public Builder removeSliceServiceIds(int index) { - if (sliceServiceIdsBuilder_ == null) { - ensureSliceServiceIdsIsMutable(); - sliceServiceIds_.remove(index); + public Builder clearSliceIds() { + if (sliceIdsBuilder_ == null) { + sliceIds_ = null; onChanged(); } else { - sliceServiceIdsBuilder_.remove(index); + sliceIds_ = null; + sliceIdsBuilder_ = null; } + return this; } /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> + * <code>.context.SliceIdList slice_ids = 1;</code> */ - public context.ContextOuterClass.ServiceId.Builder getSliceServiceIdsBuilder( - int index) { - return getSliceServiceIdsFieldBuilder().getBuilder(index); + public context.ContextOuterClass.SliceIdList.Builder getSliceIdsBuilder() { + + onChanged(); + return getSliceIdsFieldBuilder().getBuilder(); } /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> + * <code>.context.SliceIdList slice_ids = 1;</code> */ - public context.ContextOuterClass.ServiceIdOrBuilder getSliceServiceIdsOrBuilder( - int index) { - if (sliceServiceIdsBuilder_ == null) { - return sliceServiceIds_.get(index); } else { - return sliceServiceIdsBuilder_.getMessageOrBuilder(index); + public context.ContextOuterClass.SliceIdListOrBuilder getSliceIdsOrBuilder() { + if (sliceIdsBuilder_ != null) { + return sliceIdsBuilder_.getMessageOrBuilder(); + } else { + return sliceIds_ == null ? + context.ContextOuterClass.SliceIdList.getDefaultInstance() : sliceIds_; } } /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> + * <code>.context.SliceIdList slice_ids = 1;</code> */ - public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> - getSliceServiceIdsOrBuilderList() { - if (sliceServiceIdsBuilder_ != null) { - return sliceServiceIdsBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(sliceServiceIds_); + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceIdList, context.ContextOuterClass.SliceIdList.Builder, context.ContextOuterClass.SliceIdListOrBuilder> + getSliceIdsFieldBuilder() { + if (sliceIdsBuilder_ == null) { + sliceIdsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceIdList, context.ContextOuterClass.SliceIdList.Builder, context.ContextOuterClass.SliceIdListOrBuilder>( + getSliceIds(), + getParentForChildren(), + isClean()); + sliceIds_ = null; } + return sliceIdsBuilder_; } + + private boolean includeEndpointIds_ ; /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> + * <code>bool include_endpoint_ids = 2;</code> + * @return The includeEndpointIds. */ - public context.ContextOuterClass.ServiceId.Builder addSliceServiceIdsBuilder() { - return getSliceServiceIdsFieldBuilder().addBuilder( - context.ContextOuterClass.ServiceId.getDefaultInstance()); + @java.lang.Override + public boolean getIncludeEndpointIds() { + return includeEndpointIds_; } /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> + * <code>bool include_endpoint_ids = 2;</code> + * @param value The includeEndpointIds to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.ServiceId.Builder addSliceServiceIdsBuilder( - int index) { - return getSliceServiceIdsFieldBuilder().addBuilder( - index, context.ContextOuterClass.ServiceId.getDefaultInstance()); + public Builder setIncludeEndpointIds(boolean value) { + + includeEndpointIds_ = value; + onChanged(); + return this; } /** - * <code>repeated .context.ServiceId slice_service_ids = 4;</code> + * <code>bool include_endpoint_ids = 2;</code> + * @return This builder for chaining. */ - public java.util.List<context.ContextOuterClass.ServiceId.Builder> - getSliceServiceIdsBuilderList() { - return getSliceServiceIdsFieldBuilder().getBuilderList(); - } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> - getSliceServiceIdsFieldBuilder() { - if (sliceServiceIdsBuilder_ == null) { - sliceServiceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder>( - sliceServiceIds_, - ((bitField0_ & 0x00000004) != 0), - getParentForChildren(), - isClean()); - sliceServiceIds_ = null; - } - return sliceServiceIdsBuilder_; + public Builder clearIncludeEndpointIds() { + + includeEndpointIds_ = false; + onChanged(); + return this; } - private java.util.List<context.ContextOuterClass.SliceId> sliceSubsliceIds_ = - java.util.Collections.emptyList(); - private void ensureSliceSubsliceIdsIsMutable() { - if (!((bitField0_ & 0x00000008) != 0)) { - sliceSubsliceIds_ = new java.util.ArrayList<context.ContextOuterClass.SliceId>(sliceSubsliceIds_); - bitField0_ |= 0x00000008; - } + private boolean includeConstraints_ ; + /** + * <code>bool include_constraints = 3;</code> + * @return The includeConstraints. + */ + @java.lang.Override + public boolean getIncludeConstraints() { + return includeConstraints_; } - - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> sliceSubsliceIdsBuilder_; - /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> + * <code>bool include_constraints = 3;</code> + * @param value The includeConstraints to set. + * @return This builder for chaining. */ - public java.util.List<context.ContextOuterClass.SliceId> getSliceSubsliceIdsList() { - if (sliceSubsliceIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(sliceSubsliceIds_); - } else { - return sliceSubsliceIdsBuilder_.getMessageList(); - } + public Builder setIncludeConstraints(boolean value) { + + includeConstraints_ = value; + onChanged(); + return this; } /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> + * <code>bool include_constraints = 3;</code> + * @return This builder for chaining. */ - public int getSliceSubsliceIdsCount() { - if (sliceSubsliceIdsBuilder_ == null) { - return sliceSubsliceIds_.size(); - } else { - return sliceSubsliceIdsBuilder_.getCount(); - } + public Builder clearIncludeConstraints() { + + includeConstraints_ = false; + onChanged(); + return this; } + + private boolean includeServiceIds_ ; /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> + * <code>bool include_service_ids = 4;</code> + * @return The includeServiceIds. */ - public context.ContextOuterClass.SliceId getSliceSubsliceIds(int index) { - if (sliceSubsliceIdsBuilder_ == null) { - return sliceSubsliceIds_.get(index); - } else { - return sliceSubsliceIdsBuilder_.getMessage(index); - } + @java.lang.Override + public boolean getIncludeServiceIds() { + return includeServiceIds_; } /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> + * <code>bool include_service_ids = 4;</code> + * @param value The includeServiceIds to set. + * @return This builder for chaining. */ - public Builder setSliceSubsliceIds( - int index, context.ContextOuterClass.SliceId value) { - if (sliceSubsliceIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSliceSubsliceIdsIsMutable(); - sliceSubsliceIds_.set(index, value); - onChanged(); - } else { - sliceSubsliceIdsBuilder_.setMessage(index, value); - } + public Builder setIncludeServiceIds(boolean value) { + + includeServiceIds_ = value; + onChanged(); return this; } /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> + * <code>bool include_service_ids = 4;</code> + * @return This builder for chaining. */ - public Builder setSliceSubsliceIds( - int index, context.ContextOuterClass.SliceId.Builder builderForValue) { - if (sliceSubsliceIdsBuilder_ == null) { - ensureSliceSubsliceIdsIsMutable(); - sliceSubsliceIds_.set(index, builderForValue.build()); - onChanged(); - } else { - sliceSubsliceIdsBuilder_.setMessage(index, builderForValue.build()); - } + public Builder clearIncludeServiceIds() { + + includeServiceIds_ = false; + onChanged(); return this; } + + private boolean includeSubsliceIds_ ; /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> + * <code>bool include_subslice_ids = 5;</code> + * @return The includeSubsliceIds. */ - public Builder addSliceSubsliceIds(context.ContextOuterClass.SliceId value) { - if (sliceSubsliceIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSliceSubsliceIdsIsMutable(); - sliceSubsliceIds_.add(value); - onChanged(); - } else { - sliceSubsliceIdsBuilder_.addMessage(value); - } - return this; + @java.lang.Override + public boolean getIncludeSubsliceIds() { + return includeSubsliceIds_; } /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> + * <code>bool include_subslice_ids = 5;</code> + * @param value The includeSubsliceIds to set. + * @return This builder for chaining. */ - public Builder addSliceSubsliceIds( - int index, context.ContextOuterClass.SliceId value) { - if (sliceSubsliceIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSliceSubsliceIdsIsMutable(); - sliceSubsliceIds_.add(index, value); - onChanged(); - } else { - sliceSubsliceIdsBuilder_.addMessage(index, value); - } + public Builder setIncludeSubsliceIds(boolean value) { + + includeSubsliceIds_ = value; + onChanged(); return this; } /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> + * <code>bool include_subslice_ids = 5;</code> + * @return This builder for chaining. */ - public Builder addSliceSubsliceIds( - context.ContextOuterClass.SliceId.Builder builderForValue) { - if (sliceSubsliceIdsBuilder_ == null) { - ensureSliceSubsliceIdsIsMutable(); - sliceSubsliceIds_.add(builderForValue.build()); - onChanged(); - } else { - sliceSubsliceIdsBuilder_.addMessage(builderForValue.build()); - } + public Builder clearIncludeSubsliceIds() { + + includeSubsliceIds_ = false; + onChanged(); return this; } + + private boolean includeConfigRules_ ; /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> + * <code>bool include_config_rules = 6;</code> + * @return The includeConfigRules. */ - public Builder addSliceSubsliceIds( - int index, context.ContextOuterClass.SliceId.Builder builderForValue) { - if (sliceSubsliceIdsBuilder_ == null) { - ensureSliceSubsliceIdsIsMutable(); - sliceSubsliceIds_.add(index, builderForValue.build()); - onChanged(); - } else { - sliceSubsliceIdsBuilder_.addMessage(index, builderForValue.build()); - } + @java.lang.Override + public boolean getIncludeConfigRules() { + return includeConfigRules_; + } + /** + * <code>bool include_config_rules = 6;</code> + * @param value The includeConfigRules to set. + * @return This builder for chaining. + */ + public Builder setIncludeConfigRules(boolean value) { + + includeConfigRules_ = value; + onChanged(); return this; } /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> + * <code>bool include_config_rules = 6;</code> + * @return This builder for chaining. */ - public Builder addAllSliceSubsliceIds( - java.lang.Iterable<? extends context.ContextOuterClass.SliceId> values) { - if (sliceSubsliceIdsBuilder_ == null) { - ensureSliceSubsliceIdsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, sliceSubsliceIds_); - onChanged(); - } else { - sliceSubsliceIdsBuilder_.addAllMessages(values); - } + public Builder clearIncludeConfigRules() { + + includeConfigRules_ = false; + onChanged(); return this; } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> - */ - public Builder clearSliceSubsliceIds() { - if (sliceSubsliceIdsBuilder_ == null) { - sliceSubsliceIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000008); - onChanged(); - } else { - sliceSubsliceIdsBuilder_.clear(); - } - return this; + @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:context.SliceFilter) + } + + // @@protoc_insertion_point(class_scope:context.SliceFilter) + private static final context.ContextOuterClass.SliceFilter DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new context.ContextOuterClass.SliceFilter(); + } + + public static context.ContextOuterClass.SliceFilter getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<SliceFilter> + PARSER = new com.google.protobuf.AbstractParser<SliceFilter>() { + @java.lang.Override + public SliceFilter parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new SliceFilter(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<SliceFilter> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<SliceFilter> getParserForType() { + return PARSER; + } + + @java.lang.Override + public context.ContextOuterClass.SliceFilter getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface SliceEventOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.SliceEvent) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. + */ + boolean hasEvent(); + /** + * <code>.context.Event event = 1;</code> + * @return The event. + */ + context.ContextOuterClass.Event getEvent(); + /** + * <code>.context.Event event = 1;</code> + */ + context.ContextOuterClass.EventOrBuilder getEventOrBuilder(); + + /** + * <code>.context.SliceId slice_id = 2;</code> + * @return Whether the sliceId field is set. + */ + boolean hasSliceId(); + /** + * <code>.context.SliceId slice_id = 2;</code> + * @return The sliceId. + */ + context.ContextOuterClass.SliceId getSliceId(); + /** + * <code>.context.SliceId slice_id = 2;</code> + */ + context.ContextOuterClass.SliceIdOrBuilder getSliceIdOrBuilder(); + } + /** + * Protobuf type {@code context.SliceEvent} + */ + public static final class SliceEvent extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:context.SliceEvent) + SliceEventOrBuilder { + private static final long serialVersionUID = 0L; + // Use SliceEvent.newBuilder() to construct. + private SliceEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private SliceEvent() { + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new SliceEvent(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private SliceEvent( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + 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: { + context.ContextOuterClass.Event.Builder subBuilder = null; + if (event_ != null) { + subBuilder = event_.toBuilder(); + } + event_ = input.readMessage(context.ContextOuterClass.Event.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(event_); + event_ = subBuilder.buildPartial(); + } + + break; + } + case 18: { + context.ContextOuterClass.SliceId.Builder subBuilder = null; + if (sliceId_ != null) { + subBuilder = sliceId_.toBuilder(); + } + sliceId_ = input.readMessage(context.ContextOuterClass.SliceId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(sliceId_); + sliceId_ = subBuilder.buildPartial(); + } + + 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 { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_SliceEvent_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_SliceEvent_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.SliceEvent.class, context.ContextOuterClass.SliceEvent.Builder.class); + } + + public static final int EVENT_FIELD_NUMBER = 1; + private context.ContextOuterClass.Event event_; + /** + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. + */ + @java.lang.Override + public boolean hasEvent() { + return event_ != null; + } + /** + * <code>.context.Event event = 1;</code> + * @return The event. + */ + @java.lang.Override + public context.ContextOuterClass.Event getEvent() { + return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; + } + /** + * <code>.context.Event event = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { + return getEvent(); + } + + public static final int SLICE_ID_FIELD_NUMBER = 2; + private context.ContextOuterClass.SliceId sliceId_; + /** + * <code>.context.SliceId slice_id = 2;</code> + * @return Whether the sliceId field is set. + */ + @java.lang.Override + public boolean hasSliceId() { + return sliceId_ != null; + } + /** + * <code>.context.SliceId slice_id = 2;</code> + * @return The sliceId. + */ + @java.lang.Override + public context.ContextOuterClass.SliceId getSliceId() { + return sliceId_ == null ? context.ContextOuterClass.SliceId.getDefaultInstance() : sliceId_; + } + /** + * <code>.context.SliceId slice_id = 2;</code> + */ + @java.lang.Override + public context.ContextOuterClass.SliceIdOrBuilder getSliceIdOrBuilder() { + return getSliceId(); + } + + 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 (event_ != null) { + output.writeMessage(1, getEvent()); + } + if (sliceId_ != null) { + output.writeMessage(2, getSliceId()); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (event_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getEvent()); + } + if (sliceId_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, getSliceId()); } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> - */ - public Builder removeSliceSubsliceIds(int index) { - if (sliceSubsliceIdsBuilder_ == null) { - ensureSliceSubsliceIdsIsMutable(); - sliceSubsliceIds_.remove(index); - onChanged(); - } else { - sliceSubsliceIdsBuilder_.remove(index); - } - return this; + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> - */ - public context.ContextOuterClass.SliceId.Builder getSliceSubsliceIdsBuilder( - int index) { - return getSliceSubsliceIdsFieldBuilder().getBuilder(index); + if (!(obj instanceof context.ContextOuterClass.SliceEvent)) { + return super.equals(obj); } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> - */ - public context.ContextOuterClass.SliceIdOrBuilder getSliceSubsliceIdsOrBuilder( - int index) { - if (sliceSubsliceIdsBuilder_ == null) { - return sliceSubsliceIds_.get(index); } else { - return sliceSubsliceIdsBuilder_.getMessageOrBuilder(index); - } + context.ContextOuterClass.SliceEvent other = (context.ContextOuterClass.SliceEvent) obj; + + if (hasEvent() != other.hasEvent()) return false; + if (hasEvent()) { + if (!getEvent() + .equals(other.getEvent())) return false; } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> - */ - public java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> - getSliceSubsliceIdsOrBuilderList() { - if (sliceSubsliceIdsBuilder_ != null) { - return sliceSubsliceIdsBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(sliceSubsliceIds_); - } + if (hasSliceId() != other.hasSliceId()) return false; + if (hasSliceId()) { + if (!getSliceId() + .equals(other.getSliceId())) return false; } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> - */ - public context.ContextOuterClass.SliceId.Builder addSliceSubsliceIdsBuilder() { - return getSliceSubsliceIdsFieldBuilder().addBuilder( - context.ContextOuterClass.SliceId.getDefaultInstance()); + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> - */ - public context.ContextOuterClass.SliceId.Builder addSliceSubsliceIdsBuilder( - int index) { - return getSliceSubsliceIdsFieldBuilder().addBuilder( - index, context.ContextOuterClass.SliceId.getDefaultInstance()); + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasEvent()) { + hash = (37 * hash) + EVENT_FIELD_NUMBER; + hash = (53 * hash) + getEvent().hashCode(); } - /** - * <code>repeated .context.SliceId slice_subslice_ids = 5;</code> - */ - public java.util.List<context.ContextOuterClass.SliceId.Builder> - getSliceSubsliceIdsBuilderList() { - return getSliceSubsliceIdsFieldBuilder().getBuilderList(); + if (hasSliceId()) { + hash = (37 * hash) + SLICE_ID_FIELD_NUMBER; + hash = (53 * hash) + getSliceId().hashCode(); } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> - getSliceSubsliceIdsFieldBuilder() { - if (sliceSubsliceIdsBuilder_ == null) { - sliceSubsliceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder>( - sliceSubsliceIds_, - ((bitField0_ & 0x00000008) != 0), - getParentForChildren(), - isClean()); - sliceSubsliceIds_ = null; - } - return sliceSubsliceIdsBuilder_; + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static context.ContextOuterClass.SliceEvent parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.SliceEvent parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.SliceEvent parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.SliceEvent parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.SliceEvent parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static context.ContextOuterClass.SliceEvent parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static context.ContextOuterClass.SliceEvent parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.SliceEvent 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 context.ContextOuterClass.SliceEvent parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static context.ContextOuterClass.SliceEvent 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 context.ContextOuterClass.SliceEvent parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static context.ContextOuterClass.SliceEvent 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(context.ContextOuterClass.SliceEvent 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; + } + /** + * Protobuf type {@code context.SliceEvent} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:context.SliceEvent) + context.ContextOuterClass.SliceEventOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_SliceEvent_descriptor; } - private context.ContextOuterClass.SliceStatus sliceStatus_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceStatus, context.ContextOuterClass.SliceStatus.Builder, context.ContextOuterClass.SliceStatusOrBuilder> sliceStatusBuilder_; - /** - * <code>.context.SliceStatus slice_status = 6;</code> - * @return Whether the sliceStatus field is set. - */ - public boolean hasSliceStatus() { - return sliceStatusBuilder_ != null || sliceStatus_ != null; + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_SliceEvent_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.SliceEvent.class, context.ContextOuterClass.SliceEvent.Builder.class); } - /** - * <code>.context.SliceStatus slice_status = 6;</code> - * @return The sliceStatus. - */ - public context.ContextOuterClass.SliceStatus getSliceStatus() { - if (sliceStatusBuilder_ == null) { - return sliceStatus_ == null ? context.ContextOuterClass.SliceStatus.getDefaultInstance() : sliceStatus_; - } else { - return sliceStatusBuilder_.getMessage(); - } + + // Construct using context.ContextOuterClass.SliceEvent.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); } - /** - * <code>.context.SliceStatus slice_status = 6;</code> - */ - public Builder setSliceStatus(context.ContextOuterClass.SliceStatus value) { - if (sliceStatusBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - sliceStatus_ = value; - onChanged(); - } else { - sliceStatusBuilder_.setMessage(value); - } - return this; + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); } - /** - * <code>.context.SliceStatus slice_status = 6;</code> - */ - public Builder setSliceStatus( - context.ContextOuterClass.SliceStatus.Builder builderForValue) { - if (sliceStatusBuilder_ == null) { - sliceStatus_ = builderForValue.build(); - onChanged(); - } else { - sliceStatusBuilder_.setMessage(builderForValue.build()); + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { } - - return this; } - /** - * <code>.context.SliceStatus slice_status = 6;</code> - */ - public Builder mergeSliceStatus(context.ContextOuterClass.SliceStatus value) { - if (sliceStatusBuilder_ == null) { - if (sliceStatus_ != null) { - sliceStatus_ = - context.ContextOuterClass.SliceStatus.newBuilder(sliceStatus_).mergeFrom(value).buildPartial(); - } else { - sliceStatus_ = value; - } - onChanged(); + @java.lang.Override + public Builder clear() { + super.clear(); + if (eventBuilder_ == null) { + event_ = null; } else { - sliceStatusBuilder_.mergeFrom(value); + event_ = null; + eventBuilder_ = null; } - - return this; - } - /** - * <code>.context.SliceStatus slice_status = 6;</code> - */ - public Builder clearSliceStatus() { - if (sliceStatusBuilder_ == null) { - sliceStatus_ = null; - onChanged(); + if (sliceIdBuilder_ == null) { + sliceId_ = null; } else { - sliceStatus_ = null; - sliceStatusBuilder_ = null; + sliceId_ = null; + sliceIdBuilder_ = null; } - return this; } - /** - * <code>.context.SliceStatus slice_status = 6;</code> - */ - public context.ContextOuterClass.SliceStatus.Builder getSliceStatusBuilder() { - - onChanged(); - return getSliceStatusFieldBuilder().getBuilder(); + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return context.ContextOuterClass.internal_static_context_SliceEvent_descriptor; } - /** - * <code>.context.SliceStatus slice_status = 6;</code> - */ - public context.ContextOuterClass.SliceStatusOrBuilder getSliceStatusOrBuilder() { - if (sliceStatusBuilder_ != null) { - return sliceStatusBuilder_.getMessageOrBuilder(); - } else { - return sliceStatus_ == null ? - context.ContextOuterClass.SliceStatus.getDefaultInstance() : sliceStatus_; - } + + @java.lang.Override + public context.ContextOuterClass.SliceEvent getDefaultInstanceForType() { + return context.ContextOuterClass.SliceEvent.getDefaultInstance(); } - /** - * <code>.context.SliceStatus slice_status = 6;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceStatus, context.ContextOuterClass.SliceStatus.Builder, context.ContextOuterClass.SliceStatusOrBuilder> - getSliceStatusFieldBuilder() { - if (sliceStatusBuilder_ == null) { - sliceStatusBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceStatus, context.ContextOuterClass.SliceStatus.Builder, context.ContextOuterClass.SliceStatusOrBuilder>( - getSliceStatus(), - getParentForChildren(), - isClean()); - sliceStatus_ = null; + + @java.lang.Override + public context.ContextOuterClass.SliceEvent build() { + context.ContextOuterClass.SliceEvent result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); } - return sliceStatusBuilder_; + return result; } - private context.ContextOuterClass.SliceConfig sliceConfig_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceConfig, context.ContextOuterClass.SliceConfig.Builder, context.ContextOuterClass.SliceConfigOrBuilder> sliceConfigBuilder_; - /** - * <code>.context.SliceConfig slice_config = 7;</code> - * @return Whether the sliceConfig field is set. - */ - public boolean hasSliceConfig() { - return sliceConfigBuilder_ != null || sliceConfig_ != null; - } - /** - * <code>.context.SliceConfig slice_config = 7;</code> - * @return The sliceConfig. - */ - public context.ContextOuterClass.SliceConfig getSliceConfig() { - if (sliceConfigBuilder_ == null) { - return sliceConfig_ == null ? context.ContextOuterClass.SliceConfig.getDefaultInstance() : sliceConfig_; + @java.lang.Override + public context.ContextOuterClass.SliceEvent buildPartial() { + context.ContextOuterClass.SliceEvent result = new context.ContextOuterClass.SliceEvent(this); + if (eventBuilder_ == null) { + result.event_ = event_; } else { - return sliceConfigBuilder_.getMessage(); + result.event_ = eventBuilder_.build(); } - } - /** - * <code>.context.SliceConfig slice_config = 7;</code> - */ - public Builder setSliceConfig(context.ContextOuterClass.SliceConfig value) { - if (sliceConfigBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - sliceConfig_ = value; - onChanged(); + if (sliceIdBuilder_ == null) { + result.sliceId_ = sliceId_; } else { - sliceConfigBuilder_.setMessage(value); + result.sliceId_ = sliceIdBuilder_.build(); } - - return this; + onBuilt(); + return result; } - /** - * <code>.context.SliceConfig slice_config = 7;</code> - */ - public Builder setSliceConfig( - context.ContextOuterClass.SliceConfig.Builder builderForValue) { - if (sliceConfigBuilder_ == null) { - sliceConfig_ = builderForValue.build(); - onChanged(); - } else { - sliceConfigBuilder_.setMessage(builderForValue.build()); - } - return this; + @java.lang.Override + public Builder clone() { + return super.clone(); } - /** - * <code>.context.SliceConfig slice_config = 7;</code> - */ - public Builder mergeSliceConfig(context.ContextOuterClass.SliceConfig value) { - if (sliceConfigBuilder_ == null) { - if (sliceConfig_ != null) { - sliceConfig_ = - context.ContextOuterClass.SliceConfig.newBuilder(sliceConfig_).mergeFrom(value).buildPartial(); - } else { - sliceConfig_ = value; - } - onChanged(); - } else { - sliceConfigBuilder_.mergeFrom(value); - } - - return this; + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); } - /** - * <code>.context.SliceConfig slice_config = 7;</code> - */ - public Builder clearSliceConfig() { - if (sliceConfigBuilder_ == null) { - sliceConfig_ = null; - onChanged(); - } else { - sliceConfig_ = null; - sliceConfigBuilder_ = null; - } - - return this; + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); } - /** - * <code>.context.SliceConfig slice_config = 7;</code> - */ - public context.ContextOuterClass.SliceConfig.Builder getSliceConfigBuilder() { - - onChanged(); - return getSliceConfigFieldBuilder().getBuilder(); + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); } - /** - * <code>.context.SliceConfig slice_config = 7;</code> - */ - public context.ContextOuterClass.SliceConfigOrBuilder getSliceConfigOrBuilder() { - if (sliceConfigBuilder_ != null) { - return sliceConfigBuilder_.getMessageOrBuilder(); + @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 context.ContextOuterClass.SliceEvent) { + return mergeFrom((context.ContextOuterClass.SliceEvent)other); } else { - return sliceConfig_ == null ? - context.ContextOuterClass.SliceConfig.getDefaultInstance() : sliceConfig_; + super.mergeFrom(other); + return this; } } - /** - * <code>.context.SliceConfig slice_config = 7;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceConfig, context.ContextOuterClass.SliceConfig.Builder, context.ContextOuterClass.SliceConfigOrBuilder> - getSliceConfigFieldBuilder() { - if (sliceConfigBuilder_ == null) { - sliceConfigBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceConfig, context.ContextOuterClass.SliceConfig.Builder, context.ContextOuterClass.SliceConfigOrBuilder>( - getSliceConfig(), - getParentForChildren(), - isClean()); - sliceConfig_ = null; + + public Builder mergeFrom(context.ContextOuterClass.SliceEvent other) { + if (other == context.ContextOuterClass.SliceEvent.getDefaultInstance()) return this; + if (other.hasEvent()) { + mergeEvent(other.getEvent()); + } + if (other.hasSliceId()) { + mergeSliceId(other.getSliceId()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @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 { + context.ContextOuterClass.SliceEvent parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.SliceEvent) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } } - return sliceConfigBuilder_; + return this; } - private context.ContextOuterClass.SliceOwner sliceOwner_; + private context.ContextOuterClass.Event event_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceOwner, context.ContextOuterClass.SliceOwner.Builder, context.ContextOuterClass.SliceOwnerOrBuilder> sliceOwnerBuilder_; + context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> eventBuilder_; /** - * <code>.context.SliceOwner slice_owner = 8;</code> - * @return Whether the sliceOwner field is set. + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. */ - public boolean hasSliceOwner() { - return sliceOwnerBuilder_ != null || sliceOwner_ != null; + public boolean hasEvent() { + return eventBuilder_ != null || event_ != null; } /** - * <code>.context.SliceOwner slice_owner = 8;</code> - * @return The sliceOwner. + * <code>.context.Event event = 1;</code> + * @return The event. */ - public context.ContextOuterClass.SliceOwner getSliceOwner() { - if (sliceOwnerBuilder_ == null) { - return sliceOwner_ == null ? context.ContextOuterClass.SliceOwner.getDefaultInstance() : sliceOwner_; + public context.ContextOuterClass.Event getEvent() { + if (eventBuilder_ == null) { + return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; } else { - return sliceOwnerBuilder_.getMessage(); + return eventBuilder_.getMessage(); } } /** - * <code>.context.SliceOwner slice_owner = 8;</code> + * <code>.context.Event event = 1;</code> */ - public Builder setSliceOwner(context.ContextOuterClass.SliceOwner value) { - if (sliceOwnerBuilder_ == null) { + public Builder setEvent(context.ContextOuterClass.Event value) { + if (eventBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - sliceOwner_ = value; + event_ = value; onChanged(); } else { - sliceOwnerBuilder_.setMessage(value); + eventBuilder_.setMessage(value); } return this; } /** - * <code>.context.SliceOwner slice_owner = 8;</code> + * <code>.context.Event event = 1;</code> */ - public Builder setSliceOwner( - context.ContextOuterClass.SliceOwner.Builder builderForValue) { - if (sliceOwnerBuilder_ == null) { - sliceOwner_ = builderForValue.build(); + public Builder setEvent( + context.ContextOuterClass.Event.Builder builderForValue) { + if (eventBuilder_ == null) { + event_ = builderForValue.build(); onChanged(); } else { - sliceOwnerBuilder_.setMessage(builderForValue.build()); + eventBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.SliceOwner slice_owner = 8;</code> + * <code>.context.Event event = 1;</code> */ - public Builder mergeSliceOwner(context.ContextOuterClass.SliceOwner value) { - if (sliceOwnerBuilder_ == null) { - if (sliceOwner_ != null) { - sliceOwner_ = - context.ContextOuterClass.SliceOwner.newBuilder(sliceOwner_).mergeFrom(value).buildPartial(); + public Builder mergeEvent(context.ContextOuterClass.Event value) { + if (eventBuilder_ == null) { + if (event_ != null) { + event_ = + context.ContextOuterClass.Event.newBuilder(event_).mergeFrom(value).buildPartial(); } else { - sliceOwner_ = value; + event_ = value; } onChanged(); } else { - sliceOwnerBuilder_.mergeFrom(value); + eventBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.SliceOwner slice_owner = 8;</code> + * <code>.context.Event event = 1;</code> */ - public Builder clearSliceOwner() { - if (sliceOwnerBuilder_ == null) { - sliceOwner_ = null; + public Builder clearEvent() { + if (eventBuilder_ == null) { + event_ = null; onChanged(); } else { - sliceOwner_ = null; - sliceOwnerBuilder_ = null; + event_ = null; + eventBuilder_ = null; } return this; } /** - * <code>.context.SliceOwner slice_owner = 8;</code> + * <code>.context.Event event = 1;</code> */ - public context.ContextOuterClass.SliceOwner.Builder getSliceOwnerBuilder() { + public context.ContextOuterClass.Event.Builder getEventBuilder() { onChanged(); - return getSliceOwnerFieldBuilder().getBuilder(); + return getEventFieldBuilder().getBuilder(); } /** - * <code>.context.SliceOwner slice_owner = 8;</code> + * <code>.context.Event event = 1;</code> */ - public context.ContextOuterClass.SliceOwnerOrBuilder getSliceOwnerOrBuilder() { - if (sliceOwnerBuilder_ != null) { - return sliceOwnerBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { + if (eventBuilder_ != null) { + return eventBuilder_.getMessageOrBuilder(); } else { - return sliceOwner_ == null ? - context.ContextOuterClass.SliceOwner.getDefaultInstance() : sliceOwner_; + return event_ == null ? + context.ContextOuterClass.Event.getDefaultInstance() : event_; } } /** - * <code>.context.SliceOwner slice_owner = 8;</code> + * <code>.context.Event event = 1;</code> */ private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceOwner, context.ContextOuterClass.SliceOwner.Builder, context.ContextOuterClass.SliceOwnerOrBuilder> - getSliceOwnerFieldBuilder() { - if (sliceOwnerBuilder_ == null) { - sliceOwnerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceOwner, context.ContextOuterClass.SliceOwner.Builder, context.ContextOuterClass.SliceOwnerOrBuilder>( - getSliceOwner(), + 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(), getParentForChildren(), isClean()); - sliceOwner_ = null; + event_ = null; } - return sliceOwnerBuilder_; + return eventBuilder_; } - private context.ContextOuterClass.Timestamp timestamp_; + private context.ContextOuterClass.SliceId sliceId_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> timestampBuilder_; + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> sliceIdBuilder_; /** - * <code>.context.Timestamp timestamp = 9;</code> - * @return Whether the timestamp field is set. + * <code>.context.SliceId slice_id = 2;</code> + * @return Whether the sliceId field is set. */ - public boolean hasTimestamp() { - return timestampBuilder_ != null || timestamp_ != null; + public boolean hasSliceId() { + return sliceIdBuilder_ != null || sliceId_ != null; } /** - * <code>.context.Timestamp timestamp = 9;</code> - * @return The timestamp. + * <code>.context.SliceId slice_id = 2;</code> + * @return The sliceId. */ - public context.ContextOuterClass.Timestamp getTimestamp() { - if (timestampBuilder_ == null) { - return timestamp_ == null ? context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_; + public context.ContextOuterClass.SliceId getSliceId() { + if (sliceIdBuilder_ == null) { + return sliceId_ == null ? context.ContextOuterClass.SliceId.getDefaultInstance() : sliceId_; } else { - return timestampBuilder_.getMessage(); + return sliceIdBuilder_.getMessage(); } } /** - * <code>.context.Timestamp timestamp = 9;</code> + * <code>.context.SliceId slice_id = 2;</code> */ - public Builder setTimestamp(context.ContextOuterClass.Timestamp value) { - if (timestampBuilder_ == null) { + public Builder setSliceId(context.ContextOuterClass.SliceId value) { + if (sliceIdBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - timestamp_ = value; + sliceId_ = value; onChanged(); } else { - timestampBuilder_.setMessage(value); + sliceIdBuilder_.setMessage(value); } return this; } /** - * <code>.context.Timestamp timestamp = 9;</code> + * <code>.context.SliceId slice_id = 2;</code> */ - public Builder setTimestamp( - context.ContextOuterClass.Timestamp.Builder builderForValue) { - if (timestampBuilder_ == null) { - timestamp_ = builderForValue.build(); + public Builder setSliceId( + context.ContextOuterClass.SliceId.Builder builderForValue) { + if (sliceIdBuilder_ == null) { + sliceId_ = builderForValue.build(); onChanged(); } else { - timestampBuilder_.setMessage(builderForValue.build()); + sliceIdBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.Timestamp timestamp = 9;</code> + * <code>.context.SliceId slice_id = 2;</code> */ - public Builder mergeTimestamp(context.ContextOuterClass.Timestamp value) { - if (timestampBuilder_ == null) { - if (timestamp_ != null) { - timestamp_ = - context.ContextOuterClass.Timestamp.newBuilder(timestamp_).mergeFrom(value).buildPartial(); + public Builder mergeSliceId(context.ContextOuterClass.SliceId value) { + if (sliceIdBuilder_ == null) { + if (sliceId_ != null) { + sliceId_ = + context.ContextOuterClass.SliceId.newBuilder(sliceId_).mergeFrom(value).buildPartial(); } else { - timestamp_ = value; + sliceId_ = value; } onChanged(); } else { - timestampBuilder_.mergeFrom(value); + sliceIdBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.Timestamp timestamp = 9;</code> + * <code>.context.SliceId slice_id = 2;</code> */ - public Builder clearTimestamp() { - if (timestampBuilder_ == null) { - timestamp_ = null; + public Builder clearSliceId() { + if (sliceIdBuilder_ == null) { + sliceId_ = null; onChanged(); } else { - timestamp_ = null; - timestampBuilder_ = null; + sliceId_ = null; + sliceIdBuilder_ = null; } return this; } /** - * <code>.context.Timestamp timestamp = 9;</code> + * <code>.context.SliceId slice_id = 2;</code> */ - public context.ContextOuterClass.Timestamp.Builder getTimestampBuilder() { + public context.ContextOuterClass.SliceId.Builder getSliceIdBuilder() { onChanged(); - return getTimestampFieldBuilder().getBuilder(); + return getSliceIdFieldBuilder().getBuilder(); } /** - * <code>.context.Timestamp timestamp = 9;</code> + * <code>.context.SliceId slice_id = 2;</code> */ - public context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder() { - if (timestampBuilder_ != null) { - return timestampBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.SliceIdOrBuilder getSliceIdOrBuilder() { + if (sliceIdBuilder_ != null) { + return sliceIdBuilder_.getMessageOrBuilder(); } else { - return timestamp_ == null ? - context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_; + return sliceId_ == null ? + context.ContextOuterClass.SliceId.getDefaultInstance() : sliceId_; } } /** - * <code>.context.Timestamp timestamp = 9;</code> + * <code>.context.SliceId slice_id = 2;</code> */ private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> - getTimestampFieldBuilder() { - if (timestampBuilder_ == null) { - timestampBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder>( - getTimestamp(), + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> + getSliceIdFieldBuilder() { + if (sliceIdBuilder_ == null) { + sliceIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder>( + getSliceId(), getParentForChildren(), isClean()); - timestamp_ = null; + sliceId_ = null; } - return timestampBuilder_; + return sliceIdBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -32738,98 +44195,89 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.Slice) + // @@protoc_insertion_point(builder_scope:context.SliceEvent) } - // @@protoc_insertion_point(class_scope:context.Slice) - private static final context.ContextOuterClass.Slice DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.SliceEvent) + private static final context.ContextOuterClass.SliceEvent DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Slice(); + DEFAULT_INSTANCE = new context.ContextOuterClass.SliceEvent(); } - public static context.ContextOuterClass.Slice getDefaultInstance() { + public static context.ContextOuterClass.SliceEvent getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<Slice> - PARSER = new com.google.protobuf.AbstractParser<Slice>() { + private static final com.google.protobuf.Parser<SliceEvent> + PARSER = new com.google.protobuf.AbstractParser<SliceEvent>() { @java.lang.Override - public Slice parsePartialFrom( + public SliceEvent parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new Slice(input, extensionRegistry); + return new SliceEvent(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<Slice> parser() { + public static com.google.protobuf.Parser<SliceEvent> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<Slice> getParserForType() { + public com.google.protobuf.Parser<SliceEvent> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.Slice getDefaultInstanceForType() { + public context.ContextOuterClass.SliceEvent getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface SliceOwnerOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.SliceOwner) + public interface ConnectionIdOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ConnectionId) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.Uuid owner_uuid = 1;</code> - * @return Whether the ownerUuid field is set. - */ - boolean hasOwnerUuid(); - /** - * <code>.context.Uuid owner_uuid = 1;</code> - * @return The ownerUuid. - */ - context.ContextOuterClass.Uuid getOwnerUuid(); - /** - * <code>.context.Uuid owner_uuid = 1;</code> + * <code>.context.Uuid connection_uuid = 1;</code> + * @return Whether the connectionUuid field is set. */ - context.ContextOuterClass.UuidOrBuilder getOwnerUuidOrBuilder(); - + boolean hasConnectionUuid(); /** - * <code>string owner_string = 2;</code> - * @return The ownerString. + * <code>.context.Uuid connection_uuid = 1;</code> + * @return The connectionUuid. */ - java.lang.String getOwnerString(); + context.ContextOuterClass.Uuid getConnectionUuid(); /** - * <code>string owner_string = 2;</code> - * @return The bytes for ownerString. + * <code>.context.Uuid connection_uuid = 1;</code> */ - com.google.protobuf.ByteString - getOwnerStringBytes(); + context.ContextOuterClass.UuidOrBuilder getConnectionUuidOrBuilder(); } /** - * Protobuf type {@code context.SliceOwner} + * <pre> + * ----- Connection ---------------------------------------------------------------------------------------------------- + * </pre> + * + * Protobuf type {@code context.ConnectionId} */ - public static final class SliceOwner extends + public static final class ConnectionId extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.SliceOwner) - SliceOwnerOrBuilder { + // @@protoc_insertion_point(message_implements:context.ConnectionId) + ConnectionIdOrBuilder { private static final long serialVersionUID = 0L; - // Use SliceOwner.newBuilder() to construct. - private SliceOwner(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ConnectionId.newBuilder() to construct. + private ConnectionId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private SliceOwner() { - ownerString_ = ""; + private ConnectionId() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new SliceOwner(); + return new ConnectionId(); } @java.lang.Override @@ -32837,7 +44285,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private SliceOwner( + private ConnectionId( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -32857,23 +44305,17 @@ public final class ContextOuterClass { break; case 10: { context.ContextOuterClass.Uuid.Builder subBuilder = null; - if (ownerUuid_ != null) { - subBuilder = ownerUuid_.toBuilder(); + if (connectionUuid_ != null) { + subBuilder = connectionUuid_.toBuilder(); } - ownerUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); + connectionUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(ownerUuid_); - ownerUuid_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(connectionUuid_); + connectionUuid_ = subBuilder.buildPartial(); } break; } - case 18: { - java.lang.String s = input.readStringRequireUtf8(); - - ownerString_ = s; - break; - } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { @@ -32895,79 +44337,41 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceOwner_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionId_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceOwner_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionId_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceOwner.class, context.ContextOuterClass.SliceOwner.Builder.class); + context.ContextOuterClass.ConnectionId.class, context.ContextOuterClass.ConnectionId.Builder.class); } - public static final int OWNER_UUID_FIELD_NUMBER = 1; - private context.ContextOuterClass.Uuid ownerUuid_; - /** - * <code>.context.Uuid owner_uuid = 1;</code> - * @return Whether the ownerUuid field is set. - */ - @java.lang.Override - public boolean hasOwnerUuid() { - return ownerUuid_ != null; - } - /** - * <code>.context.Uuid owner_uuid = 1;</code> - * @return The ownerUuid. - */ - @java.lang.Override - public context.ContextOuterClass.Uuid getOwnerUuid() { - return ownerUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : ownerUuid_; - } + public static final int CONNECTION_UUID_FIELD_NUMBER = 1; + private context.ContextOuterClass.Uuid connectionUuid_; /** - * <code>.context.Uuid owner_uuid = 1;</code> + * <code>.context.Uuid connection_uuid = 1;</code> + * @return Whether the connectionUuid field is set. */ @java.lang.Override - public context.ContextOuterClass.UuidOrBuilder getOwnerUuidOrBuilder() { - return getOwnerUuid(); + public boolean hasConnectionUuid() { + return connectionUuid_ != null; } - - public static final int OWNER_STRING_FIELD_NUMBER = 2; - private volatile java.lang.Object ownerString_; /** - * <code>string owner_string = 2;</code> - * @return The ownerString. + * <code>.context.Uuid connection_uuid = 1;</code> + * @return The connectionUuid. */ @java.lang.Override - public java.lang.String getOwnerString() { - java.lang.Object ref = ownerString_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - ownerString_ = s; - return s; - } + public context.ContextOuterClass.Uuid getConnectionUuid() { + return connectionUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : connectionUuid_; } /** - * <code>string owner_string = 2;</code> - * @return The bytes for ownerString. + * <code>.context.Uuid connection_uuid = 1;</code> */ @java.lang.Override - public com.google.protobuf.ByteString - getOwnerStringBytes() { - java.lang.Object ref = ownerString_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - ownerString_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public context.ContextOuterClass.UuidOrBuilder getConnectionUuidOrBuilder() { + return getConnectionUuid(); } private byte memoizedIsInitialized = -1; @@ -32984,11 +44388,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (ownerUuid_ != null) { - output.writeMessage(1, getOwnerUuid()); - } - if (!getOwnerStringBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, ownerString_); + if (connectionUuid_ != null) { + output.writeMessage(1, getConnectionUuid()); } unknownFields.writeTo(output); } @@ -32999,12 +44400,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (ownerUuid_ != null) { + if (connectionUuid_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getOwnerUuid()); - } - if (!getOwnerStringBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, ownerString_); + .computeMessageSize(1, getConnectionUuid()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -33016,18 +44414,16 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.SliceOwner)) { + if (!(obj instanceof context.ContextOuterClass.ConnectionId)) { return super.equals(obj); } - context.ContextOuterClass.SliceOwner other = (context.ContextOuterClass.SliceOwner) obj; + context.ContextOuterClass.ConnectionId other = (context.ContextOuterClass.ConnectionId) obj; - if (hasOwnerUuid() != other.hasOwnerUuid()) return false; - if (hasOwnerUuid()) { - if (!getOwnerUuid() - .equals(other.getOwnerUuid())) return false; + if (hasConnectionUuid() != other.hasConnectionUuid()) return false; + if (hasConnectionUuid()) { + if (!getConnectionUuid() + .equals(other.getConnectionUuid())) return false; } - if (!getOwnerString() - .equals(other.getOwnerString())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -33039,80 +44435,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasOwnerUuid()) { - hash = (37 * hash) + OWNER_UUID_FIELD_NUMBER; - hash = (53 * hash) + getOwnerUuid().hashCode(); + if (hasConnectionUuid()) { + hash = (37 * hash) + CONNECTION_UUID_FIELD_NUMBER; + hash = (53 * hash) + getConnectionUuid().hashCode(); } - hash = (37 * hash) + OWNER_STRING_FIELD_NUMBER; - hash = (53 * hash) + getOwnerString().hashCode(); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.SliceOwner parseFrom( + public static context.ContextOuterClass.ConnectionId parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceOwner parseFrom( + public static context.ContextOuterClass.ConnectionId parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceOwner parseFrom( + public static context.ContextOuterClass.ConnectionId parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceOwner parseFrom( + public static context.ContextOuterClass.ConnectionId parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceOwner parseFrom(byte[] data) + public static context.ContextOuterClass.ConnectionId parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceOwner parseFrom( + public static context.ContextOuterClass.ConnectionId parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceOwner parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionId parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceOwner parseFrom( + public static context.ContextOuterClass.ConnectionId 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 context.ContextOuterClass.SliceOwner parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionId parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceOwner parseDelimitedFrom( + public static context.ContextOuterClass.ConnectionId 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 context.ContextOuterClass.SliceOwner parseFrom( + public static context.ContextOuterClass.ConnectionId parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceOwner parseFrom( + public static context.ContextOuterClass.ConnectionId parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -33125,7 +44519,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.SliceOwner prototype) { + public static Builder newBuilder(context.ContextOuterClass.ConnectionId prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -33141,26 +44535,30 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.SliceOwner} + * <pre> + * ----- Connection ---------------------------------------------------------------------------------------------------- + * </pre> + * + * Protobuf type {@code context.ConnectionId} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.SliceOwner) - context.ContextOuterClass.SliceOwnerOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ConnectionId) + context.ContextOuterClass.ConnectionIdOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceOwner_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionId_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceOwner_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionId_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceOwner.class, context.ContextOuterClass.SliceOwner.Builder.class); + context.ContextOuterClass.ConnectionId.class, context.ContextOuterClass.ConnectionId.Builder.class); } - // Construct using context.ContextOuterClass.SliceOwner.newBuilder() + // Construct using context.ContextOuterClass.ConnectionId.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -33178,31 +44576,29 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - if (ownerUuidBuilder_ == null) { - ownerUuid_ = null; + if (connectionUuidBuilder_ == null) { + connectionUuid_ = null; } else { - ownerUuid_ = null; - ownerUuidBuilder_ = null; + connectionUuid_ = null; + connectionUuidBuilder_ = null; } - ownerString_ = ""; - return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_SliceOwner_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionId_descriptor; } @java.lang.Override - public context.ContextOuterClass.SliceOwner getDefaultInstanceForType() { - return context.ContextOuterClass.SliceOwner.getDefaultInstance(); + public context.ContextOuterClass.ConnectionId getDefaultInstanceForType() { + return context.ContextOuterClass.ConnectionId.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.SliceOwner build() { - context.ContextOuterClass.SliceOwner result = buildPartial(); + public context.ContextOuterClass.ConnectionId build() { + context.ContextOuterClass.ConnectionId result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -33210,14 +44606,13 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.SliceOwner buildPartial() { - context.ContextOuterClass.SliceOwner result = new context.ContextOuterClass.SliceOwner(this); - if (ownerUuidBuilder_ == null) { - result.ownerUuid_ = ownerUuid_; + public context.ContextOuterClass.ConnectionId buildPartial() { + context.ContextOuterClass.ConnectionId result = new context.ContextOuterClass.ConnectionId(this); + if (connectionUuidBuilder_ == null) { + result.connectionUuid_ = connectionUuid_; } else { - result.ownerUuid_ = ownerUuidBuilder_.build(); + result.connectionUuid_ = connectionUuidBuilder_.build(); } - result.ownerString_ = ownerString_; onBuilt(); return result; } @@ -33256,23 +44651,19 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.SliceOwner) { - return mergeFrom((context.ContextOuterClass.SliceOwner)other); + if (other instanceof context.ContextOuterClass.ConnectionId) { + return mergeFrom((context.ContextOuterClass.ConnectionId)other); } else { super.mergeFrom(other); return this; } - } - - public Builder mergeFrom(context.ContextOuterClass.SliceOwner other) { - if (other == context.ContextOuterClass.SliceOwner.getDefaultInstance()) return this; - if (other.hasOwnerUuid()) { - mergeOwnerUuid(other.getOwnerUuid()); - } - if (!other.getOwnerString().isEmpty()) { - ownerString_ = other.ownerString_; - onChanged(); - } + } + + public Builder mergeFrom(context.ContextOuterClass.ConnectionId other) { + if (other == context.ContextOuterClass.ConnectionId.getDefaultInstance()) return this; + if (other.hasConnectionUuid()) { + mergeConnectionUuid(other.getConnectionUuid()); + } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; @@ -33288,11 +44679,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.SliceOwner parsedMessage = null; + context.ContextOuterClass.ConnectionId parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.SliceOwner) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ConnectionId) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -33302,199 +44693,123 @@ public final class ContextOuterClass { return this; } - private context.ContextOuterClass.Uuid ownerUuid_; + private context.ContextOuterClass.Uuid connectionUuid_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> ownerUuidBuilder_; + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> connectionUuidBuilder_; /** - * <code>.context.Uuid owner_uuid = 1;</code> - * @return Whether the ownerUuid field is set. + * <code>.context.Uuid connection_uuid = 1;</code> + * @return Whether the connectionUuid field is set. */ - public boolean hasOwnerUuid() { - return ownerUuidBuilder_ != null || ownerUuid_ != null; + public boolean hasConnectionUuid() { + return connectionUuidBuilder_ != null || connectionUuid_ != null; } /** - * <code>.context.Uuid owner_uuid = 1;</code> - * @return The ownerUuid. + * <code>.context.Uuid connection_uuid = 1;</code> + * @return The connectionUuid. */ - public context.ContextOuterClass.Uuid getOwnerUuid() { - if (ownerUuidBuilder_ == null) { - return ownerUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : ownerUuid_; + public context.ContextOuterClass.Uuid getConnectionUuid() { + if (connectionUuidBuilder_ == null) { + return connectionUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : connectionUuid_; } else { - return ownerUuidBuilder_.getMessage(); + return connectionUuidBuilder_.getMessage(); } } /** - * <code>.context.Uuid owner_uuid = 1;</code> + * <code>.context.Uuid connection_uuid = 1;</code> */ - public Builder setOwnerUuid(context.ContextOuterClass.Uuid value) { - if (ownerUuidBuilder_ == null) { + public Builder setConnectionUuid(context.ContextOuterClass.Uuid value) { + if (connectionUuidBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ownerUuid_ = value; + connectionUuid_ = value; onChanged(); } else { - ownerUuidBuilder_.setMessage(value); + connectionUuidBuilder_.setMessage(value); } return this; } /** - * <code>.context.Uuid owner_uuid = 1;</code> + * <code>.context.Uuid connection_uuid = 1;</code> */ - public Builder setOwnerUuid( + public Builder setConnectionUuid( context.ContextOuterClass.Uuid.Builder builderForValue) { - if (ownerUuidBuilder_ == null) { - ownerUuid_ = builderForValue.build(); + if (connectionUuidBuilder_ == null) { + connectionUuid_ = builderForValue.build(); onChanged(); } else { - ownerUuidBuilder_.setMessage(builderForValue.build()); + connectionUuidBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.Uuid owner_uuid = 1;</code> + * <code>.context.Uuid connection_uuid = 1;</code> */ - public Builder mergeOwnerUuid(context.ContextOuterClass.Uuid value) { - if (ownerUuidBuilder_ == null) { - if (ownerUuid_ != null) { - ownerUuid_ = - context.ContextOuterClass.Uuid.newBuilder(ownerUuid_).mergeFrom(value).buildPartial(); + public Builder mergeConnectionUuid(context.ContextOuterClass.Uuid value) { + if (connectionUuidBuilder_ == null) { + if (connectionUuid_ != null) { + connectionUuid_ = + context.ContextOuterClass.Uuid.newBuilder(connectionUuid_).mergeFrom(value).buildPartial(); } else { - ownerUuid_ = value; + connectionUuid_ = value; } onChanged(); } else { - ownerUuidBuilder_.mergeFrom(value); + connectionUuidBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.Uuid owner_uuid = 1;</code> + * <code>.context.Uuid connection_uuid = 1;</code> */ - public Builder clearOwnerUuid() { - if (ownerUuidBuilder_ == null) { - ownerUuid_ = null; + public Builder clearConnectionUuid() { + if (connectionUuidBuilder_ == null) { + connectionUuid_ = null; onChanged(); } else { - ownerUuid_ = null; - ownerUuidBuilder_ = null; + connectionUuid_ = null; + connectionUuidBuilder_ = null; } return this; } /** - * <code>.context.Uuid owner_uuid = 1;</code> + * <code>.context.Uuid connection_uuid = 1;</code> */ - public context.ContextOuterClass.Uuid.Builder getOwnerUuidBuilder() { + public context.ContextOuterClass.Uuid.Builder getConnectionUuidBuilder() { onChanged(); - return getOwnerUuidFieldBuilder().getBuilder(); + return getConnectionUuidFieldBuilder().getBuilder(); } /** - * <code>.context.Uuid owner_uuid = 1;</code> + * <code>.context.Uuid connection_uuid = 1;</code> */ - public context.ContextOuterClass.UuidOrBuilder getOwnerUuidOrBuilder() { - if (ownerUuidBuilder_ != null) { - return ownerUuidBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.UuidOrBuilder getConnectionUuidOrBuilder() { + if (connectionUuidBuilder_ != null) { + return connectionUuidBuilder_.getMessageOrBuilder(); } else { - return ownerUuid_ == null ? - context.ContextOuterClass.Uuid.getDefaultInstance() : ownerUuid_; + return connectionUuid_ == null ? + context.ContextOuterClass.Uuid.getDefaultInstance() : connectionUuid_; } } /** - * <code>.context.Uuid owner_uuid = 1;</code> + * <code>.context.Uuid connection_uuid = 1;</code> */ private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> - getOwnerUuidFieldBuilder() { - if (ownerUuidBuilder_ == null) { - ownerUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + getConnectionUuidFieldBuilder() { + if (connectionUuidBuilder_ == null) { + connectionUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>( - getOwnerUuid(), + getConnectionUuid(), getParentForChildren(), isClean()); - ownerUuid_ = null; - } - return ownerUuidBuilder_; - } - - private java.lang.Object ownerString_ = ""; - /** - * <code>string owner_string = 2;</code> - * @return The ownerString. - */ - public java.lang.String getOwnerString() { - java.lang.Object ref = ownerString_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - ownerString_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - /** - * <code>string owner_string = 2;</code> - * @return The bytes for ownerString. - */ - public com.google.protobuf.ByteString - getOwnerStringBytes() { - java.lang.Object ref = ownerString_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - ownerString_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + connectionUuid_ = null; } - } - /** - * <code>string owner_string = 2;</code> - * @param value The ownerString to set. - * @return This builder for chaining. - */ - public Builder setOwnerString( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - ownerString_ = value; - onChanged(); - return this; - } - /** - * <code>string owner_string = 2;</code> - * @return This builder for chaining. - */ - public Builder clearOwnerString() { - - ownerString_ = getDefaultInstance().getOwnerString(); - onChanged(); - return this; - } - /** - * <code>string owner_string = 2;</code> - * @param value The bytes for ownerString to set. - * @return This builder for chaining. - */ - public Builder setOwnerStringBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - ownerString_ = value; - onChanged(); - return this; + return connectionUuidBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -33509,82 +44824,83 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.SliceOwner) + // @@protoc_insertion_point(builder_scope:context.ConnectionId) } - // @@protoc_insertion_point(class_scope:context.SliceOwner) - private static final context.ContextOuterClass.SliceOwner DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ConnectionId) + private static final context.ContextOuterClass.ConnectionId DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.SliceOwner(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionId(); } - public static context.ContextOuterClass.SliceOwner getDefaultInstance() { + public static context.ContextOuterClass.ConnectionId getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<SliceOwner> - PARSER = new com.google.protobuf.AbstractParser<SliceOwner>() { + private static final com.google.protobuf.Parser<ConnectionId> + PARSER = new com.google.protobuf.AbstractParser<ConnectionId>() { @java.lang.Override - public SliceOwner parsePartialFrom( + public ConnectionId parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new SliceOwner(input, extensionRegistry); + return new ConnectionId(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<SliceOwner> parser() { + public static com.google.protobuf.Parser<ConnectionId> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<SliceOwner> getParserForType() { + public com.google.protobuf.Parser<ConnectionId> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.SliceOwner getDefaultInstanceForType() { + public context.ContextOuterClass.ConnectionId getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface SliceStatusOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.SliceStatus) + public interface ConnectionSettings_L0OrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ConnectionSettings_L0) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.SliceStatusEnum slice_status = 1;</code> - * @return The enum numeric value on the wire for sliceStatus. + * <code>string lsp_symbolic_name = 1;</code> + * @return The lspSymbolicName. */ - int getSliceStatusValue(); + java.lang.String getLspSymbolicName(); /** - * <code>.context.SliceStatusEnum slice_status = 1;</code> - * @return The sliceStatus. + * <code>string lsp_symbolic_name = 1;</code> + * @return The bytes for lspSymbolicName. */ - context.ContextOuterClass.SliceStatusEnum getSliceStatus(); + com.google.protobuf.ByteString + getLspSymbolicNameBytes(); } /** - * Protobuf type {@code context.SliceStatus} + * Protobuf type {@code context.ConnectionSettings_L0} */ - public static final class SliceStatus extends + public static final class ConnectionSettings_L0 extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.SliceStatus) - SliceStatusOrBuilder { + // @@protoc_insertion_point(message_implements:context.ConnectionSettings_L0) + ConnectionSettings_L0OrBuilder { private static final long serialVersionUID = 0L; - // Use SliceStatus.newBuilder() to construct. - private SliceStatus(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ConnectionSettings_L0.newBuilder() to construct. + private ConnectionSettings_L0(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private SliceStatus() { - sliceStatus_ = 0; + private ConnectionSettings_L0() { + lspSymbolicName_ = ""; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new SliceStatus(); + return new ConnectionSettings_L0(); } @java.lang.Override @@ -33592,7 +44908,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private SliceStatus( + private ConnectionSettings_L0( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -33610,10 +44926,10 @@ public final class ContextOuterClass { case 0: done = true; break; - case 8: { - int rawValue = input.readEnum(); + case 10: { + java.lang.String s = input.readStringRequireUtf8(); - sliceStatus_ = rawValue; + lspSymbolicName_ = s; break; } default: { @@ -33637,34 +44953,53 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceStatus_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L0_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceStatus_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L0_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceStatus.class, context.ContextOuterClass.SliceStatus.Builder.class); + context.ContextOuterClass.ConnectionSettings_L0.class, context.ContextOuterClass.ConnectionSettings_L0.Builder.class); } - public static final int SLICE_STATUS_FIELD_NUMBER = 1; - private int sliceStatus_; + public static final int LSP_SYMBOLIC_NAME_FIELD_NUMBER = 1; + private volatile java.lang.Object lspSymbolicName_; /** - * <code>.context.SliceStatusEnum slice_status = 1;</code> - * @return The enum numeric value on the wire for sliceStatus. + * <code>string lsp_symbolic_name = 1;</code> + * @return The lspSymbolicName. */ - @java.lang.Override public int getSliceStatusValue() { - return sliceStatus_; + @java.lang.Override + public java.lang.String getLspSymbolicName() { + java.lang.Object ref = lspSymbolicName_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + lspSymbolicName_ = s; + return s; + } } /** - * <code>.context.SliceStatusEnum slice_status = 1;</code> - * @return The sliceStatus. + * <code>string lsp_symbolic_name = 1;</code> + * @return The bytes for lspSymbolicName. */ - @java.lang.Override public context.ContextOuterClass.SliceStatusEnum getSliceStatus() { - @SuppressWarnings("deprecation") - context.ContextOuterClass.SliceStatusEnum result = context.ContextOuterClass.SliceStatusEnum.valueOf(sliceStatus_); - return result == null ? context.ContextOuterClass.SliceStatusEnum.UNRECOGNIZED : result; + @java.lang.Override + public com.google.protobuf.ByteString + getLspSymbolicNameBytes() { + java.lang.Object ref = lspSymbolicName_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + lspSymbolicName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } private byte memoizedIsInitialized = -1; @@ -33681,8 +45016,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (sliceStatus_ != context.ContextOuterClass.SliceStatusEnum.SLICESTATUS_UNDEFINED.getNumber()) { - output.writeEnum(1, sliceStatus_); + if (!getLspSymbolicNameBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, lspSymbolicName_); } unknownFields.writeTo(output); } @@ -33693,9 +45028,8 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (sliceStatus_ != context.ContextOuterClass.SliceStatusEnum.SLICESTATUS_UNDEFINED.getNumber()) { - size += com.google.protobuf.CodedOutputStream - .computeEnumSize(1, sliceStatus_); + if (!getLspSymbolicNameBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, lspSymbolicName_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -33707,12 +45041,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.SliceStatus)) { + if (!(obj instanceof context.ContextOuterClass.ConnectionSettings_L0)) { return super.equals(obj); } - context.ContextOuterClass.SliceStatus other = (context.ContextOuterClass.SliceStatus) obj; + context.ContextOuterClass.ConnectionSettings_L0 other = (context.ContextOuterClass.ConnectionSettings_L0) obj; - if (sliceStatus_ != other.sliceStatus_) return false; + if (!getLspSymbolicName() + .equals(other.getLspSymbolicName())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -33724,76 +45059,76 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + SLICE_STATUS_FIELD_NUMBER; - hash = (53 * hash) + sliceStatus_; + hash = (37 * hash) + LSP_SYMBOLIC_NAME_FIELD_NUMBER; + hash = (53 * hash) + getLspSymbolicName().hashCode(); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.SliceStatus parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceStatus parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceStatus parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceStatus parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceStatus parseFrom(byte[] data) + public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceStatus parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceStatus parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceStatus parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L0 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 context.ContextOuterClass.SliceStatus parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionSettings_L0 parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceStatus parseDelimitedFrom( + public static context.ContextOuterClass.ConnectionSettings_L0 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 context.ContextOuterClass.SliceStatus parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceStatus parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -33806,7 +45141,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.SliceStatus prototype) { + public static Builder newBuilder(context.ContextOuterClass.ConnectionSettings_L0 prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -33822,26 +45157,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.SliceStatus} + * Protobuf type {@code context.ConnectionSettings_L0} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.SliceStatus) - context.ContextOuterClass.SliceStatusOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ConnectionSettings_L0) + context.ContextOuterClass.ConnectionSettings_L0OrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceStatus_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L0_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceStatus_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L0_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceStatus.class, context.ContextOuterClass.SliceStatus.Builder.class); + context.ContextOuterClass.ConnectionSettings_L0.class, context.ContextOuterClass.ConnectionSettings_L0.Builder.class); } - // Construct using context.ContextOuterClass.SliceStatus.newBuilder() + // Construct using context.ContextOuterClass.ConnectionSettings_L0.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -33859,7 +45194,7 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - sliceStatus_ = 0; + lspSymbolicName_ = ""; return this; } @@ -33867,17 +45202,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_SliceStatus_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L0_descriptor; } @java.lang.Override - public context.ContextOuterClass.SliceStatus getDefaultInstanceForType() { - return context.ContextOuterClass.SliceStatus.getDefaultInstance(); + public context.ContextOuterClass.ConnectionSettings_L0 getDefaultInstanceForType() { + return context.ContextOuterClass.ConnectionSettings_L0.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.SliceStatus build() { - context.ContextOuterClass.SliceStatus result = buildPartial(); + public context.ContextOuterClass.ConnectionSettings_L0 build() { + context.ContextOuterClass.ConnectionSettings_L0 result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -33885,9 +45220,9 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.SliceStatus buildPartial() { - context.ContextOuterClass.SliceStatus result = new context.ContextOuterClass.SliceStatus(this); - result.sliceStatus_ = sliceStatus_; + public context.ContextOuterClass.ConnectionSettings_L0 buildPartial() { + context.ContextOuterClass.ConnectionSettings_L0 result = new context.ContextOuterClass.ConnectionSettings_L0(this); + result.lspSymbolicName_ = lspSymbolicName_; onBuilt(); return result; } @@ -33926,18 +45261,19 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.SliceStatus) { - return mergeFrom((context.ContextOuterClass.SliceStatus)other); + if (other instanceof context.ContextOuterClass.ConnectionSettings_L0) { + return mergeFrom((context.ContextOuterClass.ConnectionSettings_L0)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.SliceStatus other) { - if (other == context.ContextOuterClass.SliceStatus.getDefaultInstance()) return this; - if (other.sliceStatus_ != 0) { - setSliceStatusValue(other.getSliceStatusValue()); + public Builder mergeFrom(context.ContextOuterClass.ConnectionSettings_L0 other) { + if (other == context.ContextOuterClass.ConnectionSettings_L0.getDefaultInstance()) return this; + if (!other.getLspSymbolicName().isEmpty()) { + lspSymbolicName_ = other.lspSymbolicName_; + onChanged(); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -33954,11 +45290,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.SliceStatus parsedMessage = null; + context.ContextOuterClass.ConnectionSettings_L0 parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.SliceStatus) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ConnectionSettings_L0) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -33968,56 +45304,78 @@ public final class ContextOuterClass { return this; } - private int sliceStatus_ = 0; + private java.lang.Object lspSymbolicName_ = ""; /** - * <code>.context.SliceStatusEnum slice_status = 1;</code> - * @return The enum numeric value on the wire for sliceStatus. + * <code>string lsp_symbolic_name = 1;</code> + * @return The lspSymbolicName. */ - @java.lang.Override public int getSliceStatusValue() { - return sliceStatus_; + public java.lang.String getLspSymbolicName() { + java.lang.Object ref = lspSymbolicName_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + lspSymbolicName_ = s; + return s; + } else { + return (java.lang.String) ref; + } } /** - * <code>.context.SliceStatusEnum slice_status = 1;</code> - * @param value The enum numeric value on the wire for sliceStatus to set. - * @return This builder for chaining. + * <code>string lsp_symbolic_name = 1;</code> + * @return The bytes for lspSymbolicName. */ - public Builder setSliceStatusValue(int value) { - - sliceStatus_ = value; - onChanged(); - return this; + public com.google.protobuf.ByteString + getLspSymbolicNameBytes() { + java.lang.Object ref = lspSymbolicName_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + lspSymbolicName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } /** - * <code>.context.SliceStatusEnum slice_status = 1;</code> - * @return The sliceStatus. + * <code>string lsp_symbolic_name = 1;</code> + * @param value The lspSymbolicName to set. + * @return This builder for chaining. */ - @java.lang.Override - public context.ContextOuterClass.SliceStatusEnum getSliceStatus() { - @SuppressWarnings("deprecation") - context.ContextOuterClass.SliceStatusEnum result = context.ContextOuterClass.SliceStatusEnum.valueOf(sliceStatus_); - return result == null ? context.ContextOuterClass.SliceStatusEnum.UNRECOGNIZED : result; + public Builder setLspSymbolicName( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + lspSymbolicName_ = value; + onChanged(); + return this; } /** - * <code>.context.SliceStatusEnum slice_status = 1;</code> - * @param value The sliceStatus to set. + * <code>string lsp_symbolic_name = 1;</code> * @return This builder for chaining. */ - public Builder setSliceStatus(context.ContextOuterClass.SliceStatusEnum value) { - if (value == null) { - throw new NullPointerException(); - } + public Builder clearLspSymbolicName() { - sliceStatus_ = value.getNumber(); + lspSymbolicName_ = getDefaultInstance().getLspSymbolicName(); onChanged(); return this; } /** - * <code>.context.SliceStatusEnum slice_status = 1;</code> + * <code>string lsp_symbolic_name = 1;</code> + * @param value The bytes for lspSymbolicName to set. * @return This builder for chaining. */ - public Builder clearSliceStatus() { + public Builder setLspSymbolicNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); - sliceStatus_ = 0; + lspSymbolicName_ = value; onChanged(); return this; } @@ -34034,95 +45392,120 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.SliceStatus) + // @@protoc_insertion_point(builder_scope:context.ConnectionSettings_L0) } - // @@protoc_insertion_point(class_scope:context.SliceStatus) - private static final context.ContextOuterClass.SliceStatus DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ConnectionSettings_L0) + private static final context.ContextOuterClass.ConnectionSettings_L0 DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.SliceStatus(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionSettings_L0(); } - public static context.ContextOuterClass.SliceStatus getDefaultInstance() { + public static context.ContextOuterClass.ConnectionSettings_L0 getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<SliceStatus> - PARSER = new com.google.protobuf.AbstractParser<SliceStatus>() { + private static final com.google.protobuf.Parser<ConnectionSettings_L0> + PARSER = new com.google.protobuf.AbstractParser<ConnectionSettings_L0>() { @java.lang.Override - public SliceStatus parsePartialFrom( + public ConnectionSettings_L0 parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new SliceStatus(input, extensionRegistry); + return new ConnectionSettings_L0(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<SliceStatus> parser() { + public static com.google.protobuf.Parser<ConnectionSettings_L0> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<SliceStatus> getParserForType() { + public com.google.protobuf.Parser<ConnectionSettings_L0> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.SliceStatus getDefaultInstanceForType() { + public context.ContextOuterClass.ConnectionSettings_L0 getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface SliceConfigOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.SliceConfig) + public interface ConnectionSettings_L2OrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ConnectionSettings_L2) com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>string src_mac_address = 1;</code> + * @return The srcMacAddress. */ - java.util.List<context.ContextOuterClass.ConfigRule> - getConfigRulesList(); + java.lang.String getSrcMacAddress(); /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>string src_mac_address = 1;</code> + * @return The bytes for srcMacAddress. */ - context.ContextOuterClass.ConfigRule getConfigRules(int index); + com.google.protobuf.ByteString + getSrcMacAddressBytes(); + /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>string dst_mac_address = 2;</code> + * @return The dstMacAddress. */ - int getConfigRulesCount(); + java.lang.String getDstMacAddress(); /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>string dst_mac_address = 2;</code> + * @return The bytes for dstMacAddress. */ - java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> - getConfigRulesOrBuilderList(); + com.google.protobuf.ByteString + getDstMacAddressBytes(); + /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>uint32 ether_type = 3;</code> + * @return The etherType. */ - context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( - int index); + int getEtherType(); + + /** + * <code>uint32 vlan_id = 4;</code> + * @return The vlanId. + */ + int getVlanId(); + + /** + * <code>uint32 mpls_label = 5;</code> + * @return The mplsLabel. + */ + int getMplsLabel(); + + /** + * <code>uint32 mpls_traffic_class = 6;</code> + * @return The mplsTrafficClass. + */ + int getMplsTrafficClass(); } /** - * Protobuf type {@code context.SliceConfig} + * Protobuf type {@code context.ConnectionSettings_L2} */ - public static final class SliceConfig extends + public static final class ConnectionSettings_L2 extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.SliceConfig) - SliceConfigOrBuilder { + // @@protoc_insertion_point(message_implements:context.ConnectionSettings_L2) + ConnectionSettings_L2OrBuilder { private static final long serialVersionUID = 0L; - // Use SliceConfig.newBuilder() to construct. - private SliceConfig(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ConnectionSettings_L2.newBuilder() to construct. + private ConnectionSettings_L2(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private SliceConfig() { - configRules_ = java.util.Collections.emptyList(); + private ConnectionSettings_L2() { + srcMacAddress_ = ""; + dstMacAddress_ = ""; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new SliceConfig(); + return new ConnectionSettings_L2(); } @java.lang.Override @@ -34130,7 +45513,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private SliceConfig( + private ConnectionSettings_L2( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -34138,7 +45521,6 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } - int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -34150,12 +45532,35 @@ public final class ContextOuterClass { done = true; break; case 10: { - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - configRules_ = new java.util.ArrayList<context.ContextOuterClass.ConfigRule>(); - mutable_bitField0_ |= 0x00000001; - } - configRules_.add( - input.readMessage(context.ContextOuterClass.ConfigRule.parser(), extensionRegistry)); + java.lang.String s = input.readStringRequireUtf8(); + + srcMacAddress_ = s; + break; + } + case 18: { + java.lang.String s = input.readStringRequireUtf8(); + + dstMacAddress_ = s; + break; + } + case 24: { + + etherType_ = input.readUInt32(); + break; + } + case 32: { + + vlanId_ = input.readUInt32(); + break; + } + case 40: { + + mplsLabel_ = input.readUInt32(); + break; + } + case 48: { + + mplsTrafficClass_ = input.readUInt32(); break; } default: { @@ -34173,64 +45578,141 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { - if (((mutable_bitField0_ & 0x00000001) != 0)) { - configRules_ = java.util.Collections.unmodifiableList(configRules_); - } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceConfig_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L2_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceConfig_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L2_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceConfig.class, context.ContextOuterClass.SliceConfig.Builder.class); + context.ContextOuterClass.ConnectionSettings_L2.class, context.ContextOuterClass.ConnectionSettings_L2.Builder.class); } - public static final int CONFIG_RULES_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.ConfigRule> configRules_; + public static final int SRC_MAC_ADDRESS_FIELD_NUMBER = 1; + private volatile java.lang.Object srcMacAddress_; /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>string src_mac_address = 1;</code> + * @return The srcMacAddress. */ @java.lang.Override - public java.util.List<context.ContextOuterClass.ConfigRule> getConfigRulesList() { - return configRules_; + public java.lang.String getSrcMacAddress() { + java.lang.Object ref = srcMacAddress_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + srcMacAddress_ = s; + return s; + } } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>string src_mac_address = 1;</code> + * @return The bytes for srcMacAddress. */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> - getConfigRulesOrBuilderList() { - return configRules_; + public com.google.protobuf.ByteString + getSrcMacAddressBytes() { + java.lang.Object ref = srcMacAddress_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + srcMacAddress_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } + + public static final int DST_MAC_ADDRESS_FIELD_NUMBER = 2; + private volatile java.lang.Object dstMacAddress_; /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>string dst_mac_address = 2;</code> + * @return The dstMacAddress. */ @java.lang.Override - public int getConfigRulesCount() { - return configRules_.size(); + public java.lang.String getDstMacAddress() { + java.lang.Object ref = dstMacAddress_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + dstMacAddress_ = s; + return s; + } } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>string dst_mac_address = 2;</code> + * @return The bytes for dstMacAddress. */ @java.lang.Override - public context.ContextOuterClass.ConfigRule getConfigRules(int index) { - return configRules_.get(index); + public com.google.protobuf.ByteString + getDstMacAddressBytes() { + java.lang.Object ref = dstMacAddress_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + dstMacAddress_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int ETHER_TYPE_FIELD_NUMBER = 3; + private int etherType_; + /** + * <code>uint32 ether_type = 3;</code> + * @return The etherType. + */ + @java.lang.Override + public int getEtherType() { + return etherType_; } + + public static final int VLAN_ID_FIELD_NUMBER = 4; + private int vlanId_; /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>uint32 vlan_id = 4;</code> + * @return The vlanId. */ @java.lang.Override - public context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( - int index) { - return configRules_.get(index); + public int getVlanId() { + return vlanId_; + } + + public static final int MPLS_LABEL_FIELD_NUMBER = 5; + private int mplsLabel_; + /** + * <code>uint32 mpls_label = 5;</code> + * @return The mplsLabel. + */ + @java.lang.Override + public int getMplsLabel() { + return mplsLabel_; + } + + public static final int MPLS_TRAFFIC_CLASS_FIELD_NUMBER = 6; + private int mplsTrafficClass_; + /** + * <code>uint32 mpls_traffic_class = 6;</code> + * @return The mplsTrafficClass. + */ + @java.lang.Override + public int getMplsTrafficClass() { + return mplsTrafficClass_; } private byte memoizedIsInitialized = -1; @@ -34247,8 +45729,23 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < configRules_.size(); i++) { - output.writeMessage(1, configRules_.get(i)); + if (!getSrcMacAddressBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, srcMacAddress_); + } + if (!getDstMacAddressBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, dstMacAddress_); + } + if (etherType_ != 0) { + output.writeUInt32(3, etherType_); + } + if (vlanId_ != 0) { + output.writeUInt32(4, vlanId_); + } + if (mplsLabel_ != 0) { + output.writeUInt32(5, mplsLabel_); + } + if (mplsTrafficClass_ != 0) { + output.writeUInt32(6, mplsTrafficClass_); } unknownFields.writeTo(output); } @@ -34259,9 +45756,27 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < configRules_.size(); i++) { + if (!getSrcMacAddressBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, srcMacAddress_); + } + if (!getDstMacAddressBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, dstMacAddress_); + } + if (etherType_ != 0) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, configRules_.get(i)); + .computeUInt32Size(3, etherType_); + } + if (vlanId_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(4, vlanId_); + } + if (mplsLabel_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(5, mplsLabel_); + } + if (mplsTrafficClass_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(6, mplsTrafficClass_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -34273,13 +45788,23 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.SliceConfig)) { + if (!(obj instanceof context.ContextOuterClass.ConnectionSettings_L2)) { return super.equals(obj); } - context.ContextOuterClass.SliceConfig other = (context.ContextOuterClass.SliceConfig) obj; + context.ContextOuterClass.ConnectionSettings_L2 other = (context.ContextOuterClass.ConnectionSettings_L2) obj; - if (!getConfigRulesList() - .equals(other.getConfigRulesList())) return false; + if (!getSrcMacAddress() + .equals(other.getSrcMacAddress())) return false; + if (!getDstMacAddress() + .equals(other.getDstMacAddress())) return false; + if (getEtherType() + != other.getEtherType()) return false; + if (getVlanId() + != other.getVlanId()) return false; + if (getMplsLabel() + != other.getMplsLabel()) return false; + if (getMplsTrafficClass() + != other.getMplsTrafficClass()) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -34291,78 +45816,86 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getConfigRulesCount() > 0) { - hash = (37 * hash) + CONFIG_RULES_FIELD_NUMBER; - hash = (53 * hash) + getConfigRulesList().hashCode(); - } + hash = (37 * hash) + SRC_MAC_ADDRESS_FIELD_NUMBER; + hash = (53 * hash) + getSrcMacAddress().hashCode(); + hash = (37 * hash) + DST_MAC_ADDRESS_FIELD_NUMBER; + hash = (53 * hash) + getDstMacAddress().hashCode(); + hash = (37 * hash) + ETHER_TYPE_FIELD_NUMBER; + hash = (53 * hash) + getEtherType(); + hash = (37 * hash) + VLAN_ID_FIELD_NUMBER; + hash = (53 * hash) + getVlanId(); + hash = (37 * hash) + MPLS_LABEL_FIELD_NUMBER; + hash = (53 * hash) + getMplsLabel(); + hash = (37 * hash) + MPLS_TRAFFIC_CLASS_FIELD_NUMBER; + hash = (53 * hash) + getMplsTrafficClass(); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.SliceConfig parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceConfig parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceConfig parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceConfig parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceConfig parseFrom(byte[] data) + public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceConfig parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceConfig parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceConfig parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L2 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 context.ContextOuterClass.SliceConfig parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionSettings_L2 parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceConfig parseDelimitedFrom( + public static context.ContextOuterClass.ConnectionSettings_L2 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 context.ContextOuterClass.SliceConfig parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceConfig parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -34375,7 +45908,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.SliceConfig prototype) { + public static Builder newBuilder(context.ContextOuterClass.ConnectionSettings_L2 prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -34391,26 +45924,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.SliceConfig} + * Protobuf type {@code context.ConnectionSettings_L2} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.SliceConfig) - context.ContextOuterClass.SliceConfigOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ConnectionSettings_L2) + context.ContextOuterClass.ConnectionSettings_L2OrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceConfig_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L2_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceConfig_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L2_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceConfig.class, context.ContextOuterClass.SliceConfig.Builder.class); + context.ContextOuterClass.ConnectionSettings_L2.class, context.ContextOuterClass.ConnectionSettings_L2.Builder.class); } - // Construct using context.ContextOuterClass.SliceConfig.newBuilder() + // Construct using context.ContextOuterClass.ConnectionSettings_L2.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -34423,35 +45956,40 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getConfigRulesFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (configRulesBuilder_ == null) { - configRules_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - } else { - configRulesBuilder_.clear(); - } + srcMacAddress_ = ""; + + dstMacAddress_ = ""; + + etherType_ = 0; + + vlanId_ = 0; + + mplsLabel_ = 0; + + mplsTrafficClass_ = 0; + return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_SliceConfig_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L2_descriptor; } @java.lang.Override - public context.ContextOuterClass.SliceConfig getDefaultInstanceForType() { - return context.ContextOuterClass.SliceConfig.getDefaultInstance(); + public context.ContextOuterClass.ConnectionSettings_L2 getDefaultInstanceForType() { + return context.ContextOuterClass.ConnectionSettings_L2.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.SliceConfig build() { - context.ContextOuterClass.SliceConfig result = buildPartial(); + public context.ContextOuterClass.ConnectionSettings_L2 build() { + context.ContextOuterClass.ConnectionSettings_L2 result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -34459,18 +45997,14 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.SliceConfig buildPartial() { - context.ContextOuterClass.SliceConfig result = new context.ContextOuterClass.SliceConfig(this); - int from_bitField0_ = bitField0_; - if (configRulesBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { - configRules_ = java.util.Collections.unmodifiableList(configRules_); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.configRules_ = configRules_; - } else { - result.configRules_ = configRulesBuilder_.build(); - } + public context.ContextOuterClass.ConnectionSettings_L2 buildPartial() { + context.ContextOuterClass.ConnectionSettings_L2 result = new context.ContextOuterClass.ConnectionSettings_L2(this); + result.srcMacAddress_ = srcMacAddress_; + result.dstMacAddress_ = dstMacAddress_; + result.etherType_ = etherType_; + result.vlanId_ = vlanId_; + result.mplsLabel_ = mplsLabel_; + result.mplsTrafficClass_ = mplsTrafficClass_; onBuilt(); return result; } @@ -34509,41 +46043,35 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.SliceConfig) { - return mergeFrom((context.ContextOuterClass.SliceConfig)other); + if (other instanceof context.ContextOuterClass.ConnectionSettings_L2) { + return mergeFrom((context.ContextOuterClass.ConnectionSettings_L2)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.SliceConfig other) { - if (other == context.ContextOuterClass.SliceConfig.getDefaultInstance()) return this; - if (configRulesBuilder_ == null) { - if (!other.configRules_.isEmpty()) { - if (configRules_.isEmpty()) { - configRules_ = other.configRules_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureConfigRulesIsMutable(); - configRules_.addAll(other.configRules_); - } - onChanged(); - } - } else { - if (!other.configRules_.isEmpty()) { - if (configRulesBuilder_.isEmpty()) { - configRulesBuilder_.dispose(); - configRulesBuilder_ = null; - configRules_ = other.configRules_; - bitField0_ = (bitField0_ & ~0x00000001); - configRulesBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getConfigRulesFieldBuilder() : null; - } else { - configRulesBuilder_.addAllMessages(other.configRules_); - } - } + public Builder mergeFrom(context.ContextOuterClass.ConnectionSettings_L2 other) { + if (other == context.ContextOuterClass.ConnectionSettings_L2.getDefaultInstance()) return this; + if (!other.getSrcMacAddress().isEmpty()) { + srcMacAddress_ = other.srcMacAddress_; + onChanged(); + } + if (!other.getDstMacAddress().isEmpty()) { + dstMacAddress_ = other.dstMacAddress_; + onChanged(); + } + if (other.getEtherType() != 0) { + setEtherType(other.getEtherType()); + } + if (other.getVlanId() != 0) { + setVlanId(other.getVlanId()); + } + if (other.getMplsLabel() != 0) { + setMplsLabel(other.getMplsLabel()); + } + if (other.getMplsTrafficClass() != 0) { + setMplsTrafficClass(other.getMplsTrafficClass()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -34560,11 +46088,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.SliceConfig parsedMessage = null; + context.ContextOuterClass.ConnectionSettings_L2 parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.SliceConfig) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ConnectionSettings_L2) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -34573,246 +46101,281 @@ public final class ContextOuterClass { } return this; } - private int bitField0_; - private java.util.List<context.ContextOuterClass.ConfigRule> configRules_ = - java.util.Collections.emptyList(); - private void ensureConfigRulesIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - configRules_ = new java.util.ArrayList<context.ContextOuterClass.ConfigRule>(configRules_); - bitField0_ |= 0x00000001; - } + private java.lang.Object srcMacAddress_ = ""; + /** + * <code>string src_mac_address = 1;</code> + * @return The srcMacAddress. + */ + public java.lang.String getSrcMacAddress() { + java.lang.Object ref = srcMacAddress_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + srcMacAddress_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * <code>string src_mac_address = 1;</code> + * @return The bytes for srcMacAddress. + */ + public com.google.protobuf.ByteString + getSrcMacAddressBytes() { + java.lang.Object ref = srcMacAddress_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + srcMacAddress_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * <code>string src_mac_address = 1;</code> + * @param value The srcMacAddress to set. + * @return This builder for chaining. + */ + public Builder setSrcMacAddress( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + srcMacAddress_ = value; + onChanged(); + return this; + } + /** + * <code>string src_mac_address = 1;</code> + * @return This builder for chaining. + */ + public Builder clearSrcMacAddress() { + + srcMacAddress_ = getDefaultInstance().getSrcMacAddress(); + onChanged(); + return this; } - - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder> configRulesBuilder_; - /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>string src_mac_address = 1;</code> + * @param value The bytes for srcMacAddress to set. + * @return This builder for chaining. */ - public java.util.List<context.ContextOuterClass.ConfigRule> getConfigRulesList() { - if (configRulesBuilder_ == null) { - return java.util.Collections.unmodifiableList(configRules_); - } else { - return configRulesBuilder_.getMessageList(); - } + public Builder setSrcMacAddressBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + srcMacAddress_ = value; + onChanged(); + return this; } + + private java.lang.Object dstMacAddress_ = ""; /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>string dst_mac_address = 2;</code> + * @return The dstMacAddress. */ - public int getConfigRulesCount() { - if (configRulesBuilder_ == null) { - return configRules_.size(); + public java.lang.String getDstMacAddress() { + java.lang.Object ref = dstMacAddress_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + dstMacAddress_ = s; + return s; } else { - return configRulesBuilder_.getCount(); + return (java.lang.String) ref; } } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>string dst_mac_address = 2;</code> + * @return The bytes for dstMacAddress. */ - public context.ContextOuterClass.ConfigRule getConfigRules(int index) { - if (configRulesBuilder_ == null) { - return configRules_.get(index); + public com.google.protobuf.ByteString + getDstMacAddressBytes() { + java.lang.Object ref = dstMacAddress_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + dstMacAddress_ = b; + return b; } else { - return configRulesBuilder_.getMessage(index); + return (com.google.protobuf.ByteString) ref; } } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>string dst_mac_address = 2;</code> + * @param value The dstMacAddress to set. + * @return This builder for chaining. */ - public Builder setConfigRules( - int index, context.ContextOuterClass.ConfigRule value) { - if (configRulesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureConfigRulesIsMutable(); - configRules_.set(index, value); - onChanged(); - } else { - configRulesBuilder_.setMessage(index, value); - } + public Builder setDstMacAddress( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + dstMacAddress_ = value; + onChanged(); return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>string dst_mac_address = 2;</code> + * @return This builder for chaining. */ - public Builder setConfigRules( - int index, context.ContextOuterClass.ConfigRule.Builder builderForValue) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); - configRules_.set(index, builderForValue.build()); - onChanged(); - } else { - configRulesBuilder_.setMessage(index, builderForValue.build()); - } + public Builder clearDstMacAddress() { + + dstMacAddress_ = getDefaultInstance().getDstMacAddress(); + onChanged(); return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>string dst_mac_address = 2;</code> + * @param value The bytes for dstMacAddress to set. + * @return This builder for chaining. */ - public Builder addConfigRules(context.ContextOuterClass.ConfigRule value) { - if (configRulesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureConfigRulesIsMutable(); - configRules_.add(value); - onChanged(); - } else { - configRulesBuilder_.addMessage(value); - } + public Builder setDstMacAddressBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + dstMacAddress_ = value; + onChanged(); return this; } + + private int etherType_ ; /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>uint32 ether_type = 3;</code> + * @return The etherType. */ - public Builder addConfigRules( - int index, context.ContextOuterClass.ConfigRule value) { - if (configRulesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureConfigRulesIsMutable(); - configRules_.add(index, value); - onChanged(); - } else { - configRulesBuilder_.addMessage(index, value); - } - return this; + @java.lang.Override + public int getEtherType() { + return etherType_; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>uint32 ether_type = 3;</code> + * @param value The etherType to set. + * @return This builder for chaining. */ - public Builder addConfigRules( - context.ContextOuterClass.ConfigRule.Builder builderForValue) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); - configRules_.add(builderForValue.build()); - onChanged(); - } else { - configRulesBuilder_.addMessage(builderForValue.build()); - } + public Builder setEtherType(int value) { + + etherType_ = value; + onChanged(); return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>uint32 ether_type = 3;</code> + * @return This builder for chaining. */ - public Builder addConfigRules( - int index, context.ContextOuterClass.ConfigRule.Builder builderForValue) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); - configRules_.add(index, builderForValue.build()); - onChanged(); - } else { - configRulesBuilder_.addMessage(index, builderForValue.build()); - } + public Builder clearEtherType() { + + etherType_ = 0; + onChanged(); return this; } + + private int vlanId_ ; /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>uint32 vlan_id = 4;</code> + * @return The vlanId. */ - public Builder addAllConfigRules( - java.lang.Iterable<? extends context.ContextOuterClass.ConfigRule> values) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, configRules_); - onChanged(); - } else { - configRulesBuilder_.addAllMessages(values); - } - return this; + @java.lang.Override + public int getVlanId() { + return vlanId_; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>uint32 vlan_id = 4;</code> + * @param value The vlanId to set. + * @return This builder for chaining. */ - public Builder clearConfigRules() { - if (configRulesBuilder_ == null) { - configRules_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - } else { - configRulesBuilder_.clear(); - } + public Builder setVlanId(int value) { + + vlanId_ = value; + onChanged(); return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>uint32 vlan_id = 4;</code> + * @return This builder for chaining. */ - public Builder removeConfigRules(int index) { - if (configRulesBuilder_ == null) { - ensureConfigRulesIsMutable(); - configRules_.remove(index); - onChanged(); - } else { - configRulesBuilder_.remove(index); - } + public Builder clearVlanId() { + + vlanId_ = 0; + onChanged(); return this; } + + private int mplsLabel_ ; /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>uint32 mpls_label = 5;</code> + * @return The mplsLabel. */ - public context.ContextOuterClass.ConfigRule.Builder getConfigRulesBuilder( - int index) { - return getConfigRulesFieldBuilder().getBuilder(index); + @java.lang.Override + public int getMplsLabel() { + return mplsLabel_; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>uint32 mpls_label = 5;</code> + * @param value The mplsLabel to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.ConfigRuleOrBuilder getConfigRulesOrBuilder( - int index) { - if (configRulesBuilder_ == null) { - return configRules_.get(index); } else { - return configRulesBuilder_.getMessageOrBuilder(index); - } + public Builder setMplsLabel(int value) { + + mplsLabel_ = value; + onChanged(); + return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>uint32 mpls_label = 5;</code> + * @return This builder for chaining. */ - public java.util.List<? extends context.ContextOuterClass.ConfigRuleOrBuilder> - getConfigRulesOrBuilderList() { - if (configRulesBuilder_ != null) { - return configRulesBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(configRules_); - } + public Builder clearMplsLabel() { + + mplsLabel_ = 0; + onChanged(); + return this; } + + private int mplsTrafficClass_ ; /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>uint32 mpls_traffic_class = 6;</code> + * @return The mplsTrafficClass. */ - public context.ContextOuterClass.ConfigRule.Builder addConfigRulesBuilder() { - return getConfigRulesFieldBuilder().addBuilder( - context.ContextOuterClass.ConfigRule.getDefaultInstance()); + @java.lang.Override + public int getMplsTrafficClass() { + return mplsTrafficClass_; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>uint32 mpls_traffic_class = 6;</code> + * @param value The mplsTrafficClass to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.ConfigRule.Builder addConfigRulesBuilder( - int index) { - return getConfigRulesFieldBuilder().addBuilder( - index, context.ContextOuterClass.ConfigRule.getDefaultInstance()); + public Builder setMplsTrafficClass(int value) { + + mplsTrafficClass_ = value; + onChanged(); + return this; } /** - * <code>repeated .context.ConfigRule config_rules = 1;</code> + * <code>uint32 mpls_traffic_class = 6;</code> + * @return This builder for chaining. */ - public java.util.List<context.ContextOuterClass.ConfigRule.Builder> - getConfigRulesBuilderList() { - return getConfigRulesFieldBuilder().getBuilderList(); - } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder> - getConfigRulesFieldBuilder() { - if (configRulesBuilder_ == null) { - configRulesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ConfigRule, context.ContextOuterClass.ConfigRule.Builder, context.ContextOuterClass.ConfigRuleOrBuilder>( - configRules_, - ((bitField0_ & 0x00000001) != 0), - getParentForChildren(), - isClean()); - configRules_ = null; - } - return configRulesBuilder_; + public Builder clearMplsTrafficClass() { + + mplsTrafficClass_ = 0; + onChanged(); + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -34827,95 +46390,114 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.SliceConfig) + // @@protoc_insertion_point(builder_scope:context.ConnectionSettings_L2) } - // @@protoc_insertion_point(class_scope:context.SliceConfig) - private static final context.ContextOuterClass.SliceConfig DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ConnectionSettings_L2) + private static final context.ContextOuterClass.ConnectionSettings_L2 DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.SliceConfig(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionSettings_L2(); } - public static context.ContextOuterClass.SliceConfig getDefaultInstance() { + public static context.ContextOuterClass.ConnectionSettings_L2 getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<SliceConfig> - PARSER = new com.google.protobuf.AbstractParser<SliceConfig>() { + private static final com.google.protobuf.Parser<ConnectionSettings_L2> + PARSER = new com.google.protobuf.AbstractParser<ConnectionSettings_L2>() { @java.lang.Override - public SliceConfig parsePartialFrom( + public ConnectionSettings_L2 parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new SliceConfig(input, extensionRegistry); + return new ConnectionSettings_L2(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<SliceConfig> parser() { + public static com.google.protobuf.Parser<ConnectionSettings_L2> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<SliceConfig> getParserForType() { + public com.google.protobuf.Parser<ConnectionSettings_L2> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.SliceConfig getDefaultInstanceForType() { + public context.ContextOuterClass.ConnectionSettings_L2 getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface SliceIdListOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.SliceIdList) + public interface ConnectionSettings_L3OrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ConnectionSettings_L3) com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>string src_ip_address = 1;</code> + * @return The srcIpAddress. */ - java.util.List<context.ContextOuterClass.SliceId> - getSliceIdsList(); + java.lang.String getSrcIpAddress(); /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>string src_ip_address = 1;</code> + * @return The bytes for srcIpAddress. */ - context.ContextOuterClass.SliceId getSliceIds(int index); + com.google.protobuf.ByteString + getSrcIpAddressBytes(); + /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>string dst_ip_address = 2;</code> + * @return The dstIpAddress. */ - int getSliceIdsCount(); + java.lang.String getDstIpAddress(); /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>string dst_ip_address = 2;</code> + * @return The bytes for dstIpAddress. */ - java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> - getSliceIdsOrBuilderList(); + com.google.protobuf.ByteString + getDstIpAddressBytes(); + /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>uint32 dscp = 3;</code> + * @return The dscp. */ - context.ContextOuterClass.SliceIdOrBuilder getSliceIdsOrBuilder( - int index); + int getDscp(); + + /** + * <code>uint32 protocol = 4;</code> + * @return The protocol. + */ + int getProtocol(); + + /** + * <code>uint32 ttl = 5;</code> + * @return The ttl. + */ + int getTtl(); } /** - * Protobuf type {@code context.SliceIdList} + * Protobuf type {@code context.ConnectionSettings_L3} */ - public static final class SliceIdList extends + public static final class ConnectionSettings_L3 extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.SliceIdList) - SliceIdListOrBuilder { + // @@protoc_insertion_point(message_implements:context.ConnectionSettings_L3) + ConnectionSettings_L3OrBuilder { private static final long serialVersionUID = 0L; - // Use SliceIdList.newBuilder() to construct. - private SliceIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ConnectionSettings_L3.newBuilder() to construct. + private ConnectionSettings_L3(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private SliceIdList() { - sliceIds_ = java.util.Collections.emptyList(); + private ConnectionSettings_L3() { + srcIpAddress_ = ""; + dstIpAddress_ = ""; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new SliceIdList(); + return new ConnectionSettings_L3(); } @java.lang.Override @@ -34923,7 +46505,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private SliceIdList( + private ConnectionSettings_L3( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -34931,7 +46513,6 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } - int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -34943,12 +46524,30 @@ public final class ContextOuterClass { done = true; break; case 10: { - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - sliceIds_ = new java.util.ArrayList<context.ContextOuterClass.SliceId>(); - mutable_bitField0_ |= 0x00000001; - } - sliceIds_.add( - input.readMessage(context.ContextOuterClass.SliceId.parser(), extensionRegistry)); + java.lang.String s = input.readStringRequireUtf8(); + + srcIpAddress_ = s; + break; + } + case 18: { + java.lang.String s = input.readStringRequireUtf8(); + + dstIpAddress_ = s; + break; + } + case 24: { + + dscp_ = input.readUInt32(); + break; + } + case 32: { + + protocol_ = input.readUInt32(); + break; + } + case 40: { + + ttl_ = input.readUInt32(); break; } default: { @@ -34966,64 +46565,130 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { - if (((mutable_bitField0_ & 0x00000001) != 0)) { - sliceIds_ = java.util.Collections.unmodifiableList(sliceIds_); - } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceIdList_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L3_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceIdList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L3_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceIdList.class, context.ContextOuterClass.SliceIdList.Builder.class); + context.ContextOuterClass.ConnectionSettings_L3.class, context.ContextOuterClass.ConnectionSettings_L3.Builder.class); } - public static final int SLICE_IDS_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.SliceId> sliceIds_; + public static final int SRC_IP_ADDRESS_FIELD_NUMBER = 1; + private volatile java.lang.Object srcIpAddress_; /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>string src_ip_address = 1;</code> + * @return The srcIpAddress. */ @java.lang.Override - public java.util.List<context.ContextOuterClass.SliceId> getSliceIdsList() { - return sliceIds_; + public java.lang.String getSrcIpAddress() { + java.lang.Object ref = srcIpAddress_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + srcIpAddress_ = s; + return s; + } + } + /** + * <code>string src_ip_address = 1;</code> + * @return The bytes for srcIpAddress. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getSrcIpAddressBytes() { + java.lang.Object ref = srcIpAddress_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + srcIpAddress_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int DST_IP_ADDRESS_FIELD_NUMBER = 2; + private volatile java.lang.Object dstIpAddress_; + /** + * <code>string dst_ip_address = 2;</code> + * @return The dstIpAddress. + */ + @java.lang.Override + public java.lang.String getDstIpAddress() { + java.lang.Object ref = dstIpAddress_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + dstIpAddress_ = s; + return s; + } } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>string dst_ip_address = 2;</code> + * @return The bytes for dstIpAddress. */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> - getSliceIdsOrBuilderList() { - return sliceIds_; + public com.google.protobuf.ByteString + getDstIpAddressBytes() { + java.lang.Object ref = dstIpAddress_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + dstIpAddress_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } + + public static final int DSCP_FIELD_NUMBER = 3; + private int dscp_; /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>uint32 dscp = 3;</code> + * @return The dscp. */ @java.lang.Override - public int getSliceIdsCount() { - return sliceIds_.size(); + public int getDscp() { + return dscp_; } + + public static final int PROTOCOL_FIELD_NUMBER = 4; + private int protocol_; /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>uint32 protocol = 4;</code> + * @return The protocol. */ @java.lang.Override - public context.ContextOuterClass.SliceId getSliceIds(int index) { - return sliceIds_.get(index); + public int getProtocol() { + return protocol_; } + + public static final int TTL_FIELD_NUMBER = 5; + private int ttl_; /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>uint32 ttl = 5;</code> + * @return The ttl. */ @java.lang.Override - public context.ContextOuterClass.SliceIdOrBuilder getSliceIdsOrBuilder( - int index) { - return sliceIds_.get(index); + public int getTtl() { + return ttl_; } private byte memoizedIsInitialized = -1; @@ -35040,8 +46705,20 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < sliceIds_.size(); i++) { - output.writeMessage(1, sliceIds_.get(i)); + if (!getSrcIpAddressBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, srcIpAddress_); + } + if (!getDstIpAddressBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, dstIpAddress_); + } + if (dscp_ != 0) { + output.writeUInt32(3, dscp_); + } + if (protocol_ != 0) { + output.writeUInt32(4, protocol_); + } + if (ttl_ != 0) { + output.writeUInt32(5, ttl_); } unknownFields.writeTo(output); } @@ -35052,9 +46729,23 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < sliceIds_.size(); i++) { + if (!getSrcIpAddressBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, srcIpAddress_); + } + if (!getDstIpAddressBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, dstIpAddress_); + } + if (dscp_ != 0) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, sliceIds_.get(i)); + .computeUInt32Size(3, dscp_); + } + if (protocol_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(4, protocol_); + } + if (ttl_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(5, ttl_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -35066,13 +46757,21 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.SliceIdList)) { + if (!(obj instanceof context.ContextOuterClass.ConnectionSettings_L3)) { return super.equals(obj); } - context.ContextOuterClass.SliceIdList other = (context.ContextOuterClass.SliceIdList) obj; + context.ContextOuterClass.ConnectionSettings_L3 other = (context.ContextOuterClass.ConnectionSettings_L3) obj; - if (!getSliceIdsList() - .equals(other.getSliceIdsList())) return false; + if (!getSrcIpAddress() + .equals(other.getSrcIpAddress())) return false; + if (!getDstIpAddress() + .equals(other.getDstIpAddress())) return false; + if (getDscp() + != other.getDscp()) return false; + if (getProtocol() + != other.getProtocol()) return false; + if (getTtl() + != other.getTtl()) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -35084,78 +46783,84 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getSliceIdsCount() > 0) { - hash = (37 * hash) + SLICE_IDS_FIELD_NUMBER; - hash = (53 * hash) + getSliceIdsList().hashCode(); - } + hash = (37 * hash) + SRC_IP_ADDRESS_FIELD_NUMBER; + hash = (53 * hash) + getSrcIpAddress().hashCode(); + hash = (37 * hash) + DST_IP_ADDRESS_FIELD_NUMBER; + hash = (53 * hash) + getDstIpAddress().hashCode(); + hash = (37 * hash) + DSCP_FIELD_NUMBER; + hash = (53 * hash) + getDscp(); + hash = (37 * hash) + PROTOCOL_FIELD_NUMBER; + hash = (53 * hash) + getProtocol(); + hash = (37 * hash) + TTL_FIELD_NUMBER; + hash = (53 * hash) + getTtl(); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.SliceIdList parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceIdList parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceIdList parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceIdList parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceIdList parseFrom(byte[] data) + public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceIdList parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceIdList parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceIdList parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L3 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 context.ContextOuterClass.SliceIdList parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionSettings_L3 parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceIdList parseDelimitedFrom( + public static context.ContextOuterClass.ConnectionSettings_L3 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 context.ContextOuterClass.SliceIdList parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceIdList parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -35168,7 +46873,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.SliceIdList prototype) { + public static Builder newBuilder(context.ContextOuterClass.ConnectionSettings_L3 prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -35184,26 +46889,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.SliceIdList} + * Protobuf type {@code context.ConnectionSettings_L3} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.SliceIdList) - context.ContextOuterClass.SliceIdListOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ConnectionSettings_L3) + context.ContextOuterClass.ConnectionSettings_L3OrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceIdList_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L3_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceIdList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L3_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceIdList.class, context.ContextOuterClass.SliceIdList.Builder.class); + context.ContextOuterClass.ConnectionSettings_L3.class, context.ContextOuterClass.ConnectionSettings_L3.Builder.class); } - // Construct using context.ContextOuterClass.SliceIdList.newBuilder() + // Construct using context.ContextOuterClass.ConnectionSettings_L3.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -35216,35 +46921,38 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getSliceIdsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (sliceIdsBuilder_ == null) { - sliceIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - } else { - sliceIdsBuilder_.clear(); - } + srcIpAddress_ = ""; + + dstIpAddress_ = ""; + + dscp_ = 0; + + protocol_ = 0; + + ttl_ = 0; + return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_SliceIdList_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L3_descriptor; } @java.lang.Override - public context.ContextOuterClass.SliceIdList getDefaultInstanceForType() { - return context.ContextOuterClass.SliceIdList.getDefaultInstance(); + public context.ContextOuterClass.ConnectionSettings_L3 getDefaultInstanceForType() { + return context.ContextOuterClass.ConnectionSettings_L3.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.SliceIdList build() { - context.ContextOuterClass.SliceIdList result = buildPartial(); + public context.ContextOuterClass.ConnectionSettings_L3 build() { + context.ContextOuterClass.ConnectionSettings_L3 result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -35252,18 +46960,13 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.SliceIdList buildPartial() { - context.ContextOuterClass.SliceIdList result = new context.ContextOuterClass.SliceIdList(this); - int from_bitField0_ = bitField0_; - if (sliceIdsBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { - sliceIds_ = java.util.Collections.unmodifiableList(sliceIds_); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.sliceIds_ = sliceIds_; - } else { - result.sliceIds_ = sliceIdsBuilder_.build(); - } + public context.ContextOuterClass.ConnectionSettings_L3 buildPartial() { + context.ContextOuterClass.ConnectionSettings_L3 result = new context.ContextOuterClass.ConnectionSettings_L3(this); + result.srcIpAddress_ = srcIpAddress_; + result.dstIpAddress_ = dstIpAddress_; + result.dscp_ = dscp_; + result.protocol_ = protocol_; + result.ttl_ = ttl_; onBuilt(); return result; } @@ -35302,41 +47005,32 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.SliceIdList) { - return mergeFrom((context.ContextOuterClass.SliceIdList)other); + if (other instanceof context.ContextOuterClass.ConnectionSettings_L3) { + return mergeFrom((context.ContextOuterClass.ConnectionSettings_L3)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.SliceIdList other) { - if (other == context.ContextOuterClass.SliceIdList.getDefaultInstance()) return this; - if (sliceIdsBuilder_ == null) { - if (!other.sliceIds_.isEmpty()) { - if (sliceIds_.isEmpty()) { - sliceIds_ = other.sliceIds_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureSliceIdsIsMutable(); - sliceIds_.addAll(other.sliceIds_); - } - onChanged(); - } - } else { - if (!other.sliceIds_.isEmpty()) { - if (sliceIdsBuilder_.isEmpty()) { - sliceIdsBuilder_.dispose(); - sliceIdsBuilder_ = null; - sliceIds_ = other.sliceIds_; - bitField0_ = (bitField0_ & ~0x00000001); - sliceIdsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getSliceIdsFieldBuilder() : null; - } else { - sliceIdsBuilder_.addAllMessages(other.sliceIds_); - } - } + public Builder mergeFrom(context.ContextOuterClass.ConnectionSettings_L3 other) { + if (other == context.ContextOuterClass.ConnectionSettings_L3.getDefaultInstance()) return this; + if (!other.getSrcIpAddress().isEmpty()) { + srcIpAddress_ = other.srcIpAddress_; + onChanged(); + } + if (!other.getDstIpAddress().isEmpty()) { + dstIpAddress_ = other.dstIpAddress_; + onChanged(); + } + if (other.getDscp() != 0) { + setDscp(other.getDscp()); + } + if (other.getProtocol() != 0) { + setProtocol(other.getProtocol()); + } + if (other.getTtl() != 0) { + setTtl(other.getTtl()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -35353,11 +47047,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.SliceIdList parsedMessage = null; + context.ContextOuterClass.ConnectionSettings_L3 parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.SliceIdList) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ConnectionSettings_L3) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -35366,246 +47060,250 @@ public final class ContextOuterClass { } return this; } - private int bitField0_; - - private java.util.List<context.ContextOuterClass.SliceId> sliceIds_ = - java.util.Collections.emptyList(); - private void ensureSliceIdsIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - sliceIds_ = new java.util.ArrayList<context.ContextOuterClass.SliceId>(sliceIds_); - bitField0_ |= 0x00000001; - } - } - - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> sliceIdsBuilder_; + private java.lang.Object srcIpAddress_ = ""; /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>string src_ip_address = 1;</code> + * @return The srcIpAddress. */ - public java.util.List<context.ContextOuterClass.SliceId> getSliceIdsList() { - if (sliceIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(sliceIds_); + public java.lang.String getSrcIpAddress() { + java.lang.Object ref = srcIpAddress_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + srcIpAddress_ = s; + return s; } else { - return sliceIdsBuilder_.getMessageList(); + return (java.lang.String) ref; } } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>string src_ip_address = 1;</code> + * @return The bytes for srcIpAddress. */ - public int getSliceIdsCount() { - if (sliceIdsBuilder_ == null) { - return sliceIds_.size(); + public com.google.protobuf.ByteString + getSrcIpAddressBytes() { + java.lang.Object ref = srcIpAddress_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + srcIpAddress_ = b; + return b; } else { - return sliceIdsBuilder_.getCount(); + return (com.google.protobuf.ByteString) ref; } } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>string src_ip_address = 1;</code> + * @param value The srcIpAddress to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.SliceId getSliceIds(int index) { - if (sliceIdsBuilder_ == null) { - return sliceIds_.get(index); - } else { - return sliceIdsBuilder_.getMessage(index); - } + public Builder setSrcIpAddress( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + srcIpAddress_ = value; + onChanged(); + return this; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>string src_ip_address = 1;</code> + * @return This builder for chaining. */ - public Builder setSliceIds( - int index, context.ContextOuterClass.SliceId value) { - if (sliceIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSliceIdsIsMutable(); - sliceIds_.set(index, value); - onChanged(); - } else { - sliceIdsBuilder_.setMessage(index, value); - } + public Builder clearSrcIpAddress() { + + srcIpAddress_ = getDefaultInstance().getSrcIpAddress(); + onChanged(); return this; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>string src_ip_address = 1;</code> + * @param value The bytes for srcIpAddress to set. + * @return This builder for chaining. */ - public Builder setSliceIds( - int index, context.ContextOuterClass.SliceId.Builder builderForValue) { - if (sliceIdsBuilder_ == null) { - ensureSliceIdsIsMutable(); - sliceIds_.set(index, builderForValue.build()); - onChanged(); - } else { - sliceIdsBuilder_.setMessage(index, builderForValue.build()); - } + public Builder setSrcIpAddressBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + srcIpAddress_ = value; + onChanged(); return this; } + + private java.lang.Object dstIpAddress_ = ""; /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>string dst_ip_address = 2;</code> + * @return The dstIpAddress. */ - public Builder addSliceIds(context.ContextOuterClass.SliceId value) { - if (sliceIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSliceIdsIsMutable(); - sliceIds_.add(value); - onChanged(); + public java.lang.String getDstIpAddress() { + java.lang.Object ref = dstIpAddress_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + dstIpAddress_ = s; + return s; } else { - sliceIdsBuilder_.addMessage(value); + return (java.lang.String) ref; } - return this; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>string dst_ip_address = 2;</code> + * @return The bytes for dstIpAddress. */ - public Builder addSliceIds( - int index, context.ContextOuterClass.SliceId value) { - if (sliceIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSliceIdsIsMutable(); - sliceIds_.add(index, value); - onChanged(); + public com.google.protobuf.ByteString + getDstIpAddressBytes() { + java.lang.Object ref = dstIpAddress_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + dstIpAddress_ = b; + return b; } else { - sliceIdsBuilder_.addMessage(index, value); + return (com.google.protobuf.ByteString) ref; } - return this; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>string dst_ip_address = 2;</code> + * @param value The dstIpAddress to set. + * @return This builder for chaining. */ - public Builder addSliceIds( - context.ContextOuterClass.SliceId.Builder builderForValue) { - if (sliceIdsBuilder_ == null) { - ensureSliceIdsIsMutable(); - sliceIds_.add(builderForValue.build()); - onChanged(); - } else { - sliceIdsBuilder_.addMessage(builderForValue.build()); - } + public Builder setDstIpAddress( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + dstIpAddress_ = value; + onChanged(); return this; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>string dst_ip_address = 2;</code> + * @return This builder for chaining. */ - public Builder addSliceIds( - int index, context.ContextOuterClass.SliceId.Builder builderForValue) { - if (sliceIdsBuilder_ == null) { - ensureSliceIdsIsMutable(); - sliceIds_.add(index, builderForValue.build()); - onChanged(); - } else { - sliceIdsBuilder_.addMessage(index, builderForValue.build()); - } + public Builder clearDstIpAddress() { + + dstIpAddress_ = getDefaultInstance().getDstIpAddress(); + onChanged(); return this; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>string dst_ip_address = 2;</code> + * @param value The bytes for dstIpAddress to set. + * @return This builder for chaining. */ - public Builder addAllSliceIds( - java.lang.Iterable<? extends context.ContextOuterClass.SliceId> values) { - if (sliceIdsBuilder_ == null) { - ensureSliceIdsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, sliceIds_); - onChanged(); - } else { - sliceIdsBuilder_.addAllMessages(values); - } + public Builder setDstIpAddressBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + dstIpAddress_ = value; + onChanged(); return this; } + + private int dscp_ ; /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>uint32 dscp = 3;</code> + * @return The dscp. */ - public Builder clearSliceIds() { - if (sliceIdsBuilder_ == null) { - sliceIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - } else { - sliceIdsBuilder_.clear(); - } + @java.lang.Override + public int getDscp() { + return dscp_; + } + /** + * <code>uint32 dscp = 3;</code> + * @param value The dscp to set. + * @return This builder for chaining. + */ + public Builder setDscp(int value) { + + dscp_ = value; + onChanged(); return this; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>uint32 dscp = 3;</code> + * @return This builder for chaining. */ - public Builder removeSliceIds(int index) { - if (sliceIdsBuilder_ == null) { - ensureSliceIdsIsMutable(); - sliceIds_.remove(index); - onChanged(); - } else { - sliceIdsBuilder_.remove(index); - } + public Builder clearDscp() { + + dscp_ = 0; + onChanged(); return this; } + + private int protocol_ ; /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>uint32 protocol = 4;</code> + * @return The protocol. */ - public context.ContextOuterClass.SliceId.Builder getSliceIdsBuilder( - int index) { - return getSliceIdsFieldBuilder().getBuilder(index); + @java.lang.Override + public int getProtocol() { + return protocol_; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>uint32 protocol = 4;</code> + * @param value The protocol to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.SliceIdOrBuilder getSliceIdsOrBuilder( - int index) { - if (sliceIdsBuilder_ == null) { - return sliceIds_.get(index); } else { - return sliceIdsBuilder_.getMessageOrBuilder(index); - } + public Builder setProtocol(int value) { + + protocol_ = value; + onChanged(); + return this; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>uint32 protocol = 4;</code> + * @return This builder for chaining. */ - public java.util.List<? extends context.ContextOuterClass.SliceIdOrBuilder> - getSliceIdsOrBuilderList() { - if (sliceIdsBuilder_ != null) { - return sliceIdsBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(sliceIds_); - } + public Builder clearProtocol() { + + protocol_ = 0; + onChanged(); + return this; } + + private int ttl_ ; /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>uint32 ttl = 5;</code> + * @return The ttl. */ - public context.ContextOuterClass.SliceId.Builder addSliceIdsBuilder() { - return getSliceIdsFieldBuilder().addBuilder( - context.ContextOuterClass.SliceId.getDefaultInstance()); + @java.lang.Override + public int getTtl() { + return ttl_; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>uint32 ttl = 5;</code> + * @param value The ttl to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.SliceId.Builder addSliceIdsBuilder( - int index) { - return getSliceIdsFieldBuilder().addBuilder( - index, context.ContextOuterClass.SliceId.getDefaultInstance()); + public Builder setTtl(int value) { + + ttl_ = value; + onChanged(); + return this; } /** - * <code>repeated .context.SliceId slice_ids = 1;</code> + * <code>uint32 ttl = 5;</code> + * @return This builder for chaining. */ - public java.util.List<context.ContextOuterClass.SliceId.Builder> - getSliceIdsBuilderList() { - return getSliceIdsFieldBuilder().getBuilderList(); - } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> - getSliceIdsFieldBuilder() { - if (sliceIdsBuilder_ == null) { - sliceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder>( - sliceIds_, - ((bitField0_ & 0x00000001) != 0), - getParentForChildren(), - isClean()); - sliceIds_ = null; - } - return sliceIdsBuilder_; + public Builder clearTtl() { + + ttl_ = 0; + onChanged(); + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -35620,95 +47318,94 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.SliceIdList) + // @@protoc_insertion_point(builder_scope:context.ConnectionSettings_L3) } - // @@protoc_insertion_point(class_scope:context.SliceIdList) - private static final context.ContextOuterClass.SliceIdList DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ConnectionSettings_L3) + private static final context.ContextOuterClass.ConnectionSettings_L3 DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.SliceIdList(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionSettings_L3(); } - public static context.ContextOuterClass.SliceIdList getDefaultInstance() { + public static context.ContextOuterClass.ConnectionSettings_L3 getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<SliceIdList> - PARSER = new com.google.protobuf.AbstractParser<SliceIdList>() { + private static final com.google.protobuf.Parser<ConnectionSettings_L3> + PARSER = new com.google.protobuf.AbstractParser<ConnectionSettings_L3>() { @java.lang.Override - public SliceIdList parsePartialFrom( + public ConnectionSettings_L3 parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new SliceIdList(input, extensionRegistry); + return new ConnectionSettings_L3(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<SliceIdList> parser() { + public static com.google.protobuf.Parser<ConnectionSettings_L3> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<SliceIdList> getParserForType() { + public com.google.protobuf.Parser<ConnectionSettings_L3> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.SliceIdList getDefaultInstanceForType() { + public context.ContextOuterClass.ConnectionSettings_L3 getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface SliceListOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.SliceList) + public interface ConnectionSettings_L4OrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ConnectionSettings_L4) com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .context.Slice slices = 1;</code> - */ - java.util.List<context.ContextOuterClass.Slice> - getSlicesList(); - /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>uint32 src_port = 1;</code> + * @return The srcPort. */ - context.ContextOuterClass.Slice getSlices(int index); + int getSrcPort(); + /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>uint32 dst_port = 2;</code> + * @return The dstPort. */ - int getSlicesCount(); + int getDstPort(); + /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>uint32 tcp_flags = 3;</code> + * @return The tcpFlags. */ - java.util.List<? extends context.ContextOuterClass.SliceOrBuilder> - getSlicesOrBuilderList(); + int getTcpFlags(); + /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>uint32 ttl = 4;</code> + * @return The ttl. */ - context.ContextOuterClass.SliceOrBuilder getSlicesOrBuilder( - int index); + int getTtl(); } /** - * Protobuf type {@code context.SliceList} + * Protobuf type {@code context.ConnectionSettings_L4} */ - public static final class SliceList extends + public static final class ConnectionSettings_L4 extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.SliceList) - SliceListOrBuilder { + // @@protoc_insertion_point(message_implements:context.ConnectionSettings_L4) + ConnectionSettings_L4OrBuilder { private static final long serialVersionUID = 0L; - // Use SliceList.newBuilder() to construct. - private SliceList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ConnectionSettings_L4.newBuilder() to construct. + private ConnectionSettings_L4(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private SliceList() { - slices_ = java.util.Collections.emptyList(); + private ConnectionSettings_L4() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new SliceList(); + return new ConnectionSettings_L4(); } @java.lang.Override @@ -35716,7 +47413,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private SliceList( + private ConnectionSettings_L4( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -35724,7 +47421,6 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } - int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -35735,13 +47431,24 @@ public final class ContextOuterClass { case 0: done = true; break; - case 10: { - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - slices_ = new java.util.ArrayList<context.ContextOuterClass.Slice>(); - mutable_bitField0_ |= 0x00000001; - } - slices_.add( - input.readMessage(context.ContextOuterClass.Slice.parser(), extensionRegistry)); + case 8: { + + srcPort_ = input.readUInt32(); + break; + } + case 16: { + + dstPort_ = input.readUInt32(); + break; + } + case 24: { + + tcpFlags_ = input.readUInt32(); + break; + } + case 32: { + + ttl_ = input.readUInt32(); break; } default: { @@ -35759,64 +47466,65 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { - if (((mutable_bitField0_ & 0x00000001) != 0)) { - slices_ = java.util.Collections.unmodifiableList(slices_); - } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceList_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L4_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L4_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceList.class, context.ContextOuterClass.SliceList.Builder.class); + context.ContextOuterClass.ConnectionSettings_L4.class, context.ContextOuterClass.ConnectionSettings_L4.Builder.class); } - public static final int SLICES_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.Slice> slices_; - /** - * <code>repeated .context.Slice slices = 1;</code> - */ - @java.lang.Override - public java.util.List<context.ContextOuterClass.Slice> getSlicesList() { - return slices_; - } + public static final int SRC_PORT_FIELD_NUMBER = 1; + private int srcPort_; /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>uint32 src_port = 1;</code> + * @return The srcPort. */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.SliceOrBuilder> - getSlicesOrBuilderList() { - return slices_; + public int getSrcPort() { + return srcPort_; } + + public static final int DST_PORT_FIELD_NUMBER = 2; + private int dstPort_; /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>uint32 dst_port = 2;</code> + * @return The dstPort. */ @java.lang.Override - public int getSlicesCount() { - return slices_.size(); + public int getDstPort() { + return dstPort_; } + + public static final int TCP_FLAGS_FIELD_NUMBER = 3; + private int tcpFlags_; /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>uint32 tcp_flags = 3;</code> + * @return The tcpFlags. */ @java.lang.Override - public context.ContextOuterClass.Slice getSlices(int index) { - return slices_.get(index); + public int getTcpFlags() { + return tcpFlags_; } + + public static final int TTL_FIELD_NUMBER = 4; + private int ttl_; /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>uint32 ttl = 4;</code> + * @return The ttl. */ @java.lang.Override - public context.ContextOuterClass.SliceOrBuilder getSlicesOrBuilder( - int index) { - return slices_.get(index); + public int getTtl() { + return ttl_; } private byte memoizedIsInitialized = -1; @@ -35833,8 +47541,17 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < slices_.size(); i++) { - output.writeMessage(1, slices_.get(i)); + if (srcPort_ != 0) { + output.writeUInt32(1, srcPort_); + } + if (dstPort_ != 0) { + output.writeUInt32(2, dstPort_); + } + if (tcpFlags_ != 0) { + output.writeUInt32(3, tcpFlags_); + } + if (ttl_ != 0) { + output.writeUInt32(4, ttl_); } unknownFields.writeTo(output); } @@ -35845,9 +47562,21 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < slices_.size(); i++) { + if (srcPort_ != 0) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, slices_.get(i)); + .computeUInt32Size(1, srcPort_); + } + if (dstPort_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(2, dstPort_); + } + if (tcpFlags_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(3, tcpFlags_); + } + if (ttl_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(4, ttl_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -35859,13 +47588,19 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.SliceList)) { + if (!(obj instanceof context.ContextOuterClass.ConnectionSettings_L4)) { return super.equals(obj); } - context.ContextOuterClass.SliceList other = (context.ContextOuterClass.SliceList) obj; + context.ContextOuterClass.ConnectionSettings_L4 other = (context.ContextOuterClass.ConnectionSettings_L4) obj; - if (!getSlicesList() - .equals(other.getSlicesList())) return false; + if (getSrcPort() + != other.getSrcPort()) return false; + if (getDstPort() + != other.getDstPort()) return false; + if (getTcpFlags() + != other.getTcpFlags()) return false; + if (getTtl() + != other.getTtl()) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -35877,78 +47612,82 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getSlicesCount() > 0) { - hash = (37 * hash) + SLICES_FIELD_NUMBER; - hash = (53 * hash) + getSlicesList().hashCode(); - } + hash = (37 * hash) + SRC_PORT_FIELD_NUMBER; + hash = (53 * hash) + getSrcPort(); + hash = (37 * hash) + DST_PORT_FIELD_NUMBER; + hash = (53 * hash) + getDstPort(); + hash = (37 * hash) + TCP_FLAGS_FIELD_NUMBER; + hash = (53 * hash) + getTcpFlags(); + hash = (37 * hash) + TTL_FIELD_NUMBER; + hash = (53 * hash) + getTtl(); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.SliceList parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceList parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceList parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceList parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceList parseFrom(byte[] data) + public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceList parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceList parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceList parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L4 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 context.ContextOuterClass.SliceList parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionSettings_L4 parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceList parseDelimitedFrom( + public static context.ContextOuterClass.ConnectionSettings_L4 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 context.ContextOuterClass.SliceList parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceList parseFrom( + public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -35961,7 +47700,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.SliceList prototype) { + public static Builder newBuilder(context.ContextOuterClass.ConnectionSettings_L4 prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -35977,26 +47716,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.SliceList} + * Protobuf type {@code context.ConnectionSettings_L4} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.SliceList) - context.ContextOuterClass.SliceListOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ConnectionSettings_L4) + context.ContextOuterClass.ConnectionSettings_L4OrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceList_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L4_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L4_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceList.class, context.ContextOuterClass.SliceList.Builder.class); + context.ContextOuterClass.ConnectionSettings_L4.class, context.ContextOuterClass.ConnectionSettings_L4.Builder.class); } - // Construct using context.ContextOuterClass.SliceList.newBuilder() + // Construct using context.ContextOuterClass.ConnectionSettings_L4.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -36009,35 +47748,36 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getSlicesFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (slicesBuilder_ == null) { - slices_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - } else { - slicesBuilder_.clear(); - } + srcPort_ = 0; + + dstPort_ = 0; + + tcpFlags_ = 0; + + ttl_ = 0; + return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_SliceList_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_L4_descriptor; } @java.lang.Override - public context.ContextOuterClass.SliceList getDefaultInstanceForType() { - return context.ContextOuterClass.SliceList.getDefaultInstance(); + public context.ContextOuterClass.ConnectionSettings_L4 getDefaultInstanceForType() { + return context.ContextOuterClass.ConnectionSettings_L4.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.SliceList build() { - context.ContextOuterClass.SliceList result = buildPartial(); + public context.ContextOuterClass.ConnectionSettings_L4 build() { + context.ContextOuterClass.ConnectionSettings_L4 result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -36045,18 +47785,12 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.SliceList buildPartial() { - context.ContextOuterClass.SliceList result = new context.ContextOuterClass.SliceList(this); - int from_bitField0_ = bitField0_; - if (slicesBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { - slices_ = java.util.Collections.unmodifiableList(slices_); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.slices_ = slices_; - } else { - result.slices_ = slicesBuilder_.build(); - } + public context.ContextOuterClass.ConnectionSettings_L4 buildPartial() { + context.ContextOuterClass.ConnectionSettings_L4 result = new context.ContextOuterClass.ConnectionSettings_L4(this); + result.srcPort_ = srcPort_; + result.dstPort_ = dstPort_; + result.tcpFlags_ = tcpFlags_; + result.ttl_ = ttl_; onBuilt(); return result; } @@ -36093,312 +47827,181 @@ public final class ContextOuterClass { java.lang.Object value) { return super.addRepeatedField(field, value); } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.SliceList) { - return mergeFrom((context.ContextOuterClass.SliceList)other); - } else { - super.mergeFrom(other); - return this; - } - } - - public Builder mergeFrom(context.ContextOuterClass.SliceList other) { - if (other == context.ContextOuterClass.SliceList.getDefaultInstance()) return this; - if (slicesBuilder_ == null) { - if (!other.slices_.isEmpty()) { - if (slices_.isEmpty()) { - slices_ = other.slices_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureSlicesIsMutable(); - slices_.addAll(other.slices_); - } - onChanged(); - } - } else { - if (!other.slices_.isEmpty()) { - if (slicesBuilder_.isEmpty()) { - slicesBuilder_.dispose(); - slicesBuilder_ = null; - slices_ = other.slices_; - bitField0_ = (bitField0_ & ~0x00000001); - slicesBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getSlicesFieldBuilder() : null; - } else { - slicesBuilder_.addAllMessages(other.slices_); - } - } - } - this.mergeUnknownFields(other.unknownFields); - onChanged(); - return this; - } - - @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 { - context.ContextOuterClass.SliceList parsedMessage = null; - try { - parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.SliceList) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); - } - } - return this; - } - private int bitField0_; - - private java.util.List<context.ContextOuterClass.Slice> slices_ = - java.util.Collections.emptyList(); - private void ensureSlicesIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - slices_ = new java.util.ArrayList<context.ContextOuterClass.Slice>(slices_); - bitField0_ |= 0x00000001; - } - } - - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Slice, context.ContextOuterClass.Slice.Builder, context.ContextOuterClass.SliceOrBuilder> slicesBuilder_; - - /** - * <code>repeated .context.Slice slices = 1;</code> - */ - public java.util.List<context.ContextOuterClass.Slice> getSlicesList() { - if (slicesBuilder_ == null) { - return java.util.Collections.unmodifiableList(slices_); - } else { - return slicesBuilder_.getMessageList(); - } - } - /** - * <code>repeated .context.Slice slices = 1;</code> - */ - public int getSlicesCount() { - if (slicesBuilder_ == null) { - return slices_.size(); - } else { - return slicesBuilder_.getCount(); - } - } - /** - * <code>repeated .context.Slice slices = 1;</code> - */ - public context.ContextOuterClass.Slice getSlices(int index) { - if (slicesBuilder_ == null) { - return slices_.get(index); - } else { - return slicesBuilder_.getMessage(index); - } - } - /** - * <code>repeated .context.Slice slices = 1;</code> - */ - public Builder setSlices( - int index, context.ContextOuterClass.Slice value) { - if (slicesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSlicesIsMutable(); - slices_.set(index, value); - onChanged(); + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof context.ContextOuterClass.ConnectionSettings_L4) { + return mergeFrom((context.ContextOuterClass.ConnectionSettings_L4)other); } else { - slicesBuilder_.setMessage(index, value); + super.mergeFrom(other); + return this; } - return this; } - /** - * <code>repeated .context.Slice slices = 1;</code> - */ - public Builder setSlices( - int index, context.ContextOuterClass.Slice.Builder builderForValue) { - if (slicesBuilder_ == null) { - ensureSlicesIsMutable(); - slices_.set(index, builderForValue.build()); - onChanged(); - } else { - slicesBuilder_.setMessage(index, builderForValue.build()); + + public Builder mergeFrom(context.ContextOuterClass.ConnectionSettings_L4 other) { + if (other == context.ContextOuterClass.ConnectionSettings_L4.getDefaultInstance()) return this; + if (other.getSrcPort() != 0) { + setSrcPort(other.getSrcPort()); + } + if (other.getDstPort() != 0) { + setDstPort(other.getDstPort()); + } + if (other.getTcpFlags() != 0) { + setTcpFlags(other.getTcpFlags()); + } + if (other.getTtl() != 0) { + setTtl(other.getTtl()); } + this.mergeUnknownFields(other.unknownFields); + onChanged(); return this; } - /** - * <code>repeated .context.Slice slices = 1;</code> - */ - public Builder addSlices(context.ContextOuterClass.Slice value) { - if (slicesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + + @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 { + context.ContextOuterClass.ConnectionSettings_L4 parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.ConnectionSettings_L4) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); } - ensureSlicesIsMutable(); - slices_.add(value); - onChanged(); - } else { - slicesBuilder_.addMessage(value); } return this; } + + private int srcPort_ ; /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>uint32 src_port = 1;</code> + * @return The srcPort. */ - public Builder addSlices( - int index, context.ContextOuterClass.Slice value) { - if (slicesBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSlicesIsMutable(); - slices_.add(index, value); - onChanged(); - } else { - slicesBuilder_.addMessage(index, value); - } - return this; + @java.lang.Override + public int getSrcPort() { + return srcPort_; } /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>uint32 src_port = 1;</code> + * @param value The srcPort to set. + * @return This builder for chaining. */ - public Builder addSlices( - context.ContextOuterClass.Slice.Builder builderForValue) { - if (slicesBuilder_ == null) { - ensureSlicesIsMutable(); - slices_.add(builderForValue.build()); - onChanged(); - } else { - slicesBuilder_.addMessage(builderForValue.build()); - } + public Builder setSrcPort(int value) { + + srcPort_ = value; + onChanged(); return this; } /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>uint32 src_port = 1;</code> + * @return This builder for chaining. */ - public Builder addSlices( - int index, context.ContextOuterClass.Slice.Builder builderForValue) { - if (slicesBuilder_ == null) { - ensureSlicesIsMutable(); - slices_.add(index, builderForValue.build()); - onChanged(); - } else { - slicesBuilder_.addMessage(index, builderForValue.build()); - } + public Builder clearSrcPort() { + + srcPort_ = 0; + onChanged(); return this; } + + private int dstPort_ ; /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>uint32 dst_port = 2;</code> + * @return The dstPort. */ - public Builder addAllSlices( - java.lang.Iterable<? extends context.ContextOuterClass.Slice> values) { - if (slicesBuilder_ == null) { - ensureSlicesIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, slices_); - onChanged(); - } else { - slicesBuilder_.addAllMessages(values); - } - return this; + @java.lang.Override + public int getDstPort() { + return dstPort_; } /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>uint32 dst_port = 2;</code> + * @param value The dstPort to set. + * @return This builder for chaining. */ - public Builder clearSlices() { - if (slicesBuilder_ == null) { - slices_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - } else { - slicesBuilder_.clear(); - } + public Builder setDstPort(int value) { + + dstPort_ = value; + onChanged(); return this; } /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>uint32 dst_port = 2;</code> + * @return This builder for chaining. */ - public Builder removeSlices(int index) { - if (slicesBuilder_ == null) { - ensureSlicesIsMutable(); - slices_.remove(index); - onChanged(); - } else { - slicesBuilder_.remove(index); - } + public Builder clearDstPort() { + + dstPort_ = 0; + onChanged(); return this; } + + private int tcpFlags_ ; /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>uint32 tcp_flags = 3;</code> + * @return The tcpFlags. */ - public context.ContextOuterClass.Slice.Builder getSlicesBuilder( - int index) { - return getSlicesFieldBuilder().getBuilder(index); + @java.lang.Override + public int getTcpFlags() { + return tcpFlags_; } /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>uint32 tcp_flags = 3;</code> + * @param value The tcpFlags to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.SliceOrBuilder getSlicesOrBuilder( - int index) { - if (slicesBuilder_ == null) { - return slices_.get(index); } else { - return slicesBuilder_.getMessageOrBuilder(index); - } + public Builder setTcpFlags(int value) { + + tcpFlags_ = value; + onChanged(); + return this; } /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>uint32 tcp_flags = 3;</code> + * @return This builder for chaining. */ - public java.util.List<? extends context.ContextOuterClass.SliceOrBuilder> - getSlicesOrBuilderList() { - if (slicesBuilder_ != null) { - return slicesBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(slices_); - } + public Builder clearTcpFlags() { + + tcpFlags_ = 0; + onChanged(); + return this; } + + private int ttl_ ; /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>uint32 ttl = 4;</code> + * @return The ttl. */ - public context.ContextOuterClass.Slice.Builder addSlicesBuilder() { - return getSlicesFieldBuilder().addBuilder( - context.ContextOuterClass.Slice.getDefaultInstance()); + @java.lang.Override + public int getTtl() { + return ttl_; } /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>uint32 ttl = 4;</code> + * @param value The ttl to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.Slice.Builder addSlicesBuilder( - int index) { - return getSlicesFieldBuilder().addBuilder( - index, context.ContextOuterClass.Slice.getDefaultInstance()); + public Builder setTtl(int value) { + + ttl_ = value; + onChanged(); + return this; } /** - * <code>repeated .context.Slice slices = 1;</code> + * <code>uint32 ttl = 4;</code> + * @return This builder for chaining. */ - public java.util.List<context.ContextOuterClass.Slice.Builder> - getSlicesBuilderList() { - return getSlicesFieldBuilder().getBuilderList(); - } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Slice, context.ContextOuterClass.Slice.Builder, context.ContextOuterClass.SliceOrBuilder> - getSlicesFieldBuilder() { - if (slicesBuilder_ == null) { - slicesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Slice, context.ContextOuterClass.Slice.Builder, context.ContextOuterClass.SliceOrBuilder>( - slices_, - ((bitField0_ & 0x00000001) != 0), - getParentForChildren(), - isClean()); - slices_ = null; - } - return slicesBuilder_; + public Builder clearTtl() { + + ttl_ = 0; + onChanged(); + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -36413,100 +48016,130 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.SliceList) + // @@protoc_insertion_point(builder_scope:context.ConnectionSettings_L4) } - // @@protoc_insertion_point(class_scope:context.SliceList) - private static final context.ContextOuterClass.SliceList DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ConnectionSettings_L4) + private static final context.ContextOuterClass.ConnectionSettings_L4 DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.SliceList(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionSettings_L4(); } - public static context.ContextOuterClass.SliceList getDefaultInstance() { + public static context.ContextOuterClass.ConnectionSettings_L4 getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<SliceList> - PARSER = new com.google.protobuf.AbstractParser<SliceList>() { + private static final com.google.protobuf.Parser<ConnectionSettings_L4> + PARSER = new com.google.protobuf.AbstractParser<ConnectionSettings_L4>() { @java.lang.Override - public SliceList parsePartialFrom( + public ConnectionSettings_L4 parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new SliceList(input, extensionRegistry); + return new ConnectionSettings_L4(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<SliceList> parser() { + public static com.google.protobuf.Parser<ConnectionSettings_L4> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<SliceList> getParserForType() { + public com.google.protobuf.Parser<ConnectionSettings_L4> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.SliceList getDefaultInstanceForType() { + public context.ContextOuterClass.ConnectionSettings_L4 getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface SliceEventOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.SliceEvent) + public interface ConnectionSettingsOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ConnectionSettings) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + * @return Whether the l0 field is set. */ - boolean hasEvent(); + boolean hasL0(); /** - * <code>.context.Event event = 1;</code> - * @return The event. + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + * @return The l0. */ - context.ContextOuterClass.Event getEvent(); + context.ContextOuterClass.ConnectionSettings_L0 getL0(); /** - * <code>.context.Event event = 1;</code> + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> */ - context.ContextOuterClass.EventOrBuilder getEventOrBuilder(); + context.ContextOuterClass.ConnectionSettings_L0OrBuilder getL0OrBuilder(); /** - * <code>.context.SliceId slice_id = 2;</code> - * @return Whether the sliceId field is set. + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * @return Whether the l2 field is set. */ - boolean hasSliceId(); + boolean hasL2(); /** - * <code>.context.SliceId slice_id = 2;</code> - * @return The sliceId. + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * @return The l2. */ - context.ContextOuterClass.SliceId getSliceId(); + context.ContextOuterClass.ConnectionSettings_L2 getL2(); /** - * <code>.context.SliceId slice_id = 2;</code> + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> */ - context.ContextOuterClass.SliceIdOrBuilder getSliceIdOrBuilder(); + context.ContextOuterClass.ConnectionSettings_L2OrBuilder getL2OrBuilder(); + + /** + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * @return Whether the l3 field is set. + */ + boolean hasL3(); + /** + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * @return The l3. + */ + context.ContextOuterClass.ConnectionSettings_L3 getL3(); + /** + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + */ + context.ContextOuterClass.ConnectionSettings_L3OrBuilder getL3OrBuilder(); + + /** + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * @return Whether the l4 field is set. + */ + boolean hasL4(); + /** + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * @return The l4. + */ + context.ContextOuterClass.ConnectionSettings_L4 getL4(); + /** + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + */ + context.ContextOuterClass.ConnectionSettings_L4OrBuilder getL4OrBuilder(); } /** - * Protobuf type {@code context.SliceEvent} + * Protobuf type {@code context.ConnectionSettings} */ - public static final class SliceEvent extends + public static final class ConnectionSettings extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.SliceEvent) - SliceEventOrBuilder { + // @@protoc_insertion_point(message_implements:context.ConnectionSettings) + ConnectionSettingsOrBuilder { private static final long serialVersionUID = 0L; - // Use SliceEvent.newBuilder() to construct. - private SliceEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ConnectionSettings.newBuilder() to construct. + private ConnectionSettings(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private SliceEvent() { + private ConnectionSettings() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new SliceEvent(); + return new ConnectionSettings(); } @java.lang.Override @@ -36514,7 +48147,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private SliceEvent( + private ConnectionSettings( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -36533,27 +48166,53 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.Event.Builder subBuilder = null; - if (event_ != null) { - subBuilder = event_.toBuilder(); + context.ContextOuterClass.ConnectionSettings_L0.Builder subBuilder = null; + if (l0_ != null) { + subBuilder = l0_.toBuilder(); } - event_ = input.readMessage(context.ContextOuterClass.Event.parser(), extensionRegistry); + l0_ = input.readMessage(context.ContextOuterClass.ConnectionSettings_L0.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(event_); - event_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(l0_); + l0_ = subBuilder.buildPartial(); } break; } case 18: { - context.ContextOuterClass.SliceId.Builder subBuilder = null; - if (sliceId_ != null) { - subBuilder = sliceId_.toBuilder(); + context.ContextOuterClass.ConnectionSettings_L2.Builder subBuilder = null; + if (l2_ != null) { + subBuilder = l2_.toBuilder(); } - sliceId_ = input.readMessage(context.ContextOuterClass.SliceId.parser(), extensionRegistry); + l2_ = input.readMessage(context.ContextOuterClass.ConnectionSettings_L2.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(sliceId_); - sliceId_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(l2_); + l2_ = subBuilder.buildPartial(); + } + + break; + } + case 26: { + context.ContextOuterClass.ConnectionSettings_L3.Builder subBuilder = null; + if (l3_ != null) { + subBuilder = l3_.toBuilder(); + } + l3_ = input.readMessage(context.ContextOuterClass.ConnectionSettings_L3.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(l3_); + l3_ = subBuilder.buildPartial(); + } + + break; + } + case 34: { + context.ContextOuterClass.ConnectionSettings_L4.Builder subBuilder = null; + if (l4_ != null) { + subBuilder = l4_.toBuilder(); + } + l4_ = input.readMessage(context.ContextOuterClass.ConnectionSettings_L4.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(l4_); + l4_ = subBuilder.buildPartial(); } break; @@ -36579,67 +48238,119 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceEvent_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceEvent_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionSettings_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceEvent.class, context.ContextOuterClass.SliceEvent.Builder.class); + context.ContextOuterClass.ConnectionSettings.class, context.ContextOuterClass.ConnectionSettings.Builder.class); } - public static final int EVENT_FIELD_NUMBER = 1; - private context.ContextOuterClass.Event event_; + public static final int L0_FIELD_NUMBER = 1; + private context.ContextOuterClass.ConnectionSettings_L0 l0_; /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + * @return Whether the l0 field is set. */ @java.lang.Override - public boolean hasEvent() { - return event_ != null; + public boolean hasL0() { + return l0_ != null; } /** - * <code>.context.Event event = 1;</code> - * @return The event. + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + * @return The l0. */ @java.lang.Override - public context.ContextOuterClass.Event getEvent() { - return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; + public context.ContextOuterClass.ConnectionSettings_L0 getL0() { + return l0_ == null ? context.ContextOuterClass.ConnectionSettings_L0.getDefaultInstance() : l0_; } /** - * <code>.context.Event event = 1;</code> + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { - return getEvent(); + public context.ContextOuterClass.ConnectionSettings_L0OrBuilder getL0OrBuilder() { + return getL0(); } - public static final int SLICE_ID_FIELD_NUMBER = 2; - private context.ContextOuterClass.SliceId sliceId_; + public static final int L2_FIELD_NUMBER = 2; + private context.ContextOuterClass.ConnectionSettings_L2 l2_; /** - * <code>.context.SliceId slice_id = 2;</code> - * @return Whether the sliceId field is set. + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * @return Whether the l2 field is set. */ @java.lang.Override - public boolean hasSliceId() { - return sliceId_ != null; + public boolean hasL2() { + return l2_ != null; + } + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * @return The l2. + */ + @java.lang.Override + public context.ContextOuterClass.ConnectionSettings_L2 getL2() { + return l2_ == null ? context.ContextOuterClass.ConnectionSettings_L2.getDefaultInstance() : l2_; + } + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ConnectionSettings_L2OrBuilder getL2OrBuilder() { + return getL2(); + } + + public static final int L3_FIELD_NUMBER = 3; + private context.ContextOuterClass.ConnectionSettings_L3 l3_; + /** + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * @return Whether the l3 field is set. + */ + @java.lang.Override + public boolean hasL3() { + return l3_ != null; + } + /** + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * @return The l3. + */ + @java.lang.Override + public context.ContextOuterClass.ConnectionSettings_L3 getL3() { + return l3_ == null ? context.ContextOuterClass.ConnectionSettings_L3.getDefaultInstance() : l3_; + } + /** + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ConnectionSettings_L3OrBuilder getL3OrBuilder() { + return getL3(); + } + + public static final int L4_FIELD_NUMBER = 4; + private context.ContextOuterClass.ConnectionSettings_L4 l4_; + /** + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * @return Whether the l4 field is set. + */ + @java.lang.Override + public boolean hasL4() { + return l4_ != null; } /** - * <code>.context.SliceId slice_id = 2;</code> - * @return The sliceId. + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * @return The l4. */ @java.lang.Override - public context.ContextOuterClass.SliceId getSliceId() { - return sliceId_ == null ? context.ContextOuterClass.SliceId.getDefaultInstance() : sliceId_; + public context.ContextOuterClass.ConnectionSettings_L4 getL4() { + return l4_ == null ? context.ContextOuterClass.ConnectionSettings_L4.getDefaultInstance() : l4_; } /** - * <code>.context.SliceId slice_id = 2;</code> + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> */ @java.lang.Override - public context.ContextOuterClass.SliceIdOrBuilder getSliceIdOrBuilder() { - return getSliceId(); + public context.ContextOuterClass.ConnectionSettings_L4OrBuilder getL4OrBuilder() { + return getL4(); } private byte memoizedIsInitialized = -1; @@ -36656,11 +48367,17 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (event_ != null) { - output.writeMessage(1, getEvent()); + if (l0_ != null) { + output.writeMessage(1, getL0()); } - if (sliceId_ != null) { - output.writeMessage(2, getSliceId()); + if (l2_ != null) { + output.writeMessage(2, getL2()); + } + if (l3_ != null) { + output.writeMessage(3, getL3()); + } + if (l4_ != null) { + output.writeMessage(4, getL4()); } unknownFields.writeTo(output); } @@ -36671,13 +48388,21 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (event_ != null) { + if (l0_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getEvent()); + .computeMessageSize(1, getL0()); } - if (sliceId_ != null) { + if (l2_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, getSliceId()); + .computeMessageSize(2, getL2()); + } + if (l3_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(3, getL3()); + } + if (l4_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(4, getL4()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -36689,20 +48414,30 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.SliceEvent)) { + if (!(obj instanceof context.ContextOuterClass.ConnectionSettings)) { return super.equals(obj); } - context.ContextOuterClass.SliceEvent other = (context.ContextOuterClass.SliceEvent) obj; + context.ContextOuterClass.ConnectionSettings other = (context.ContextOuterClass.ConnectionSettings) obj; - if (hasEvent() != other.hasEvent()) return false; - if (hasEvent()) { - if (!getEvent() - .equals(other.getEvent())) return false; + if (hasL0() != other.hasL0()) return false; + if (hasL0()) { + if (!getL0() + .equals(other.getL0())) return false; } - if (hasSliceId() != other.hasSliceId()) return false; - if (hasSliceId()) { - if (!getSliceId() - .equals(other.getSliceId())) return false; + if (hasL2() != other.hasL2()) return false; + if (hasL2()) { + if (!getL2() + .equals(other.getL2())) return false; + } + if (hasL3() != other.hasL3()) return false; + if (hasL3()) { + if (!getL3() + .equals(other.getL3())) return false; + } + if (hasL4() != other.hasL4()) return false; + if (hasL4()) { + if (!getL4() + .equals(other.getL4())) return false; } if (!unknownFields.equals(other.unknownFields)) return false; return true; @@ -36715,82 +48450,90 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasEvent()) { - hash = (37 * hash) + EVENT_FIELD_NUMBER; - hash = (53 * hash) + getEvent().hashCode(); + if (hasL0()) { + hash = (37 * hash) + L0_FIELD_NUMBER; + hash = (53 * hash) + getL0().hashCode(); } - if (hasSliceId()) { - hash = (37 * hash) + SLICE_ID_FIELD_NUMBER; - hash = (53 * hash) + getSliceId().hashCode(); + if (hasL2()) { + hash = (37 * hash) + L2_FIELD_NUMBER; + hash = (53 * hash) + getL2().hashCode(); + } + if (hasL3()) { + hash = (37 * hash) + L3_FIELD_NUMBER; + hash = (53 * hash) + getL3().hashCode(); + } + if (hasL4()) { + hash = (37 * hash) + L4_FIELD_NUMBER; + hash = (53 * hash) + getL4().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.SliceEvent parseFrom( + public static context.ContextOuterClass.ConnectionSettings parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceEvent parseFrom( + public static context.ContextOuterClass.ConnectionSettings parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceEvent parseFrom( + public static context.ContextOuterClass.ConnectionSettings parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceEvent parseFrom( + public static context.ContextOuterClass.ConnectionSettings parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceEvent parseFrom(byte[] data) + public static context.ContextOuterClass.ConnectionSettings parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.SliceEvent parseFrom( + public static context.ContextOuterClass.ConnectionSettings parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.SliceEvent parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionSettings parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceEvent parseFrom( + public static context.ContextOuterClass.ConnectionSettings 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 context.ContextOuterClass.SliceEvent parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionSettings parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceEvent parseDelimitedFrom( + public static context.ContextOuterClass.ConnectionSettings 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 context.ContextOuterClass.SliceEvent parseFrom( + public static context.ContextOuterClass.ConnectionSettings parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.SliceEvent parseFrom( + public static context.ContextOuterClass.ConnectionSettings parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -36803,7 +48546,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.SliceEvent prototype) { + public static Builder newBuilder(context.ContextOuterClass.ConnectionSettings prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -36819,26 +48562,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.SliceEvent} + * Protobuf type {@code context.ConnectionSettings} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.SliceEvent) - context.ContextOuterClass.SliceEventOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ConnectionSettings) + context.ContextOuterClass.ConnectionSettingsOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_SliceEvent_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_SliceEvent_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionSettings_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.SliceEvent.class, context.ContextOuterClass.SliceEvent.Builder.class); + context.ContextOuterClass.ConnectionSettings.class, context.ContextOuterClass.ConnectionSettings.Builder.class); } - // Construct using context.ContextOuterClass.SliceEvent.newBuilder() + // Construct using context.ContextOuterClass.ConnectionSettings.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -36856,17 +48599,29 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - if (eventBuilder_ == null) { - event_ = null; + if (l0Builder_ == null) { + l0_ = null; } else { - event_ = null; - eventBuilder_ = null; + l0_ = null; + l0Builder_ = null; } - if (sliceIdBuilder_ == null) { - sliceId_ = null; + if (l2Builder_ == null) { + l2_ = null; } else { - sliceId_ = null; - sliceIdBuilder_ = null; + l2_ = null; + l2Builder_ = null; + } + if (l3Builder_ == null) { + l3_ = null; + } else { + l3_ = null; + l3Builder_ = null; + } + if (l4Builder_ == null) { + l4_ = null; + } else { + l4_ = null; + l4Builder_ = null; } return this; } @@ -36874,17 +48629,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_SliceEvent_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionSettings_descriptor; } @java.lang.Override - public context.ContextOuterClass.SliceEvent getDefaultInstanceForType() { - return context.ContextOuterClass.SliceEvent.getDefaultInstance(); + public context.ContextOuterClass.ConnectionSettings getDefaultInstanceForType() { + return context.ContextOuterClass.ConnectionSettings.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.SliceEvent build() { - context.ContextOuterClass.SliceEvent result = buildPartial(); + public context.ContextOuterClass.ConnectionSettings build() { + context.ContextOuterClass.ConnectionSettings result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -36892,17 +48647,27 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.SliceEvent buildPartial() { - context.ContextOuterClass.SliceEvent result = new context.ContextOuterClass.SliceEvent(this); - if (eventBuilder_ == null) { - result.event_ = event_; + public context.ContextOuterClass.ConnectionSettings buildPartial() { + context.ContextOuterClass.ConnectionSettings result = new context.ContextOuterClass.ConnectionSettings(this); + if (l0Builder_ == null) { + result.l0_ = l0_; } else { - result.event_ = eventBuilder_.build(); + result.l0_ = l0Builder_.build(); } - if (sliceIdBuilder_ == null) { - result.sliceId_ = sliceId_; + if (l2Builder_ == null) { + result.l2_ = l2_; } else { - result.sliceId_ = sliceIdBuilder_.build(); + result.l2_ = l2Builder_.build(); + } + if (l3Builder_ == null) { + result.l3_ = l3_; + } else { + result.l3_ = l3Builder_.build(); + } + if (l4Builder_ == null) { + result.l4_ = l4_; + } else { + result.l4_ = l4Builder_.build(); } onBuilt(); return result; @@ -36942,21 +48707,27 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.SliceEvent) { - return mergeFrom((context.ContextOuterClass.SliceEvent)other); + if (other instanceof context.ContextOuterClass.ConnectionSettings) { + return mergeFrom((context.ContextOuterClass.ConnectionSettings)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.SliceEvent other) { - if (other == context.ContextOuterClass.SliceEvent.getDefaultInstance()) return this; - if (other.hasEvent()) { - mergeEvent(other.getEvent()); + public Builder mergeFrom(context.ContextOuterClass.ConnectionSettings other) { + if (other == context.ContextOuterClass.ConnectionSettings.getDefaultInstance()) return this; + if (other.hasL0()) { + mergeL0(other.getL0()); } - if (other.hasSliceId()) { - mergeSliceId(other.getSliceId()); + if (other.hasL2()) { + mergeL2(other.getL2()); + } + if (other.hasL3()) { + mergeL3(other.getL3()); + } + if (other.hasL4()) { + mergeL4(other.getL4()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -36973,11 +48744,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.SliceEvent parsedMessage = null; + context.ContextOuterClass.ConnectionSettings parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.SliceEvent) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ConnectionSettings) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -36987,242 +48758,480 @@ public final class ContextOuterClass { return this; } - private context.ContextOuterClass.Event event_; + private context.ContextOuterClass.ConnectionSettings_L0 l0_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> eventBuilder_; + context.ContextOuterClass.ConnectionSettings_L0, context.ContextOuterClass.ConnectionSettings_L0.Builder, context.ContextOuterClass.ConnectionSettings_L0OrBuilder> l0Builder_; /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + * @return Whether the l0 field is set. */ - public boolean hasEvent() { - return eventBuilder_ != null || event_ != null; + public boolean hasL0() { + return l0Builder_ != null || l0_ != null; } /** - * <code>.context.Event event = 1;</code> - * @return The event. + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + * @return The l0. */ - public context.ContextOuterClass.Event getEvent() { - if (eventBuilder_ == null) { - return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; + public context.ContextOuterClass.ConnectionSettings_L0 getL0() { + if (l0Builder_ == null) { + return l0_ == null ? context.ContextOuterClass.ConnectionSettings_L0.getDefaultInstance() : l0_; } else { - return eventBuilder_.getMessage(); + return l0Builder_.getMessage(); } } /** - * <code>.context.Event event = 1;</code> + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> */ - public Builder setEvent(context.ContextOuterClass.Event value) { - if (eventBuilder_ == null) { + public Builder setL0(context.ContextOuterClass.ConnectionSettings_L0 value) { + if (l0Builder_ == null) { if (value == null) { throw new NullPointerException(); } - event_ = value; + l0_ = value; onChanged(); } else { - eventBuilder_.setMessage(value); + l0Builder_.setMessage(value); } return this; } /** - * <code>.context.Event event = 1;</code> + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> */ - public Builder setEvent( - context.ContextOuterClass.Event.Builder builderForValue) { - if (eventBuilder_ == null) { - event_ = builderForValue.build(); + public Builder setL0( + context.ContextOuterClass.ConnectionSettings_L0.Builder builderForValue) { + if (l0Builder_ == null) { + l0_ = builderForValue.build(); onChanged(); } else { - eventBuilder_.setMessage(builderForValue.build()); + l0Builder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.Event event = 1;</code> + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + */ + public Builder mergeL0(context.ContextOuterClass.ConnectionSettings_L0 value) { + if (l0Builder_ == null) { + if (l0_ != null) { + l0_ = + context.ContextOuterClass.ConnectionSettings_L0.newBuilder(l0_).mergeFrom(value).buildPartial(); + } else { + l0_ = value; + } + onChanged(); + } else { + l0Builder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + */ + public Builder clearL0() { + if (l0Builder_ == null) { + l0_ = null; + onChanged(); + } else { + l0_ = null; + l0Builder_ = null; + } + + return this; + } + /** + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + */ + public context.ContextOuterClass.ConnectionSettings_L0.Builder getL0Builder() { + + onChanged(); + return getL0FieldBuilder().getBuilder(); + } + /** + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + */ + public context.ContextOuterClass.ConnectionSettings_L0OrBuilder getL0OrBuilder() { + if (l0Builder_ != null) { + return l0Builder_.getMessageOrBuilder(); + } else { + return l0_ == null ? + context.ContextOuterClass.ConnectionSettings_L0.getDefaultInstance() : l0_; + } + } + /** + * <code>.context.ConnectionSettings_L0 l0 = 1;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionSettings_L0, context.ContextOuterClass.ConnectionSettings_L0.Builder, context.ContextOuterClass.ConnectionSettings_L0OrBuilder> + getL0FieldBuilder() { + if (l0Builder_ == null) { + l0Builder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionSettings_L0, context.ContextOuterClass.ConnectionSettings_L0.Builder, context.ContextOuterClass.ConnectionSettings_L0OrBuilder>( + getL0(), + getParentForChildren(), + isClean()); + l0_ = null; + } + return l0Builder_; + } + + private context.ContextOuterClass.ConnectionSettings_L2 l2_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionSettings_L2, context.ContextOuterClass.ConnectionSettings_L2.Builder, context.ContextOuterClass.ConnectionSettings_L2OrBuilder> l2Builder_; + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * @return Whether the l2 field is set. + */ + public boolean hasL2() { + return l2Builder_ != null || l2_ != null; + } + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * @return The l2. + */ + public context.ContextOuterClass.ConnectionSettings_L2 getL2() { + if (l2Builder_ == null) { + return l2_ == null ? context.ContextOuterClass.ConnectionSettings_L2.getDefaultInstance() : l2_; + } else { + return l2Builder_.getMessage(); + } + } + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + */ + public Builder setL2(context.ContextOuterClass.ConnectionSettings_L2 value) { + if (l2Builder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + l2_ = value; + onChanged(); + } else { + l2Builder_.setMessage(value); + } + + return this; + } + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + */ + public Builder setL2( + context.ContextOuterClass.ConnectionSettings_L2.Builder builderForValue) { + if (l2Builder_ == null) { + l2_ = builderForValue.build(); + onChanged(); + } else { + l2Builder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + */ + public Builder mergeL2(context.ContextOuterClass.ConnectionSettings_L2 value) { + if (l2Builder_ == null) { + if (l2_ != null) { + l2_ = + context.ContextOuterClass.ConnectionSettings_L2.newBuilder(l2_).mergeFrom(value).buildPartial(); + } else { + l2_ = value; + } + onChanged(); + } else { + l2Builder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + */ + public Builder clearL2() { + if (l2Builder_ == null) { + l2_ = null; + onChanged(); + } else { + l2_ = null; + l2Builder_ = null; + } + + return this; + } + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + */ + public context.ContextOuterClass.ConnectionSettings_L2.Builder getL2Builder() { + + onChanged(); + return getL2FieldBuilder().getBuilder(); + } + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + */ + public context.ContextOuterClass.ConnectionSettings_L2OrBuilder getL2OrBuilder() { + if (l2Builder_ != null) { + return l2Builder_.getMessageOrBuilder(); + } else { + return l2_ == null ? + context.ContextOuterClass.ConnectionSettings_L2.getDefaultInstance() : l2_; + } + } + /** + * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionSettings_L2, context.ContextOuterClass.ConnectionSettings_L2.Builder, context.ContextOuterClass.ConnectionSettings_L2OrBuilder> + getL2FieldBuilder() { + if (l2Builder_ == null) { + l2Builder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionSettings_L2, context.ContextOuterClass.ConnectionSettings_L2.Builder, context.ContextOuterClass.ConnectionSettings_L2OrBuilder>( + getL2(), + getParentForChildren(), + isClean()); + l2_ = null; + } + return l2Builder_; + } + + private context.ContextOuterClass.ConnectionSettings_L3 l3_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionSettings_L3, context.ContextOuterClass.ConnectionSettings_L3.Builder, context.ContextOuterClass.ConnectionSettings_L3OrBuilder> l3Builder_; + /** + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * @return Whether the l3 field is set. + */ + public boolean hasL3() { + return l3Builder_ != null || l3_ != null; + } + /** + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * @return The l3. + */ + public context.ContextOuterClass.ConnectionSettings_L3 getL3() { + if (l3Builder_ == null) { + return l3_ == null ? context.ContextOuterClass.ConnectionSettings_L3.getDefaultInstance() : l3_; + } else { + return l3Builder_.getMessage(); + } + } + /** + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + */ + public Builder setL3(context.ContextOuterClass.ConnectionSettings_L3 value) { + if (l3Builder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + l3_ = value; + onChanged(); + } else { + l3Builder_.setMessage(value); + } + + return this; + } + /** + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + */ + public Builder setL3( + context.ContextOuterClass.ConnectionSettings_L3.Builder builderForValue) { + if (l3Builder_ == null) { + l3_ = builderForValue.build(); + onChanged(); + } else { + l3Builder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.ConnectionSettings_L3 l3 = 3;</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 mergeL3(context.ContextOuterClass.ConnectionSettings_L3 value) { + if (l3Builder_ == null) { + if (l3_ != null) { + l3_ = + context.ContextOuterClass.ConnectionSettings_L3.newBuilder(l3_).mergeFrom(value).buildPartial(); } else { - event_ = value; + l3_ = value; } onChanged(); } else { - eventBuilder_.mergeFrom(value); + l3Builder_.mergeFrom(value); } return this; } /** - * <code>.context.Event event = 1;</code> + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> */ - public Builder clearEvent() { - if (eventBuilder_ == null) { - event_ = null; + public Builder clearL3() { + if (l3Builder_ == null) { + l3_ = null; onChanged(); } else { - event_ = null; - eventBuilder_ = null; + l3_ = null; + l3Builder_ = null; } return this; } /** - * <code>.context.Event event = 1;</code> + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> */ - public context.ContextOuterClass.Event.Builder getEventBuilder() { + public context.ContextOuterClass.ConnectionSettings_L3.Builder getL3Builder() { onChanged(); - return getEventFieldBuilder().getBuilder(); + return getL3FieldBuilder().getBuilder(); } /** - * <code>.context.Event event = 1;</code> + * <code>.context.ConnectionSettings_L3 l3 = 3;</code> */ - public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { - if (eventBuilder_ != null) { - return eventBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.ConnectionSettings_L3OrBuilder getL3OrBuilder() { + if (l3Builder_ != null) { + return l3Builder_.getMessageOrBuilder(); } else { - return event_ == null ? - context.ContextOuterClass.Event.getDefaultInstance() : event_; + return l3_ == null ? + context.ContextOuterClass.ConnectionSettings_L3.getDefaultInstance() : l3_; } } /** - * <code>.context.Event event = 1;</code> + * <code>.context.ConnectionSettings_L3 l3 = 3;</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(), + context.ContextOuterClass.ConnectionSettings_L3, context.ContextOuterClass.ConnectionSettings_L3.Builder, context.ContextOuterClass.ConnectionSettings_L3OrBuilder> + getL3FieldBuilder() { + if (l3Builder_ == null) { + l3Builder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionSettings_L3, context.ContextOuterClass.ConnectionSettings_L3.Builder, context.ContextOuterClass.ConnectionSettings_L3OrBuilder>( + getL3(), getParentForChildren(), isClean()); - event_ = null; + l3_ = null; } - return eventBuilder_; + return l3Builder_; } - private context.ContextOuterClass.SliceId sliceId_; + private context.ContextOuterClass.ConnectionSettings_L4 l4_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> sliceIdBuilder_; + context.ContextOuterClass.ConnectionSettings_L4, context.ContextOuterClass.ConnectionSettings_L4.Builder, context.ContextOuterClass.ConnectionSettings_L4OrBuilder> l4Builder_; /** - * <code>.context.SliceId slice_id = 2;</code> - * @return Whether the sliceId field is set. + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * @return Whether the l4 field is set. */ - public boolean hasSliceId() { - return sliceIdBuilder_ != null || sliceId_ != null; + public boolean hasL4() { + return l4Builder_ != null || l4_ != null; } /** - * <code>.context.SliceId slice_id = 2;</code> - * @return The sliceId. + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * @return The l4. */ - public context.ContextOuterClass.SliceId getSliceId() { - if (sliceIdBuilder_ == null) { - return sliceId_ == null ? context.ContextOuterClass.SliceId.getDefaultInstance() : sliceId_; + public context.ContextOuterClass.ConnectionSettings_L4 getL4() { + if (l4Builder_ == null) { + return l4_ == null ? context.ContextOuterClass.ConnectionSettings_L4.getDefaultInstance() : l4_; } else { - return sliceIdBuilder_.getMessage(); + return l4Builder_.getMessage(); } } /** - * <code>.context.SliceId slice_id = 2;</code> + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> */ - public Builder setSliceId(context.ContextOuterClass.SliceId value) { - if (sliceIdBuilder_ == null) { + public Builder setL4(context.ContextOuterClass.ConnectionSettings_L4 value) { + if (l4Builder_ == null) { if (value == null) { throw new NullPointerException(); } - sliceId_ = value; + l4_ = value; onChanged(); } else { - sliceIdBuilder_.setMessage(value); + l4Builder_.setMessage(value); } return this; } /** - * <code>.context.SliceId slice_id = 2;</code> + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> */ - public Builder setSliceId( - context.ContextOuterClass.SliceId.Builder builderForValue) { - if (sliceIdBuilder_ == null) { - sliceId_ = builderForValue.build(); + public Builder setL4( + context.ContextOuterClass.ConnectionSettings_L4.Builder builderForValue) { + if (l4Builder_ == null) { + l4_ = builderForValue.build(); onChanged(); } else { - sliceIdBuilder_.setMessage(builderForValue.build()); + l4Builder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.SliceId slice_id = 2;</code> + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> */ - public Builder mergeSliceId(context.ContextOuterClass.SliceId value) { - if (sliceIdBuilder_ == null) { - if (sliceId_ != null) { - sliceId_ = - context.ContextOuterClass.SliceId.newBuilder(sliceId_).mergeFrom(value).buildPartial(); + public Builder mergeL4(context.ContextOuterClass.ConnectionSettings_L4 value) { + if (l4Builder_ == null) { + if (l4_ != null) { + l4_ = + context.ContextOuterClass.ConnectionSettings_L4.newBuilder(l4_).mergeFrom(value).buildPartial(); } else { - sliceId_ = value; + l4_ = value; } onChanged(); } else { - sliceIdBuilder_.mergeFrom(value); + l4Builder_.mergeFrom(value); } return this; } /** - * <code>.context.SliceId slice_id = 2;</code> + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> */ - public Builder clearSliceId() { - if (sliceIdBuilder_ == null) { - sliceId_ = null; + public Builder clearL4() { + if (l4Builder_ == null) { + l4_ = null; onChanged(); } else { - sliceId_ = null; - sliceIdBuilder_ = null; + l4_ = null; + l4Builder_ = null; } return this; } /** - * <code>.context.SliceId slice_id = 2;</code> + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> */ - public context.ContextOuterClass.SliceId.Builder getSliceIdBuilder() { + public context.ContextOuterClass.ConnectionSettings_L4.Builder getL4Builder() { onChanged(); - return getSliceIdFieldBuilder().getBuilder(); + return getL4FieldBuilder().getBuilder(); } /** - * <code>.context.SliceId slice_id = 2;</code> + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> */ - public context.ContextOuterClass.SliceIdOrBuilder getSliceIdOrBuilder() { - if (sliceIdBuilder_ != null) { - return sliceIdBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.ConnectionSettings_L4OrBuilder getL4OrBuilder() { + if (l4Builder_ != null) { + return l4Builder_.getMessageOrBuilder(); } else { - return sliceId_ == null ? - context.ContextOuterClass.SliceId.getDefaultInstance() : sliceId_; + return l4_ == null ? + context.ContextOuterClass.ConnectionSettings_L4.getDefaultInstance() : l4_; } } /** - * <code>.context.SliceId slice_id = 2;</code> + * <code>.context.ConnectionSettings_L4 l4 = 4;</code> */ private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder> - getSliceIdFieldBuilder() { - if (sliceIdBuilder_ == null) { - sliceIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.SliceId, context.ContextOuterClass.SliceId.Builder, context.ContextOuterClass.SliceIdOrBuilder>( - getSliceId(), + context.ContextOuterClass.ConnectionSettings_L4, context.ContextOuterClass.ConnectionSettings_L4.Builder, context.ContextOuterClass.ConnectionSettings_L4OrBuilder> + getL4FieldBuilder() { + if (l4Builder_ == null) { + l4Builder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionSettings_L4, context.ContextOuterClass.ConnectionSettings_L4.Builder, context.ContextOuterClass.ConnectionSettings_L4OrBuilder>( + getL4(), getParentForChildren(), isClean()); - sliceId_ = null; + l4_ = null; } - return sliceIdBuilder_; + return l4Builder_; } @java.lang.Override public final Builder setUnknownFields( @@ -37237,183 +49246,442 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.SliceEvent) + // @@protoc_insertion_point(builder_scope:context.ConnectionSettings) } - // @@protoc_insertion_point(class_scope:context.SliceEvent) - private static final context.ContextOuterClass.SliceEvent DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ConnectionSettings) + private static final context.ContextOuterClass.ConnectionSettings DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.SliceEvent(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionSettings(); } - public static context.ContextOuterClass.SliceEvent getDefaultInstance() { + public static context.ContextOuterClass.ConnectionSettings getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<SliceEvent> - PARSER = new com.google.protobuf.AbstractParser<SliceEvent>() { + private static final com.google.protobuf.Parser<ConnectionSettings> + PARSER = new com.google.protobuf.AbstractParser<ConnectionSettings>() { @java.lang.Override - public SliceEvent parsePartialFrom( + public ConnectionSettings parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new SliceEvent(input, extensionRegistry); + return new ConnectionSettings(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<SliceEvent> parser() { + public static com.google.protobuf.Parser<ConnectionSettings> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<SliceEvent> getParserForType() { + public com.google.protobuf.Parser<ConnectionSettings> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.SliceEvent getDefaultInstanceForType() { + public context.ContextOuterClass.ConnectionSettings getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ConnectionIdOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ConnectionId) + public interface ConnectionOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Connection) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.Uuid connection_uuid = 1;</code> - * @return Whether the connectionUuid field is set. + * <code>.context.ConnectionId connection_id = 1;</code> + * @return Whether the connectionId field is set. */ - boolean hasConnectionUuid(); + boolean hasConnectionId(); /** - * <code>.context.Uuid connection_uuid = 1;</code> - * @return The connectionUuid. + * <code>.context.ConnectionId connection_id = 1;</code> + * @return The connectionId. */ - context.ContextOuterClass.Uuid getConnectionUuid(); + context.ContextOuterClass.ConnectionId getConnectionId(); /** - * <code>.context.Uuid connection_uuid = 1;</code> + * <code>.context.ConnectionId connection_id = 1;</code> */ - context.ContextOuterClass.UuidOrBuilder getConnectionUuidOrBuilder(); + context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder(); + + /** + * <code>.context.ServiceId service_id = 2;</code> + * @return Whether the serviceId field is set. + */ + boolean hasServiceId(); + /** + * <code>.context.ServiceId service_id = 2;</code> + * @return The serviceId. + */ + context.ContextOuterClass.ServiceId getServiceId(); + /** + * <code>.context.ServiceId service_id = 2;</code> + */ + context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder(); + + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + java.util.List<context.ContextOuterClass.EndPointId> + getPathHopsEndpointIdsList(); + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + context.ContextOuterClass.EndPointId getPathHopsEndpointIds(int index); + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + int getPathHopsEndpointIdsCount(); + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getPathHopsEndpointIdsOrBuilderList(); + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + context.ContextOuterClass.EndPointIdOrBuilder getPathHopsEndpointIdsOrBuilder( + int index); + + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + java.util.List<context.ContextOuterClass.ServiceId> + getSubServiceIdsList(); + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + context.ContextOuterClass.ServiceId getSubServiceIds(int index); + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + int getSubServiceIdsCount(); + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> + getSubServiceIdsOrBuilderList(); + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + context.ContextOuterClass.ServiceIdOrBuilder getSubServiceIdsOrBuilder( + int index); + + /** + * <code>.context.ConnectionSettings settings = 5;</code> + * @return Whether the settings field is set. + */ + boolean hasSettings(); + /** + * <code>.context.ConnectionSettings settings = 5;</code> + * @return The settings. + */ + context.ContextOuterClass.ConnectionSettings getSettings(); + /** + * <code>.context.ConnectionSettings settings = 5;</code> + */ + context.ContextOuterClass.ConnectionSettingsOrBuilder getSettingsOrBuilder(); } /** - * <pre> - * ----- Connection ---------------------------------------------------------------------------------------------------- - * </pre> - * - * Protobuf type {@code context.ConnectionId} + * Protobuf type {@code context.Connection} */ - public static final class ConnectionId extends + public static final class Connection extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ConnectionId) - ConnectionIdOrBuilder { + // @@protoc_insertion_point(message_implements:context.Connection) + ConnectionOrBuilder { private static final long serialVersionUID = 0L; - // Use ConnectionId.newBuilder() to construct. - private ConnectionId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Connection.newBuilder() to construct. + private Connection(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ConnectionId() { + private Connection() { + pathHopsEndpointIds_ = java.util.Collections.emptyList(); + subServiceIds_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new Connection(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private Connection( + 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: { + context.ContextOuterClass.ConnectionId.Builder subBuilder = null; + if (connectionId_ != null) { + subBuilder = connectionId_.toBuilder(); + } + connectionId_ = input.readMessage(context.ContextOuterClass.ConnectionId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(connectionId_); + connectionId_ = 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)) { + pathHopsEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(); + mutable_bitField0_ |= 0x00000001; + } + pathHopsEndpointIds_.add( + input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry)); + break; + } + case 34: { + if (!((mutable_bitField0_ & 0x00000002) != 0)) { + subServiceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(); + mutable_bitField0_ |= 0x00000002; + } + subServiceIds_.add( + input.readMessage(context.ContextOuterClass.ServiceId.parser(), extensionRegistry)); + break; + } + case 42: { + context.ContextOuterClass.ConnectionSettings.Builder subBuilder = null; + if (settings_ != null) { + subBuilder = settings_.toBuilder(); + } + settings_ = input.readMessage(context.ContextOuterClass.ConnectionSettings.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(settings_); + settings_ = subBuilder.buildPartial(); + } + + 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)) { + pathHopsEndpointIds_ = java.util.Collections.unmodifiableList(pathHopsEndpointIds_); + } + if (((mutable_bitField0_ & 0x00000002) != 0)) { + subServiceIds_ = java.util.Collections.unmodifiableList(subServiceIds_); + } + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_Connection_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_Connection_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.Connection.class, context.ContextOuterClass.Connection.Builder.class); + } + + public static final int CONNECTION_ID_FIELD_NUMBER = 1; + private context.ContextOuterClass.ConnectionId connectionId_; + /** + * <code>.context.ConnectionId connection_id = 1;</code> + * @return Whether the connectionId field is set. + */ + @java.lang.Override + public boolean hasConnectionId() { + return connectionId_ != null; + } + /** + * <code>.context.ConnectionId connection_id = 1;</code> + * @return The connectionId. + */ + @java.lang.Override + public context.ContextOuterClass.ConnectionId getConnectionId() { + return connectionId_ == null ? context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; + } + /** + * <code>.context.ConnectionId connection_id = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder() { + return getConnectionId(); + } + + public static final int SERVICE_ID_FIELD_NUMBER = 2; + private context.ContextOuterClass.ServiceId serviceId_; + /** + * <code>.context.ServiceId service_id = 2;</code> + * @return Whether the serviceId field is set. + */ + @java.lang.Override + public boolean hasServiceId() { + return serviceId_ != null; + } + /** + * <code>.context.ServiceId service_id = 2;</code> + * @return The serviceId. + */ + @java.lang.Override + public context.ContextOuterClass.ServiceId getServiceId() { + return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; + } + /** + * <code>.context.ServiceId service_id = 2;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() { + return getServiceId(); + } + + public static final int PATH_HOPS_ENDPOINT_IDS_FIELD_NUMBER = 3; + private java.util.List<context.ContextOuterClass.EndPointId> pathHopsEndpointIds_; + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + @java.lang.Override + public java.util.List<context.ContextOuterClass.EndPointId> getPathHopsEndpointIdsList() { + return pathHopsEndpointIds_; + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getPathHopsEndpointIdsOrBuilderList() { + return pathHopsEndpointIds_; + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + @java.lang.Override + public int getPathHopsEndpointIdsCount() { + return pathHopsEndpointIds_.size(); + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + @java.lang.Override + public context.ContextOuterClass.EndPointId getPathHopsEndpointIds(int index) { + return pathHopsEndpointIds_.get(index); } - + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new ConnectionId(); + public context.ContextOuterClass.EndPointIdOrBuilder getPathHopsEndpointIdsOrBuilder( + int index) { + return pathHopsEndpointIds_.get(index); } + public static final int SUB_SERVICE_IDS_FIELD_NUMBER = 4; + private java.util.List<context.ContextOuterClass.ServiceId> subServiceIds_; + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; + public java.util.List<context.ContextOuterClass.ServiceId> getSubServiceIdsList() { + return subServiceIds_; } - private ConnectionId( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - this(); - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); - } - 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: { - context.ContextOuterClass.Uuid.Builder subBuilder = null; - if (connectionUuid_ != null) { - subBuilder = connectionUuid_.toBuilder(); - } - connectionUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(connectionUuid_); - connectionUuid_ = subBuilder.buildPartial(); - } - - 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 { - this.unknownFields = unknownFields.build(); - makeExtensionsImmutable(); - } + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> + getSubServiceIdsOrBuilderList() { + return subServiceIds_; } - public static final com.google.protobuf.Descriptors.Descriptor - getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionId_descriptor; + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + @java.lang.Override + public int getSubServiceIdsCount() { + return subServiceIds_.size(); } - + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionId_fieldAccessorTable - .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionId.class, context.ContextOuterClass.ConnectionId.Builder.class); + public context.ContextOuterClass.ServiceId getSubServiceIds(int index) { + return subServiceIds_.get(index); + } + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ServiceIdOrBuilder getSubServiceIdsOrBuilder( + int index) { + return subServiceIds_.get(index); } - public static final int CONNECTION_UUID_FIELD_NUMBER = 1; - private context.ContextOuterClass.Uuid connectionUuid_; + public static final int SETTINGS_FIELD_NUMBER = 5; + private context.ContextOuterClass.ConnectionSettings settings_; /** - * <code>.context.Uuid connection_uuid = 1;</code> - * @return Whether the connectionUuid field is set. + * <code>.context.ConnectionSettings settings = 5;</code> + * @return Whether the settings field is set. */ @java.lang.Override - public boolean hasConnectionUuid() { - return connectionUuid_ != null; + public boolean hasSettings() { + return settings_ != null; } /** - * <code>.context.Uuid connection_uuid = 1;</code> - * @return The connectionUuid. + * <code>.context.ConnectionSettings settings = 5;</code> + * @return The settings. */ @java.lang.Override - public context.ContextOuterClass.Uuid getConnectionUuid() { - return connectionUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : connectionUuid_; + public context.ContextOuterClass.ConnectionSettings getSettings() { + return settings_ == null ? context.ContextOuterClass.ConnectionSettings.getDefaultInstance() : settings_; } /** - * <code>.context.Uuid connection_uuid = 1;</code> + * <code>.context.ConnectionSettings settings = 5;</code> */ @java.lang.Override - public context.ContextOuterClass.UuidOrBuilder getConnectionUuidOrBuilder() { - return getConnectionUuid(); + public context.ContextOuterClass.ConnectionSettingsOrBuilder getSettingsOrBuilder() { + return getSettings(); } private byte memoizedIsInitialized = -1; @@ -37430,8 +49698,20 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (connectionUuid_ != null) { - output.writeMessage(1, getConnectionUuid()); + if (connectionId_ != null) { + output.writeMessage(1, getConnectionId()); + } + if (serviceId_ != null) { + output.writeMessage(2, getServiceId()); + } + for (int i = 0; i < pathHopsEndpointIds_.size(); i++) { + output.writeMessage(3, pathHopsEndpointIds_.get(i)); + } + for (int i = 0; i < subServiceIds_.size(); i++) { + output.writeMessage(4, subServiceIds_.get(i)); + } + if (settings_ != null) { + output.writeMessage(5, getSettings()); } unknownFields.writeTo(output); } @@ -37442,9 +49722,25 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (connectionUuid_ != null) { + if (connectionId_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getConnectionUuid()); + .computeMessageSize(1, getConnectionId()); + } + if (serviceId_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, getServiceId()); + } + for (int i = 0; i < pathHopsEndpointIds_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(3, pathHopsEndpointIds_.get(i)); + } + for (int i = 0; i < subServiceIds_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(4, subServiceIds_.get(i)); + } + if (settings_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(5, getSettings()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -37456,15 +49752,29 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ConnectionId)) { + if (!(obj instanceof context.ContextOuterClass.Connection)) { return super.equals(obj); } - context.ContextOuterClass.ConnectionId other = (context.ContextOuterClass.ConnectionId) obj; + context.ContextOuterClass.Connection other = (context.ContextOuterClass.Connection) obj; - if (hasConnectionUuid() != other.hasConnectionUuid()) return false; - if (hasConnectionUuid()) { - if (!getConnectionUuid() - .equals(other.getConnectionUuid())) return false; + if (hasConnectionId() != other.hasConnectionId()) return false; + if (hasConnectionId()) { + if (!getConnectionId() + .equals(other.getConnectionId())) return false; + } + if (hasServiceId() != other.hasServiceId()) return false; + if (hasServiceId()) { + if (!getServiceId() + .equals(other.getServiceId())) return false; + } + if (!getPathHopsEndpointIdsList() + .equals(other.getPathHopsEndpointIdsList())) return false; + if (!getSubServiceIdsList() + .equals(other.getSubServiceIdsList())) return false; + if (hasSettings() != other.hasSettings()) return false; + if (hasSettings()) { + if (!getSettings() + .equals(other.getSettings())) return false; } if (!unknownFields.equals(other.unknownFields)) return false; return true; @@ -37477,78 +49787,94 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasConnectionUuid()) { - hash = (37 * hash) + CONNECTION_UUID_FIELD_NUMBER; - hash = (53 * hash) + getConnectionUuid().hashCode(); + if (hasConnectionId()) { + hash = (37 * hash) + CONNECTION_ID_FIELD_NUMBER; + hash = (53 * hash) + getConnectionId().hashCode(); + } + if (hasServiceId()) { + hash = (37 * hash) + SERVICE_ID_FIELD_NUMBER; + hash = (53 * hash) + getServiceId().hashCode(); + } + if (getPathHopsEndpointIdsCount() > 0) { + hash = (37 * hash) + PATH_HOPS_ENDPOINT_IDS_FIELD_NUMBER; + hash = (53 * hash) + getPathHopsEndpointIdsList().hashCode(); + } + if (getSubServiceIdsCount() > 0) { + hash = (37 * hash) + SUB_SERVICE_IDS_FIELD_NUMBER; + hash = (53 * hash) + getSubServiceIdsList().hashCode(); + } + if (hasSettings()) { + hash = (37 * hash) + SETTINGS_FIELD_NUMBER; + hash = (53 * hash) + getSettings().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ConnectionId parseFrom( + public static context.ContextOuterClass.Connection parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionId parseFrom( + public static context.ContextOuterClass.Connection parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionId parseFrom( + public static context.ContextOuterClass.Connection parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionId parseFrom( + public static context.ContextOuterClass.Connection parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionId parseFrom(byte[] data) + public static context.ContextOuterClass.Connection parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionId parseFrom( + public static context.ContextOuterClass.Connection parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionId parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Connection parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionId parseFrom( + public static context.ContextOuterClass.Connection 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 context.ContextOuterClass.ConnectionId parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Connection parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionId parseDelimitedFrom( + public static context.ContextOuterClass.Connection 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 context.ContextOuterClass.ConnectionId parseFrom( + public static context.ContextOuterClass.Connection parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionId parseFrom( + public static context.ContextOuterClass.Connection parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -37561,7 +49887,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ConnectionId prototype) { + public static Builder newBuilder(context.ContextOuterClass.Connection prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -37577,30 +49903,26 @@ public final class ContextOuterClass { return builder; } /** - * <pre> - * ----- Connection ---------------------------------------------------------------------------------------------------- - * </pre> - * - * Protobuf type {@code context.ConnectionId} + * Protobuf type {@code context.Connection} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ConnectionId) - context.ContextOuterClass.ConnectionIdOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Connection) + context.ContextOuterClass.ConnectionOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionId_descriptor; + return context.ContextOuterClass.internal_static_context_Connection_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionId_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Connection_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionId.class, context.ContextOuterClass.ConnectionId.Builder.class); + context.ContextOuterClass.Connection.class, context.ContextOuterClass.Connection.Builder.class); } - // Construct using context.ContextOuterClass.ConnectionId.newBuilder() + // Construct using context.ContextOuterClass.Connection.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -37613,16 +49935,42 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { + getPathHopsEndpointIdsFieldBuilder(); + getSubServiceIdsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (connectionUuidBuilder_ == null) { - connectionUuid_ = null; + if (connectionIdBuilder_ == null) { + connectionId_ = null; } else { - connectionUuid_ = null; - connectionUuidBuilder_ = null; + connectionId_ = null; + connectionIdBuilder_ = null; + } + if (serviceIdBuilder_ == null) { + serviceId_ = null; + } else { + serviceId_ = null; + serviceIdBuilder_ = null; + } + if (pathHopsEndpointIdsBuilder_ == null) { + pathHopsEndpointIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + } else { + pathHopsEndpointIdsBuilder_.clear(); + } + if (subServiceIdsBuilder_ == null) { + subServiceIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + } else { + subServiceIdsBuilder_.clear(); + } + if (settingsBuilder_ == null) { + settings_ = null; + } else { + settings_ = null; + settingsBuilder_ = null; } return this; } @@ -37630,17 +49978,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ConnectionId_descriptor; + return context.ContextOuterClass.internal_static_context_Connection_descriptor; } @java.lang.Override - public context.ContextOuterClass.ConnectionId getDefaultInstanceForType() { - return context.ContextOuterClass.ConnectionId.getDefaultInstance(); + public context.ContextOuterClass.Connection getDefaultInstanceForType() { + return context.ContextOuterClass.Connection.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ConnectionId build() { - context.ContextOuterClass.ConnectionId result = buildPartial(); + public context.ContextOuterClass.Connection build() { + context.ContextOuterClass.Connection result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -37648,12 +49996,41 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ConnectionId buildPartial() { - context.ContextOuterClass.ConnectionId result = new context.ContextOuterClass.ConnectionId(this); - if (connectionUuidBuilder_ == null) { - result.connectionUuid_ = connectionUuid_; + public context.ContextOuterClass.Connection buildPartial() { + context.ContextOuterClass.Connection result = new context.ContextOuterClass.Connection(this); + int from_bitField0_ = bitField0_; + if (connectionIdBuilder_ == null) { + result.connectionId_ = connectionId_; } else { - result.connectionUuid_ = connectionUuidBuilder_.build(); + result.connectionId_ = connectionIdBuilder_.build(); + } + if (serviceIdBuilder_ == null) { + result.serviceId_ = serviceId_; + } else { + result.serviceId_ = serviceIdBuilder_.build(); + } + if (pathHopsEndpointIdsBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + pathHopsEndpointIds_ = java.util.Collections.unmodifiableList(pathHopsEndpointIds_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.pathHopsEndpointIds_ = pathHopsEndpointIds_; + } else { + result.pathHopsEndpointIds_ = pathHopsEndpointIdsBuilder_.build(); + } + if (subServiceIdsBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0)) { + subServiceIds_ = java.util.Collections.unmodifiableList(subServiceIds_); + bitField0_ = (bitField0_ & ~0x00000002); + } + result.subServiceIds_ = subServiceIds_; + } else { + result.subServiceIds_ = subServiceIdsBuilder_.build(); + } + if (settingsBuilder_ == null) { + result.settings_ = settings_; + } else { + result.settings_ = settingsBuilder_.build(); } onBuilt(); return result; @@ -37693,18 +50070,76 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ConnectionId) { - return mergeFrom((context.ContextOuterClass.ConnectionId)other); + if (other instanceof context.ContextOuterClass.Connection) { + return mergeFrom((context.ContextOuterClass.Connection)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ConnectionId other) { - if (other == context.ContextOuterClass.ConnectionId.getDefaultInstance()) return this; - if (other.hasConnectionUuid()) { - mergeConnectionUuid(other.getConnectionUuid()); + public Builder mergeFrom(context.ContextOuterClass.Connection other) { + if (other == context.ContextOuterClass.Connection.getDefaultInstance()) return this; + if (other.hasConnectionId()) { + mergeConnectionId(other.getConnectionId()); + } + if (other.hasServiceId()) { + mergeServiceId(other.getServiceId()); + } + if (pathHopsEndpointIdsBuilder_ == null) { + if (!other.pathHopsEndpointIds_.isEmpty()) { + if (pathHopsEndpointIds_.isEmpty()) { + pathHopsEndpointIds_ = other.pathHopsEndpointIds_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensurePathHopsEndpointIdsIsMutable(); + pathHopsEndpointIds_.addAll(other.pathHopsEndpointIds_); + } + onChanged(); + } + } else { + if (!other.pathHopsEndpointIds_.isEmpty()) { + if (pathHopsEndpointIdsBuilder_.isEmpty()) { + pathHopsEndpointIdsBuilder_.dispose(); + pathHopsEndpointIdsBuilder_ = null; + pathHopsEndpointIds_ = other.pathHopsEndpointIds_; + bitField0_ = (bitField0_ & ~0x00000001); + pathHopsEndpointIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getPathHopsEndpointIdsFieldBuilder() : null; + } else { + pathHopsEndpointIdsBuilder_.addAllMessages(other.pathHopsEndpointIds_); + } + } + } + if (subServiceIdsBuilder_ == null) { + if (!other.subServiceIds_.isEmpty()) { + if (subServiceIds_.isEmpty()) { + subServiceIds_ = other.subServiceIds_; + bitField0_ = (bitField0_ & ~0x00000002); + } else { + ensureSubServiceIdsIsMutable(); + subServiceIds_.addAll(other.subServiceIds_); + } + onChanged(); + } + } else { + if (!other.subServiceIds_.isEmpty()) { + if (subServiceIdsBuilder_.isEmpty()) { + subServiceIdsBuilder_.dispose(); + subServiceIdsBuilder_ = null; + subServiceIds_ = other.subServiceIds_; + bitField0_ = (bitField0_ & ~0x00000002); + subServiceIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getSubServiceIdsFieldBuilder() : null; + } else { + subServiceIdsBuilder_.addAllMessages(other.subServiceIds_); + } + } + } + if (other.hasSettings()) { + mergeSettings(other.getSettings()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -37721,11 +50156,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ConnectionId parsedMessage = null; + context.ContextOuterClass.Connection parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ConnectionId) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.Connection) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -37734,692 +50169,843 @@ public final class ContextOuterClass { } return this; } + private int bitField0_; + + private context.ContextOuterClass.ConnectionId connectionId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> connectionIdBuilder_; + /** + * <code>.context.ConnectionId connection_id = 1;</code> + * @return Whether the connectionId field is set. + */ + public boolean hasConnectionId() { + return connectionIdBuilder_ != null || connectionId_ != null; + } + /** + * <code>.context.ConnectionId connection_id = 1;</code> + * @return The connectionId. + */ + public context.ContextOuterClass.ConnectionId getConnectionId() { + if (connectionIdBuilder_ == null) { + return connectionId_ == null ? context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; + } else { + return connectionIdBuilder_.getMessage(); + } + } + /** + * <code>.context.ConnectionId connection_id = 1;</code> + */ + public Builder setConnectionId(context.ContextOuterClass.ConnectionId value) { + if (connectionIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + connectionId_ = value; + onChanged(); + } else { + connectionIdBuilder_.setMessage(value); + } + + return this; + } + /** + * <code>.context.ConnectionId connection_id = 1;</code> + */ + public Builder setConnectionId( + context.ContextOuterClass.ConnectionId.Builder builderForValue) { + if (connectionIdBuilder_ == null) { + connectionId_ = builderForValue.build(); + onChanged(); + } else { + connectionIdBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.ConnectionId connection_id = 1;</code> + */ + public Builder mergeConnectionId(context.ContextOuterClass.ConnectionId value) { + if (connectionIdBuilder_ == null) { + if (connectionId_ != null) { + connectionId_ = + context.ContextOuterClass.ConnectionId.newBuilder(connectionId_).mergeFrom(value).buildPartial(); + } else { + connectionId_ = value; + } + onChanged(); + } else { + connectionIdBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.context.ConnectionId connection_id = 1;</code> + */ + public Builder clearConnectionId() { + if (connectionIdBuilder_ == null) { + connectionId_ = null; + onChanged(); + } else { + connectionId_ = null; + connectionIdBuilder_ = null; + } + + return this; + } + /** + * <code>.context.ConnectionId connection_id = 1;</code> + */ + public context.ContextOuterClass.ConnectionId.Builder getConnectionIdBuilder() { + + onChanged(); + return getConnectionIdFieldBuilder().getBuilder(); + } + /** + * <code>.context.ConnectionId connection_id = 1;</code> + */ + public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder() { + if (connectionIdBuilder_ != null) { + return connectionIdBuilder_.getMessageOrBuilder(); + } else { + return connectionId_ == null ? + context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; + } + } + /** + * <code>.context.ConnectionId connection_id = 1;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> + getConnectionIdFieldBuilder() { + if (connectionIdBuilder_ == null) { + connectionIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder>( + getConnectionId(), + getParentForChildren(), + isClean()); + connectionId_ = null; + } + return connectionIdBuilder_; + } - private context.ContextOuterClass.Uuid connectionUuid_; + private context.ContextOuterClass.ServiceId serviceId_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> connectionUuidBuilder_; + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> serviceIdBuilder_; /** - * <code>.context.Uuid connection_uuid = 1;</code> - * @return Whether the connectionUuid field is set. + * <code>.context.ServiceId service_id = 2;</code> + * @return Whether the serviceId field is set. */ - public boolean hasConnectionUuid() { - return connectionUuidBuilder_ != null || connectionUuid_ != null; + public boolean hasServiceId() { + return serviceIdBuilder_ != null || serviceId_ != null; } /** - * <code>.context.Uuid connection_uuid = 1;</code> - * @return The connectionUuid. + * <code>.context.ServiceId service_id = 2;</code> + * @return The serviceId. */ - public context.ContextOuterClass.Uuid getConnectionUuid() { - if (connectionUuidBuilder_ == null) { - return connectionUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : connectionUuid_; + public context.ContextOuterClass.ServiceId getServiceId() { + if (serviceIdBuilder_ == null) { + return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; } else { - return connectionUuidBuilder_.getMessage(); + return serviceIdBuilder_.getMessage(); } } /** - * <code>.context.Uuid connection_uuid = 1;</code> + * <code>.context.ServiceId service_id = 2;</code> */ - public Builder setConnectionUuid(context.ContextOuterClass.Uuid value) { - if (connectionUuidBuilder_ == null) { + public Builder setServiceId(context.ContextOuterClass.ServiceId value) { + if (serviceIdBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - connectionUuid_ = value; + serviceId_ = value; onChanged(); } else { - connectionUuidBuilder_.setMessage(value); + serviceIdBuilder_.setMessage(value); } return this; } /** - * <code>.context.Uuid connection_uuid = 1;</code> + * <code>.context.ServiceId service_id = 2;</code> */ - public Builder setConnectionUuid( - context.ContextOuterClass.Uuid.Builder builderForValue) { - if (connectionUuidBuilder_ == null) { - connectionUuid_ = builderForValue.build(); + public Builder setServiceId( + context.ContextOuterClass.ServiceId.Builder builderForValue) { + if (serviceIdBuilder_ == null) { + serviceId_ = builderForValue.build(); onChanged(); } else { - connectionUuidBuilder_.setMessage(builderForValue.build()); + serviceIdBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.Uuid connection_uuid = 1;</code> + * <code>.context.ServiceId service_id = 2;</code> */ - public Builder mergeConnectionUuid(context.ContextOuterClass.Uuid value) { - if (connectionUuidBuilder_ == null) { - if (connectionUuid_ != null) { - connectionUuid_ = - context.ContextOuterClass.Uuid.newBuilder(connectionUuid_).mergeFrom(value).buildPartial(); + public Builder mergeServiceId(context.ContextOuterClass.ServiceId value) { + if (serviceIdBuilder_ == null) { + if (serviceId_ != null) { + serviceId_ = + context.ContextOuterClass.ServiceId.newBuilder(serviceId_).mergeFrom(value).buildPartial(); } else { - connectionUuid_ = value; + serviceId_ = value; } onChanged(); } else { - connectionUuidBuilder_.mergeFrom(value); + serviceIdBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.Uuid connection_uuid = 1;</code> + * <code>.context.ServiceId service_id = 2;</code> */ - public Builder clearConnectionUuid() { - if (connectionUuidBuilder_ == null) { - connectionUuid_ = null; + public Builder clearServiceId() { + if (serviceIdBuilder_ == null) { + serviceId_ = null; onChanged(); } else { - connectionUuid_ = null; - connectionUuidBuilder_ = null; + serviceId_ = null; + serviceIdBuilder_ = null; } return this; } /** - * <code>.context.Uuid connection_uuid = 1;</code> + * <code>.context.ServiceId service_id = 2;</code> */ - public context.ContextOuterClass.Uuid.Builder getConnectionUuidBuilder() { + public context.ContextOuterClass.ServiceId.Builder getServiceIdBuilder() { onChanged(); - return getConnectionUuidFieldBuilder().getBuilder(); + return getServiceIdFieldBuilder().getBuilder(); } /** - * <code>.context.Uuid connection_uuid = 1;</code> + * <code>.context.ServiceId service_id = 2;</code> */ - public context.ContextOuterClass.UuidOrBuilder getConnectionUuidOrBuilder() { - if (connectionUuidBuilder_ != null) { - return connectionUuidBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() { + if (serviceIdBuilder_ != null) { + return serviceIdBuilder_.getMessageOrBuilder(); } else { - return connectionUuid_ == null ? - context.ContextOuterClass.Uuid.getDefaultInstance() : connectionUuid_; + return serviceId_ == null ? + context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; } } /** - * <code>.context.Uuid connection_uuid = 1;</code> + * <code>.context.ServiceId service_id = 2;</code> */ private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> - getConnectionUuidFieldBuilder() { - if (connectionUuidBuilder_ == null) { - connectionUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>( - getConnectionUuid(), + 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()); - connectionUuid_ = null; + serviceId_ = null; } - return connectionUuidBuilder_; - } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); + return serviceIdBuilder_; } - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); + private java.util.List<context.ContextOuterClass.EndPointId> pathHopsEndpointIds_ = + java.util.Collections.emptyList(); + private void ensurePathHopsEndpointIdsIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + pathHopsEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(pathHopsEndpointIds_); + bitField0_ |= 0x00000001; + } } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> pathHopsEndpointIdsBuilder_; - // @@protoc_insertion_point(builder_scope:context.ConnectionId) - } - - // @@protoc_insertion_point(class_scope:context.ConnectionId) - private static final context.ContextOuterClass.ConnectionId DEFAULT_INSTANCE; - static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionId(); - } - - public static context.ContextOuterClass.ConnectionId getDefaultInstance() { - return DEFAULT_INSTANCE; - } - - private static final com.google.protobuf.Parser<ConnectionId> - PARSER = new com.google.protobuf.AbstractParser<ConnectionId>() { - @java.lang.Override - public ConnectionId parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return new ConnectionId(input, extensionRegistry); + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public java.util.List<context.ContextOuterClass.EndPointId> getPathHopsEndpointIdsList() { + if (pathHopsEndpointIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(pathHopsEndpointIds_); + } else { + return pathHopsEndpointIdsBuilder_.getMessageList(); + } } - }; - - public static com.google.protobuf.Parser<ConnectionId> parser() { - return PARSER; - } - - @java.lang.Override - public com.google.protobuf.Parser<ConnectionId> getParserForType() { - return PARSER; - } - - @java.lang.Override - public context.ContextOuterClass.ConnectionId getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - - } - - public interface ConnectionSettings_L0OrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ConnectionSettings_L0) - com.google.protobuf.MessageOrBuilder { - - /** - * <code>string lsp_symbolic_name = 1;</code> - * @return The lspSymbolicName. - */ - java.lang.String getLspSymbolicName(); - /** - * <code>string lsp_symbolic_name = 1;</code> - * @return The bytes for lspSymbolicName. - */ - com.google.protobuf.ByteString - getLspSymbolicNameBytes(); - } - /** - * Protobuf type {@code context.ConnectionSettings_L0} - */ - public static final class ConnectionSettings_L0 extends - com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ConnectionSettings_L0) - ConnectionSettings_L0OrBuilder { - private static final long serialVersionUID = 0L; - // Use ConnectionSettings_L0.newBuilder() to construct. - private ConnectionSettings_L0(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { - super(builder); - } - private ConnectionSettings_L0() { - lspSymbolicName_ = ""; - } - - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new ConnectionSettings_L0(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } - private ConnectionSettings_L0( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - this(); - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public int getPathHopsEndpointIdsCount() { + if (pathHopsEndpointIdsBuilder_ == null) { + return pathHopsEndpointIds_.size(); + } else { + return pathHopsEndpointIdsBuilder_.getCount(); + } } - 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: { - java.lang.String s = input.readStringRequireUtf8(); - - lspSymbolicName_ = s; - break; - } - default: { - if (!parseUnknownField( - input, unknownFields, extensionRegistry, tag)) { - done = true; - } - break; - } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointId getPathHopsEndpointIds(int index) { + if (pathHopsEndpointIdsBuilder_ == null) { + return pathHopsEndpointIds_.get(index); + } else { + return pathHopsEndpointIdsBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public Builder setPathHopsEndpointIds( + int index, context.ContextOuterClass.EndPointId value) { + if (pathHopsEndpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + ensurePathHopsEndpointIdsIsMutable(); + pathHopsEndpointIds_.set(index, value); + onChanged(); + } else { + pathHopsEndpointIdsBuilder_.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 { - this.unknownFields = unknownFields.build(); - makeExtensionsImmutable(); + return this; } - } - public static final com.google.protobuf.Descriptors.Descriptor - getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L0_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L0_fieldAccessorTable - .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionSettings_L0.class, context.ContextOuterClass.ConnectionSettings_L0.Builder.class); - } - - public static final int LSP_SYMBOLIC_NAME_FIELD_NUMBER = 1; - private volatile java.lang.Object lspSymbolicName_; - /** - * <code>string lsp_symbolic_name = 1;</code> - * @return The lspSymbolicName. - */ - @java.lang.Override - public java.lang.String getLspSymbolicName() { - java.lang.Object ref = lspSymbolicName_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - lspSymbolicName_ = s; - return s; + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public Builder setPathHopsEndpointIds( + int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (pathHopsEndpointIdsBuilder_ == null) { + ensurePathHopsEndpointIdsIsMutable(); + pathHopsEndpointIds_.set(index, builderForValue.build()); + onChanged(); + } else { + pathHopsEndpointIdsBuilder_.setMessage(index, builderForValue.build()); + } + return this; } - } - /** - * <code>string lsp_symbolic_name = 1;</code> - * @return The bytes for lspSymbolicName. - */ - @java.lang.Override - public com.google.protobuf.ByteString - getLspSymbolicNameBytes() { - java.lang.Object ref = lspSymbolicName_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - lspSymbolicName_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public Builder addPathHopsEndpointIds(context.ContextOuterClass.EndPointId value) { + if (pathHopsEndpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePathHopsEndpointIdsIsMutable(); + pathHopsEndpointIds_.add(value); + onChanged(); + } else { + pathHopsEndpointIdsBuilder_.addMessage(value); + } + return this; + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public Builder addPathHopsEndpointIds( + int index, context.ContextOuterClass.EndPointId value) { + if (pathHopsEndpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensurePathHopsEndpointIdsIsMutable(); + pathHopsEndpointIds_.add(index, value); + onChanged(); + } else { + pathHopsEndpointIdsBuilder_.addMessage(index, value); + } + return this; + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public Builder addPathHopsEndpointIds( + context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (pathHopsEndpointIdsBuilder_ == null) { + ensurePathHopsEndpointIdsIsMutable(); + pathHopsEndpointIds_.add(builderForValue.build()); + onChanged(); + } else { + pathHopsEndpointIdsBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public Builder addPathHopsEndpointIds( + int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (pathHopsEndpointIdsBuilder_ == null) { + ensurePathHopsEndpointIdsIsMutable(); + pathHopsEndpointIds_.add(index, builderForValue.build()); + onChanged(); + } else { + pathHopsEndpointIdsBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public Builder addAllPathHopsEndpointIds( + java.lang.Iterable<? extends context.ContextOuterClass.EndPointId> values) { + if (pathHopsEndpointIdsBuilder_ == null) { + ensurePathHopsEndpointIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, pathHopsEndpointIds_); + onChanged(); + } else { + pathHopsEndpointIdsBuilder_.addAllMessages(values); + } + return this; + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public Builder clearPathHopsEndpointIds() { + if (pathHopsEndpointIdsBuilder_ == null) { + pathHopsEndpointIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + pathHopsEndpointIdsBuilder_.clear(); + } + return this; + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public Builder removePathHopsEndpointIds(int index) { + if (pathHopsEndpointIdsBuilder_ == null) { + ensurePathHopsEndpointIdsIsMutable(); + pathHopsEndpointIds_.remove(index); + onChanged(); + } else { + pathHopsEndpointIdsBuilder_.remove(index); + } + return this; + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointId.Builder getPathHopsEndpointIdsBuilder( + int index) { + return getPathHopsEndpointIdsFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointIdOrBuilder getPathHopsEndpointIdsOrBuilder( + int index) { + if (pathHopsEndpointIdsBuilder_ == null) { + return pathHopsEndpointIds_.get(index); } else { + return pathHopsEndpointIdsBuilder_.getMessageOrBuilder(index); + } + } + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getPathHopsEndpointIdsOrBuilderList() { + if (pathHopsEndpointIdsBuilder_ != null) { + return pathHopsEndpointIdsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(pathHopsEndpointIds_); + } } - } - - 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 (!getLspSymbolicNameBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 1, lspSymbolicName_); + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointId.Builder addPathHopsEndpointIdsBuilder() { + return getPathHopsEndpointIdsFieldBuilder().addBuilder( + context.ContextOuterClass.EndPointId.getDefaultInstance()); } - unknownFields.writeTo(output); - } - - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; - - size = 0; - if (!getLspSymbolicNameBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, lspSymbolicName_); + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointId.Builder addPathHopsEndpointIdsBuilder( + int index) { + return getPathHopsEndpointIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.EndPointId.getDefaultInstance()); } - size += unknownFields.getSerializedSize(); - memoizedSize = size; - return size; - } - - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; + /** + * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + */ + public java.util.List<context.ContextOuterClass.EndPointId.Builder> + getPathHopsEndpointIdsBuilderList() { + return getPathHopsEndpointIdsFieldBuilder().getBuilderList(); } - if (!(obj instanceof context.ContextOuterClass.ConnectionSettings_L0)) { - return super.equals(obj); + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> + getPathHopsEndpointIdsFieldBuilder() { + if (pathHopsEndpointIdsBuilder_ == null) { + pathHopsEndpointIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( + pathHopsEndpointIds_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + pathHopsEndpointIds_ = null; + } + return pathHopsEndpointIdsBuilder_; } - context.ContextOuterClass.ConnectionSettings_L0 other = (context.ContextOuterClass.ConnectionSettings_L0) obj; - - if (!getLspSymbolicName() - .equals(other.getLspSymbolicName())) return false; - if (!unknownFields.equals(other.unknownFields)) return false; - return true; - } - @java.lang.Override - public int hashCode() { - if (memoizedHashCode != 0) { - return memoizedHashCode; + private java.util.List<context.ContextOuterClass.ServiceId> subServiceIds_ = + java.util.Collections.emptyList(); + private void ensureSubServiceIdsIsMutable() { + if (!((bitField0_ & 0x00000002) != 0)) { + subServiceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(subServiceIds_); + bitField0_ |= 0x00000002; + } } - int hash = 41; - hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + LSP_SYMBOLIC_NAME_FIELD_NUMBER; - hash = (53 * hash) + getLspSymbolicName().hashCode(); - hash = (29 * hash) + unknownFields.hashCode(); - memoizedHashCode = hash; - return hash; - } - - public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( - java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( - java.nio.ByteBuffer data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom( - byte[] data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static context.ContextOuterClass.ConnectionSettings_L0 parseFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseWithIOException(PARSER, input); - } - public static context.ContextOuterClass.ConnectionSettings_L0 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 context.ContextOuterClass.ConnectionSettings_L0 parseDelimitedFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseDelimitedWithIOException(PARSER, input); - } - public static context.ContextOuterClass.ConnectionSettings_L0 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 context.ContextOuterClass.ConnectionSettings_L0 parseFrom( - com.google.protobuf.CodedInputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseWithIOException(PARSER, input); - } - public static context.ContextOuterClass.ConnectionSettings_L0 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(context.ContextOuterClass.ConnectionSettings_L0 prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); - } - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE - ? new Builder() : new Builder().mergeFrom(this); - } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> subServiceIdsBuilder_; - @java.lang.Override - protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; - } - /** - * Protobuf type {@code context.ConnectionSettings_L0} - */ - public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ConnectionSettings_L0) - context.ContextOuterClass.ConnectionSettings_L0OrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor - getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L0_descriptor; + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + public java.util.List<context.ContextOuterClass.ServiceId> getSubServiceIdsList() { + if (subServiceIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(subServiceIds_); + } else { + return subServiceIdsBuilder_.getMessageList(); + } } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L0_fieldAccessorTable - .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionSettings_L0.class, context.ContextOuterClass.ConnectionSettings_L0.Builder.class); + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + public int getSubServiceIdsCount() { + if (subServiceIdsBuilder_ == null) { + return subServiceIds_.size(); + } else { + return subServiceIdsBuilder_.getCount(); + } } - - // Construct using context.ContextOuterClass.ConnectionSettings_L0.newBuilder() - private Builder() { - maybeForceBuilderInitialization(); + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + public context.ContextOuterClass.ServiceId getSubServiceIds(int index) { + if (subServiceIdsBuilder_ == null) { + return subServiceIds_.get(index); + } else { + return subServiceIdsBuilder_.getMessage(index); + } } - - private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - super(parent); - maybeForceBuilderInitialization(); + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + public Builder setSubServiceIds( + int index, context.ContextOuterClass.ServiceId value) { + if (subServiceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSubServiceIdsIsMutable(); + subServiceIds_.set(index, value); + onChanged(); + } else { + subServiceIdsBuilder_.setMessage(index, value); + } + return this; } - private void maybeForceBuilderInitialization() { - if (com.google.protobuf.GeneratedMessageV3 - .alwaysUseFieldBuilders) { + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + public Builder setSubServiceIds( + int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { + if (subServiceIdsBuilder_ == null) { + ensureSubServiceIdsIsMutable(); + subServiceIds_.set(index, builderForValue.build()); + onChanged(); + } else { + subServiceIdsBuilder_.setMessage(index, builderForValue.build()); } + return this; } - @java.lang.Override - public Builder clear() { - super.clear(); - lspSymbolicName_ = ""; - + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + public Builder addSubServiceIds(context.ContextOuterClass.ServiceId value) { + if (subServiceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSubServiceIdsIsMutable(); + subServiceIds_.add(value); + onChanged(); + } else { + subServiceIdsBuilder_.addMessage(value); + } return this; } - - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor - getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L0_descriptor; + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + public Builder addSubServiceIds( + int index, context.ContextOuterClass.ServiceId value) { + if (subServiceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSubServiceIdsIsMutable(); + subServiceIds_.add(index, value); + onChanged(); + } else { + subServiceIdsBuilder_.addMessage(index, value); + } + return this; } - - @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L0 getDefaultInstanceForType() { - return context.ContextOuterClass.ConnectionSettings_L0.getDefaultInstance(); + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + public Builder addSubServiceIds( + context.ContextOuterClass.ServiceId.Builder builderForValue) { + if (subServiceIdsBuilder_ == null) { + ensureSubServiceIdsIsMutable(); + subServiceIds_.add(builderForValue.build()); + onChanged(); + } else { + subServiceIdsBuilder_.addMessage(builderForValue.build()); + } + return this; } - - @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L0 build() { - context.ContextOuterClass.ConnectionSettings_L0 result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + public Builder addSubServiceIds( + int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { + if (subServiceIdsBuilder_ == null) { + ensureSubServiceIdsIsMutable(); + subServiceIds_.add(index, builderForValue.build()); + onChanged(); + } else { + subServiceIdsBuilder_.addMessage(index, builderForValue.build()); } - return result; + return this; } - - @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L0 buildPartial() { - context.ContextOuterClass.ConnectionSettings_L0 result = new context.ContextOuterClass.ConnectionSettings_L0(this); - result.lspSymbolicName_ = lspSymbolicName_; - onBuilt(); - return result; + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + public Builder addAllSubServiceIds( + java.lang.Iterable<? extends context.ContextOuterClass.ServiceId> values) { + if (subServiceIdsBuilder_ == null) { + ensureSubServiceIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, subServiceIds_); + onChanged(); + } else { + subServiceIdsBuilder_.addAllMessages(values); + } + return this; } - - @java.lang.Override - public Builder clone() { - return super.clone(); + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + public Builder clearSubServiceIds() { + if (subServiceIdsBuilder_ == null) { + subServiceIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + } else { + subServiceIdsBuilder_.clear(); + } + return this; } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + public Builder removeSubServiceIds(int index) { + if (subServiceIdsBuilder_ == null) { + ensureSubServiceIdsIsMutable(); + subServiceIds_.remove(index); + onChanged(); + } else { + subServiceIdsBuilder_.remove(index); + } + return this; } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + public context.ContextOuterClass.ServiceId.Builder getSubServiceIdsBuilder( + int index) { + return getSubServiceIdsFieldBuilder().getBuilder(index); } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + public context.ContextOuterClass.ServiceIdOrBuilder getSubServiceIdsOrBuilder( + int index) { + if (subServiceIdsBuilder_ == null) { + return subServiceIds_.get(index); } else { + return subServiceIdsBuilder_.getMessageOrBuilder(index); + } } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> + getSubServiceIdsOrBuilderList() { + if (subServiceIdsBuilder_ != null) { + return subServiceIdsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(subServiceIds_); + } } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + public context.ContextOuterClass.ServiceId.Builder addSubServiceIdsBuilder() { + return getSubServiceIdsFieldBuilder().addBuilder( + context.ContextOuterClass.ServiceId.getDefaultInstance()); } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ConnectionSettings_L0) { - return mergeFrom((context.ContextOuterClass.ConnectionSettings_L0)other); - } else { - super.mergeFrom(other); - return this; + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + public context.ContextOuterClass.ServiceId.Builder addSubServiceIdsBuilder( + int index) { + return getSubServiceIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.ServiceId.getDefaultInstance()); + } + /** + * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + */ + public java.util.List<context.ContextOuterClass.ServiceId.Builder> + getSubServiceIdsBuilderList() { + return getSubServiceIdsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> + getSubServiceIdsFieldBuilder() { + if (subServiceIdsBuilder_ == null) { + subServiceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder>( + subServiceIds_, + ((bitField0_ & 0x00000002) != 0), + getParentForChildren(), + isClean()); + subServiceIds_ = null; + } + return subServiceIdsBuilder_; + } + + private context.ContextOuterClass.ConnectionSettings settings_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionSettings, context.ContextOuterClass.ConnectionSettings.Builder, context.ContextOuterClass.ConnectionSettingsOrBuilder> settingsBuilder_; + /** + * <code>.context.ConnectionSettings settings = 5;</code> + * @return Whether the settings field is set. + */ + public boolean hasSettings() { + return settingsBuilder_ != null || settings_ != null; + } + /** + * <code>.context.ConnectionSettings settings = 5;</code> + * @return The settings. + */ + public context.ContextOuterClass.ConnectionSettings getSettings() { + if (settingsBuilder_ == null) { + return settings_ == null ? context.ContextOuterClass.ConnectionSettings.getDefaultInstance() : settings_; + } else { + return settingsBuilder_.getMessage(); } } - - public Builder mergeFrom(context.ContextOuterClass.ConnectionSettings_L0 other) { - if (other == context.ContextOuterClass.ConnectionSettings_L0.getDefaultInstance()) return this; - if (!other.getLspSymbolicName().isEmpty()) { - lspSymbolicName_ = other.lspSymbolicName_; + /** + * <code>.context.ConnectionSettings settings = 5;</code> + */ + public Builder setSettings(context.ContextOuterClass.ConnectionSettings value) { + if (settingsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + settings_ = value; onChanged(); + } else { + settingsBuilder_.setMessage(value); } - this.mergeUnknownFields(other.unknownFields); - onChanged(); - return this; - } - - @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 { - context.ContextOuterClass.ConnectionSettings_L0 parsedMessage = null; - try { - parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ConnectionSettings_L0) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); - } - } return this; } - - private java.lang.Object lspSymbolicName_ = ""; /** - * <code>string lsp_symbolic_name = 1;</code> - * @return The lspSymbolicName. + * <code>.context.ConnectionSettings settings = 5;</code> */ - public java.lang.String getLspSymbolicName() { - java.lang.Object ref = lspSymbolicName_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - lspSymbolicName_ = s; - return s; + public Builder setSettings( + context.ContextOuterClass.ConnectionSettings.Builder builderForValue) { + if (settingsBuilder_ == null) { + settings_ = builderForValue.build(); + onChanged(); } else { - return (java.lang.String) ref; + settingsBuilder_.setMessage(builderForValue.build()); } + + return this; } /** - * <code>string lsp_symbolic_name = 1;</code> - * @return The bytes for lspSymbolicName. + * <code>.context.ConnectionSettings settings = 5;</code> */ - public com.google.protobuf.ByteString - getLspSymbolicNameBytes() { - java.lang.Object ref = lspSymbolicName_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - lspSymbolicName_ = b; - return b; + public Builder mergeSettings(context.ContextOuterClass.ConnectionSettings value) { + if (settingsBuilder_ == null) { + if (settings_ != null) { + settings_ = + context.ContextOuterClass.ConnectionSettings.newBuilder(settings_).mergeFrom(value).buildPartial(); + } else { + settings_ = value; + } + onChanged(); } else { - return (com.google.protobuf.ByteString) ref; + settingsBuilder_.mergeFrom(value); } + + return this; } /** - * <code>string lsp_symbolic_name = 1;</code> - * @param value The lspSymbolicName to set. - * @return This builder for chaining. + * <code>.context.ConnectionSettings settings = 5;</code> */ - public Builder setLspSymbolicName( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - lspSymbolicName_ = value; - onChanged(); + public Builder clearSettings() { + if (settingsBuilder_ == null) { + settings_ = null; + onChanged(); + } else { + settings_ = null; + settingsBuilder_ = null; + } + return this; } /** - * <code>string lsp_symbolic_name = 1;</code> - * @return This builder for chaining. + * <code>.context.ConnectionSettings settings = 5;</code> */ - public Builder clearLspSymbolicName() { + public context.ContextOuterClass.ConnectionSettings.Builder getSettingsBuilder() { - lspSymbolicName_ = getDefaultInstance().getLspSymbolicName(); onChanged(); - return this; + return getSettingsFieldBuilder().getBuilder(); } /** - * <code>string lsp_symbolic_name = 1;</code> - * @param value The bytes for lspSymbolicName to set. - * @return This builder for chaining. + * <code>.context.ConnectionSettings settings = 5;</code> */ - public Builder setLspSymbolicNameBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - lspSymbolicName_ = value; - onChanged(); - return this; + public context.ContextOuterClass.ConnectionSettingsOrBuilder getSettingsOrBuilder() { + if (settingsBuilder_ != null) { + return settingsBuilder_.getMessageOrBuilder(); + } else { + return settings_ == null ? + context.ContextOuterClass.ConnectionSettings.getDefaultInstance() : settings_; + } + } + /** + * <code>.context.ConnectionSettings settings = 5;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionSettings, context.ContextOuterClass.ConnectionSettings.Builder, context.ContextOuterClass.ConnectionSettingsOrBuilder> + getSettingsFieldBuilder() { + if (settingsBuilder_ == null) { + settingsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionSettings, context.ContextOuterClass.ConnectionSettings.Builder, context.ContextOuterClass.ConnectionSettingsOrBuilder>( + getSettings(), + getParentForChildren(), + isClean()); + settings_ = null; + } + return settingsBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -38434,120 +51020,95 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ConnectionSettings_L0) + // @@protoc_insertion_point(builder_scope:context.Connection) } - // @@protoc_insertion_point(class_scope:context.ConnectionSettings_L0) - private static final context.ContextOuterClass.ConnectionSettings_L0 DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Connection) + private static final context.ContextOuterClass.Connection DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionSettings_L0(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Connection(); } - public static context.ContextOuterClass.ConnectionSettings_L0 getDefaultInstance() { + public static context.ContextOuterClass.Connection getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ConnectionSettings_L0> - PARSER = new com.google.protobuf.AbstractParser<ConnectionSettings_L0>() { + private static final com.google.protobuf.Parser<Connection> + PARSER = new com.google.protobuf.AbstractParser<Connection>() { @java.lang.Override - public ConnectionSettings_L0 parsePartialFrom( + public Connection parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ConnectionSettings_L0(input, extensionRegistry); + return new Connection(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ConnectionSettings_L0> parser() { + public static com.google.protobuf.Parser<Connection> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ConnectionSettings_L0> getParserForType() { + public com.google.protobuf.Parser<Connection> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L0 getDefaultInstanceForType() { + public context.ContextOuterClass.Connection getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ConnectionSettings_L2OrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ConnectionSettings_L2) + public interface ConnectionIdListOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ConnectionIdList) com.google.protobuf.MessageOrBuilder { /** - * <code>string src_mac_address = 1;</code> - * @return The srcMacAddress. - */ - java.lang.String getSrcMacAddress(); - /** - * <code>string src_mac_address = 1;</code> - * @return The bytes for srcMacAddress. - */ - com.google.protobuf.ByteString - getSrcMacAddressBytes(); - - /** - * <code>string dst_mac_address = 2;</code> - * @return The dstMacAddress. - */ - java.lang.String getDstMacAddress(); - /** - * <code>string dst_mac_address = 2;</code> - * @return The bytes for dstMacAddress. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - com.google.protobuf.ByteString - getDstMacAddressBytes(); - + java.util.List<context.ContextOuterClass.ConnectionId> + getConnectionIdsList(); /** - * <code>uint32 ether_type = 3;</code> - * @return The etherType. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - int getEtherType(); - + context.ContextOuterClass.ConnectionId getConnectionIds(int index); /** - * <code>uint32 vlan_id = 4;</code> - * @return The vlanId. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - int getVlanId(); - + int getConnectionIdsCount(); /** - * <code>uint32 mpls_label = 5;</code> - * @return The mplsLabel. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - int getMplsLabel(); - + java.util.List<? extends context.ContextOuterClass.ConnectionIdOrBuilder> + getConnectionIdsOrBuilderList(); /** - * <code>uint32 mpls_traffic_class = 6;</code> - * @return The mplsTrafficClass. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - int getMplsTrafficClass(); + context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdsOrBuilder( + int index); } /** - * Protobuf type {@code context.ConnectionSettings_L2} + * Protobuf type {@code context.ConnectionIdList} */ - public static final class ConnectionSettings_L2 extends + public static final class ConnectionIdList extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ConnectionSettings_L2) - ConnectionSettings_L2OrBuilder { + // @@protoc_insertion_point(message_implements:context.ConnectionIdList) + ConnectionIdListOrBuilder { private static final long serialVersionUID = 0L; - // Use ConnectionSettings_L2.newBuilder() to construct. - private ConnectionSettings_L2(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ConnectionIdList.newBuilder() to construct. + private ConnectionIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ConnectionSettings_L2() { - srcMacAddress_ = ""; - dstMacAddress_ = ""; + private ConnectionIdList() { + connectionIds_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ConnectionSettings_L2(); + return new ConnectionIdList(); } @java.lang.Override @@ -38555,7 +51116,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ConnectionSettings_L2( + private ConnectionIdList( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -38563,6 +51124,7 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } + int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -38574,35 +51136,12 @@ public final class ContextOuterClass { done = true; break; case 10: { - java.lang.String s = input.readStringRequireUtf8(); - - srcMacAddress_ = s; - break; - } - case 18: { - java.lang.String s = input.readStringRequireUtf8(); - - dstMacAddress_ = s; - break; - } - case 24: { - - etherType_ = input.readUInt32(); - break; - } - case 32: { - - vlanId_ = input.readUInt32(); - break; - } - case 40: { - - mplsLabel_ = input.readUInt32(); - break; - } - case 48: { - - mplsTrafficClass_ = input.readUInt32(); + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + connectionIds_ = new java.util.ArrayList<context.ContextOuterClass.ConnectionId>(); + mutable_bitField0_ |= 0x00000001; + } + connectionIds_.add( + input.readMessage(context.ContextOuterClass.ConnectionId.parser(), extensionRegistry)); break; } default: { @@ -38620,141 +51159,64 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { + if (((mutable_bitField0_ & 0x00000001) != 0)) { + connectionIds_ = java.util.Collections.unmodifiableList(connectionIds_); + } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L2_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionIdList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L2_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionIdList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionSettings_L2.class, context.ContextOuterClass.ConnectionSettings_L2.Builder.class); - } - - public static final int SRC_MAC_ADDRESS_FIELD_NUMBER = 1; - private volatile java.lang.Object srcMacAddress_; - /** - * <code>string src_mac_address = 1;</code> - * @return The srcMacAddress. - */ - @java.lang.Override - public java.lang.String getSrcMacAddress() { - java.lang.Object ref = srcMacAddress_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - srcMacAddress_ = s; - return s; - } - } - /** - * <code>string src_mac_address = 1;</code> - * @return The bytes for srcMacAddress. - */ - @java.lang.Override - public com.google.protobuf.ByteString - getSrcMacAddressBytes() { - java.lang.Object ref = srcMacAddress_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - srcMacAddress_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + context.ContextOuterClass.ConnectionIdList.class, context.ContextOuterClass.ConnectionIdList.Builder.class); } - public static final int DST_MAC_ADDRESS_FIELD_NUMBER = 2; - private volatile java.lang.Object dstMacAddress_; - /** - * <code>string dst_mac_address = 2;</code> - * @return The dstMacAddress. - */ - @java.lang.Override - public java.lang.String getDstMacAddress() { - java.lang.Object ref = dstMacAddress_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - dstMacAddress_ = s; - return s; - } - } + public static final int CONNECTION_IDS_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.ConnectionId> connectionIds_; /** - * <code>string dst_mac_address = 2;</code> - * @return The bytes for dstMacAddress. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ @java.lang.Override - public com.google.protobuf.ByteString - getDstMacAddressBytes() { - java.lang.Object ref = dstMacAddress_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - dstMacAddress_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public java.util.List<context.ContextOuterClass.ConnectionId> getConnectionIdsList() { + return connectionIds_; } - - public static final int ETHER_TYPE_FIELD_NUMBER = 3; - private int etherType_; /** - * <code>uint32 ether_type = 3;</code> - * @return The etherType. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ @java.lang.Override - public int getEtherType() { - return etherType_; + public java.util.List<? extends context.ContextOuterClass.ConnectionIdOrBuilder> + getConnectionIdsOrBuilderList() { + return connectionIds_; } - - public static final int VLAN_ID_FIELD_NUMBER = 4; - private int vlanId_; /** - * <code>uint32 vlan_id = 4;</code> - * @return The vlanId. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ @java.lang.Override - public int getVlanId() { - return vlanId_; + public int getConnectionIdsCount() { + return connectionIds_.size(); } - - public static final int MPLS_LABEL_FIELD_NUMBER = 5; - private int mplsLabel_; /** - * <code>uint32 mpls_label = 5;</code> - * @return The mplsLabel. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ @java.lang.Override - public int getMplsLabel() { - return mplsLabel_; + public context.ContextOuterClass.ConnectionId getConnectionIds(int index) { + return connectionIds_.get(index); } - - public static final int MPLS_TRAFFIC_CLASS_FIELD_NUMBER = 6; - private int mplsTrafficClass_; /** - * <code>uint32 mpls_traffic_class = 6;</code> - * @return The mplsTrafficClass. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ @java.lang.Override - public int getMplsTrafficClass() { - return mplsTrafficClass_; + public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdsOrBuilder( + int index) { + return connectionIds_.get(index); } private byte memoizedIsInitialized = -1; @@ -38771,23 +51233,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getSrcMacAddressBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 1, srcMacAddress_); - } - if (!getDstMacAddressBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, dstMacAddress_); - } - if (etherType_ != 0) { - output.writeUInt32(3, etherType_); - } - if (vlanId_ != 0) { - output.writeUInt32(4, vlanId_); - } - if (mplsLabel_ != 0) { - output.writeUInt32(5, mplsLabel_); - } - if (mplsTrafficClass_ != 0) { - output.writeUInt32(6, mplsTrafficClass_); + for (int i = 0; i < connectionIds_.size(); i++) { + output.writeMessage(1, connectionIds_.get(i)); } unknownFields.writeTo(output); } @@ -38798,27 +51245,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (!getSrcMacAddressBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, srcMacAddress_); - } - if (!getDstMacAddressBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, dstMacAddress_); - } - if (etherType_ != 0) { - size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(3, etherType_); - } - if (vlanId_ != 0) { - size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(4, vlanId_); - } - if (mplsLabel_ != 0) { - size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(5, mplsLabel_); - } - if (mplsTrafficClass_ != 0) { + for (int i = 0; i < connectionIds_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(6, mplsTrafficClass_); + .computeMessageSize(1, connectionIds_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -38830,23 +51259,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ConnectionSettings_L2)) { + if (!(obj instanceof context.ContextOuterClass.ConnectionIdList)) { return super.equals(obj); } - context.ContextOuterClass.ConnectionSettings_L2 other = (context.ContextOuterClass.ConnectionSettings_L2) obj; + context.ContextOuterClass.ConnectionIdList other = (context.ContextOuterClass.ConnectionIdList) obj; - if (!getSrcMacAddress() - .equals(other.getSrcMacAddress())) return false; - if (!getDstMacAddress() - .equals(other.getDstMacAddress())) return false; - if (getEtherType() - != other.getEtherType()) return false; - if (getVlanId() - != other.getVlanId()) return false; - if (getMplsLabel() - != other.getMplsLabel()) return false; - if (getMplsTrafficClass() - != other.getMplsTrafficClass()) return false; + if (!getConnectionIdsList() + .equals(other.getConnectionIdsList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -38858,86 +51277,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + SRC_MAC_ADDRESS_FIELD_NUMBER; - hash = (53 * hash) + getSrcMacAddress().hashCode(); - hash = (37 * hash) + DST_MAC_ADDRESS_FIELD_NUMBER; - hash = (53 * hash) + getDstMacAddress().hashCode(); - hash = (37 * hash) + ETHER_TYPE_FIELD_NUMBER; - hash = (53 * hash) + getEtherType(); - hash = (37 * hash) + VLAN_ID_FIELD_NUMBER; - hash = (53 * hash) + getVlanId(); - hash = (37 * hash) + MPLS_LABEL_FIELD_NUMBER; - hash = (53 * hash) + getMplsLabel(); - hash = (37 * hash) + MPLS_TRAFFIC_CLASS_FIELD_NUMBER; - hash = (53 * hash) + getMplsTrafficClass(); + if (getConnectionIdsCount() > 0) { + hash = (37 * hash) + CONNECTION_IDS_FIELD_NUMBER; + hash = (53 * hash) + getConnectionIdsList().hashCode(); + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( + public static context.ContextOuterClass.ConnectionIdList parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( + public static context.ContextOuterClass.ConnectionIdList parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( + public static context.ContextOuterClass.ConnectionIdList parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( + public static context.ContextOuterClass.ConnectionIdList parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom(byte[] data) + public static context.ContextOuterClass.ConnectionIdList parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( + public static context.ContextOuterClass.ConnectionIdList parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionIdList parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( + public static context.ContextOuterClass.ConnectionIdList 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 context.ContextOuterClass.ConnectionSettings_L2 parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionIdList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings_L2 parseDelimitedFrom( + public static context.ContextOuterClass.ConnectionIdList 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 context.ContextOuterClass.ConnectionSettings_L2 parseFrom( + public static context.ContextOuterClass.ConnectionIdList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings_L2 parseFrom( + public static context.ContextOuterClass.ConnectionIdList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -38950,7 +51361,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ConnectionSettings_L2 prototype) { + public static Builder newBuilder(context.ContextOuterClass.ConnectionIdList prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -38966,26 +51377,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ConnectionSettings_L2} + * Protobuf type {@code context.ConnectionIdList} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ConnectionSettings_L2) - context.ContextOuterClass.ConnectionSettings_L2OrBuilder { + // @@protoc_insertion_point(builder_implements:context.ConnectionIdList) + context.ContextOuterClass.ConnectionIdListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L2_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionIdList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L2_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionIdList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionSettings_L2.class, context.ContextOuterClass.ConnectionSettings_L2.Builder.class); + context.ContextOuterClass.ConnectionIdList.class, context.ContextOuterClass.ConnectionIdList.Builder.class); } - // Construct using context.ContextOuterClass.ConnectionSettings_L2.newBuilder() + // Construct using context.ContextOuterClass.ConnectionIdList.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -38998,40 +51409,35 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { + getConnectionIdsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - srcMacAddress_ = ""; - - dstMacAddress_ = ""; - - etherType_ = 0; - - vlanId_ = 0; - - mplsLabel_ = 0; - - mplsTrafficClass_ = 0; - + if (connectionIdsBuilder_ == null) { + connectionIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + } else { + connectionIdsBuilder_.clear(); + } return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L2_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionIdList_descriptor; } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L2 getDefaultInstanceForType() { - return context.ContextOuterClass.ConnectionSettings_L2.getDefaultInstance(); + public context.ContextOuterClass.ConnectionIdList getDefaultInstanceForType() { + return context.ContextOuterClass.ConnectionIdList.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L2 build() { - context.ContextOuterClass.ConnectionSettings_L2 result = buildPartial(); + public context.ContextOuterClass.ConnectionIdList build() { + context.ContextOuterClass.ConnectionIdList result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -39039,14 +51445,18 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L2 buildPartial() { - context.ContextOuterClass.ConnectionSettings_L2 result = new context.ContextOuterClass.ConnectionSettings_L2(this); - result.srcMacAddress_ = srcMacAddress_; - result.dstMacAddress_ = dstMacAddress_; - result.etherType_ = etherType_; - result.vlanId_ = vlanId_; - result.mplsLabel_ = mplsLabel_; - result.mplsTrafficClass_ = mplsTrafficClass_; + public context.ContextOuterClass.ConnectionIdList buildPartial() { + context.ContextOuterClass.ConnectionIdList result = new context.ContextOuterClass.ConnectionIdList(this); + int from_bitField0_ = bitField0_; + if (connectionIdsBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + connectionIds_ = java.util.Collections.unmodifiableList(connectionIds_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.connectionIds_ = connectionIds_; + } else { + result.connectionIds_ = connectionIdsBuilder_.build(); + } onBuilt(); return result; } @@ -39085,35 +51495,41 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ConnectionSettings_L2) { - return mergeFrom((context.ContextOuterClass.ConnectionSettings_L2)other); + if (other instanceof context.ContextOuterClass.ConnectionIdList) { + return mergeFrom((context.ContextOuterClass.ConnectionIdList)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ConnectionSettings_L2 other) { - if (other == context.ContextOuterClass.ConnectionSettings_L2.getDefaultInstance()) return this; - if (!other.getSrcMacAddress().isEmpty()) { - srcMacAddress_ = other.srcMacAddress_; - onChanged(); - } - if (!other.getDstMacAddress().isEmpty()) { - dstMacAddress_ = other.dstMacAddress_; - onChanged(); - } - if (other.getEtherType() != 0) { - setEtherType(other.getEtherType()); - } - if (other.getVlanId() != 0) { - setVlanId(other.getVlanId()); - } - if (other.getMplsLabel() != 0) { - setMplsLabel(other.getMplsLabel()); - } - if (other.getMplsTrafficClass() != 0) { - setMplsTrafficClass(other.getMplsTrafficClass()); + public Builder mergeFrom(context.ContextOuterClass.ConnectionIdList other) { + if (other == context.ContextOuterClass.ConnectionIdList.getDefaultInstance()) return this; + if (connectionIdsBuilder_ == null) { + if (!other.connectionIds_.isEmpty()) { + if (connectionIds_.isEmpty()) { + connectionIds_ = other.connectionIds_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureConnectionIdsIsMutable(); + connectionIds_.addAll(other.connectionIds_); + } + onChanged(); + } + } else { + if (!other.connectionIds_.isEmpty()) { + if (connectionIdsBuilder_.isEmpty()) { + connectionIdsBuilder_.dispose(); + connectionIdsBuilder_ = null; + connectionIds_ = other.connectionIds_; + bitField0_ = (bitField0_ & ~0x00000001); + connectionIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getConnectionIdsFieldBuilder() : null; + } else { + connectionIdsBuilder_.addAllMessages(other.connectionIds_); + } + } } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -39130,11 +51546,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ConnectionSettings_L2 parsedMessage = null; + context.ContextOuterClass.ConnectionIdList parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ConnectionSettings_L2) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ConnectionIdList) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -39143,281 +51559,246 @@ public final class ContextOuterClass { } return this; } + private int bitField0_; + + private java.util.List<context.ContextOuterClass.ConnectionId> connectionIds_ = + java.util.Collections.emptyList(); + private void ensureConnectionIdsIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + connectionIds_ = new java.util.ArrayList<context.ContextOuterClass.ConnectionId>(connectionIds_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> connectionIdsBuilder_; - private java.lang.Object srcMacAddress_ = ""; /** - * <code>string src_mac_address = 1;</code> - * @return The srcMacAddress. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - public java.lang.String getSrcMacAddress() { - java.lang.Object ref = srcMacAddress_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - srcMacAddress_ = s; - return s; + public java.util.List<context.ContextOuterClass.ConnectionId> getConnectionIdsList() { + if (connectionIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(connectionIds_); } else { - return (java.lang.String) ref; + return connectionIdsBuilder_.getMessageList(); } } /** - * <code>string src_mac_address = 1;</code> - * @return The bytes for srcMacAddress. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - public com.google.protobuf.ByteString - getSrcMacAddressBytes() { - java.lang.Object ref = srcMacAddress_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - srcMacAddress_ = b; - return b; + public int getConnectionIdsCount() { + if (connectionIdsBuilder_ == null) { + return connectionIds_.size(); } else { - return (com.google.protobuf.ByteString) ref; + return connectionIdsBuilder_.getCount(); } } /** - * <code>string src_mac_address = 1;</code> - * @param value The srcMacAddress to set. - * @return This builder for chaining. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - public Builder setSrcMacAddress( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - srcMacAddress_ = value; - onChanged(); - return this; + public context.ContextOuterClass.ConnectionId getConnectionIds(int index) { + if (connectionIdsBuilder_ == null) { + return connectionIds_.get(index); + } else { + return connectionIdsBuilder_.getMessage(index); + } } /** - * <code>string src_mac_address = 1;</code> - * @return This builder for chaining. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - public Builder clearSrcMacAddress() { - - srcMacAddress_ = getDefaultInstance().getSrcMacAddress(); - onChanged(); + public Builder setConnectionIds( + int index, context.ContextOuterClass.ConnectionId value) { + if (connectionIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConnectionIdsIsMutable(); + connectionIds_.set(index, value); + onChanged(); + } else { + connectionIdsBuilder_.setMessage(index, value); + } return this; } /** - * <code>string src_mac_address = 1;</code> - * @param value The bytes for srcMacAddress to set. - * @return This builder for chaining. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - public Builder setSrcMacAddressBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - srcMacAddress_ = value; - onChanged(); + public Builder setConnectionIds( + int index, context.ContextOuterClass.ConnectionId.Builder builderForValue) { + if (connectionIdsBuilder_ == null) { + ensureConnectionIdsIsMutable(); + connectionIds_.set(index, builderForValue.build()); + onChanged(); + } else { + connectionIdsBuilder_.setMessage(index, builderForValue.build()); + } return this; } - - private java.lang.Object dstMacAddress_ = ""; /** - * <code>string dst_mac_address = 2;</code> - * @return The dstMacAddress. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - public java.lang.String getDstMacAddress() { - java.lang.Object ref = dstMacAddress_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - dstMacAddress_ = s; - return s; + public Builder addConnectionIds(context.ContextOuterClass.ConnectionId value) { + if (connectionIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConnectionIdsIsMutable(); + connectionIds_.add(value); + onChanged(); } else { - return (java.lang.String) ref; + connectionIdsBuilder_.addMessage(value); } + return this; } /** - * <code>string dst_mac_address = 2;</code> - * @return The bytes for dstMacAddress. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - public com.google.protobuf.ByteString - getDstMacAddressBytes() { - java.lang.Object ref = dstMacAddress_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - dstMacAddress_ = b; - return b; + public Builder addConnectionIds( + int index, context.ContextOuterClass.ConnectionId value) { + if (connectionIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConnectionIdsIsMutable(); + connectionIds_.add(index, value); + onChanged(); } else { - return (com.google.protobuf.ByteString) ref; + connectionIdsBuilder_.addMessage(index, value); } - } - /** - * <code>string dst_mac_address = 2;</code> - * @param value The dstMacAddress to set. - * @return This builder for chaining. - */ - public Builder setDstMacAddress( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - dstMacAddress_ = value; - onChanged(); return this; } /** - * <code>string dst_mac_address = 2;</code> - * @return This builder for chaining. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - public Builder clearDstMacAddress() { - - dstMacAddress_ = getDefaultInstance().getDstMacAddress(); - onChanged(); + public Builder addConnectionIds( + context.ContextOuterClass.ConnectionId.Builder builderForValue) { + if (connectionIdsBuilder_ == null) { + ensureConnectionIdsIsMutable(); + connectionIds_.add(builderForValue.build()); + onChanged(); + } else { + connectionIdsBuilder_.addMessage(builderForValue.build()); + } return this; } /** - * <code>string dst_mac_address = 2;</code> - * @param value The bytes for dstMacAddress to set. - * @return This builder for chaining. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - public Builder setDstMacAddressBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - dstMacAddress_ = value; - onChanged(); + public Builder addConnectionIds( + int index, context.ContextOuterClass.ConnectionId.Builder builderForValue) { + if (connectionIdsBuilder_ == null) { + ensureConnectionIdsIsMutable(); + connectionIds_.add(index, builderForValue.build()); + onChanged(); + } else { + connectionIdsBuilder_.addMessage(index, builderForValue.build()); + } return this; } - - private int etherType_ ; - /** - * <code>uint32 ether_type = 3;</code> - * @return The etherType. - */ - @java.lang.Override - public int getEtherType() { - return etherType_; - } /** - * <code>uint32 ether_type = 3;</code> - * @param value The etherType to set. - * @return This builder for chaining. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - public Builder setEtherType(int value) { - - etherType_ = value; - onChanged(); + public Builder addAllConnectionIds( + java.lang.Iterable<? extends context.ContextOuterClass.ConnectionId> values) { + if (connectionIdsBuilder_ == null) { + ensureConnectionIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, connectionIds_); + onChanged(); + } else { + connectionIdsBuilder_.addAllMessages(values); + } return this; } /** - * <code>uint32 ether_type = 3;</code> - * @return This builder for chaining. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - public Builder clearEtherType() { - - etherType_ = 0; - onChanged(); + public Builder clearConnectionIds() { + if (connectionIdsBuilder_ == null) { + connectionIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + connectionIdsBuilder_.clear(); + } return this; } - - private int vlanId_ ; - /** - * <code>uint32 vlan_id = 4;</code> - * @return The vlanId. - */ - @java.lang.Override - public int getVlanId() { - return vlanId_; - } /** - * <code>uint32 vlan_id = 4;</code> - * @param value The vlanId to set. - * @return This builder for chaining. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - public Builder setVlanId(int value) { - - vlanId_ = value; - onChanged(); + public Builder removeConnectionIds(int index) { + if (connectionIdsBuilder_ == null) { + ensureConnectionIdsIsMutable(); + connectionIds_.remove(index); + onChanged(); + } else { + connectionIdsBuilder_.remove(index); + } return this; } /** - * <code>uint32 vlan_id = 4;</code> - * @return This builder for chaining. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - public Builder clearVlanId() { - - vlanId_ = 0; - onChanged(); - return this; + public context.ContextOuterClass.ConnectionId.Builder getConnectionIdsBuilder( + int index) { + return getConnectionIdsFieldBuilder().getBuilder(index); } - - private int mplsLabel_ ; /** - * <code>uint32 mpls_label = 5;</code> - * @return The mplsLabel. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - @java.lang.Override - public int getMplsLabel() { - return mplsLabel_; + public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdsOrBuilder( + int index) { + if (connectionIdsBuilder_ == null) { + return connectionIds_.get(index); } else { + return connectionIdsBuilder_.getMessageOrBuilder(index); + } } /** - * <code>uint32 mpls_label = 5;</code> - * @param value The mplsLabel to set. - * @return This builder for chaining. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - public Builder setMplsLabel(int value) { - - mplsLabel_ = value; - onChanged(); - return this; + public java.util.List<? extends context.ContextOuterClass.ConnectionIdOrBuilder> + getConnectionIdsOrBuilderList() { + if (connectionIdsBuilder_ != null) { + return connectionIdsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(connectionIds_); + } } /** - * <code>uint32 mpls_label = 5;</code> - * @return This builder for chaining. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - public Builder clearMplsLabel() { - - mplsLabel_ = 0; - onChanged(); - return this; + public context.ContextOuterClass.ConnectionId.Builder addConnectionIdsBuilder() { + return getConnectionIdsFieldBuilder().addBuilder( + context.ContextOuterClass.ConnectionId.getDefaultInstance()); } - - private int mplsTrafficClass_ ; /** - * <code>uint32 mpls_traffic_class = 6;</code> - * @return The mplsTrafficClass. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - @java.lang.Override - public int getMplsTrafficClass() { - return mplsTrafficClass_; + public context.ContextOuterClass.ConnectionId.Builder addConnectionIdsBuilder( + int index) { + return getConnectionIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.ConnectionId.getDefaultInstance()); } /** - * <code>uint32 mpls_traffic_class = 6;</code> - * @param value The mplsTrafficClass to set. - * @return This builder for chaining. + * <code>repeated .context.ConnectionId connection_ids = 1;</code> */ - public Builder setMplsTrafficClass(int value) { - - mplsTrafficClass_ = value; - onChanged(); - return this; + public java.util.List<context.ContextOuterClass.ConnectionId.Builder> + getConnectionIdsBuilderList() { + return getConnectionIdsFieldBuilder().getBuilderList(); } - /** - * <code>uint32 mpls_traffic_class = 6;</code> - * @return This builder for chaining. - */ - public Builder clearMplsTrafficClass() { - - mplsTrafficClass_ = 0; - onChanged(); - return this; + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> + getConnectionIdsFieldBuilder() { + if (connectionIdsBuilder_ == null) { + connectionIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder>( + connectionIds_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + connectionIds_ = null; + } + return connectionIdsBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -39432,114 +51813,95 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ConnectionSettings_L2) + // @@protoc_insertion_point(builder_scope:context.ConnectionIdList) } - // @@protoc_insertion_point(class_scope:context.ConnectionSettings_L2) - private static final context.ContextOuterClass.ConnectionSettings_L2 DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ConnectionIdList) + private static final context.ContextOuterClass.ConnectionIdList DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionSettings_L2(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionIdList(); } - public static context.ContextOuterClass.ConnectionSettings_L2 getDefaultInstance() { + public static context.ContextOuterClass.ConnectionIdList getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ConnectionSettings_L2> - PARSER = new com.google.protobuf.AbstractParser<ConnectionSettings_L2>() { + private static final com.google.protobuf.Parser<ConnectionIdList> + PARSER = new com.google.protobuf.AbstractParser<ConnectionIdList>() { @java.lang.Override - public ConnectionSettings_L2 parsePartialFrom( + public ConnectionIdList parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ConnectionSettings_L2(input, extensionRegistry); + return new ConnectionIdList(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ConnectionSettings_L2> parser() { + public static com.google.protobuf.Parser<ConnectionIdList> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ConnectionSettings_L2> getParserForType() { + public com.google.protobuf.Parser<ConnectionIdList> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L2 getDefaultInstanceForType() { + public context.ContextOuterClass.ConnectionIdList getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ConnectionSettings_L3OrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ConnectionSettings_L3) + public interface ConnectionListOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ConnectionList) com.google.protobuf.MessageOrBuilder { /** - * <code>string src_ip_address = 1;</code> - * @return The srcIpAddress. - */ - java.lang.String getSrcIpAddress(); - /** - * <code>string src_ip_address = 1;</code> - * @return The bytes for srcIpAddress. - */ - com.google.protobuf.ByteString - getSrcIpAddressBytes(); - - /** - * <code>string dst_ip_address = 2;</code> - * @return The dstIpAddress. + * <code>repeated .context.Connection connections = 1;</code> */ - java.lang.String getDstIpAddress(); + java.util.List<context.ContextOuterClass.Connection> + getConnectionsList(); /** - * <code>string dst_ip_address = 2;</code> - * @return The bytes for dstIpAddress. + * <code>repeated .context.Connection connections = 1;</code> */ - com.google.protobuf.ByteString - getDstIpAddressBytes(); - + context.ContextOuterClass.Connection getConnections(int index); /** - * <code>uint32 dscp = 3;</code> - * @return The dscp. + * <code>repeated .context.Connection connections = 1;</code> */ - int getDscp(); - + int getConnectionsCount(); /** - * <code>uint32 protocol = 4;</code> - * @return The protocol. + * <code>repeated .context.Connection connections = 1;</code> */ - int getProtocol(); - + java.util.List<? extends context.ContextOuterClass.ConnectionOrBuilder> + getConnectionsOrBuilderList(); /** - * <code>uint32 ttl = 5;</code> - * @return The ttl. + * <code>repeated .context.Connection connections = 1;</code> */ - int getTtl(); + context.ContextOuterClass.ConnectionOrBuilder getConnectionsOrBuilder( + int index); } /** - * Protobuf type {@code context.ConnectionSettings_L3} + * Protobuf type {@code context.ConnectionList} */ - public static final class ConnectionSettings_L3 extends + public static final class ConnectionList extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ConnectionSettings_L3) - ConnectionSettings_L3OrBuilder { + // @@protoc_insertion_point(message_implements:context.ConnectionList) + ConnectionListOrBuilder { private static final long serialVersionUID = 0L; - // Use ConnectionSettings_L3.newBuilder() to construct. - private ConnectionSettings_L3(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ConnectionList.newBuilder() to construct. + private ConnectionList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ConnectionSettings_L3() { - srcIpAddress_ = ""; - dstIpAddress_ = ""; + private ConnectionList() { + connections_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ConnectionSettings_L3(); + return new ConnectionList(); } @java.lang.Override @@ -39547,7 +51909,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ConnectionSettings_L3( + private ConnectionList( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -39555,6 +51917,7 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } + int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -39566,30 +51929,12 @@ public final class ContextOuterClass { done = true; break; case 10: { - java.lang.String s = input.readStringRequireUtf8(); - - srcIpAddress_ = s; - break; - } - case 18: { - java.lang.String s = input.readStringRequireUtf8(); - - dstIpAddress_ = s; - break; - } - case 24: { - - dscp_ = input.readUInt32(); - break; - } - case 32: { - - protocol_ = input.readUInt32(); - break; - } - case 40: { - - ttl_ = input.readUInt32(); + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + connections_ = new java.util.ArrayList<context.ContextOuterClass.Connection>(); + mutable_bitField0_ |= 0x00000001; + } + connections_.add( + input.readMessage(context.ContextOuterClass.Connection.parser(), extensionRegistry)); break; } default: { @@ -39607,130 +51952,64 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { + if (((mutable_bitField0_ & 0x00000001) != 0)) { + connections_ = java.util.Collections.unmodifiableList(connections_); + } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L3_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L3_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionSettings_L3.class, context.ContextOuterClass.ConnectionSettings_L3.Builder.class); - } - - public static final int SRC_IP_ADDRESS_FIELD_NUMBER = 1; - private volatile java.lang.Object srcIpAddress_; - /** - * <code>string src_ip_address = 1;</code> - * @return The srcIpAddress. - */ - @java.lang.Override - public java.lang.String getSrcIpAddress() { - java.lang.Object ref = srcIpAddress_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - srcIpAddress_ = s; - return s; - } - } - /** - * <code>string src_ip_address = 1;</code> - * @return The bytes for srcIpAddress. - */ - @java.lang.Override - public com.google.protobuf.ByteString - getSrcIpAddressBytes() { - java.lang.Object ref = srcIpAddress_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - srcIpAddress_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + context.ContextOuterClass.ConnectionList.class, context.ContextOuterClass.ConnectionList.Builder.class); } - public static final int DST_IP_ADDRESS_FIELD_NUMBER = 2; - private volatile java.lang.Object dstIpAddress_; + public static final int CONNECTIONS_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.Connection> connections_; /** - * <code>string dst_ip_address = 2;</code> - * @return The dstIpAddress. + * <code>repeated .context.Connection connections = 1;</code> */ @java.lang.Override - public java.lang.String getDstIpAddress() { - java.lang.Object ref = dstIpAddress_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - dstIpAddress_ = s; - return s; - } + public java.util.List<context.ContextOuterClass.Connection> getConnectionsList() { + return connections_; } /** - * <code>string dst_ip_address = 2;</code> - * @return The bytes for dstIpAddress. + * <code>repeated .context.Connection connections = 1;</code> */ @java.lang.Override - public com.google.protobuf.ByteString - getDstIpAddressBytes() { - java.lang.Object ref = dstIpAddress_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - dstIpAddress_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public java.util.List<? extends context.ContextOuterClass.ConnectionOrBuilder> + getConnectionsOrBuilderList() { + return connections_; } - - public static final int DSCP_FIELD_NUMBER = 3; - private int dscp_; /** - * <code>uint32 dscp = 3;</code> - * @return The dscp. + * <code>repeated .context.Connection connections = 1;</code> */ @java.lang.Override - public int getDscp() { - return dscp_; + public int getConnectionsCount() { + return connections_.size(); } - - public static final int PROTOCOL_FIELD_NUMBER = 4; - private int protocol_; /** - * <code>uint32 protocol = 4;</code> - * @return The protocol. + * <code>repeated .context.Connection connections = 1;</code> */ @java.lang.Override - public int getProtocol() { - return protocol_; + public context.ContextOuterClass.Connection getConnections(int index) { + return connections_.get(index); } - - public static final int TTL_FIELD_NUMBER = 5; - private int ttl_; /** - * <code>uint32 ttl = 5;</code> - * @return The ttl. + * <code>repeated .context.Connection connections = 1;</code> */ @java.lang.Override - public int getTtl() { - return ttl_; + public context.ContextOuterClass.ConnectionOrBuilder getConnectionsOrBuilder( + int index) { + return connections_.get(index); } private byte memoizedIsInitialized = -1; @@ -39747,20 +52026,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getSrcIpAddressBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 1, srcIpAddress_); - } - if (!getDstIpAddressBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, dstIpAddress_); - } - if (dscp_ != 0) { - output.writeUInt32(3, dscp_); - } - if (protocol_ != 0) { - output.writeUInt32(4, protocol_); - } - if (ttl_ != 0) { - output.writeUInt32(5, ttl_); + for (int i = 0; i < connections_.size(); i++) { + output.writeMessage(1, connections_.get(i)); } unknownFields.writeTo(output); } @@ -39771,23 +52038,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (!getSrcIpAddressBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, srcIpAddress_); - } - if (!getDstIpAddressBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, dstIpAddress_); - } - if (dscp_ != 0) { - size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(3, dscp_); - } - if (protocol_ != 0) { - size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(4, protocol_); - } - if (ttl_ != 0) { + for (int i = 0; i < connections_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(5, ttl_); + .computeMessageSize(1, connections_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -39799,21 +52052,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ConnectionSettings_L3)) { + if (!(obj instanceof context.ContextOuterClass.ConnectionList)) { return super.equals(obj); } - context.ContextOuterClass.ConnectionSettings_L3 other = (context.ContextOuterClass.ConnectionSettings_L3) obj; + context.ContextOuterClass.ConnectionList other = (context.ContextOuterClass.ConnectionList) obj; - if (!getSrcIpAddress() - .equals(other.getSrcIpAddress())) return false; - if (!getDstIpAddress() - .equals(other.getDstIpAddress())) return false; - if (getDscp() - != other.getDscp()) return false; - if (getProtocol() - != other.getProtocol()) return false; - if (getTtl() - != other.getTtl()) return false; + if (!getConnectionsList() + .equals(other.getConnectionsList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -39825,84 +52070,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + SRC_IP_ADDRESS_FIELD_NUMBER; - hash = (53 * hash) + getSrcIpAddress().hashCode(); - hash = (37 * hash) + DST_IP_ADDRESS_FIELD_NUMBER; - hash = (53 * hash) + getDstIpAddress().hashCode(); - hash = (37 * hash) + DSCP_FIELD_NUMBER; - hash = (53 * hash) + getDscp(); - hash = (37 * hash) + PROTOCOL_FIELD_NUMBER; - hash = (53 * hash) + getProtocol(); - hash = (37 * hash) + TTL_FIELD_NUMBER; - hash = (53 * hash) + getTtl(); + if (getConnectionsCount() > 0) { + hash = (37 * hash) + CONNECTIONS_FIELD_NUMBER; + hash = (53 * hash) + getConnectionsList().hashCode(); + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( + public static context.ContextOuterClass.ConnectionList parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( + public static context.ContextOuterClass.ConnectionList parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( + public static context.ContextOuterClass.ConnectionList parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( + public static context.ContextOuterClass.ConnectionList parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom(byte[] data) + public static context.ContextOuterClass.ConnectionList parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( + public static context.ContextOuterClass.ConnectionList parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionList parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( + public static context.ContextOuterClass.ConnectionList 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 context.ContextOuterClass.ConnectionSettings_L3 parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings_L3 parseDelimitedFrom( + public static context.ContextOuterClass.ConnectionList 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 context.ContextOuterClass.ConnectionSettings_L3 parseFrom( + public static context.ContextOuterClass.ConnectionList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings_L3 parseFrom( + public static context.ContextOuterClass.ConnectionList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -39915,7 +52154,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ConnectionSettings_L3 prototype) { + public static Builder newBuilder(context.ContextOuterClass.ConnectionList prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -39931,26 +52170,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ConnectionSettings_L3} + * Protobuf type {@code context.ConnectionList} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ConnectionSettings_L3) - context.ContextOuterClass.ConnectionSettings_L3OrBuilder { + // @@protoc_insertion_point(builder_implements:context.ConnectionList) + context.ContextOuterClass.ConnectionListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L3_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L3_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionSettings_L3.class, context.ContextOuterClass.ConnectionSettings_L3.Builder.class); + context.ContextOuterClass.ConnectionList.class, context.ContextOuterClass.ConnectionList.Builder.class); } - // Construct using context.ContextOuterClass.ConnectionSettings_L3.newBuilder() + // Construct using context.ContextOuterClass.ConnectionList.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -39963,38 +52202,35 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { + getConnectionsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - srcIpAddress_ = ""; - - dstIpAddress_ = ""; - - dscp_ = 0; - - protocol_ = 0; - - ttl_ = 0; - + if (connectionsBuilder_ == null) { + connections_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + } else { + connectionsBuilder_.clear(); + } return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L3_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionList_descriptor; } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L3 getDefaultInstanceForType() { - return context.ContextOuterClass.ConnectionSettings_L3.getDefaultInstance(); + public context.ContextOuterClass.ConnectionList getDefaultInstanceForType() { + return context.ContextOuterClass.ConnectionList.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L3 build() { - context.ContextOuterClass.ConnectionSettings_L3 result = buildPartial(); + public context.ContextOuterClass.ConnectionList build() { + context.ContextOuterClass.ConnectionList result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -40002,13 +52238,18 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L3 buildPartial() { - context.ContextOuterClass.ConnectionSettings_L3 result = new context.ContextOuterClass.ConnectionSettings_L3(this); - result.srcIpAddress_ = srcIpAddress_; - result.dstIpAddress_ = dstIpAddress_; - result.dscp_ = dscp_; - result.protocol_ = protocol_; - result.ttl_ = ttl_; + public context.ContextOuterClass.ConnectionList buildPartial() { + context.ContextOuterClass.ConnectionList result = new context.ContextOuterClass.ConnectionList(this); + int from_bitField0_ = bitField0_; + if (connectionsBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + connections_ = java.util.Collections.unmodifiableList(connections_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.connections_ = connections_; + } else { + result.connections_ = connectionsBuilder_.build(); + } onBuilt(); return result; } @@ -40047,32 +52288,41 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ConnectionSettings_L3) { - return mergeFrom((context.ContextOuterClass.ConnectionSettings_L3)other); + if (other instanceof context.ContextOuterClass.ConnectionList) { + return mergeFrom((context.ContextOuterClass.ConnectionList)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ConnectionSettings_L3 other) { - if (other == context.ContextOuterClass.ConnectionSettings_L3.getDefaultInstance()) return this; - if (!other.getSrcIpAddress().isEmpty()) { - srcIpAddress_ = other.srcIpAddress_; - onChanged(); - } - if (!other.getDstIpAddress().isEmpty()) { - dstIpAddress_ = other.dstIpAddress_; - onChanged(); - } - if (other.getDscp() != 0) { - setDscp(other.getDscp()); - } - if (other.getProtocol() != 0) { - setProtocol(other.getProtocol()); - } - if (other.getTtl() != 0) { - setTtl(other.getTtl()); + public Builder mergeFrom(context.ContextOuterClass.ConnectionList other) { + if (other == context.ContextOuterClass.ConnectionList.getDefaultInstance()) return this; + if (connectionsBuilder_ == null) { + if (!other.connections_.isEmpty()) { + if (connections_.isEmpty()) { + connections_ = other.connections_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureConnectionsIsMutable(); + connections_.addAll(other.connections_); + } + onChanged(); + } + } else { + if (!other.connections_.isEmpty()) { + if (connectionsBuilder_.isEmpty()) { + connectionsBuilder_.dispose(); + connectionsBuilder_ = null; + connections_ = other.connections_; + bitField0_ = (bitField0_ & ~0x00000001); + connectionsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getConnectionsFieldBuilder() : null; + } else { + connectionsBuilder_.addAllMessages(other.connections_); + } + } } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -40089,11 +52339,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ConnectionSettings_L3 parsedMessage = null; + context.ContextOuterClass.ConnectionList parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ConnectionSettings_L3) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ConnectionList) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -40102,250 +52352,246 @@ public final class ContextOuterClass { } return this; } + private int bitField0_; + + private java.util.List<context.ContextOuterClass.Connection> connections_ = + java.util.Collections.emptyList(); + private void ensureConnectionsIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + connections_ = new java.util.ArrayList<context.ContextOuterClass.Connection>(connections_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Connection, context.ContextOuterClass.Connection.Builder, context.ContextOuterClass.ConnectionOrBuilder> connectionsBuilder_; - private java.lang.Object srcIpAddress_ = ""; /** - * <code>string src_ip_address = 1;</code> - * @return The srcIpAddress. + * <code>repeated .context.Connection connections = 1;</code> */ - public java.lang.String getSrcIpAddress() { - java.lang.Object ref = srcIpAddress_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - srcIpAddress_ = s; - return s; + public java.util.List<context.ContextOuterClass.Connection> getConnectionsList() { + if (connectionsBuilder_ == null) { + return java.util.Collections.unmodifiableList(connections_); } else { - return (java.lang.String) ref; + return connectionsBuilder_.getMessageList(); } } /** - * <code>string src_ip_address = 1;</code> - * @return The bytes for srcIpAddress. + * <code>repeated .context.Connection connections = 1;</code> */ - public com.google.protobuf.ByteString - getSrcIpAddressBytes() { - java.lang.Object ref = srcIpAddress_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - srcIpAddress_ = b; - return b; + public int getConnectionsCount() { + if (connectionsBuilder_ == null) { + return connections_.size(); } else { - return (com.google.protobuf.ByteString) ref; + return connectionsBuilder_.getCount(); } } /** - * <code>string src_ip_address = 1;</code> - * @param value The srcIpAddress to set. - * @return This builder for chaining. + * <code>repeated .context.Connection connections = 1;</code> */ - public Builder setSrcIpAddress( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - srcIpAddress_ = value; - onChanged(); - return this; + public context.ContextOuterClass.Connection getConnections(int index) { + if (connectionsBuilder_ == null) { + return connections_.get(index); + } else { + return connectionsBuilder_.getMessage(index); + } } /** - * <code>string src_ip_address = 1;</code> - * @return This builder for chaining. + * <code>repeated .context.Connection connections = 1;</code> */ - public Builder clearSrcIpAddress() { - - srcIpAddress_ = getDefaultInstance().getSrcIpAddress(); - onChanged(); + public Builder setConnections( + int index, context.ContextOuterClass.Connection value) { + if (connectionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConnectionsIsMutable(); + connections_.set(index, value); + onChanged(); + } else { + connectionsBuilder_.setMessage(index, value); + } return this; } /** - * <code>string src_ip_address = 1;</code> - * @param value The bytes for srcIpAddress to set. - * @return This builder for chaining. + * <code>repeated .context.Connection connections = 1;</code> */ - public Builder setSrcIpAddressBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - srcIpAddress_ = value; - onChanged(); + public Builder setConnections( + int index, context.ContextOuterClass.Connection.Builder builderForValue) { + if (connectionsBuilder_ == null) { + ensureConnectionsIsMutable(); + connections_.set(index, builderForValue.build()); + onChanged(); + } else { + connectionsBuilder_.setMessage(index, builderForValue.build()); + } return this; } - - private java.lang.Object dstIpAddress_ = ""; /** - * <code>string dst_ip_address = 2;</code> - * @return The dstIpAddress. + * <code>repeated .context.Connection connections = 1;</code> */ - public java.lang.String getDstIpAddress() { - java.lang.Object ref = dstIpAddress_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - dstIpAddress_ = s; - return s; + public Builder addConnections(context.ContextOuterClass.Connection value) { + if (connectionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConnectionsIsMutable(); + connections_.add(value); + onChanged(); } else { - return (java.lang.String) ref; + connectionsBuilder_.addMessage(value); } + return this; } /** - * <code>string dst_ip_address = 2;</code> - * @return The bytes for dstIpAddress. + * <code>repeated .context.Connection connections = 1;</code> */ - public com.google.protobuf.ByteString - getDstIpAddressBytes() { - java.lang.Object ref = dstIpAddress_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - dstIpAddress_ = b; - return b; + public Builder addConnections( + int index, context.ContextOuterClass.Connection value) { + if (connectionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureConnectionsIsMutable(); + connections_.add(index, value); + onChanged(); } else { - return (com.google.protobuf.ByteString) ref; + connectionsBuilder_.addMessage(index, value); } - } - /** - * <code>string dst_ip_address = 2;</code> - * @param value The dstIpAddress to set. - * @return This builder for chaining. - */ - public Builder setDstIpAddress( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - dstIpAddress_ = value; - onChanged(); return this; } /** - * <code>string dst_ip_address = 2;</code> - * @return This builder for chaining. + * <code>repeated .context.Connection connections = 1;</code> */ - public Builder clearDstIpAddress() { - - dstIpAddress_ = getDefaultInstance().getDstIpAddress(); - onChanged(); + public Builder addConnections( + context.ContextOuterClass.Connection.Builder builderForValue) { + if (connectionsBuilder_ == null) { + ensureConnectionsIsMutable(); + connections_.add(builderForValue.build()); + onChanged(); + } else { + connectionsBuilder_.addMessage(builderForValue.build()); + } return this; } /** - * <code>string dst_ip_address = 2;</code> - * @param value The bytes for dstIpAddress to set. - * @return This builder for chaining. + * <code>repeated .context.Connection connections = 1;</code> */ - public Builder setDstIpAddressBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - dstIpAddress_ = value; - onChanged(); + public Builder addConnections( + int index, context.ContextOuterClass.Connection.Builder builderForValue) { + if (connectionsBuilder_ == null) { + ensureConnectionsIsMutable(); + connections_.add(index, builderForValue.build()); + onChanged(); + } else { + connectionsBuilder_.addMessage(index, builderForValue.build()); + } return this; } - - private int dscp_ ; /** - * <code>uint32 dscp = 3;</code> - * @return The dscp. + * <code>repeated .context.Connection connections = 1;</code> */ - @java.lang.Override - public int getDscp() { - return dscp_; + public Builder addAllConnections( + java.lang.Iterable<? extends context.ContextOuterClass.Connection> values) { + if (connectionsBuilder_ == null) { + ensureConnectionsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, connections_); + onChanged(); + } else { + connectionsBuilder_.addAllMessages(values); + } + return this; } /** - * <code>uint32 dscp = 3;</code> - * @param value The dscp to set. - * @return This builder for chaining. + * <code>repeated .context.Connection connections = 1;</code> */ - public Builder setDscp(int value) { - - dscp_ = value; - onChanged(); + public Builder clearConnections() { + if (connectionsBuilder_ == null) { + connections_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + connectionsBuilder_.clear(); + } return this; } /** - * <code>uint32 dscp = 3;</code> - * @return This builder for chaining. + * <code>repeated .context.Connection connections = 1;</code> */ - public Builder clearDscp() { - - dscp_ = 0; - onChanged(); + public Builder removeConnections(int index) { + if (connectionsBuilder_ == null) { + ensureConnectionsIsMutable(); + connections_.remove(index); + onChanged(); + } else { + connectionsBuilder_.remove(index); + } return this; } - - private int protocol_ ; /** - * <code>uint32 protocol = 4;</code> - * @return The protocol. + * <code>repeated .context.Connection connections = 1;</code> */ - @java.lang.Override - public int getProtocol() { - return protocol_; + public context.ContextOuterClass.Connection.Builder getConnectionsBuilder( + int index) { + return getConnectionsFieldBuilder().getBuilder(index); } /** - * <code>uint32 protocol = 4;</code> - * @param value The protocol to set. - * @return This builder for chaining. + * <code>repeated .context.Connection connections = 1;</code> */ - public Builder setProtocol(int value) { - - protocol_ = value; - onChanged(); - return this; + public context.ContextOuterClass.ConnectionOrBuilder getConnectionsOrBuilder( + int index) { + if (connectionsBuilder_ == null) { + return connections_.get(index); } else { + return connectionsBuilder_.getMessageOrBuilder(index); + } } /** - * <code>uint32 protocol = 4;</code> - * @return This builder for chaining. + * <code>repeated .context.Connection connections = 1;</code> */ - public Builder clearProtocol() { - - protocol_ = 0; - onChanged(); - return this; + public java.util.List<? extends context.ContextOuterClass.ConnectionOrBuilder> + getConnectionsOrBuilderList() { + if (connectionsBuilder_ != null) { + return connectionsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(connections_); + } } - - private int ttl_ ; /** - * <code>uint32 ttl = 5;</code> - * @return The ttl. + * <code>repeated .context.Connection connections = 1;</code> */ - @java.lang.Override - public int getTtl() { - return ttl_; + public context.ContextOuterClass.Connection.Builder addConnectionsBuilder() { + return getConnectionsFieldBuilder().addBuilder( + context.ContextOuterClass.Connection.getDefaultInstance()); } /** - * <code>uint32 ttl = 5;</code> - * @param value The ttl to set. - * @return This builder for chaining. + * <code>repeated .context.Connection connections = 1;</code> */ - public Builder setTtl(int value) { - - ttl_ = value; - onChanged(); - return this; + public context.ContextOuterClass.Connection.Builder addConnectionsBuilder( + int index) { + return getConnectionsFieldBuilder().addBuilder( + index, context.ContextOuterClass.Connection.getDefaultInstance()); } /** - * <code>uint32 ttl = 5;</code> - * @return This builder for chaining. + * <code>repeated .context.Connection connections = 1;</code> */ - public Builder clearTtl() { - - ttl_ = 0; - onChanged(); - return this; + public java.util.List<context.ContextOuterClass.Connection.Builder> + getConnectionsBuilderList() { + return getConnectionsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Connection, context.ContextOuterClass.Connection.Builder, context.ContextOuterClass.ConnectionOrBuilder> + getConnectionsFieldBuilder() { + if (connectionsBuilder_ == null) { + connectionsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.Connection, context.ContextOuterClass.Connection.Builder, context.ContextOuterClass.ConnectionOrBuilder>( + connections_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + connections_ = null; + } + return connectionsBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -40360,94 +52606,100 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ConnectionSettings_L3) + // @@protoc_insertion_point(builder_scope:context.ConnectionList) } - // @@protoc_insertion_point(class_scope:context.ConnectionSettings_L3) - private static final context.ContextOuterClass.ConnectionSettings_L3 DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ConnectionList) + private static final context.ContextOuterClass.ConnectionList DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionSettings_L3(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionList(); } - public static context.ContextOuterClass.ConnectionSettings_L3 getDefaultInstance() { + public static context.ContextOuterClass.ConnectionList getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ConnectionSettings_L3> - PARSER = new com.google.protobuf.AbstractParser<ConnectionSettings_L3>() { + private static final com.google.protobuf.Parser<ConnectionList> + PARSER = new com.google.protobuf.AbstractParser<ConnectionList>() { @java.lang.Override - public ConnectionSettings_L3 parsePartialFrom( + public ConnectionList parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ConnectionSettings_L3(input, extensionRegistry); + return new ConnectionList(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ConnectionSettings_L3> parser() { + public static com.google.protobuf.Parser<ConnectionList> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ConnectionSettings_L3> getParserForType() { + public com.google.protobuf.Parser<ConnectionList> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L3 getDefaultInstanceForType() { + public context.ContextOuterClass.ConnectionList getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ConnectionSettings_L4OrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ConnectionSettings_L4) + public interface ConnectionEventOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ConnectionEvent) com.google.protobuf.MessageOrBuilder { /** - * <code>uint32 src_port = 1;</code> - * @return The srcPort. + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. */ - int getSrcPort(); - + boolean hasEvent(); /** - * <code>uint32 dst_port = 2;</code> - * @return The dstPort. + * <code>.context.Event event = 1;</code> + * @return The event. */ - int getDstPort(); - + context.ContextOuterClass.Event getEvent(); /** - * <code>uint32 tcp_flags = 3;</code> - * @return The tcpFlags. + * <code>.context.Event event = 1;</code> */ - int getTcpFlags(); + context.ContextOuterClass.EventOrBuilder getEventOrBuilder(); /** - * <code>uint32 ttl = 4;</code> - * @return The ttl. + * <code>.context.ConnectionId connection_id = 2;</code> + * @return Whether the connectionId field is set. */ - int getTtl(); + boolean hasConnectionId(); + /** + * <code>.context.ConnectionId connection_id = 2;</code> + * @return The connectionId. + */ + context.ContextOuterClass.ConnectionId getConnectionId(); + /** + * <code>.context.ConnectionId connection_id = 2;</code> + */ + context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder(); } /** - * Protobuf type {@code context.ConnectionSettings_L4} + * Protobuf type {@code context.ConnectionEvent} */ - public static final class ConnectionSettings_L4 extends + public static final class ConnectionEvent extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ConnectionSettings_L4) - ConnectionSettings_L4OrBuilder { + // @@protoc_insertion_point(message_implements:context.ConnectionEvent) + ConnectionEventOrBuilder { private static final long serialVersionUID = 0L; - // Use ConnectionSettings_L4.newBuilder() to construct. - private ConnectionSettings_L4(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ConnectionEvent.newBuilder() to construct. + private ConnectionEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ConnectionSettings_L4() { + private ConnectionEvent() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ConnectionSettings_L4(); + return new ConnectionEvent(); } @java.lang.Override @@ -40455,7 +52707,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ConnectionSettings_L4( + private ConnectionEvent( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -40473,24 +52725,30 @@ public final class ContextOuterClass { case 0: done = true; break; - case 8: { - - srcPort_ = input.readUInt32(); - break; - } - case 16: { - - dstPort_ = input.readUInt32(); - break; - } - case 24: { + case 10: { + context.ContextOuterClass.Event.Builder subBuilder = null; + if (event_ != null) { + subBuilder = event_.toBuilder(); + } + event_ = input.readMessage(context.ContextOuterClass.Event.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(event_); + event_ = subBuilder.buildPartial(); + } - tcpFlags_ = input.readUInt32(); break; } - case 32: { + case 18: { + context.ContextOuterClass.ConnectionId.Builder subBuilder = null; + if (connectionId_ != null) { + subBuilder = connectionId_.toBuilder(); + } + connectionId_ = input.readMessage(context.ContextOuterClass.ConnectionId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(connectionId_); + connectionId_ = subBuilder.buildPartial(); + } - ttl_ = input.readUInt32(); break; } default: { @@ -40514,59 +52772,67 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L4_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionEvent_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L4_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionEvent_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionSettings_L4.class, context.ContextOuterClass.ConnectionSettings_L4.Builder.class); + context.ContextOuterClass.ConnectionEvent.class, context.ContextOuterClass.ConnectionEvent.Builder.class); } - public static final int SRC_PORT_FIELD_NUMBER = 1; - private int srcPort_; + public static final int EVENT_FIELD_NUMBER = 1; + private context.ContextOuterClass.Event event_; /** - * <code>uint32 src_port = 1;</code> - * @return The srcPort. + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. */ @java.lang.Override - public int getSrcPort() { - return srcPort_; + public boolean hasEvent() { + return event_ != null; } - - public static final int DST_PORT_FIELD_NUMBER = 2; - private int dstPort_; /** - * <code>uint32 dst_port = 2;</code> - * @return The dstPort. + * <code>.context.Event event = 1;</code> + * @return The event. */ @java.lang.Override - public int getDstPort() { - return dstPort_; + public context.ContextOuterClass.Event getEvent() { + return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; } - - public static final int TCP_FLAGS_FIELD_NUMBER = 3; - private int tcpFlags_; /** - * <code>uint32 tcp_flags = 3;</code> - * @return The tcpFlags. + * <code>.context.Event event = 1;</code> */ @java.lang.Override - public int getTcpFlags() { - return tcpFlags_; + public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { + return getEvent(); } - public static final int TTL_FIELD_NUMBER = 4; - private int ttl_; + public static final int CONNECTION_ID_FIELD_NUMBER = 2; + private context.ContextOuterClass.ConnectionId connectionId_; /** - * <code>uint32 ttl = 4;</code> - * @return The ttl. + * <code>.context.ConnectionId connection_id = 2;</code> + * @return Whether the connectionId field is set. */ @java.lang.Override - public int getTtl() { - return ttl_; + public boolean hasConnectionId() { + return connectionId_ != null; + } + /** + * <code>.context.ConnectionId connection_id = 2;</code> + * @return The connectionId. + */ + @java.lang.Override + public context.ContextOuterClass.ConnectionId getConnectionId() { + return connectionId_ == null ? context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; + } + /** + * <code>.context.ConnectionId connection_id = 2;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder() { + return getConnectionId(); } private byte memoizedIsInitialized = -1; @@ -40583,17 +52849,11 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (srcPort_ != 0) { - output.writeUInt32(1, srcPort_); - } - if (dstPort_ != 0) { - output.writeUInt32(2, dstPort_); - } - if (tcpFlags_ != 0) { - output.writeUInt32(3, tcpFlags_); + if (event_ != null) { + output.writeMessage(1, getEvent()); } - if (ttl_ != 0) { - output.writeUInt32(4, ttl_); + if (connectionId_ != null) { + output.writeMessage(2, getConnectionId()); } unknownFields.writeTo(output); } @@ -40604,21 +52864,13 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (srcPort_ != 0) { - size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(1, srcPort_); - } - if (dstPort_ != 0) { - size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(2, dstPort_); - } - if (tcpFlags_ != 0) { + if (event_ != null) { size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(3, tcpFlags_); + .computeMessageSize(1, getEvent()); } - if (ttl_ != 0) { + if (connectionId_ != null) { size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(4, ttl_); + .computeMessageSize(2, getConnectionId()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -40630,19 +52882,21 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ConnectionSettings_L4)) { + if (!(obj instanceof context.ContextOuterClass.ConnectionEvent)) { return super.equals(obj); } - context.ContextOuterClass.ConnectionSettings_L4 other = (context.ContextOuterClass.ConnectionSettings_L4) obj; + context.ContextOuterClass.ConnectionEvent other = (context.ContextOuterClass.ConnectionEvent) obj; - if (getSrcPort() - != other.getSrcPort()) return false; - if (getDstPort() - != other.getDstPort()) return false; - if (getTcpFlags() - != other.getTcpFlags()) return false; - if (getTtl() - != other.getTtl()) return false; + if (hasEvent() != other.hasEvent()) return false; + if (hasEvent()) { + if (!getEvent() + .equals(other.getEvent())) return false; + } + if (hasConnectionId() != other.hasConnectionId()) return false; + if (hasConnectionId()) { + if (!getConnectionId() + .equals(other.getConnectionId())) return false; + } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -40654,82 +52908,82 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + SRC_PORT_FIELD_NUMBER; - hash = (53 * hash) + getSrcPort(); - hash = (37 * hash) + DST_PORT_FIELD_NUMBER; - hash = (53 * hash) + getDstPort(); - hash = (37 * hash) + TCP_FLAGS_FIELD_NUMBER; - hash = (53 * hash) + getTcpFlags(); - hash = (37 * hash) + TTL_FIELD_NUMBER; - hash = (53 * hash) + getTtl(); + if (hasEvent()) { + hash = (37 * hash) + EVENT_FIELD_NUMBER; + hash = (53 * hash) + getEvent().hashCode(); + } + if (hasConnectionId()) { + hash = (37 * hash) + CONNECTION_ID_FIELD_NUMBER; + hash = (53 * hash) + getConnectionId().hashCode(); + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( + public static context.ContextOuterClass.ConnectionEvent parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( + public static context.ContextOuterClass.ConnectionEvent parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( + public static context.ContextOuterClass.ConnectionEvent parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( + public static context.ContextOuterClass.ConnectionEvent parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom(byte[] data) + public static context.ContextOuterClass.ConnectionEvent parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( + public static context.ContextOuterClass.ConnectionEvent parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionEvent parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( + public static context.ContextOuterClass.ConnectionEvent 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 context.ContextOuterClass.ConnectionSettings_L4 parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConnectionEvent parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings_L4 parseDelimitedFrom( + public static context.ContextOuterClass.ConnectionEvent 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 context.ContextOuterClass.ConnectionSettings_L4 parseFrom( + public static context.ContextOuterClass.ConnectionEvent parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings_L4 parseFrom( + public static context.ContextOuterClass.ConnectionEvent parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -40742,7 +52996,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ConnectionSettings_L4 prototype) { + public static Builder newBuilder(context.ContextOuterClass.ConnectionEvent prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -40758,26 +53012,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ConnectionSettings_L4} + * Protobuf type {@code context.ConnectionEvent} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ConnectionSettings_L4) - context.ContextOuterClass.ConnectionSettings_L4OrBuilder { + // @@protoc_insertion_point(builder_implements:context.ConnectionEvent) + context.ContextOuterClass.ConnectionEventOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L4_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionEvent_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L4_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConnectionEvent_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionSettings_L4.class, context.ContextOuterClass.ConnectionSettings_L4.Builder.class); + context.ContextOuterClass.ConnectionEvent.class, context.ContextOuterClass.ConnectionEvent.Builder.class); } - // Construct using context.ContextOuterClass.ConnectionSettings_L4.newBuilder() + // Construct using context.ContextOuterClass.ConnectionEvent.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -40795,31 +53049,35 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - srcPort_ = 0; - - dstPort_ = 0; - - tcpFlags_ = 0; - - ttl_ = 0; - + if (eventBuilder_ == null) { + event_ = null; + } else { + event_ = null; + eventBuilder_ = null; + } + if (connectionIdBuilder_ == null) { + connectionId_ = null; + } else { + connectionId_ = null; + connectionIdBuilder_ = null; + } return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_L4_descriptor; + return context.ContextOuterClass.internal_static_context_ConnectionEvent_descriptor; } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L4 getDefaultInstanceForType() { - return context.ContextOuterClass.ConnectionSettings_L4.getDefaultInstance(); + public context.ContextOuterClass.ConnectionEvent getDefaultInstanceForType() { + return context.ContextOuterClass.ConnectionEvent.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L4 build() { - context.ContextOuterClass.ConnectionSettings_L4 result = buildPartial(); + public context.ContextOuterClass.ConnectionEvent build() { + context.ContextOuterClass.ConnectionEvent result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -40827,12 +53085,18 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L4 buildPartial() { - context.ContextOuterClass.ConnectionSettings_L4 result = new context.ContextOuterClass.ConnectionSettings_L4(this); - result.srcPort_ = srcPort_; - result.dstPort_ = dstPort_; - result.tcpFlags_ = tcpFlags_; - result.ttl_ = ttl_; + public context.ContextOuterClass.ConnectionEvent buildPartial() { + context.ContextOuterClass.ConnectionEvent result = new context.ContextOuterClass.ConnectionEvent(this); + if (eventBuilder_ == null) { + result.event_ = event_; + } else { + result.event_ = eventBuilder_.build(); + } + if (connectionIdBuilder_ == null) { + result.connectionId_ = connectionId_; + } else { + result.connectionId_ = connectionIdBuilder_.build(); + } onBuilt(); return result; } @@ -40871,27 +53135,21 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ConnectionSettings_L4) { - return mergeFrom((context.ContextOuterClass.ConnectionSettings_L4)other); + if (other instanceof context.ContextOuterClass.ConnectionEvent) { + return mergeFrom((context.ContextOuterClass.ConnectionEvent)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ConnectionSettings_L4 other) { - if (other == context.ContextOuterClass.ConnectionSettings_L4.getDefaultInstance()) return this; - if (other.getSrcPort() != 0) { - setSrcPort(other.getSrcPort()); - } - if (other.getDstPort() != 0) { - setDstPort(other.getDstPort()); - } - if (other.getTcpFlags() != 0) { - setTcpFlags(other.getTcpFlags()); + public Builder mergeFrom(context.ContextOuterClass.ConnectionEvent other) { + if (other == context.ContextOuterClass.ConnectionEvent.getDefaultInstance()) return this; + if (other.hasEvent()) { + mergeEvent(other.getEvent()); } - if (other.getTtl() != 0) { - setTtl(other.getTtl()); + if (other.hasConnectionId()) { + mergeConnectionId(other.getConnectionId()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -40908,11 +53166,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ConnectionSettings_L4 parsedMessage = null; + context.ContextOuterClass.ConnectionEvent parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ConnectionSettings_L4) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ConnectionEvent) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -40922,128 +53180,242 @@ public final class ContextOuterClass { return this; } - private int srcPort_ ; + private context.ContextOuterClass.Event event_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> eventBuilder_; /** - * <code>uint32 src_port = 1;</code> - * @return The srcPort. + * <code>.context.Event event = 1;</code> + * @return Whether the event field is set. */ - @java.lang.Override - public int getSrcPort() { - return srcPort_; + public boolean hasEvent() { + return eventBuilder_ != null || event_ != null; } /** - * <code>uint32 src_port = 1;</code> - * @param value The srcPort to set. - * @return This builder for chaining. + * <code>.context.Event event = 1;</code> + * @return The event. */ - public Builder setSrcPort(int value) { - - srcPort_ = value; - onChanged(); - return this; + public context.ContextOuterClass.Event getEvent() { + if (eventBuilder_ == null) { + return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; + } else { + return eventBuilder_.getMessage(); + } } /** - * <code>uint32 src_port = 1;</code> - * @return This builder for chaining. + * <code>.context.Event event = 1;</code> */ - public Builder clearSrcPort() { - - srcPort_ = 0; - onChanged(); + public Builder setEvent(context.ContextOuterClass.Event value) { + if (eventBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + event_ = value; + onChanged(); + } else { + eventBuilder_.setMessage(value); + } + return this; } + /** + * <code>.context.Event event = 1;</code> + */ + public Builder setEvent( + context.ContextOuterClass.Event.Builder builderForValue) { + if (eventBuilder_ == null) { + event_ = builderForValue.build(); + onChanged(); + } else { + eventBuilder_.setMessage(builderForValue.build()); + } - private int dstPort_ ; + return this; + } /** - * <code>uint32 dst_port = 2;</code> - * @return The dstPort. + * <code>.context.Event event = 1;</code> */ - @java.lang.Override - public int getDstPort() { - return dstPort_; + public Builder mergeEvent(context.ContextOuterClass.Event value) { + if (eventBuilder_ == null) { + if (event_ != null) { + event_ = + context.ContextOuterClass.Event.newBuilder(event_).mergeFrom(value).buildPartial(); + } else { + event_ = value; + } + onChanged(); + } else { + eventBuilder_.mergeFrom(value); + } + + return this; } /** - * <code>uint32 dst_port = 2;</code> - * @param value The dstPort to set. - * @return This builder for chaining. + * <code>.context.Event event = 1;</code> */ - public Builder setDstPort(int value) { - - dstPort_ = value; - onChanged(); + public Builder clearEvent() { + if (eventBuilder_ == null) { + event_ = null; + onChanged(); + } else { + event_ = null; + eventBuilder_ = null; + } + return this; } /** - * <code>uint32 dst_port = 2;</code> - * @return This builder for chaining. + * <code>.context.Event event = 1;</code> */ - public Builder clearDstPort() { + public context.ContextOuterClass.Event.Builder getEventBuilder() { - dstPort_ = 0; onChanged(); - return this; + return getEventFieldBuilder().getBuilder(); + } + /** + * <code>.context.Event event = 1;</code> + */ + public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { + if (eventBuilder_ != null) { + return eventBuilder_.getMessageOrBuilder(); + } else { + return event_ == null ? + context.ContextOuterClass.Event.getDefaultInstance() : event_; + } + } + /** + * <code>.context.Event event = 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(), + getParentForChildren(), + isClean()); + event_ = null; + } + return eventBuilder_; } - private int tcpFlags_ ; + private context.ContextOuterClass.ConnectionId connectionId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> connectionIdBuilder_; /** - * <code>uint32 tcp_flags = 3;</code> - * @return The tcpFlags. + * <code>.context.ConnectionId connection_id = 2;</code> + * @return Whether the connectionId field is set. */ - @java.lang.Override - public int getTcpFlags() { - return tcpFlags_; + public boolean hasConnectionId() { + return connectionIdBuilder_ != null || connectionId_ != null; } /** - * <code>uint32 tcp_flags = 3;</code> - * @param value The tcpFlags to set. - * @return This builder for chaining. + * <code>.context.ConnectionId connection_id = 2;</code> + * @return The connectionId. */ - public Builder setTcpFlags(int value) { - - tcpFlags_ = value; - onChanged(); - return this; + public context.ContextOuterClass.ConnectionId getConnectionId() { + if (connectionIdBuilder_ == null) { + return connectionId_ == null ? context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; + } else { + return connectionIdBuilder_.getMessage(); + } } /** - * <code>uint32 tcp_flags = 3;</code> - * @return This builder for chaining. + * <code>.context.ConnectionId connection_id = 2;</code> */ - public Builder clearTcpFlags() { - - tcpFlags_ = 0; - onChanged(); + public Builder setConnectionId(context.ContextOuterClass.ConnectionId value) { + if (connectionIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + connectionId_ = value; + onChanged(); + } else { + connectionIdBuilder_.setMessage(value); + } + return this; } + /** + * <code>.context.ConnectionId connection_id = 2;</code> + */ + public Builder setConnectionId( + context.ContextOuterClass.ConnectionId.Builder builderForValue) { + if (connectionIdBuilder_ == null) { + connectionId_ = builderForValue.build(); + onChanged(); + } else { + connectionIdBuilder_.setMessage(builderForValue.build()); + } - private int ttl_ ; + return this; + } /** - * <code>uint32 ttl = 4;</code> - * @return The ttl. + * <code>.context.ConnectionId connection_id = 2;</code> */ - @java.lang.Override - public int getTtl() { - return ttl_; + public Builder mergeConnectionId(context.ContextOuterClass.ConnectionId value) { + if (connectionIdBuilder_ == null) { + if (connectionId_ != null) { + connectionId_ = + context.ContextOuterClass.ConnectionId.newBuilder(connectionId_).mergeFrom(value).buildPartial(); + } else { + connectionId_ = value; + } + onChanged(); + } else { + connectionIdBuilder_.mergeFrom(value); + } + + return this; } /** - * <code>uint32 ttl = 4;</code> - * @param value The ttl to set. - * @return This builder for chaining. + * <code>.context.ConnectionId connection_id = 2;</code> */ - public Builder setTtl(int value) { - - ttl_ = value; - onChanged(); + public Builder clearConnectionId() { + if (connectionIdBuilder_ == null) { + connectionId_ = null; + onChanged(); + } else { + connectionId_ = null; + connectionIdBuilder_ = null; + } + return this; } /** - * <code>uint32 ttl = 4;</code> - * @return This builder for chaining. + * <code>.context.ConnectionId connection_id = 2;</code> */ - public Builder clearTtl() { + public context.ContextOuterClass.ConnectionId.Builder getConnectionIdBuilder() { - ttl_ = 0; onChanged(); - return this; + return getConnectionIdFieldBuilder().getBuilder(); + } + /** + * <code>.context.ConnectionId connection_id = 2;</code> + */ + public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder() { + if (connectionIdBuilder_ != null) { + return connectionIdBuilder_.getMessageOrBuilder(); + } else { + return connectionId_ == null ? + context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; + } + } + /** + * <code>.context.ConnectionId connection_id = 2;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> + getConnectionIdFieldBuilder() { + if (connectionIdBuilder_ == null) { + connectionIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder>( + getConnectionId(), + getParentForChildren(), + isClean()); + connectionId_ = null; + } + return connectionIdBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -41058,130 +53430,119 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ConnectionSettings_L4) + // @@protoc_insertion_point(builder_scope:context.ConnectionEvent) } - // @@protoc_insertion_point(class_scope:context.ConnectionSettings_L4) - private static final context.ContextOuterClass.ConnectionSettings_L4 DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ConnectionEvent) + private static final context.ContextOuterClass.ConnectionEvent DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionSettings_L4(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionEvent(); } - public static context.ContextOuterClass.ConnectionSettings_L4 getDefaultInstance() { + public static context.ContextOuterClass.ConnectionEvent getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ConnectionSettings_L4> - PARSER = new com.google.protobuf.AbstractParser<ConnectionSettings_L4>() { + private static final com.google.protobuf.Parser<ConnectionEvent> + PARSER = new com.google.protobuf.AbstractParser<ConnectionEvent>() { @java.lang.Override - public ConnectionSettings_L4 parsePartialFrom( + public ConnectionEvent parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ConnectionSettings_L4(input, extensionRegistry); + return new ConnectionEvent(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ConnectionSettings_L4> parser() { + public static com.google.protobuf.Parser<ConnectionEvent> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ConnectionSettings_L4> getParserForType() { + public com.google.protobuf.Parser<ConnectionEvent> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L4 getDefaultInstanceForType() { + public context.ContextOuterClass.ConnectionEvent getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ConnectionSettingsOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ConnectionSettings) + public interface EndPointIdOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.EndPointId) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> - * @return Whether the l0 field is set. - */ - boolean hasL0(); - /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> - * @return The l0. - */ - context.ContextOuterClass.ConnectionSettings_L0 getL0(); - /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> - */ - context.ContextOuterClass.ConnectionSettings_L0OrBuilder getL0OrBuilder(); - - /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> - * @return Whether the l2 field is set. + * <code>.context.TopologyId topology_id = 1;</code> + * @return Whether the topologyId field is set. */ - boolean hasL2(); + boolean hasTopologyId(); /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> - * @return The l2. + * <code>.context.TopologyId topology_id = 1;</code> + * @return The topologyId. */ - context.ContextOuterClass.ConnectionSettings_L2 getL2(); + context.ContextOuterClass.TopologyId getTopologyId(); /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * <code>.context.TopologyId topology_id = 1;</code> */ - context.ContextOuterClass.ConnectionSettings_L2OrBuilder getL2OrBuilder(); + context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder(); /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> - * @return Whether the l3 field is set. + * <code>.context.DeviceId device_id = 2;</code> + * @return Whether the deviceId field is set. */ - boolean hasL3(); + boolean hasDeviceId(); /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> - * @return The l3. + * <code>.context.DeviceId device_id = 2;</code> + * @return The deviceId. */ - context.ContextOuterClass.ConnectionSettings_L3 getL3(); + context.ContextOuterClass.DeviceId getDeviceId(); /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * <code>.context.DeviceId device_id = 2;</code> */ - context.ContextOuterClass.ConnectionSettings_L3OrBuilder getL3OrBuilder(); + context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder(); /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> - * @return Whether the l4 field is set. + * <code>.context.Uuid endpoint_uuid = 3;</code> + * @return Whether the endpointUuid field is set. */ - boolean hasL4(); + boolean hasEndpointUuid(); /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> - * @return The l4. + * <code>.context.Uuid endpoint_uuid = 3;</code> + * @return The endpointUuid. */ - context.ContextOuterClass.ConnectionSettings_L4 getL4(); + context.ContextOuterClass.Uuid getEndpointUuid(); /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * <code>.context.Uuid endpoint_uuid = 3;</code> */ - context.ContextOuterClass.ConnectionSettings_L4OrBuilder getL4OrBuilder(); + context.ContextOuterClass.UuidOrBuilder getEndpointUuidOrBuilder(); } /** - * Protobuf type {@code context.ConnectionSettings} + * <pre> + * ----- Endpoint ------------------------------------------------------------------------------------------------------ + * </pre> + * + * Protobuf type {@code context.EndPointId} */ - public static final class ConnectionSettings extends + public static final class EndPointId extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ConnectionSettings) - ConnectionSettingsOrBuilder { + // @@protoc_insertion_point(message_implements:context.EndPointId) + EndPointIdOrBuilder { private static final long serialVersionUID = 0L; - // Use ConnectionSettings.newBuilder() to construct. - private ConnectionSettings(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use EndPointId.newBuilder() to construct. + private EndPointId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ConnectionSettings() { + private EndPointId() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ConnectionSettings(); + return new EndPointId(); } @java.lang.Override @@ -41189,7 +53550,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ConnectionSettings( + private EndPointId( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -41205,56 +53566,43 @@ public final class ContextOuterClass { int tag = input.readTag(); switch (tag) { case 0: - done = true; - break; - case 10: { - context.ContextOuterClass.ConnectionSettings_L0.Builder subBuilder = null; - if (l0_ != null) { - subBuilder = l0_.toBuilder(); - } - l0_ = input.readMessage(context.ContextOuterClass.ConnectionSettings_L0.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(l0_); - l0_ = subBuilder.buildPartial(); - } - - break; - } - case 18: { - context.ContextOuterClass.ConnectionSettings_L2.Builder subBuilder = null; - if (l2_ != null) { - subBuilder = l2_.toBuilder(); + done = true; + break; + case 10: { + context.ContextOuterClass.TopologyId.Builder subBuilder = null; + if (topologyId_ != null) { + subBuilder = topologyId_.toBuilder(); } - l2_ = input.readMessage(context.ContextOuterClass.ConnectionSettings_L2.parser(), extensionRegistry); + topologyId_ = input.readMessage(context.ContextOuterClass.TopologyId.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(l2_); - l2_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(topologyId_); + topologyId_ = subBuilder.buildPartial(); } break; } - case 26: { - context.ContextOuterClass.ConnectionSettings_L3.Builder subBuilder = null; - if (l3_ != null) { - subBuilder = l3_.toBuilder(); + case 18: { + context.ContextOuterClass.DeviceId.Builder subBuilder = null; + if (deviceId_ != null) { + subBuilder = deviceId_.toBuilder(); } - l3_ = input.readMessage(context.ContextOuterClass.ConnectionSettings_L3.parser(), extensionRegistry); + deviceId_ = input.readMessage(context.ContextOuterClass.DeviceId.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(l3_); - l3_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(deviceId_); + deviceId_ = subBuilder.buildPartial(); } break; } - case 34: { - context.ContextOuterClass.ConnectionSettings_L4.Builder subBuilder = null; - if (l4_ != null) { - subBuilder = l4_.toBuilder(); + case 26: { + context.ContextOuterClass.Uuid.Builder subBuilder = null; + if (endpointUuid_ != null) { + subBuilder = endpointUuid_.toBuilder(); } - l4_ = input.readMessage(context.ContextOuterClass.ConnectionSettings_L4.parser(), extensionRegistry); + endpointUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(l4_); - l4_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(endpointUuid_); + endpointUuid_ = subBuilder.buildPartial(); } break; @@ -41280,119 +53628,93 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_descriptor; + return context.ContextOuterClass.internal_static_context_EndPointId_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_EndPointId_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionSettings.class, context.ContextOuterClass.ConnectionSettings.Builder.class); - } - - public static final int L0_FIELD_NUMBER = 1; - private context.ContextOuterClass.ConnectionSettings_L0 l0_; - /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> - * @return Whether the l0 field is set. - */ - @java.lang.Override - public boolean hasL0() { - return l0_ != null; - } - /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> - * @return The l0. - */ - @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L0 getL0() { - return l0_ == null ? context.ContextOuterClass.ConnectionSettings_L0.getDefaultInstance() : l0_; - } - /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> - */ - @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L0OrBuilder getL0OrBuilder() { - return getL0(); + context.ContextOuterClass.EndPointId.class, context.ContextOuterClass.EndPointId.Builder.class); } - public static final int L2_FIELD_NUMBER = 2; - private context.ContextOuterClass.ConnectionSettings_L2 l2_; + public static final int TOPOLOGY_ID_FIELD_NUMBER = 1; + private context.ContextOuterClass.TopologyId topologyId_; /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> - * @return Whether the l2 field is set. + * <code>.context.TopologyId topology_id = 1;</code> + * @return Whether the topologyId field is set. */ @java.lang.Override - public boolean hasL2() { - return l2_ != null; + public boolean hasTopologyId() { + return topologyId_ != null; } /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> - * @return The l2. + * <code>.context.TopologyId topology_id = 1;</code> + * @return The topologyId. */ @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L2 getL2() { - return l2_ == null ? context.ContextOuterClass.ConnectionSettings_L2.getDefaultInstance() : l2_; + public context.ContextOuterClass.TopologyId getTopologyId() { + return topologyId_ == null ? context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_; } /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * <code>.context.TopologyId topology_id = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L2OrBuilder getL2OrBuilder() { - return getL2(); + public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder() { + return getTopologyId(); } - public static final int L3_FIELD_NUMBER = 3; - private context.ContextOuterClass.ConnectionSettings_L3 l3_; + public static final int DEVICE_ID_FIELD_NUMBER = 2; + private context.ContextOuterClass.DeviceId deviceId_; /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> - * @return Whether the l3 field is set. + * <code>.context.DeviceId device_id = 2;</code> + * @return Whether the deviceId field is set. */ @java.lang.Override - public boolean hasL3() { - return l3_ != null; + public boolean hasDeviceId() { + return deviceId_ != null; } /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> - * @return The l3. + * <code>.context.DeviceId device_id = 2;</code> + * @return The deviceId. */ @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L3 getL3() { - return l3_ == null ? context.ContextOuterClass.ConnectionSettings_L3.getDefaultInstance() : l3_; + public context.ContextOuterClass.DeviceId getDeviceId() { + return deviceId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; } /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * <code>.context.DeviceId device_id = 2;</code> */ @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L3OrBuilder getL3OrBuilder() { - return getL3(); + public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder() { + return getDeviceId(); } - public static final int L4_FIELD_NUMBER = 4; - private context.ContextOuterClass.ConnectionSettings_L4 l4_; + public static final int ENDPOINT_UUID_FIELD_NUMBER = 3; + private context.ContextOuterClass.Uuid endpointUuid_; /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> - * @return Whether the l4 field is set. + * <code>.context.Uuid endpoint_uuid = 3;</code> + * @return Whether the endpointUuid field is set. */ @java.lang.Override - public boolean hasL4() { - return l4_ != null; + public boolean hasEndpointUuid() { + return endpointUuid_ != null; } /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> - * @return The l4. + * <code>.context.Uuid endpoint_uuid = 3;</code> + * @return The endpointUuid. */ @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L4 getL4() { - return l4_ == null ? context.ContextOuterClass.ConnectionSettings_L4.getDefaultInstance() : l4_; + public context.ContextOuterClass.Uuid getEndpointUuid() { + return endpointUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : endpointUuid_; } /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * <code>.context.Uuid endpoint_uuid = 3;</code> */ @java.lang.Override - public context.ContextOuterClass.ConnectionSettings_L4OrBuilder getL4OrBuilder() { - return getL4(); + public context.ContextOuterClass.UuidOrBuilder getEndpointUuidOrBuilder() { + return getEndpointUuid(); } private byte memoizedIsInitialized = -1; @@ -41409,17 +53731,14 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (l0_ != null) { - output.writeMessage(1, getL0()); - } - if (l2_ != null) { - output.writeMessage(2, getL2()); + if (topologyId_ != null) { + output.writeMessage(1, getTopologyId()); } - if (l3_ != null) { - output.writeMessage(3, getL3()); + if (deviceId_ != null) { + output.writeMessage(2, getDeviceId()); } - if (l4_ != null) { - output.writeMessage(4, getL4()); + if (endpointUuid_ != null) { + output.writeMessage(3, getEndpointUuid()); } unknownFields.writeTo(output); } @@ -41430,21 +53749,17 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (l0_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getL0()); - } - if (l2_ != null) { + if (topologyId_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, getL2()); + .computeMessageSize(1, getTopologyId()); } - if (l3_ != null) { + if (deviceId_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(3, getL3()); + .computeMessageSize(2, getDeviceId()); } - if (l4_ != null) { + if (endpointUuid_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(4, getL4()); + .computeMessageSize(3, getEndpointUuid()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -41456,30 +53771,25 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ConnectionSettings)) { + if (!(obj instanceof context.ContextOuterClass.EndPointId)) { return super.equals(obj); } - context.ContextOuterClass.ConnectionSettings other = (context.ContextOuterClass.ConnectionSettings) obj; + context.ContextOuterClass.EndPointId other = (context.ContextOuterClass.EndPointId) obj; - if (hasL0() != other.hasL0()) return false; - if (hasL0()) { - if (!getL0() - .equals(other.getL0())) return false; - } - if (hasL2() != other.hasL2()) return false; - if (hasL2()) { - if (!getL2() - .equals(other.getL2())) return false; + if (hasTopologyId() != other.hasTopologyId()) return false; + if (hasTopologyId()) { + if (!getTopologyId() + .equals(other.getTopologyId())) return false; } - if (hasL3() != other.hasL3()) return false; - if (hasL3()) { - if (!getL3() - .equals(other.getL3())) return false; + if (hasDeviceId() != other.hasDeviceId()) return false; + if (hasDeviceId()) { + if (!getDeviceId() + .equals(other.getDeviceId())) return false; } - if (hasL4() != other.hasL4()) return false; - if (hasL4()) { - if (!getL4() - .equals(other.getL4())) return false; + if (hasEndpointUuid() != other.hasEndpointUuid()) return false; + if (hasEndpointUuid()) { + if (!getEndpointUuid() + .equals(other.getEndpointUuid())) return false; } if (!unknownFields.equals(other.unknownFields)) return false; return true; @@ -41492,90 +53802,86 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasL0()) { - hash = (37 * hash) + L0_FIELD_NUMBER; - hash = (53 * hash) + getL0().hashCode(); - } - if (hasL2()) { - hash = (37 * hash) + L2_FIELD_NUMBER; - hash = (53 * hash) + getL2().hashCode(); + if (hasTopologyId()) { + hash = (37 * hash) + TOPOLOGY_ID_FIELD_NUMBER; + hash = (53 * hash) + getTopologyId().hashCode(); } - if (hasL3()) { - hash = (37 * hash) + L3_FIELD_NUMBER; - hash = (53 * hash) + getL3().hashCode(); + if (hasDeviceId()) { + hash = (37 * hash) + DEVICE_ID_FIELD_NUMBER; + hash = (53 * hash) + getDeviceId().hashCode(); } - if (hasL4()) { - hash = (37 * hash) + L4_FIELD_NUMBER; - hash = (53 * hash) + getL4().hashCode(); + if (hasEndpointUuid()) { + hash = (37 * hash) + ENDPOINT_UUID_FIELD_NUMBER; + hash = (53 * hash) + getEndpointUuid().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ConnectionSettings parseFrom( + public static context.ContextOuterClass.EndPointId parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings parseFrom( + public static context.ContextOuterClass.EndPointId parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings parseFrom( + public static context.ContextOuterClass.EndPointId parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings parseFrom( + public static context.ContextOuterClass.EndPointId parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings parseFrom(byte[] data) + public static context.ContextOuterClass.EndPointId parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionSettings parseFrom( + public static context.ContextOuterClass.EndPointId parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionSettings parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.EndPointId parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings parseFrom( + public static context.ContextOuterClass.EndPointId 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 context.ContextOuterClass.ConnectionSettings parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.EndPointId parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings parseDelimitedFrom( + public static context.ContextOuterClass.EndPointId 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 context.ContextOuterClass.ConnectionSettings parseFrom( + public static context.ContextOuterClass.EndPointId parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionSettings parseFrom( + public static context.ContextOuterClass.EndPointId parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -41588,7 +53894,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ConnectionSettings prototype) { + public static Builder newBuilder(context.ContextOuterClass.EndPointId prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -41604,26 +53910,30 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ConnectionSettings} + * <pre> + * ----- Endpoint ------------------------------------------------------------------------------------------------------ + * </pre> + * + * Protobuf type {@code context.EndPointId} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ConnectionSettings) - context.ContextOuterClass.ConnectionSettingsOrBuilder { + // @@protoc_insertion_point(builder_implements:context.EndPointId) + context.ContextOuterClass.EndPointIdOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_descriptor; + return context.ContextOuterClass.internal_static_context_EndPointId_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_EndPointId_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionSettings.class, context.ContextOuterClass.ConnectionSettings.Builder.class); + context.ContextOuterClass.EndPointId.class, context.ContextOuterClass.EndPointId.Builder.class); } - // Construct using context.ContextOuterClass.ConnectionSettings.newBuilder() + // Construct using context.ContextOuterClass.EndPointId.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -41641,29 +53951,23 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - if (l0Builder_ == null) { - l0_ = null; - } else { - l0_ = null; - l0Builder_ = null; - } - if (l2Builder_ == null) { - l2_ = null; + if (topologyIdBuilder_ == null) { + topologyId_ = null; } else { - l2_ = null; - l2Builder_ = null; + topologyId_ = null; + topologyIdBuilder_ = null; } - if (l3Builder_ == null) { - l3_ = null; + if (deviceIdBuilder_ == null) { + deviceId_ = null; } else { - l3_ = null; - l3Builder_ = null; + deviceId_ = null; + deviceIdBuilder_ = null; } - if (l4Builder_ == null) { - l4_ = null; + if (endpointUuidBuilder_ == null) { + endpointUuid_ = null; } else { - l4_ = null; - l4Builder_ = null; + endpointUuid_ = null; + endpointUuidBuilder_ = null; } return this; } @@ -41671,17 +53975,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ConnectionSettings_descriptor; + return context.ContextOuterClass.internal_static_context_EndPointId_descriptor; } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings getDefaultInstanceForType() { - return context.ContextOuterClass.ConnectionSettings.getDefaultInstance(); + public context.ContextOuterClass.EndPointId getDefaultInstanceForType() { + return context.ContextOuterClass.EndPointId.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings build() { - context.ContextOuterClass.ConnectionSettings result = buildPartial(); + public context.ContextOuterClass.EndPointId build() { + context.ContextOuterClass.EndPointId result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -41689,27 +53993,22 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings buildPartial() { - context.ContextOuterClass.ConnectionSettings result = new context.ContextOuterClass.ConnectionSettings(this); - if (l0Builder_ == null) { - result.l0_ = l0_; - } else { - result.l0_ = l0Builder_.build(); - } - if (l2Builder_ == null) { - result.l2_ = l2_; + public context.ContextOuterClass.EndPointId buildPartial() { + context.ContextOuterClass.EndPointId result = new context.ContextOuterClass.EndPointId(this); + if (topologyIdBuilder_ == null) { + result.topologyId_ = topologyId_; } else { - result.l2_ = l2Builder_.build(); + result.topologyId_ = topologyIdBuilder_.build(); } - if (l3Builder_ == null) { - result.l3_ = l3_; + if (deviceIdBuilder_ == null) { + result.deviceId_ = deviceId_; } else { - result.l3_ = l3Builder_.build(); + result.deviceId_ = deviceIdBuilder_.build(); } - if (l4Builder_ == null) { - result.l4_ = l4_; + if (endpointUuidBuilder_ == null) { + result.endpointUuid_ = endpointUuid_; } else { - result.l4_ = l4Builder_.build(); + result.endpointUuid_ = endpointUuidBuilder_.build(); } onBuilt(); return result; @@ -41749,27 +54048,24 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ConnectionSettings) { - return mergeFrom((context.ContextOuterClass.ConnectionSettings)other); + if (other instanceof context.ContextOuterClass.EndPointId) { + return mergeFrom((context.ContextOuterClass.EndPointId)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ConnectionSettings other) { - if (other == context.ContextOuterClass.ConnectionSettings.getDefaultInstance()) return this; - if (other.hasL0()) { - mergeL0(other.getL0()); - } - if (other.hasL2()) { - mergeL2(other.getL2()); + public Builder mergeFrom(context.ContextOuterClass.EndPointId other) { + if (other == context.ContextOuterClass.EndPointId.getDefaultInstance()) return this; + if (other.hasTopologyId()) { + mergeTopologyId(other.getTopologyId()); } - if (other.hasL3()) { - mergeL3(other.getL3()); + if (other.hasDeviceId()) { + mergeDeviceId(other.getDeviceId()); } - if (other.hasL4()) { - mergeL4(other.getL4()); + if (other.hasEndpointUuid()) { + mergeEndpointUuid(other.getEndpointUuid()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -41786,11 +54082,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ConnectionSettings parsedMessage = null; + context.ContextOuterClass.EndPointId parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ConnectionSettings) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.EndPointId) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -41800,480 +54096,361 @@ public final class ContextOuterClass { return this; } - private context.ContextOuterClass.ConnectionSettings_L0 l0_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings_L0, context.ContextOuterClass.ConnectionSettings_L0.Builder, context.ContextOuterClass.ConnectionSettings_L0OrBuilder> l0Builder_; - /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> - * @return Whether the l0 field is set. - */ - public boolean hasL0() { - return l0Builder_ != null || l0_ != null; - } - /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> - * @return The l0. - */ - public context.ContextOuterClass.ConnectionSettings_L0 getL0() { - if (l0Builder_ == null) { - return l0_ == null ? context.ContextOuterClass.ConnectionSettings_L0.getDefaultInstance() : l0_; - } else { - return l0Builder_.getMessage(); - } - } - /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> - */ - public Builder setL0(context.ContextOuterClass.ConnectionSettings_L0 value) { - if (l0Builder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - l0_ = value; - onChanged(); - } else { - l0Builder_.setMessage(value); - } - - return this; - } - /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> - */ - public Builder setL0( - context.ContextOuterClass.ConnectionSettings_L0.Builder builderForValue) { - if (l0Builder_ == null) { - l0_ = builderForValue.build(); - onChanged(); - } else { - l0Builder_.setMessage(builderForValue.build()); - } - - return this; - } - /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> - */ - public Builder mergeL0(context.ContextOuterClass.ConnectionSettings_L0 value) { - if (l0Builder_ == null) { - if (l0_ != null) { - l0_ = - context.ContextOuterClass.ConnectionSettings_L0.newBuilder(l0_).mergeFrom(value).buildPartial(); - } else { - l0_ = value; - } - onChanged(); - } else { - l0Builder_.mergeFrom(value); - } - - return this; - } - /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> - */ - public Builder clearL0() { - if (l0Builder_ == null) { - l0_ = null; - onChanged(); - } else { - l0_ = null; - l0Builder_ = null; - } - - return this; - } - /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> - */ - public context.ContextOuterClass.ConnectionSettings_L0.Builder getL0Builder() { - - onChanged(); - return getL0FieldBuilder().getBuilder(); - } - /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> - */ - public context.ContextOuterClass.ConnectionSettings_L0OrBuilder getL0OrBuilder() { - if (l0Builder_ != null) { - return l0Builder_.getMessageOrBuilder(); - } else { - return l0_ == null ? - context.ContextOuterClass.ConnectionSettings_L0.getDefaultInstance() : l0_; - } - } - /** - * <code>.context.ConnectionSettings_L0 l0 = 1;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings_L0, context.ContextOuterClass.ConnectionSettings_L0.Builder, context.ContextOuterClass.ConnectionSettings_L0OrBuilder> - getL0FieldBuilder() { - if (l0Builder_ == null) { - l0Builder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings_L0, context.ContextOuterClass.ConnectionSettings_L0.Builder, context.ContextOuterClass.ConnectionSettings_L0OrBuilder>( - getL0(), - getParentForChildren(), - isClean()); - l0_ = null; - } - return l0Builder_; - } - - private context.ContextOuterClass.ConnectionSettings_L2 l2_; + private context.ContextOuterClass.TopologyId topologyId_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings_L2, context.ContextOuterClass.ConnectionSettings_L2.Builder, context.ContextOuterClass.ConnectionSettings_L2OrBuilder> l2Builder_; + context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> topologyIdBuilder_; /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> - * @return Whether the l2 field is set. + * <code>.context.TopologyId topology_id = 1;</code> + * @return Whether the topologyId field is set. */ - public boolean hasL2() { - return l2Builder_ != null || l2_ != null; + public boolean hasTopologyId() { + return topologyIdBuilder_ != null || topologyId_ != null; } /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> - * @return The l2. + * <code>.context.TopologyId topology_id = 1;</code> + * @return The topologyId. */ - public context.ContextOuterClass.ConnectionSettings_L2 getL2() { - if (l2Builder_ == null) { - return l2_ == null ? context.ContextOuterClass.ConnectionSettings_L2.getDefaultInstance() : l2_; + public context.ContextOuterClass.TopologyId getTopologyId() { + if (topologyIdBuilder_ == null) { + return topologyId_ == null ? context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_; } else { - return l2Builder_.getMessage(); + return topologyIdBuilder_.getMessage(); } } /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * <code>.context.TopologyId topology_id = 1;</code> */ - public Builder setL2(context.ContextOuterClass.ConnectionSettings_L2 value) { - if (l2Builder_ == null) { + public Builder setTopologyId(context.ContextOuterClass.TopologyId value) { + if (topologyIdBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - l2_ = value; + topologyId_ = value; onChanged(); } else { - l2Builder_.setMessage(value); + topologyIdBuilder_.setMessage(value); } return this; } /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * <code>.context.TopologyId topology_id = 1;</code> */ - public Builder setL2( - context.ContextOuterClass.ConnectionSettings_L2.Builder builderForValue) { - if (l2Builder_ == null) { - l2_ = builderForValue.build(); + public Builder setTopologyId( + context.ContextOuterClass.TopologyId.Builder builderForValue) { + if (topologyIdBuilder_ == null) { + topologyId_ = builderForValue.build(); onChanged(); } else { - l2Builder_.setMessage(builderForValue.build()); + topologyIdBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * <code>.context.TopologyId topology_id = 1;</code> */ - public Builder mergeL2(context.ContextOuterClass.ConnectionSettings_L2 value) { - if (l2Builder_ == null) { - if (l2_ != null) { - l2_ = - context.ContextOuterClass.ConnectionSettings_L2.newBuilder(l2_).mergeFrom(value).buildPartial(); + public Builder mergeTopologyId(context.ContextOuterClass.TopologyId value) { + if (topologyIdBuilder_ == null) { + if (topologyId_ != null) { + topologyId_ = + context.ContextOuterClass.TopologyId.newBuilder(topologyId_).mergeFrom(value).buildPartial(); } else { - l2_ = value; + topologyId_ = value; } onChanged(); } else { - l2Builder_.mergeFrom(value); + topologyIdBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * <code>.context.TopologyId topology_id = 1;</code> */ - public Builder clearL2() { - if (l2Builder_ == null) { - l2_ = null; + public Builder clearTopologyId() { + if (topologyIdBuilder_ == null) { + topologyId_ = null; onChanged(); } else { - l2_ = null; - l2Builder_ = null; + topologyId_ = null; + topologyIdBuilder_ = null; } return this; } /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * <code>.context.TopologyId topology_id = 1;</code> */ - public context.ContextOuterClass.ConnectionSettings_L2.Builder getL2Builder() { + public context.ContextOuterClass.TopologyId.Builder getTopologyIdBuilder() { onChanged(); - return getL2FieldBuilder().getBuilder(); + return getTopologyIdFieldBuilder().getBuilder(); } /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * <code>.context.TopologyId topology_id = 1;</code> */ - public context.ContextOuterClass.ConnectionSettings_L2OrBuilder getL2OrBuilder() { - if (l2Builder_ != null) { - return l2Builder_.getMessageOrBuilder(); + public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder() { + if (topologyIdBuilder_ != null) { + return topologyIdBuilder_.getMessageOrBuilder(); } else { - return l2_ == null ? - context.ContextOuterClass.ConnectionSettings_L2.getDefaultInstance() : l2_; + return topologyId_ == null ? + context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_; } } /** - * <code>.context.ConnectionSettings_L2 l2 = 2;</code> + * <code>.context.TopologyId topology_id = 1;</code> */ private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings_L2, context.ContextOuterClass.ConnectionSettings_L2.Builder, context.ContextOuterClass.ConnectionSettings_L2OrBuilder> - getL2FieldBuilder() { - if (l2Builder_ == null) { - l2Builder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings_L2, context.ContextOuterClass.ConnectionSettings_L2.Builder, context.ContextOuterClass.ConnectionSettings_L2OrBuilder>( - getL2(), + context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> + getTopologyIdFieldBuilder() { + if (topologyIdBuilder_ == null) { + topologyIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder>( + getTopologyId(), getParentForChildren(), isClean()); - l2_ = null; + topologyId_ = null; } - return l2Builder_; + return topologyIdBuilder_; } - private context.ContextOuterClass.ConnectionSettings_L3 l3_; + private context.ContextOuterClass.DeviceId deviceId_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings_L3, context.ContextOuterClass.ConnectionSettings_L3.Builder, context.ContextOuterClass.ConnectionSettings_L3OrBuilder> l3Builder_; + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> deviceIdBuilder_; /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> - * @return Whether the l3 field is set. + * <code>.context.DeviceId device_id = 2;</code> + * @return Whether the deviceId field is set. */ - public boolean hasL3() { - return l3Builder_ != null || l3_ != null; + public boolean hasDeviceId() { + return deviceIdBuilder_ != null || deviceId_ != null; } /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> - * @return The l3. + * <code>.context.DeviceId device_id = 2;</code> + * @return The deviceId. */ - public context.ContextOuterClass.ConnectionSettings_L3 getL3() { - if (l3Builder_ == null) { - return l3_ == null ? context.ContextOuterClass.ConnectionSettings_L3.getDefaultInstance() : l3_; + public context.ContextOuterClass.DeviceId getDeviceId() { + if (deviceIdBuilder_ == null) { + return deviceId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; } else { - return l3Builder_.getMessage(); + return deviceIdBuilder_.getMessage(); } } /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * <code>.context.DeviceId device_id = 2;</code> */ - public Builder setL3(context.ContextOuterClass.ConnectionSettings_L3 value) { - if (l3Builder_ == null) { + public Builder setDeviceId(context.ContextOuterClass.DeviceId value) { + if (deviceIdBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - l3_ = value; + deviceId_ = value; onChanged(); } else { - l3Builder_.setMessage(value); + deviceIdBuilder_.setMessage(value); } return this; } /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * <code>.context.DeviceId device_id = 2;</code> */ - public Builder setL3( - context.ContextOuterClass.ConnectionSettings_L3.Builder builderForValue) { - if (l3Builder_ == null) { - l3_ = builderForValue.build(); + public Builder setDeviceId( + context.ContextOuterClass.DeviceId.Builder builderForValue) { + if (deviceIdBuilder_ == null) { + deviceId_ = builderForValue.build(); onChanged(); } else { - l3Builder_.setMessage(builderForValue.build()); + deviceIdBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * <code>.context.DeviceId device_id = 2;</code> */ - public Builder mergeL3(context.ContextOuterClass.ConnectionSettings_L3 value) { - if (l3Builder_ == null) { - if (l3_ != null) { - l3_ = - context.ContextOuterClass.ConnectionSettings_L3.newBuilder(l3_).mergeFrom(value).buildPartial(); + public Builder mergeDeviceId(context.ContextOuterClass.DeviceId value) { + if (deviceIdBuilder_ == null) { + if (deviceId_ != null) { + deviceId_ = + context.ContextOuterClass.DeviceId.newBuilder(deviceId_).mergeFrom(value).buildPartial(); } else { - l3_ = value; + deviceId_ = value; } onChanged(); } else { - l3Builder_.mergeFrom(value); + deviceIdBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * <code>.context.DeviceId device_id = 2;</code> */ - public Builder clearL3() { - if (l3Builder_ == null) { - l3_ = null; + public Builder clearDeviceId() { + if (deviceIdBuilder_ == null) { + deviceId_ = null; onChanged(); } else { - l3_ = null; - l3Builder_ = null; + deviceId_ = null; + deviceIdBuilder_ = null; } return this; } /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * <code>.context.DeviceId device_id = 2;</code> */ - public context.ContextOuterClass.ConnectionSettings_L3.Builder getL3Builder() { + public context.ContextOuterClass.DeviceId.Builder getDeviceIdBuilder() { onChanged(); - return getL3FieldBuilder().getBuilder(); + return getDeviceIdFieldBuilder().getBuilder(); } /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * <code>.context.DeviceId device_id = 2;</code> */ - public context.ContextOuterClass.ConnectionSettings_L3OrBuilder getL3OrBuilder() { - if (l3Builder_ != null) { - return l3Builder_.getMessageOrBuilder(); + public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder() { + if (deviceIdBuilder_ != null) { + return deviceIdBuilder_.getMessageOrBuilder(); } else { - return l3_ == null ? - context.ContextOuterClass.ConnectionSettings_L3.getDefaultInstance() : l3_; + return deviceId_ == null ? + context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; } } /** - * <code>.context.ConnectionSettings_L3 l3 = 3;</code> + * <code>.context.DeviceId device_id = 2;</code> */ private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings_L3, context.ContextOuterClass.ConnectionSettings_L3.Builder, context.ContextOuterClass.ConnectionSettings_L3OrBuilder> - getL3FieldBuilder() { - if (l3Builder_ == null) { - l3Builder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings_L3, context.ContextOuterClass.ConnectionSettings_L3.Builder, context.ContextOuterClass.ConnectionSettings_L3OrBuilder>( - getL3(), + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> + getDeviceIdFieldBuilder() { + if (deviceIdBuilder_ == null) { + deviceIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder>( + getDeviceId(), getParentForChildren(), isClean()); - l3_ = null; + deviceId_ = null; } - return l3Builder_; + return deviceIdBuilder_; } - private context.ContextOuterClass.ConnectionSettings_L4 l4_; + private context.ContextOuterClass.Uuid endpointUuid_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings_L4, context.ContextOuterClass.ConnectionSettings_L4.Builder, context.ContextOuterClass.ConnectionSettings_L4OrBuilder> l4Builder_; + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> endpointUuidBuilder_; /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> - * @return Whether the l4 field is set. + * <code>.context.Uuid endpoint_uuid = 3;</code> + * @return Whether the endpointUuid field is set. */ - public boolean hasL4() { - return l4Builder_ != null || l4_ != null; + public boolean hasEndpointUuid() { + return endpointUuidBuilder_ != null || endpointUuid_ != null; } /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> - * @return The l4. + * <code>.context.Uuid endpoint_uuid = 3;</code> + * @return The endpointUuid. */ - public context.ContextOuterClass.ConnectionSettings_L4 getL4() { - if (l4Builder_ == null) { - return l4_ == null ? context.ContextOuterClass.ConnectionSettings_L4.getDefaultInstance() : l4_; + public context.ContextOuterClass.Uuid getEndpointUuid() { + if (endpointUuidBuilder_ == null) { + return endpointUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : endpointUuid_; } else { - return l4Builder_.getMessage(); + return endpointUuidBuilder_.getMessage(); } } /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * <code>.context.Uuid endpoint_uuid = 3;</code> */ - public Builder setL4(context.ContextOuterClass.ConnectionSettings_L4 value) { - if (l4Builder_ == null) { + public Builder setEndpointUuid(context.ContextOuterClass.Uuid value) { + if (endpointUuidBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - l4_ = value; + endpointUuid_ = value; onChanged(); } else { - l4Builder_.setMessage(value); + endpointUuidBuilder_.setMessage(value); } return this; } /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * <code>.context.Uuid endpoint_uuid = 3;</code> */ - public Builder setL4( - context.ContextOuterClass.ConnectionSettings_L4.Builder builderForValue) { - if (l4Builder_ == null) { - l4_ = builderForValue.build(); + public Builder setEndpointUuid( + context.ContextOuterClass.Uuid.Builder builderForValue) { + if (endpointUuidBuilder_ == null) { + endpointUuid_ = builderForValue.build(); onChanged(); } else { - l4Builder_.setMessage(builderForValue.build()); + endpointUuidBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * <code>.context.Uuid endpoint_uuid = 3;</code> */ - public Builder mergeL4(context.ContextOuterClass.ConnectionSettings_L4 value) { - if (l4Builder_ == null) { - if (l4_ != null) { - l4_ = - context.ContextOuterClass.ConnectionSettings_L4.newBuilder(l4_).mergeFrom(value).buildPartial(); + public Builder mergeEndpointUuid(context.ContextOuterClass.Uuid value) { + if (endpointUuidBuilder_ == null) { + if (endpointUuid_ != null) { + endpointUuid_ = + context.ContextOuterClass.Uuid.newBuilder(endpointUuid_).mergeFrom(value).buildPartial(); } else { - l4_ = value; + endpointUuid_ = value; } onChanged(); } else { - l4Builder_.mergeFrom(value); + endpointUuidBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * <code>.context.Uuid endpoint_uuid = 3;</code> */ - public Builder clearL4() { - if (l4Builder_ == null) { - l4_ = null; + public Builder clearEndpointUuid() { + if (endpointUuidBuilder_ == null) { + endpointUuid_ = null; onChanged(); } else { - l4_ = null; - l4Builder_ = null; + endpointUuid_ = null; + endpointUuidBuilder_ = null; } return this; } /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * <code>.context.Uuid endpoint_uuid = 3;</code> */ - public context.ContextOuterClass.ConnectionSettings_L4.Builder getL4Builder() { + public context.ContextOuterClass.Uuid.Builder getEndpointUuidBuilder() { onChanged(); - return getL4FieldBuilder().getBuilder(); + return getEndpointUuidFieldBuilder().getBuilder(); } /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * <code>.context.Uuid endpoint_uuid = 3;</code> */ - public context.ContextOuterClass.ConnectionSettings_L4OrBuilder getL4OrBuilder() { - if (l4Builder_ != null) { - return l4Builder_.getMessageOrBuilder(); + public context.ContextOuterClass.UuidOrBuilder getEndpointUuidOrBuilder() { + if (endpointUuidBuilder_ != null) { + return endpointUuidBuilder_.getMessageOrBuilder(); } else { - return l4_ == null ? - context.ContextOuterClass.ConnectionSettings_L4.getDefaultInstance() : l4_; + return endpointUuid_ == null ? + context.ContextOuterClass.Uuid.getDefaultInstance() : endpointUuid_; } } /** - * <code>.context.ConnectionSettings_L4 l4 = 4;</code> + * <code>.context.Uuid endpoint_uuid = 3;</code> */ private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings_L4, context.ContextOuterClass.ConnectionSettings_L4.Builder, context.ContextOuterClass.ConnectionSettings_L4OrBuilder> - getL4FieldBuilder() { - if (l4Builder_ == null) { - l4Builder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings_L4, context.ContextOuterClass.ConnectionSettings_L4.Builder, context.ContextOuterClass.ConnectionSettings_L4OrBuilder>( - getL4(), + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> + getEndpointUuidFieldBuilder() { + if (endpointUuidBuilder_ == null) { + endpointUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>( + getEndpointUuid(), getParentForChildren(), isClean()); - l4_ = null; + endpointUuid_ = null; } - return l4Builder_; + return endpointUuidBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -42288,165 +54465,156 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ConnectionSettings) + // @@protoc_insertion_point(builder_scope:context.EndPointId) } - // @@protoc_insertion_point(class_scope:context.ConnectionSettings) - private static final context.ContextOuterClass.ConnectionSettings DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.EndPointId) + private static final context.ContextOuterClass.EndPointId DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionSettings(); + DEFAULT_INSTANCE = new context.ContextOuterClass.EndPointId(); } - public static context.ContextOuterClass.ConnectionSettings getDefaultInstance() { + public static context.ContextOuterClass.EndPointId getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ConnectionSettings> - PARSER = new com.google.protobuf.AbstractParser<ConnectionSettings>() { + private static final com.google.protobuf.Parser<EndPointId> + PARSER = new com.google.protobuf.AbstractParser<EndPointId>() { @java.lang.Override - public ConnectionSettings parsePartialFrom( + public EndPointId parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ConnectionSettings(input, extensionRegistry); + return new EndPointId(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ConnectionSettings> parser() { + public static com.google.protobuf.Parser<EndPointId> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ConnectionSettings> getParserForType() { + public com.google.protobuf.Parser<EndPointId> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ConnectionSettings getDefaultInstanceForType() { + public context.ContextOuterClass.EndPointId getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ConnectionOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Connection) + public interface EndPointOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.EndPoint) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.ConnectionId connection_id = 1;</code> - * @return Whether the connectionId field is set. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ - boolean hasConnectionId(); + boolean hasEndpointId(); /** - * <code>.context.ConnectionId connection_id = 1;</code> - * @return The connectionId. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. */ - context.ContextOuterClass.ConnectionId getConnectionId(); + context.ContextOuterClass.EndPointId getEndpointId(); /** - * <code>.context.ConnectionId connection_id = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder(); + context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder(); /** - * <code>.context.ServiceId service_id = 2;</code> - * @return Whether the serviceId field is set. - */ - boolean hasServiceId(); - /** - * <code>.context.ServiceId service_id = 2;</code> - * @return The serviceId. + * <code>string name = 2;</code> + * @return The name. */ - context.ContextOuterClass.ServiceId getServiceId(); + java.lang.String getName(); /** - * <code>.context.ServiceId service_id = 2;</code> + * <code>string name = 2;</code> + * @return The bytes for name. */ - context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder(); + com.google.protobuf.ByteString + getNameBytes(); /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - java.util.List<context.ContextOuterClass.EndPointId> - getPathHopsEndpointIdsList(); - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - context.ContextOuterClass.EndPointId getPathHopsEndpointIds(int index); - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - int getPathHopsEndpointIdsCount(); - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + * <code>string endpoint_type = 3;</code> + * @return The endpointType. */ - java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> - getPathHopsEndpointIdsOrBuilderList(); + java.lang.String getEndpointType(); /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + * <code>string endpoint_type = 3;</code> + * @return The bytes for endpointType. */ - context.ContextOuterClass.EndPointIdOrBuilder getPathHopsEndpointIdsOrBuilder( - int index); + com.google.protobuf.ByteString + getEndpointTypeBytes(); /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @return A list containing the kpiSampleTypes. */ - java.util.List<context.ContextOuterClass.ServiceId> - getSubServiceIdsList(); + java.util.List<kpi_sample_types.KpiSampleTypes.KpiSampleType> getKpiSampleTypesList(); /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @return The count of kpiSampleTypes. */ - context.ContextOuterClass.ServiceId getSubServiceIds(int index); + int getKpiSampleTypesCount(); /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @param index The index of the element to return. + * @return The kpiSampleTypes at the given index. */ - int getSubServiceIdsCount(); + kpi_sample_types.KpiSampleTypes.KpiSampleType getKpiSampleTypes(int index); /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @return A list containing the enum numeric values on the wire for kpiSampleTypes. */ - java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> - getSubServiceIdsOrBuilderList(); + java.util.List<java.lang.Integer> + getKpiSampleTypesValueList(); /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @param index The index of the value to return. + * @return The enum numeric value on the wire of kpiSampleTypes at the given index. */ - context.ContextOuterClass.ServiceIdOrBuilder getSubServiceIdsOrBuilder( - int index); + int getKpiSampleTypesValue(int index); /** - * <code>.context.ConnectionSettings settings = 5;</code> - * @return Whether the settings field is set. + * <code>.context.Location endpoint_location = 5;</code> + * @return Whether the endpointLocation field is set. */ - boolean hasSettings(); + boolean hasEndpointLocation(); /** - * <code>.context.ConnectionSettings settings = 5;</code> - * @return The settings. + * <code>.context.Location endpoint_location = 5;</code> + * @return The endpointLocation. */ - context.ContextOuterClass.ConnectionSettings getSettings(); + context.ContextOuterClass.Location getEndpointLocation(); /** - * <code>.context.ConnectionSettings settings = 5;</code> + * <code>.context.Location endpoint_location = 5;</code> */ - context.ContextOuterClass.ConnectionSettingsOrBuilder getSettingsOrBuilder(); + context.ContextOuterClass.LocationOrBuilder getEndpointLocationOrBuilder(); } /** - * Protobuf type {@code context.Connection} + * Protobuf type {@code context.EndPoint} */ - public static final class Connection extends + public static final class EndPoint extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Connection) - ConnectionOrBuilder { + // @@protoc_insertion_point(message_implements:context.EndPoint) + EndPointOrBuilder { private static final long serialVersionUID = 0L; - // Use Connection.newBuilder() to construct. - private Connection(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use EndPoint.newBuilder() to construct. + private EndPoint(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private Connection() { - pathHopsEndpointIds_ = java.util.Collections.emptyList(); - subServiceIds_ = java.util.Collections.emptyList(); + private EndPoint() { + name_ = ""; + endpointType_ = ""; + kpiSampleTypes_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new Connection(); + return new EndPoint(); } @java.lang.Override @@ -42454,7 +54622,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private Connection( + private EndPoint( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -42474,58 +54642,62 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.ConnectionId.Builder subBuilder = null; - if (connectionId_ != null) { - subBuilder = connectionId_.toBuilder(); + context.ContextOuterClass.EndPointId.Builder subBuilder = null; + if (endpointId_ != null) { + subBuilder = endpointId_.toBuilder(); } - connectionId_ = input.readMessage(context.ContextOuterClass.ConnectionId.parser(), extensionRegistry); + endpointId_ = input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(connectionId_); - connectionId_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(endpointId_); + endpointId_ = 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(); - } + java.lang.String s = input.readStringRequireUtf8(); + name_ = s; break; } case 26: { + java.lang.String s = input.readStringRequireUtf8(); + + endpointType_ = s; + break; + } + case 32: { + int rawValue = input.readEnum(); if (!((mutable_bitField0_ & 0x00000001) != 0)) { - pathHopsEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(); + kpiSampleTypes_ = new java.util.ArrayList<java.lang.Integer>(); mutable_bitField0_ |= 0x00000001; } - pathHopsEndpointIds_.add( - input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry)); + kpiSampleTypes_.add(rawValue); break; } case 34: { - if (!((mutable_bitField0_ & 0x00000002) != 0)) { - subServiceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(); - mutable_bitField0_ |= 0x00000002; + int length = input.readRawVarint32(); + int oldLimit = input.pushLimit(length); + while(input.getBytesUntilLimit() > 0) { + int rawValue = input.readEnum(); + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + kpiSampleTypes_ = new java.util.ArrayList<java.lang.Integer>(); + mutable_bitField0_ |= 0x00000001; + } + kpiSampleTypes_.add(rawValue); } - subServiceIds_.add( - input.readMessage(context.ContextOuterClass.ServiceId.parser(), extensionRegistry)); + input.popLimit(oldLimit); break; } case 42: { - context.ContextOuterClass.ConnectionSettings.Builder subBuilder = null; - if (settings_ != null) { - subBuilder = settings_.toBuilder(); + context.ContextOuterClass.Location.Builder subBuilder = null; + if (endpointLocation_ != null) { + subBuilder = endpointLocation_.toBuilder(); } - settings_ = input.readMessage(context.ContextOuterClass.ConnectionSettings.parser(), extensionRegistry); + endpointLocation_ = input.readMessage(context.ContextOuterClass.Location.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(settings_); - settings_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(endpointLocation_); + endpointLocation_ = subBuilder.buildPartial(); } break; @@ -42546,10 +54718,7 @@ public final class ContextOuterClass { e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { - pathHopsEndpointIds_ = java.util.Collections.unmodifiableList(pathHopsEndpointIds_); - } - if (((mutable_bitField0_ & 0x00000002) != 0)) { - subServiceIds_ = java.util.Collections.unmodifiableList(subServiceIds_); + kpiSampleTypes_ = java.util.Collections.unmodifiableList(kpiSampleTypes_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); @@ -42557,173 +54726,201 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Connection_descriptor; + return context.ContextOuterClass.internal_static_context_EndPoint_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Connection_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_EndPoint_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Connection.class, context.ContextOuterClass.Connection.Builder.class); + context.ContextOuterClass.EndPoint.class, context.ContextOuterClass.EndPoint.Builder.class); } - public static final int CONNECTION_ID_FIELD_NUMBER = 1; - private context.ContextOuterClass.ConnectionId connectionId_; + public static final int ENDPOINT_ID_FIELD_NUMBER = 1; + private context.ContextOuterClass.EndPointId endpointId_; /** - * <code>.context.ConnectionId connection_id = 1;</code> - * @return Whether the connectionId field is set. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ @java.lang.Override - public boolean hasConnectionId() { - return connectionId_ != null; + public boolean hasEndpointId() { + return endpointId_ != null; } /** - * <code>.context.ConnectionId connection_id = 1;</code> - * @return The connectionId. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. */ @java.lang.Override - public context.ContextOuterClass.ConnectionId getConnectionId() { - return connectionId_ == null ? context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; + public context.ContextOuterClass.EndPointId getEndpointId() { + return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; } /** - * <code>.context.ConnectionId connection_id = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder() { - return getConnectionId(); + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { + return getEndpointId(); } - public static final int SERVICE_ID_FIELD_NUMBER = 2; - private context.ContextOuterClass.ServiceId serviceId_; - /** - * <code>.context.ServiceId service_id = 2;</code> - * @return Whether the serviceId field is set. - */ - @java.lang.Override - public boolean hasServiceId() { - return serviceId_ != null; - } + public static final int NAME_FIELD_NUMBER = 2; + private volatile java.lang.Object name_; /** - * <code>.context.ServiceId service_id = 2;</code> - * @return The serviceId. + * <code>string name = 2;</code> + * @return The name. */ @java.lang.Override - public context.ContextOuterClass.ServiceId getServiceId() { - return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; + public java.lang.String getName() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } } /** - * <code>.context.ServiceId service_id = 2;</code> + * <code>string name = 2;</code> + * @return The bytes for name. */ @java.lang.Override - public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() { - return getServiceId(); + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } - public static final int PATH_HOPS_ENDPOINT_IDS_FIELD_NUMBER = 3; - private java.util.List<context.ContextOuterClass.EndPointId> pathHopsEndpointIds_; - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - @java.lang.Override - public java.util.List<context.ContextOuterClass.EndPointId> getPathHopsEndpointIdsList() { - return pathHopsEndpointIds_; - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> - getPathHopsEndpointIdsOrBuilderList() { - return pathHopsEndpointIds_; - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - @java.lang.Override - public int getPathHopsEndpointIdsCount() { - return pathHopsEndpointIds_.size(); - } + public static final int ENDPOINT_TYPE_FIELD_NUMBER = 3; + private volatile java.lang.Object endpointType_; /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + * <code>string endpoint_type = 3;</code> + * @return The endpointType. */ @java.lang.Override - public context.ContextOuterClass.EndPointId getPathHopsEndpointIds(int index) { - return pathHopsEndpointIds_.get(index); + public java.lang.String getEndpointType() { + java.lang.Object ref = endpointType_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + endpointType_ = s; + return s; + } } /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> + * <code>string endpoint_type = 3;</code> + * @return The bytes for endpointType. */ @java.lang.Override - public context.ContextOuterClass.EndPointIdOrBuilder getPathHopsEndpointIdsOrBuilder( - int index) { - return pathHopsEndpointIds_.get(index); + public com.google.protobuf.ByteString + getEndpointTypeBytes() { + java.lang.Object ref = endpointType_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + endpointType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } - public static final int SUB_SERVICE_IDS_FIELD_NUMBER = 4; - private java.util.List<context.ContextOuterClass.ServiceId> subServiceIds_; + public static final int KPI_SAMPLE_TYPES_FIELD_NUMBER = 4; + private java.util.List<java.lang.Integer> kpiSampleTypes_; + private static final com.google.protobuf.Internal.ListAdapter.Converter< + java.lang.Integer, kpi_sample_types.KpiSampleTypes.KpiSampleType> kpiSampleTypes_converter_ = + new com.google.protobuf.Internal.ListAdapter.Converter< + java.lang.Integer, kpi_sample_types.KpiSampleTypes.KpiSampleType>() { + public kpi_sample_types.KpiSampleTypes.KpiSampleType convert(java.lang.Integer from) { + @SuppressWarnings("deprecation") + kpi_sample_types.KpiSampleTypes.KpiSampleType result = kpi_sample_types.KpiSampleTypes.KpiSampleType.valueOf(from); + return result == null ? kpi_sample_types.KpiSampleTypes.KpiSampleType.UNRECOGNIZED : result; + } + }; /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @return A list containing the kpiSampleTypes. */ @java.lang.Override - public java.util.List<context.ContextOuterClass.ServiceId> getSubServiceIdsList() { - return subServiceIds_; + public java.util.List<kpi_sample_types.KpiSampleTypes.KpiSampleType> getKpiSampleTypesList() { + return new com.google.protobuf.Internal.ListAdapter< + java.lang.Integer, kpi_sample_types.KpiSampleTypes.KpiSampleType>(kpiSampleTypes_, kpiSampleTypes_converter_); } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @return The count of kpiSampleTypes. */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> - getSubServiceIdsOrBuilderList() { - return subServiceIds_; + public int getKpiSampleTypesCount() { + return kpiSampleTypes_.size(); } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @param index The index of the element to return. + * @return The kpiSampleTypes at the given index. */ @java.lang.Override - public int getSubServiceIdsCount() { - return subServiceIds_.size(); + public kpi_sample_types.KpiSampleTypes.KpiSampleType getKpiSampleTypes(int index) { + return kpiSampleTypes_converter_.convert(kpiSampleTypes_.get(index)); } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @return A list containing the enum numeric values on the wire for kpiSampleTypes. */ @java.lang.Override - public context.ContextOuterClass.ServiceId getSubServiceIds(int index) { - return subServiceIds_.get(index); + public java.util.List<java.lang.Integer> + getKpiSampleTypesValueList() { + return kpiSampleTypes_; } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @param index The index of the value to return. + * @return The enum numeric value on the wire of kpiSampleTypes at the given index. */ @java.lang.Override - public context.ContextOuterClass.ServiceIdOrBuilder getSubServiceIdsOrBuilder( - int index) { - return subServiceIds_.get(index); + public int getKpiSampleTypesValue(int index) { + return kpiSampleTypes_.get(index); } + private int kpiSampleTypesMemoizedSerializedSize; - public static final int SETTINGS_FIELD_NUMBER = 5; - private context.ContextOuterClass.ConnectionSettings settings_; + public static final int ENDPOINT_LOCATION_FIELD_NUMBER = 5; + private context.ContextOuterClass.Location endpointLocation_; /** - * <code>.context.ConnectionSettings settings = 5;</code> - * @return Whether the settings field is set. + * <code>.context.Location endpoint_location = 5;</code> + * @return Whether the endpointLocation field is set. */ @java.lang.Override - public boolean hasSettings() { - return settings_ != null; + public boolean hasEndpointLocation() { + return endpointLocation_ != null; } /** - * <code>.context.ConnectionSettings settings = 5;</code> - * @return The settings. + * <code>.context.Location endpoint_location = 5;</code> + * @return The endpointLocation. */ @java.lang.Override - public context.ContextOuterClass.ConnectionSettings getSettings() { - return settings_ == null ? context.ContextOuterClass.ConnectionSettings.getDefaultInstance() : settings_; + public context.ContextOuterClass.Location getEndpointLocation() { + return endpointLocation_ == null ? context.ContextOuterClass.Location.getDefaultInstance() : endpointLocation_; } /** - * <code>.context.ConnectionSettings settings = 5;</code> + * <code>.context.Location endpoint_location = 5;</code> */ @java.lang.Override - public context.ContextOuterClass.ConnectionSettingsOrBuilder getSettingsOrBuilder() { - return getSettings(); + public context.ContextOuterClass.LocationOrBuilder getEndpointLocationOrBuilder() { + return getEndpointLocation(); } private byte memoizedIsInitialized = -1; @@ -42740,20 +54937,25 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (connectionId_ != null) { - output.writeMessage(1, getConnectionId()); + getSerializedSize(); + if (endpointId_ != null) { + output.writeMessage(1, getEndpointId()); } - if (serviceId_ != null) { - output.writeMessage(2, getServiceId()); + if (!getNameBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_); } - for (int i = 0; i < pathHopsEndpointIds_.size(); i++) { - output.writeMessage(3, pathHopsEndpointIds_.get(i)); + if (!getEndpointTypeBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, endpointType_); } - for (int i = 0; i < subServiceIds_.size(); i++) { - output.writeMessage(4, subServiceIds_.get(i)); + if (getKpiSampleTypesList().size() > 0) { + output.writeUInt32NoTag(34); + output.writeUInt32NoTag(kpiSampleTypesMemoizedSerializedSize); } - if (settings_ != null) { - output.writeMessage(5, getSettings()); + for (int i = 0; i < kpiSampleTypes_.size(); i++) { + output.writeEnumNoTag(kpiSampleTypes_.get(i)); + } + if (endpointLocation_ != null) { + output.writeMessage(5, getEndpointLocation()); } unknownFields.writeTo(output); } @@ -42764,25 +54966,31 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (connectionId_ != null) { + if (endpointId_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getConnectionId()); + .computeMessageSize(1, getEndpointId()); } - if (serviceId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, getServiceId()); + if (!getNameBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_); } - for (int i = 0; i < pathHopsEndpointIds_.size(); i++) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(3, pathHopsEndpointIds_.get(i)); + if (!getEndpointTypeBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, endpointType_); } - for (int i = 0; i < subServiceIds_.size(); i++) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(4, subServiceIds_.get(i)); + { + int dataSize = 0; + for (int i = 0; i < kpiSampleTypes_.size(); i++) { + dataSize += com.google.protobuf.CodedOutputStream + .computeEnumSizeNoTag(kpiSampleTypes_.get(i)); + } + size += dataSize; + if (!getKpiSampleTypesList().isEmpty()) { size += 1; + size += com.google.protobuf.CodedOutputStream + .computeUInt32SizeNoTag(dataSize); + }kpiSampleTypesMemoizedSerializedSize = dataSize; } - if (settings_ != null) { + if (endpointLocation_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(5, getSettings()); + .computeMessageSize(5, getEndpointLocation()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -42794,29 +55002,25 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.Connection)) { + if (!(obj instanceof context.ContextOuterClass.EndPoint)) { return super.equals(obj); } - context.ContextOuterClass.Connection other = (context.ContextOuterClass.Connection) obj; + context.ContextOuterClass.EndPoint other = (context.ContextOuterClass.EndPoint) obj; - if (hasConnectionId() != other.hasConnectionId()) return false; - if (hasConnectionId()) { - if (!getConnectionId() - .equals(other.getConnectionId())) return false; - } - if (hasServiceId() != other.hasServiceId()) return false; - if (hasServiceId()) { - if (!getServiceId() - .equals(other.getServiceId())) return false; + if (hasEndpointId() != other.hasEndpointId()) return false; + if (hasEndpointId()) { + if (!getEndpointId() + .equals(other.getEndpointId())) return false; } - if (!getPathHopsEndpointIdsList() - .equals(other.getPathHopsEndpointIdsList())) return false; - if (!getSubServiceIdsList() - .equals(other.getSubServiceIdsList())) return false; - if (hasSettings() != other.hasSettings()) return false; - if (hasSettings()) { - if (!getSettings() - .equals(other.getSettings())) return false; + if (!getName() + .equals(other.getName())) return false; + if (!getEndpointType() + .equals(other.getEndpointType())) return false; + if (!kpiSampleTypes_.equals(other.kpiSampleTypes_)) return false; + if (hasEndpointLocation() != other.hasEndpointLocation()) return false; + if (hasEndpointLocation()) { + if (!getEndpointLocation() + .equals(other.getEndpointLocation())) return false; } if (!unknownFields.equals(other.unknownFields)) return false; return true; @@ -42829,94 +55033,90 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasConnectionId()) { - hash = (37 * hash) + CONNECTION_ID_FIELD_NUMBER; - hash = (53 * hash) + getConnectionId().hashCode(); - } - if (hasServiceId()) { - hash = (37 * hash) + SERVICE_ID_FIELD_NUMBER; - hash = (53 * hash) + getServiceId().hashCode(); - } - if (getPathHopsEndpointIdsCount() > 0) { - hash = (37 * hash) + PATH_HOPS_ENDPOINT_IDS_FIELD_NUMBER; - hash = (53 * hash) + getPathHopsEndpointIdsList().hashCode(); + if (hasEndpointId()) { + hash = (37 * hash) + ENDPOINT_ID_FIELD_NUMBER; + hash = (53 * hash) + getEndpointId().hashCode(); } - if (getSubServiceIdsCount() > 0) { - hash = (37 * hash) + SUB_SERVICE_IDS_FIELD_NUMBER; - hash = (53 * hash) + getSubServiceIdsList().hashCode(); + hash = (37 * hash) + NAME_FIELD_NUMBER; + hash = (53 * hash) + getName().hashCode(); + hash = (37 * hash) + ENDPOINT_TYPE_FIELD_NUMBER; + hash = (53 * hash) + getEndpointType().hashCode(); + if (getKpiSampleTypesCount() > 0) { + hash = (37 * hash) + KPI_SAMPLE_TYPES_FIELD_NUMBER; + hash = (53 * hash) + kpiSampleTypes_.hashCode(); } - if (hasSettings()) { - hash = (37 * hash) + SETTINGS_FIELD_NUMBER; - hash = (53 * hash) + getSettings().hashCode(); + if (hasEndpointLocation()) { + hash = (37 * hash) + ENDPOINT_LOCATION_FIELD_NUMBER; + hash = (53 * hash) + getEndpointLocation().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.Connection parseFrom( + public static context.ContextOuterClass.EndPoint parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Connection parseFrom( + public static context.ContextOuterClass.EndPoint parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Connection parseFrom( + public static context.ContextOuterClass.EndPoint parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Connection parseFrom( + public static context.ContextOuterClass.EndPoint parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Connection parseFrom(byte[] data) + public static context.ContextOuterClass.EndPoint parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Connection parseFrom( + public static context.ContextOuterClass.EndPoint parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Connection parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.EndPoint parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Connection parseFrom( + public static context.ContextOuterClass.EndPoint 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 context.ContextOuterClass.Connection parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.EndPoint parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.Connection parseDelimitedFrom( + public static context.ContextOuterClass.EndPoint 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 context.ContextOuterClass.Connection parseFrom( + public static context.ContextOuterClass.EndPoint parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Connection parseFrom( + public static context.ContextOuterClass.EndPoint parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -42929,7 +55129,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.Connection prototype) { + public static Builder newBuilder(context.ContextOuterClass.EndPoint prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -42945,26 +55145,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.Connection} + * Protobuf type {@code context.EndPoint} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Connection) - context.ContextOuterClass.ConnectionOrBuilder { + // @@protoc_insertion_point(builder_implements:context.EndPoint) + context.ContextOuterClass.EndPointOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Connection_descriptor; + return context.ContextOuterClass.internal_static_context_EndPoint_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Connection_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_EndPoint_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Connection.class, context.ContextOuterClass.Connection.Builder.class); + context.ContextOuterClass.EndPoint.class, context.ContextOuterClass.EndPoint.Builder.class); } - // Construct using context.ContextOuterClass.Connection.newBuilder() + // Construct using context.ContextOuterClass.EndPoint.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -42977,42 +55177,28 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getPathHopsEndpointIdsFieldBuilder(); - getSubServiceIdsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (connectionIdBuilder_ == null) { - connectionId_ = null; - } else { - connectionId_ = null; - connectionIdBuilder_ = null; - } - if (serviceIdBuilder_ == null) { - serviceId_ = null; - } else { - serviceId_ = null; - serviceIdBuilder_ = null; - } - if (pathHopsEndpointIdsBuilder_ == null) { - pathHopsEndpointIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - } else { - pathHopsEndpointIdsBuilder_.clear(); - } - if (subServiceIdsBuilder_ == null) { - subServiceIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000002); + if (endpointIdBuilder_ == null) { + endpointId_ = null; } else { - subServiceIdsBuilder_.clear(); + endpointId_ = null; + endpointIdBuilder_ = null; } - if (settingsBuilder_ == null) { - settings_ = null; + name_ = ""; + + endpointType_ = ""; + + kpiSampleTypes_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + if (endpointLocationBuilder_ == null) { + endpointLocation_ = null; } else { - settings_ = null; - settingsBuilder_ = null; + endpointLocation_ = null; + endpointLocationBuilder_ = null; } return this; } @@ -43020,17 +55206,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Connection_descriptor; + return context.ContextOuterClass.internal_static_context_EndPoint_descriptor; } @java.lang.Override - public context.ContextOuterClass.Connection getDefaultInstanceForType() { - return context.ContextOuterClass.Connection.getDefaultInstance(); + public context.ContextOuterClass.EndPoint getDefaultInstanceForType() { + return context.ContextOuterClass.EndPoint.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.Connection build() { - context.ContextOuterClass.Connection result = buildPartial(); + public context.ContextOuterClass.EndPoint build() { + context.ContextOuterClass.EndPoint result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -43038,41 +55224,25 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.Connection buildPartial() { - context.ContextOuterClass.Connection result = new context.ContextOuterClass.Connection(this); + public context.ContextOuterClass.EndPoint buildPartial() { + context.ContextOuterClass.EndPoint result = new context.ContextOuterClass.EndPoint(this); int from_bitField0_ = bitField0_; - if (connectionIdBuilder_ == null) { - result.connectionId_ = connectionId_; - } else { - result.connectionId_ = connectionIdBuilder_.build(); - } - if (serviceIdBuilder_ == null) { - result.serviceId_ = serviceId_; - } else { - result.serviceId_ = serviceIdBuilder_.build(); - } - if (pathHopsEndpointIdsBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { - pathHopsEndpointIds_ = java.util.Collections.unmodifiableList(pathHopsEndpointIds_); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.pathHopsEndpointIds_ = pathHopsEndpointIds_; + if (endpointIdBuilder_ == null) { + result.endpointId_ = endpointId_; } else { - result.pathHopsEndpointIds_ = pathHopsEndpointIdsBuilder_.build(); + result.endpointId_ = endpointIdBuilder_.build(); } - if (subServiceIdsBuilder_ == null) { - if (((bitField0_ & 0x00000002) != 0)) { - subServiceIds_ = java.util.Collections.unmodifiableList(subServiceIds_); - bitField0_ = (bitField0_ & ~0x00000002); - } - result.subServiceIds_ = subServiceIds_; - } else { - result.subServiceIds_ = subServiceIdsBuilder_.build(); + result.name_ = name_; + result.endpointType_ = endpointType_; + if (((bitField0_ & 0x00000001) != 0)) { + kpiSampleTypes_ = java.util.Collections.unmodifiableList(kpiSampleTypes_); + bitField0_ = (bitField0_ & ~0x00000001); } - if (settingsBuilder_ == null) { - result.settings_ = settings_; + result.kpiSampleTypes_ = kpiSampleTypes_; + if (endpointLocationBuilder_ == null) { + result.endpointLocation_ = endpointLocation_; } else { - result.settings_ = settingsBuilder_.build(); + result.endpointLocation_ = endpointLocationBuilder_.build(); } onBuilt(); return result; @@ -43108,80 +55278,43 @@ public final class ContextOuterClass { 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 context.ContextOuterClass.Connection) { - return mergeFrom((context.ContextOuterClass.Connection)other); - } else { - super.mergeFrom(other); - return this; - } - } - - public Builder mergeFrom(context.ContextOuterClass.Connection other) { - if (other == context.ContextOuterClass.Connection.getDefaultInstance()) return this; - if (other.hasConnectionId()) { - mergeConnectionId(other.getConnectionId()); - } - if (other.hasServiceId()) { - mergeServiceId(other.getServiceId()); - } - if (pathHopsEndpointIdsBuilder_ == null) { - if (!other.pathHopsEndpointIds_.isEmpty()) { - if (pathHopsEndpointIds_.isEmpty()) { - pathHopsEndpointIds_ = other.pathHopsEndpointIds_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensurePathHopsEndpointIdsIsMutable(); - pathHopsEndpointIds_.addAll(other.pathHopsEndpointIds_); - } - onChanged(); - } - } else { - if (!other.pathHopsEndpointIds_.isEmpty()) { - if (pathHopsEndpointIdsBuilder_.isEmpty()) { - pathHopsEndpointIdsBuilder_.dispose(); - pathHopsEndpointIdsBuilder_ = null; - pathHopsEndpointIds_ = other.pathHopsEndpointIds_; - bitField0_ = (bitField0_ & ~0x00000001); - pathHopsEndpointIdsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getPathHopsEndpointIdsFieldBuilder() : null; - } else { - pathHopsEndpointIdsBuilder_.addAllMessages(other.pathHopsEndpointIds_); - } - } - } - if (subServiceIdsBuilder_ == null) { - if (!other.subServiceIds_.isEmpty()) { - if (subServiceIds_.isEmpty()) { - subServiceIds_ = other.subServiceIds_; - bitField0_ = (bitField0_ & ~0x00000002); - } else { - ensureSubServiceIdsIsMutable(); - subServiceIds_.addAll(other.subServiceIds_); - } - onChanged(); - } - } else { - if (!other.subServiceIds_.isEmpty()) { - if (subServiceIdsBuilder_.isEmpty()) { - subServiceIdsBuilder_.dispose(); - subServiceIdsBuilder_ = null; - subServiceIds_ = other.subServiceIds_; - bitField0_ = (bitField0_ & ~0x00000002); - subServiceIdsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getSubServiceIdsFieldBuilder() : null; - } else { - subServiceIdsBuilder_.addAllMessages(other.subServiceIds_); - } + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof context.ContextOuterClass.EndPoint) { + return mergeFrom((context.ContextOuterClass.EndPoint)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(context.ContextOuterClass.EndPoint other) { + if (other == context.ContextOuterClass.EndPoint.getDefaultInstance()) return this; + if (other.hasEndpointId()) { + mergeEndpointId(other.getEndpointId()); + } + if (!other.getName().isEmpty()) { + name_ = other.name_; + onChanged(); + } + if (!other.getEndpointType().isEmpty()) { + endpointType_ = other.endpointType_; + onChanged(); + } + if (!other.kpiSampleTypes_.isEmpty()) { + if (kpiSampleTypes_.isEmpty()) { + kpiSampleTypes_ = other.kpiSampleTypes_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureKpiSampleTypesIsMutable(); + kpiSampleTypes_.addAll(other.kpiSampleTypes_); } + onChanged(); } - if (other.hasSettings()) { - mergeSettings(other.getSettings()); + if (other.hasEndpointLocation()) { + mergeEndpointLocation(other.getEndpointLocation()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -43198,11 +55331,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.Connection parsedMessage = null; + context.ContextOuterClass.EndPoint parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Connection) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.EndPoint) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -43213,841 +55346,534 @@ public final class ContextOuterClass { } private int bitField0_; - private context.ContextOuterClass.ConnectionId connectionId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> connectionIdBuilder_; - /** - * <code>.context.ConnectionId connection_id = 1;</code> - * @return Whether the connectionId field is set. - */ - public boolean hasConnectionId() { - return connectionIdBuilder_ != null || connectionId_ != null; - } - /** - * <code>.context.ConnectionId connection_id = 1;</code> - * @return The connectionId. - */ - public context.ContextOuterClass.ConnectionId getConnectionId() { - if (connectionIdBuilder_ == null) { - return connectionId_ == null ? context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; - } else { - return connectionIdBuilder_.getMessage(); - } - } - /** - * <code>.context.ConnectionId connection_id = 1;</code> - */ - public Builder setConnectionId(context.ContextOuterClass.ConnectionId value) { - if (connectionIdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - connectionId_ = value; - onChanged(); - } else { - connectionIdBuilder_.setMessage(value); - } - - return this; - } - /** - * <code>.context.ConnectionId connection_id = 1;</code> - */ - public Builder setConnectionId( - context.ContextOuterClass.ConnectionId.Builder builderForValue) { - if (connectionIdBuilder_ == null) { - connectionId_ = builderForValue.build(); - onChanged(); - } else { - connectionIdBuilder_.setMessage(builderForValue.build()); - } - - return this; - } - /** - * <code>.context.ConnectionId connection_id = 1;</code> - */ - public Builder mergeConnectionId(context.ContextOuterClass.ConnectionId value) { - if (connectionIdBuilder_ == null) { - if (connectionId_ != null) { - connectionId_ = - context.ContextOuterClass.ConnectionId.newBuilder(connectionId_).mergeFrom(value).buildPartial(); - } else { - connectionId_ = value; - } - onChanged(); - } else { - connectionIdBuilder_.mergeFrom(value); - } - - return this; - } - /** - * <code>.context.ConnectionId connection_id = 1;</code> - */ - public Builder clearConnectionId() { - if (connectionIdBuilder_ == null) { - connectionId_ = null; - onChanged(); - } else { - connectionId_ = null; - connectionIdBuilder_ = null; - } - - return this; - } - /** - * <code>.context.ConnectionId connection_id = 1;</code> - */ - public context.ContextOuterClass.ConnectionId.Builder getConnectionIdBuilder() { - - onChanged(); - return getConnectionIdFieldBuilder().getBuilder(); - } - /** - * <code>.context.ConnectionId connection_id = 1;</code> - */ - public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder() { - if (connectionIdBuilder_ != null) { - return connectionIdBuilder_.getMessageOrBuilder(); - } else { - return connectionId_ == null ? - context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; - } - } - /** - * <code>.context.ConnectionId connection_id = 1;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> - getConnectionIdFieldBuilder() { - if (connectionIdBuilder_ == null) { - connectionIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder>( - getConnectionId(), - getParentForChildren(), - isClean()); - connectionId_ = null; - } - return connectionIdBuilder_; - } - - private context.ContextOuterClass.ServiceId serviceId_; + private context.ContextOuterClass.EndPointId endpointId_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> serviceIdBuilder_; + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> endpointIdBuilder_; /** - * <code>.context.ServiceId service_id = 2;</code> - * @return Whether the serviceId field is set. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ - public boolean hasServiceId() { - return serviceIdBuilder_ != null || serviceId_ != null; + public boolean hasEndpointId() { + return endpointIdBuilder_ != null || endpointId_ != null; } /** - * <code>.context.ServiceId service_id = 2;</code> - * @return The serviceId. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. */ - public context.ContextOuterClass.ServiceId getServiceId() { - if (serviceIdBuilder_ == null) { - return serviceId_ == null ? context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; + public context.ContextOuterClass.EndPointId getEndpointId() { + if (endpointIdBuilder_ == null) { + return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; } else { - return serviceIdBuilder_.getMessage(); + return endpointIdBuilder_.getMessage(); } } /** - * <code>.context.ServiceId service_id = 2;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder setServiceId(context.ContextOuterClass.ServiceId value) { - if (serviceIdBuilder_ == null) { + public Builder setEndpointId(context.ContextOuterClass.EndPointId value) { + if (endpointIdBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - serviceId_ = value; + endpointId_ = value; onChanged(); } else { - serviceIdBuilder_.setMessage(value); + endpointIdBuilder_.setMessage(value); } return this; } /** - * <code>.context.ServiceId service_id = 2;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder setServiceId( - context.ContextOuterClass.ServiceId.Builder builderForValue) { - if (serviceIdBuilder_ == null) { - serviceId_ = builderForValue.build(); + public Builder setEndpointId( + context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (endpointIdBuilder_ == null) { + endpointId_ = builderForValue.build(); onChanged(); } else { - serviceIdBuilder_.setMessage(builderForValue.build()); + endpointIdBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.ServiceId service_id = 2;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder mergeServiceId(context.ContextOuterClass.ServiceId value) { - if (serviceIdBuilder_ == null) { - if (serviceId_ != null) { - serviceId_ = - context.ContextOuterClass.ServiceId.newBuilder(serviceId_).mergeFrom(value).buildPartial(); + public Builder mergeEndpointId(context.ContextOuterClass.EndPointId value) { + if (endpointIdBuilder_ == null) { + if (endpointId_ != null) { + endpointId_ = + context.ContextOuterClass.EndPointId.newBuilder(endpointId_).mergeFrom(value).buildPartial(); } else { - serviceId_ = value; + endpointId_ = value; } onChanged(); } else { - serviceIdBuilder_.mergeFrom(value); + endpointIdBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.ServiceId service_id = 2;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder clearServiceId() { - if (serviceIdBuilder_ == null) { - serviceId_ = null; + public Builder clearEndpointId() { + if (endpointIdBuilder_ == null) { + endpointId_ = null; onChanged(); } else { - serviceId_ = null; - serviceIdBuilder_ = null; + endpointId_ = null; + endpointIdBuilder_ = null; } return this; } /** - * <code>.context.ServiceId service_id = 2;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public context.ContextOuterClass.ServiceId.Builder getServiceIdBuilder() { + public context.ContextOuterClass.EndPointId.Builder getEndpointIdBuilder() { onChanged(); - return getServiceIdFieldBuilder().getBuilder(); + return getEndpointIdFieldBuilder().getBuilder(); } /** - * <code>.context.ServiceId service_id = 2;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public context.ContextOuterClass.ServiceIdOrBuilder getServiceIdOrBuilder() { - if (serviceIdBuilder_ != null) { - return serviceIdBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { + if (endpointIdBuilder_ != null) { + return endpointIdBuilder_.getMessageOrBuilder(); } else { - return serviceId_ == null ? - context.ContextOuterClass.ServiceId.getDefaultInstance() : serviceId_; + return endpointId_ == null ? + context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; } } /** - * <code>.context.ServiceId service_id = 2;</code> + * <code>.context.EndPointId endpoint_id = 1;</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_; - } - - private java.util.List<context.ContextOuterClass.EndPointId> pathHopsEndpointIds_ = - java.util.Collections.emptyList(); - private void ensurePathHopsEndpointIdsIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - pathHopsEndpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(pathHopsEndpointIds_); - bitField0_ |= 0x00000001; - } - } - - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> pathHopsEndpointIdsBuilder_; - - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public java.util.List<context.ContextOuterClass.EndPointId> getPathHopsEndpointIdsList() { - if (pathHopsEndpointIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(pathHopsEndpointIds_); - } else { - return pathHopsEndpointIdsBuilder_.getMessageList(); - } - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public int getPathHopsEndpointIdsCount() { - if (pathHopsEndpointIdsBuilder_ == null) { - return pathHopsEndpointIds_.size(); - } else { - return pathHopsEndpointIdsBuilder_.getCount(); - } - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public context.ContextOuterClass.EndPointId getPathHopsEndpointIds(int index) { - if (pathHopsEndpointIdsBuilder_ == null) { - return pathHopsEndpointIds_.get(index); - } else { - return pathHopsEndpointIdsBuilder_.getMessage(index); - } - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public Builder setPathHopsEndpointIds( - int index, context.ContextOuterClass.EndPointId value) { - if (pathHopsEndpointIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensurePathHopsEndpointIdsIsMutable(); - pathHopsEndpointIds_.set(index, value); - onChanged(); - } else { - pathHopsEndpointIdsBuilder_.setMessage(index, value); - } - return this; - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public Builder setPathHopsEndpointIds( - int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (pathHopsEndpointIdsBuilder_ == null) { - ensurePathHopsEndpointIdsIsMutable(); - pathHopsEndpointIds_.set(index, builderForValue.build()); - onChanged(); - } else { - pathHopsEndpointIdsBuilder_.setMessage(index, builderForValue.build()); - } - return this; - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public Builder addPathHopsEndpointIds(context.ContextOuterClass.EndPointId value) { - if (pathHopsEndpointIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensurePathHopsEndpointIdsIsMutable(); - pathHopsEndpointIds_.add(value); - onChanged(); - } else { - pathHopsEndpointIdsBuilder_.addMessage(value); - } - return this; - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public Builder addPathHopsEndpointIds( - int index, context.ContextOuterClass.EndPointId value) { - if (pathHopsEndpointIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensurePathHopsEndpointIdsIsMutable(); - pathHopsEndpointIds_.add(index, value); - onChanged(); - } else { - pathHopsEndpointIdsBuilder_.addMessage(index, value); - } - return this; - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public Builder addPathHopsEndpointIds( - context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (pathHopsEndpointIdsBuilder_ == null) { - ensurePathHopsEndpointIdsIsMutable(); - pathHopsEndpointIds_.add(builderForValue.build()); - onChanged(); - } else { - pathHopsEndpointIdsBuilder_.addMessage(builderForValue.build()); - } - return this; - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public Builder addPathHopsEndpointIds( - int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (pathHopsEndpointIdsBuilder_ == null) { - ensurePathHopsEndpointIdsIsMutable(); - pathHopsEndpointIds_.add(index, builderForValue.build()); - onChanged(); - } else { - pathHopsEndpointIdsBuilder_.addMessage(index, builderForValue.build()); - } - return this; - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public Builder addAllPathHopsEndpointIds( - java.lang.Iterable<? extends context.ContextOuterClass.EndPointId> values) { - if (pathHopsEndpointIdsBuilder_ == null) { - ensurePathHopsEndpointIdsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, pathHopsEndpointIds_); - onChanged(); - } else { - pathHopsEndpointIdsBuilder_.addAllMessages(values); - } - return this; - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public Builder clearPathHopsEndpointIds() { - if (pathHopsEndpointIdsBuilder_ == null) { - pathHopsEndpointIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - } else { - pathHopsEndpointIdsBuilder_.clear(); - } - return this; - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public Builder removePathHopsEndpointIds(int index) { - if (pathHopsEndpointIdsBuilder_ == null) { - ensurePathHopsEndpointIdsIsMutable(); - pathHopsEndpointIds_.remove(index); - onChanged(); - } else { - pathHopsEndpointIdsBuilder_.remove(index); - } - return this; - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public context.ContextOuterClass.EndPointId.Builder getPathHopsEndpointIdsBuilder( - int index) { - return getPathHopsEndpointIdsFieldBuilder().getBuilder(index); - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public context.ContextOuterClass.EndPointIdOrBuilder getPathHopsEndpointIdsOrBuilder( - int index) { - if (pathHopsEndpointIdsBuilder_ == null) { - return pathHopsEndpointIds_.get(index); } else { - return pathHopsEndpointIdsBuilder_.getMessageOrBuilder(index); - } - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> - getPathHopsEndpointIdsOrBuilderList() { - if (pathHopsEndpointIdsBuilder_ != null) { - return pathHopsEndpointIdsBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(pathHopsEndpointIds_); - } - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public context.ContextOuterClass.EndPointId.Builder addPathHopsEndpointIdsBuilder() { - return getPathHopsEndpointIdsFieldBuilder().addBuilder( - context.ContextOuterClass.EndPointId.getDefaultInstance()); - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public context.ContextOuterClass.EndPointId.Builder addPathHopsEndpointIdsBuilder( - int index) { - return getPathHopsEndpointIdsFieldBuilder().addBuilder( - index, context.ContextOuterClass.EndPointId.getDefaultInstance()); - } - /** - * <code>repeated .context.EndPointId path_hops_endpoint_ids = 3;</code> - */ - public java.util.List<context.ContextOuterClass.EndPointId.Builder> - getPathHopsEndpointIdsBuilderList() { - return getPathHopsEndpointIdsFieldBuilder().getBuilderList(); - } - private com.google.protobuf.RepeatedFieldBuilderV3< context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> - getPathHopsEndpointIdsFieldBuilder() { - if (pathHopsEndpointIdsBuilder_ == null) { - pathHopsEndpointIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + getEndpointIdFieldBuilder() { + if (endpointIdBuilder_ == null) { + endpointIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( - pathHopsEndpointIds_, - ((bitField0_ & 0x00000001) != 0), + getEndpointId(), getParentForChildren(), isClean()); - pathHopsEndpointIds_ = null; - } - return pathHopsEndpointIdsBuilder_; - } - - private java.util.List<context.ContextOuterClass.ServiceId> subServiceIds_ = - java.util.Collections.emptyList(); - private void ensureSubServiceIdsIsMutable() { - if (!((bitField0_ & 0x00000002) != 0)) { - subServiceIds_ = new java.util.ArrayList<context.ContextOuterClass.ServiceId>(subServiceIds_); - bitField0_ |= 0x00000002; - } + endpointId_ = null; + } + return endpointIdBuilder_; } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> subServiceIdsBuilder_; - + private java.lang.Object name_ = ""; /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>string name = 2;</code> + * @return The name. */ - public java.util.List<context.ContextOuterClass.ServiceId> getSubServiceIdsList() { - if (subServiceIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(subServiceIds_); + public java.lang.String getName() { + java.lang.Object ref = name_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; } else { - return subServiceIdsBuilder_.getMessageList(); + return (java.lang.String) ref; } } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>string name = 2;</code> + * @return The bytes for name. */ - public int getSubServiceIdsCount() { - if (subServiceIdsBuilder_ == null) { - return subServiceIds_.size(); + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; } else { - return subServiceIdsBuilder_.getCount(); + return (com.google.protobuf.ByteString) ref; } } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>string name = 2;</code> + * @param value The name to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.ServiceId getSubServiceIds(int index) { - if (subServiceIdsBuilder_ == null) { - return subServiceIds_.get(index); - } else { - return subServiceIdsBuilder_.getMessage(index); - } + public Builder setName( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + name_ = value; + onChanged(); + return this; } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>string name = 2;</code> + * @return This builder for chaining. */ - public Builder setSubServiceIds( - int index, context.ContextOuterClass.ServiceId value) { - if (subServiceIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSubServiceIdsIsMutable(); - subServiceIds_.set(index, value); - onChanged(); - } else { - subServiceIdsBuilder_.setMessage(index, value); - } + public Builder clearName() { + + name_ = getDefaultInstance().getName(); + onChanged(); return this; } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>string name = 2;</code> + * @param value The bytes for name to set. + * @return This builder for chaining. */ - public Builder setSubServiceIds( - int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { - if (subServiceIdsBuilder_ == null) { - ensureSubServiceIdsIsMutable(); - subServiceIds_.set(index, builderForValue.build()); - onChanged(); - } else { - subServiceIdsBuilder_.setMessage(index, builderForValue.build()); - } + public Builder setNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + name_ = value; + onChanged(); return this; } + + private java.lang.Object endpointType_ = ""; /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>string endpoint_type = 3;</code> + * @return The endpointType. */ - public Builder addSubServiceIds(context.ContextOuterClass.ServiceId value) { - if (subServiceIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSubServiceIdsIsMutable(); - subServiceIds_.add(value); - onChanged(); + public java.lang.String getEndpointType() { + java.lang.Object ref = endpointType_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + endpointType_ = s; + return s; } else { - subServiceIdsBuilder_.addMessage(value); + return (java.lang.String) ref; } - return this; } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>string endpoint_type = 3;</code> + * @return The bytes for endpointType. */ - public Builder addSubServiceIds( - int index, context.ContextOuterClass.ServiceId value) { - if (subServiceIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureSubServiceIdsIsMutable(); - subServiceIds_.add(index, value); - onChanged(); + public com.google.protobuf.ByteString + getEndpointTypeBytes() { + java.lang.Object ref = endpointType_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + endpointType_ = b; + return b; } else { - subServiceIdsBuilder_.addMessage(index, value); + return (com.google.protobuf.ByteString) ref; } + } + /** + * <code>string endpoint_type = 3;</code> + * @param value The endpointType to set. + * @return This builder for chaining. + */ + public Builder setEndpointType( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + endpointType_ = value; + onChanged(); return this; } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>string endpoint_type = 3;</code> + * @return This builder for chaining. */ - public Builder addSubServiceIds( - context.ContextOuterClass.ServiceId.Builder builderForValue) { - if (subServiceIdsBuilder_ == null) { - ensureSubServiceIdsIsMutable(); - subServiceIds_.add(builderForValue.build()); - onChanged(); - } else { - subServiceIdsBuilder_.addMessage(builderForValue.build()); - } + public Builder clearEndpointType() { + + endpointType_ = getDefaultInstance().getEndpointType(); + onChanged(); return this; } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>string endpoint_type = 3;</code> + * @param value The bytes for endpointType to set. + * @return This builder for chaining. */ - public Builder addSubServiceIds( - int index, context.ContextOuterClass.ServiceId.Builder builderForValue) { - if (subServiceIdsBuilder_ == null) { - ensureSubServiceIdsIsMutable(); - subServiceIds_.add(index, builderForValue.build()); - onChanged(); - } else { - subServiceIdsBuilder_.addMessage(index, builderForValue.build()); - } + public Builder setEndpointTypeBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + endpointType_ = value; + onChanged(); return this; } + + private java.util.List<java.lang.Integer> kpiSampleTypes_ = + java.util.Collections.emptyList(); + private void ensureKpiSampleTypesIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + kpiSampleTypes_ = new java.util.ArrayList<java.lang.Integer>(kpiSampleTypes_); + bitField0_ |= 0x00000001; + } + } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @return A list containing the kpiSampleTypes. */ - public Builder addAllSubServiceIds( - java.lang.Iterable<? extends context.ContextOuterClass.ServiceId> values) { - if (subServiceIdsBuilder_ == null) { - ensureSubServiceIdsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, subServiceIds_); - onChanged(); - } else { - subServiceIdsBuilder_.addAllMessages(values); + public java.util.List<kpi_sample_types.KpiSampleTypes.KpiSampleType> getKpiSampleTypesList() { + return new com.google.protobuf.Internal.ListAdapter< + java.lang.Integer, kpi_sample_types.KpiSampleTypes.KpiSampleType>(kpiSampleTypes_, kpiSampleTypes_converter_); + } + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @return The count of kpiSampleTypes. + */ + public int getKpiSampleTypesCount() { + return kpiSampleTypes_.size(); + } + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @param index The index of the element to return. + * @return The kpiSampleTypes at the given index. + */ + public kpi_sample_types.KpiSampleTypes.KpiSampleType getKpiSampleTypes(int index) { + return kpiSampleTypes_converter_.convert(kpiSampleTypes_.get(index)); + } + /** + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @param index The index to set the value at. + * @param value The kpiSampleTypes to set. + * @return This builder for chaining. + */ + public Builder setKpiSampleTypes( + int index, kpi_sample_types.KpiSampleTypes.KpiSampleType value) { + if (value == null) { + throw new NullPointerException(); } + ensureKpiSampleTypesIsMutable(); + kpiSampleTypes_.set(index, value.getNumber()); + onChanged(); return this; } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @param value The kpiSampleTypes to add. + * @return This builder for chaining. */ - public Builder clearSubServiceIds() { - if (subServiceIdsBuilder_ == null) { - subServiceIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000002); - onChanged(); - } else { - subServiceIdsBuilder_.clear(); + public Builder addKpiSampleTypes(kpi_sample_types.KpiSampleTypes.KpiSampleType value) { + if (value == null) { + throw new NullPointerException(); } + ensureKpiSampleTypesIsMutable(); + kpiSampleTypes_.add(value.getNumber()); + onChanged(); return this; } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @param values The kpiSampleTypes to add. + * @return This builder for chaining. */ - public Builder removeSubServiceIds(int index) { - if (subServiceIdsBuilder_ == null) { - ensureSubServiceIdsIsMutable(); - subServiceIds_.remove(index); - onChanged(); - } else { - subServiceIdsBuilder_.remove(index); + public Builder addAllKpiSampleTypes( + java.lang.Iterable<? extends kpi_sample_types.KpiSampleTypes.KpiSampleType> values) { + ensureKpiSampleTypesIsMutable(); + for (kpi_sample_types.KpiSampleTypes.KpiSampleType value : values) { + kpiSampleTypes_.add(value.getNumber()); } + onChanged(); return this; } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @return This builder for chaining. */ - public context.ContextOuterClass.ServiceId.Builder getSubServiceIdsBuilder( - int index) { - return getSubServiceIdsFieldBuilder().getBuilder(index); + public Builder clearKpiSampleTypes() { + kpiSampleTypes_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @return A list containing the enum numeric values on the wire for kpiSampleTypes. */ - public context.ContextOuterClass.ServiceIdOrBuilder getSubServiceIdsOrBuilder( - int index) { - if (subServiceIdsBuilder_ == null) { - return subServiceIds_.get(index); } else { - return subServiceIdsBuilder_.getMessageOrBuilder(index); - } + public java.util.List<java.lang.Integer> + getKpiSampleTypesValueList() { + return java.util.Collections.unmodifiableList(kpiSampleTypes_); } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @param index The index of the value to return. + * @return The enum numeric value on the wire of kpiSampleTypes at the given index. */ - public java.util.List<? extends context.ContextOuterClass.ServiceIdOrBuilder> - getSubServiceIdsOrBuilderList() { - if (subServiceIdsBuilder_ != null) { - return subServiceIdsBuilder_.getMessageOrBuilderList(); - } else { - return java.util.Collections.unmodifiableList(subServiceIds_); - } + public int getKpiSampleTypesValue(int index) { + return kpiSampleTypes_.get(index); } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @param index The index of the value to return. + * @return The enum numeric value on the wire of kpiSampleTypes at the given index. + * @return This builder for chaining. */ - public context.ContextOuterClass.ServiceId.Builder addSubServiceIdsBuilder() { - return getSubServiceIdsFieldBuilder().addBuilder( - context.ContextOuterClass.ServiceId.getDefaultInstance()); + public Builder setKpiSampleTypesValue( + int index, int value) { + ensureKpiSampleTypesIsMutable(); + kpiSampleTypes_.set(index, value); + onChanged(); + return this; } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @param value The enum numeric value on the wire for kpiSampleTypes to add. + * @return This builder for chaining. */ - public context.ContextOuterClass.ServiceId.Builder addSubServiceIdsBuilder( - int index) { - return getSubServiceIdsFieldBuilder().addBuilder( - index, context.ContextOuterClass.ServiceId.getDefaultInstance()); + public Builder addKpiSampleTypesValue(int value) { + ensureKpiSampleTypesIsMutable(); + kpiSampleTypes_.add(value); + onChanged(); + return this; } /** - * <code>repeated .context.ServiceId sub_service_ids = 4;</code> + * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 4;</code> + * @param values The enum numeric values on the wire for kpiSampleTypes to add. + * @return This builder for chaining. */ - public java.util.List<context.ContextOuterClass.ServiceId.Builder> - getSubServiceIdsBuilderList() { - return getSubServiceIdsFieldBuilder().getBuilderList(); - } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder> - getSubServiceIdsFieldBuilder() { - if (subServiceIdsBuilder_ == null) { - subServiceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ServiceId, context.ContextOuterClass.ServiceId.Builder, context.ContextOuterClass.ServiceIdOrBuilder>( - subServiceIds_, - ((bitField0_ & 0x00000002) != 0), - getParentForChildren(), - isClean()); - subServiceIds_ = null; + public Builder addAllKpiSampleTypesValue( + java.lang.Iterable<java.lang.Integer> values) { + ensureKpiSampleTypesIsMutable(); + for (int value : values) { + kpiSampleTypes_.add(value); } - return subServiceIdsBuilder_; + onChanged(); + return this; } - private context.ContextOuterClass.ConnectionSettings settings_; + private context.ContextOuterClass.Location endpointLocation_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings, context.ContextOuterClass.ConnectionSettings.Builder, context.ContextOuterClass.ConnectionSettingsOrBuilder> settingsBuilder_; + context.ContextOuterClass.Location, context.ContextOuterClass.Location.Builder, context.ContextOuterClass.LocationOrBuilder> endpointLocationBuilder_; /** - * <code>.context.ConnectionSettings settings = 5;</code> - * @return Whether the settings field is set. + * <code>.context.Location endpoint_location = 5;</code> + * @return Whether the endpointLocation field is set. */ - public boolean hasSettings() { - return settingsBuilder_ != null || settings_ != null; + public boolean hasEndpointLocation() { + return endpointLocationBuilder_ != null || endpointLocation_ != null; } /** - * <code>.context.ConnectionSettings settings = 5;</code> - * @return The settings. + * <code>.context.Location endpoint_location = 5;</code> + * @return The endpointLocation. */ - public context.ContextOuterClass.ConnectionSettings getSettings() { - if (settingsBuilder_ == null) { - return settings_ == null ? context.ContextOuterClass.ConnectionSettings.getDefaultInstance() : settings_; + public context.ContextOuterClass.Location getEndpointLocation() { + if (endpointLocationBuilder_ == null) { + return endpointLocation_ == null ? context.ContextOuterClass.Location.getDefaultInstance() : endpointLocation_; } else { - return settingsBuilder_.getMessage(); + return endpointLocationBuilder_.getMessage(); } } /** - * <code>.context.ConnectionSettings settings = 5;</code> + * <code>.context.Location endpoint_location = 5;</code> */ - public Builder setSettings(context.ContextOuterClass.ConnectionSettings value) { - if (settingsBuilder_ == null) { + public Builder setEndpointLocation(context.ContextOuterClass.Location value) { + if (endpointLocationBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - settings_ = value; + endpointLocation_ = value; onChanged(); } else { - settingsBuilder_.setMessage(value); + endpointLocationBuilder_.setMessage(value); } return this; } /** - * <code>.context.ConnectionSettings settings = 5;</code> + * <code>.context.Location endpoint_location = 5;</code> */ - public Builder setSettings( - context.ContextOuterClass.ConnectionSettings.Builder builderForValue) { - if (settingsBuilder_ == null) { - settings_ = builderForValue.build(); + public Builder setEndpointLocation( + context.ContextOuterClass.Location.Builder builderForValue) { + if (endpointLocationBuilder_ == null) { + endpointLocation_ = builderForValue.build(); onChanged(); } else { - settingsBuilder_.setMessage(builderForValue.build()); + endpointLocationBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.ConnectionSettings settings = 5;</code> + * <code>.context.Location endpoint_location = 5;</code> */ - public Builder mergeSettings(context.ContextOuterClass.ConnectionSettings value) { - if (settingsBuilder_ == null) { - if (settings_ != null) { - settings_ = - context.ContextOuterClass.ConnectionSettings.newBuilder(settings_).mergeFrom(value).buildPartial(); + public Builder mergeEndpointLocation(context.ContextOuterClass.Location value) { + if (endpointLocationBuilder_ == null) { + if (endpointLocation_ != null) { + endpointLocation_ = + context.ContextOuterClass.Location.newBuilder(endpointLocation_).mergeFrom(value).buildPartial(); } else { - settings_ = value; + endpointLocation_ = value; } onChanged(); } else { - settingsBuilder_.mergeFrom(value); + endpointLocationBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.ConnectionSettings settings = 5;</code> + * <code>.context.Location endpoint_location = 5;</code> */ - public Builder clearSettings() { - if (settingsBuilder_ == null) { - settings_ = null; + public Builder clearEndpointLocation() { + if (endpointLocationBuilder_ == null) { + endpointLocation_ = null; onChanged(); } else { - settings_ = null; - settingsBuilder_ = null; + endpointLocation_ = null; + endpointLocationBuilder_ = null; } return this; } /** - * <code>.context.ConnectionSettings settings = 5;</code> + * <code>.context.Location endpoint_location = 5;</code> */ - public context.ContextOuterClass.ConnectionSettings.Builder getSettingsBuilder() { + public context.ContextOuterClass.Location.Builder getEndpointLocationBuilder() { onChanged(); - return getSettingsFieldBuilder().getBuilder(); + return getEndpointLocationFieldBuilder().getBuilder(); } /** - * <code>.context.ConnectionSettings settings = 5;</code> + * <code>.context.Location endpoint_location = 5;</code> */ - public context.ContextOuterClass.ConnectionSettingsOrBuilder getSettingsOrBuilder() { - if (settingsBuilder_ != null) { - return settingsBuilder_.getMessageOrBuilder(); + public context.ContextOuterClass.LocationOrBuilder getEndpointLocationOrBuilder() { + if (endpointLocationBuilder_ != null) { + return endpointLocationBuilder_.getMessageOrBuilder(); } else { - return settings_ == null ? - context.ContextOuterClass.ConnectionSettings.getDefaultInstance() : settings_; + return endpointLocation_ == null ? + context.ContextOuterClass.Location.getDefaultInstance() : endpointLocation_; } } /** - * <code>.context.ConnectionSettings settings = 5;</code> + * <code>.context.Location endpoint_location = 5;</code> */ private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings, context.ContextOuterClass.ConnectionSettings.Builder, context.ContextOuterClass.ConnectionSettingsOrBuilder> - getSettingsFieldBuilder() { - if (settingsBuilder_ == null) { - settingsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionSettings, context.ContextOuterClass.ConnectionSettings.Builder, context.ContextOuterClass.ConnectionSettingsOrBuilder>( - getSettings(), + context.ContextOuterClass.Location, context.ContextOuterClass.Location.Builder, context.ContextOuterClass.LocationOrBuilder> + getEndpointLocationFieldBuilder() { + if (endpointLocationBuilder_ == null) { + endpointLocationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Location, context.ContextOuterClass.Location.Builder, context.ContextOuterClass.LocationOrBuilder>( + getEndpointLocation(), getParentForChildren(), isClean()); - settings_ = null; + endpointLocation_ = null; } - return settingsBuilder_; + return endpointLocationBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -44062,95 +55888,124 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.Connection) + // @@protoc_insertion_point(builder_scope:context.EndPoint) } - // @@protoc_insertion_point(class_scope:context.Connection) - private static final context.ContextOuterClass.Connection DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.EndPoint) + private static final context.ContextOuterClass.EndPoint DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Connection(); + DEFAULT_INSTANCE = new context.ContextOuterClass.EndPoint(); } - public static context.ContextOuterClass.Connection getDefaultInstance() { + public static context.ContextOuterClass.EndPoint getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<Connection> - PARSER = new com.google.protobuf.AbstractParser<Connection>() { + private static final com.google.protobuf.Parser<EndPoint> + PARSER = new com.google.protobuf.AbstractParser<EndPoint>() { @java.lang.Override - public Connection parsePartialFrom( + public EndPoint parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new Connection(input, extensionRegistry); + return new EndPoint(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<Connection> parser() { + public static com.google.protobuf.Parser<EndPoint> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<Connection> getParserForType() { + public com.google.protobuf.Parser<EndPoint> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.Connection getDefaultInstanceForType() { + public context.ContextOuterClass.EndPoint getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ConnectionIdListOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ConnectionIdList) + public interface EndPointNameOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.EndPointName) com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ - java.util.List<context.ContextOuterClass.ConnectionId> - getConnectionIdsList(); + boolean hasEndpointId(); /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. */ - context.ContextOuterClass.ConnectionId getConnectionIds(int index); + context.ContextOuterClass.EndPointId getEndpointId(); /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - int getConnectionIdsCount(); + context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder(); + /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>string device_name = 2;</code> + * @return The deviceName. */ - java.util.List<? extends context.ContextOuterClass.ConnectionIdOrBuilder> - getConnectionIdsOrBuilderList(); + java.lang.String getDeviceName(); /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>string device_name = 2;</code> + * @return The bytes for deviceName. */ - context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdsOrBuilder( - int index); + com.google.protobuf.ByteString + getDeviceNameBytes(); + + /** + * <code>string endpoint_name = 3;</code> + * @return The endpointName. + */ + java.lang.String getEndpointName(); + /** + * <code>string endpoint_name = 3;</code> + * @return The bytes for endpointName. + */ + com.google.protobuf.ByteString + getEndpointNameBytes(); + + /** + * <code>string endpoint_type = 4;</code> + * @return The endpointType. + */ + java.lang.String getEndpointType(); + /** + * <code>string endpoint_type = 4;</code> + * @return The bytes for endpointType. + */ + com.google.protobuf.ByteString + getEndpointTypeBytes(); } /** - * Protobuf type {@code context.ConnectionIdList} + * Protobuf type {@code context.EndPointName} */ - public static final class ConnectionIdList extends + public static final class EndPointName extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ConnectionIdList) - ConnectionIdListOrBuilder { + // @@protoc_insertion_point(message_implements:context.EndPointName) + EndPointNameOrBuilder { private static final long serialVersionUID = 0L; - // Use ConnectionIdList.newBuilder() to construct. - private ConnectionIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use EndPointName.newBuilder() to construct. + private EndPointName(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ConnectionIdList() { - connectionIds_ = java.util.Collections.emptyList(); + private EndPointName() { + deviceName_ = ""; + endpointName_ = ""; + endpointType_ = ""; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ConnectionIdList(); + return new EndPointName(); } @java.lang.Override @@ -44158,7 +56013,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ConnectionIdList( + private EndPointName( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -44166,7 +56021,6 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } - int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -44178,12 +56032,34 @@ public final class ContextOuterClass { done = true; break; case 10: { - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - connectionIds_ = new java.util.ArrayList<context.ContextOuterClass.ConnectionId>(); - mutable_bitField0_ |= 0x00000001; + context.ContextOuterClass.EndPointId.Builder subBuilder = null; + if (endpointId_ != null) { + subBuilder = endpointId_.toBuilder(); } - connectionIds_.add( - input.readMessage(context.ContextOuterClass.ConnectionId.parser(), extensionRegistry)); + endpointId_ = input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(endpointId_); + endpointId_ = subBuilder.buildPartial(); + } + + break; + } + case 18: { + java.lang.String s = input.readStringRequireUtf8(); + + deviceName_ = s; + break; + } + case 26: { + java.lang.String s = input.readStringRequireUtf8(); + + endpointName_ = s; + break; + } + case 34: { + java.lang.String s = input.readStringRequireUtf8(); + + endpointType_ = s; break; } default: { @@ -44201,64 +56077,161 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { - if (((mutable_bitField0_ & 0x00000001) != 0)) { - connectionIds_ = java.util.Collections.unmodifiableList(connectionIds_); - } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionIdList_descriptor; + return context.ContextOuterClass.internal_static_context_EndPointName_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionIdList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_EndPointName_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionIdList.class, context.ContextOuterClass.ConnectionIdList.Builder.class); + context.ContextOuterClass.EndPointName.class, context.ContextOuterClass.EndPointName.Builder.class); } - public static final int CONNECTION_IDS_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.ConnectionId> connectionIds_; + public static final int ENDPOINT_ID_FIELD_NUMBER = 1; + private context.ContextOuterClass.EndPointId endpointId_; /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ @java.lang.Override - public java.util.List<context.ContextOuterClass.ConnectionId> getConnectionIdsList() { - return connectionIds_; + public boolean hasEndpointId() { + return endpointId_ != null; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.ConnectionIdOrBuilder> - getConnectionIdsOrBuilderList() { - return connectionIds_; + public context.ContextOuterClass.EndPointId getEndpointId() { + return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ @java.lang.Override - public int getConnectionIdsCount() { - return connectionIds_.size(); + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { + return getEndpointId(); } + + public static final int DEVICE_NAME_FIELD_NUMBER = 2; + private volatile java.lang.Object deviceName_; /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>string device_name = 2;</code> + * @return The deviceName. */ @java.lang.Override - public context.ContextOuterClass.ConnectionId getConnectionIds(int index) { - return connectionIds_.get(index); + public java.lang.String getDeviceName() { + java.lang.Object ref = deviceName_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + deviceName_ = s; + return s; + } } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>string device_name = 2;</code> + * @return The bytes for deviceName. */ @java.lang.Override - public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdsOrBuilder( - int index) { - return connectionIds_.get(index); + public com.google.protobuf.ByteString + getDeviceNameBytes() { + java.lang.Object ref = deviceName_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + deviceName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int ENDPOINT_NAME_FIELD_NUMBER = 3; + private volatile java.lang.Object endpointName_; + /** + * <code>string endpoint_name = 3;</code> + * @return The endpointName. + */ + @java.lang.Override + public java.lang.String getEndpointName() { + java.lang.Object ref = endpointName_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + endpointName_ = s; + return s; + } + } + /** + * <code>string endpoint_name = 3;</code> + * @return The bytes for endpointName. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getEndpointNameBytes() { + java.lang.Object ref = endpointName_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + endpointName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int ENDPOINT_TYPE_FIELD_NUMBER = 4; + private volatile java.lang.Object endpointType_; + /** + * <code>string endpoint_type = 4;</code> + * @return The endpointType. + */ + @java.lang.Override + public java.lang.String getEndpointType() { + java.lang.Object ref = endpointType_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + endpointType_ = s; + return s; + } + } + /** + * <code>string endpoint_type = 4;</code> + * @return The bytes for endpointType. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getEndpointTypeBytes() { + java.lang.Object ref = endpointType_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + endpointType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } private byte memoizedIsInitialized = -1; @@ -44275,8 +56248,17 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < connectionIds_.size(); i++) { - output.writeMessage(1, connectionIds_.get(i)); + if (endpointId_ != null) { + output.writeMessage(1, getEndpointId()); + } + if (!getDeviceNameBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, deviceName_); + } + if (!getEndpointNameBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, endpointName_); + } + if (!getEndpointTypeBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 4, endpointType_); } unknownFields.writeTo(output); } @@ -44287,9 +56269,18 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < connectionIds_.size(); i++) { + if (endpointId_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, connectionIds_.get(i)); + .computeMessageSize(1, getEndpointId()); + } + if (!getDeviceNameBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, deviceName_); + } + if (!getEndpointNameBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, endpointName_); + } + if (!getEndpointTypeBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, endpointType_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -44301,13 +56292,22 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ConnectionIdList)) { + if (!(obj instanceof context.ContextOuterClass.EndPointName)) { return super.equals(obj); } - context.ContextOuterClass.ConnectionIdList other = (context.ContextOuterClass.ConnectionIdList) obj; + context.ContextOuterClass.EndPointName other = (context.ContextOuterClass.EndPointName) obj; - if (!getConnectionIdsList() - .equals(other.getConnectionIdsList())) return false; + if (hasEndpointId() != other.hasEndpointId()) return false; + if (hasEndpointId()) { + if (!getEndpointId() + .equals(other.getEndpointId())) return false; + } + if (!getDeviceName() + .equals(other.getDeviceName())) return false; + if (!getEndpointName() + .equals(other.getEndpointName())) return false; + if (!getEndpointType() + .equals(other.getEndpointType())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -44319,78 +56319,84 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getConnectionIdsCount() > 0) { - hash = (37 * hash) + CONNECTION_IDS_FIELD_NUMBER; - hash = (53 * hash) + getConnectionIdsList().hashCode(); + if (hasEndpointId()) { + hash = (37 * hash) + ENDPOINT_ID_FIELD_NUMBER; + hash = (53 * hash) + getEndpointId().hashCode(); } + hash = (37 * hash) + DEVICE_NAME_FIELD_NUMBER; + hash = (53 * hash) + getDeviceName().hashCode(); + hash = (37 * hash) + ENDPOINT_NAME_FIELD_NUMBER; + hash = (53 * hash) + getEndpointName().hashCode(); + hash = (37 * hash) + ENDPOINT_TYPE_FIELD_NUMBER; + hash = (53 * hash) + getEndpointType().hashCode(); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ConnectionIdList parseFrom( + public static context.ContextOuterClass.EndPointName parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionIdList parseFrom( + public static context.ContextOuterClass.EndPointName parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionIdList parseFrom( + public static context.ContextOuterClass.EndPointName parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionIdList parseFrom( + public static context.ContextOuterClass.EndPointName parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionIdList parseFrom(byte[] data) + public static context.ContextOuterClass.EndPointName parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionIdList parseFrom( + public static context.ContextOuterClass.EndPointName parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionIdList parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.EndPointName parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionIdList parseFrom( + public static context.ContextOuterClass.EndPointName 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 context.ContextOuterClass.ConnectionIdList parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.EndPointName parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionIdList parseDelimitedFrom( + public static context.ContextOuterClass.EndPointName 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 context.ContextOuterClass.ConnectionIdList parseFrom( + public static context.ContextOuterClass.EndPointName parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionIdList parseFrom( + public static context.ContextOuterClass.EndPointName parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -44403,7 +56409,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ConnectionIdList prototype) { + public static Builder newBuilder(context.ContextOuterClass.EndPointName prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -44419,26 +56425,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ConnectionIdList} + * Protobuf type {@code context.EndPointName} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ConnectionIdList) - context.ContextOuterClass.ConnectionIdListOrBuilder { + // @@protoc_insertion_point(builder_implements:context.EndPointName) + context.ContextOuterClass.EndPointNameOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionIdList_descriptor; + return context.ContextOuterClass.internal_static_context_EndPointName_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionIdList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_EndPointName_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionIdList.class, context.ContextOuterClass.ConnectionIdList.Builder.class); + context.ContextOuterClass.EndPointName.class, context.ContextOuterClass.EndPointName.Builder.class); } - // Construct using context.ContextOuterClass.ConnectionIdList.newBuilder() + // Construct using context.ContextOuterClass.EndPointName.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -44451,35 +56457,40 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getConnectionIdsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (connectionIdsBuilder_ == null) { - connectionIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + if (endpointIdBuilder_ == null) { + endpointId_ = null; } else { - connectionIdsBuilder_.clear(); + endpointId_ = null; + endpointIdBuilder_ = null; } + deviceName_ = ""; + + endpointName_ = ""; + + endpointType_ = ""; + return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ConnectionIdList_descriptor; + return context.ContextOuterClass.internal_static_context_EndPointName_descriptor; } @java.lang.Override - public context.ContextOuterClass.ConnectionIdList getDefaultInstanceForType() { - return context.ContextOuterClass.ConnectionIdList.getDefaultInstance(); + public context.ContextOuterClass.EndPointName getDefaultInstanceForType() { + return context.ContextOuterClass.EndPointName.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ConnectionIdList build() { - context.ContextOuterClass.ConnectionIdList result = buildPartial(); + public context.ContextOuterClass.EndPointName build() { + context.ContextOuterClass.EndPointName result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -44487,18 +56498,16 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ConnectionIdList buildPartial() { - context.ContextOuterClass.ConnectionIdList result = new context.ContextOuterClass.ConnectionIdList(this); - int from_bitField0_ = bitField0_; - if (connectionIdsBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { - connectionIds_ = java.util.Collections.unmodifiableList(connectionIds_); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.connectionIds_ = connectionIds_; + public context.ContextOuterClass.EndPointName buildPartial() { + context.ContextOuterClass.EndPointName result = new context.ContextOuterClass.EndPointName(this); + if (endpointIdBuilder_ == null) { + result.endpointId_ = endpointId_; } else { - result.connectionIds_ = connectionIdsBuilder_.build(); + result.endpointId_ = endpointIdBuilder_.build(); } + result.deviceName_ = deviceName_; + result.endpointName_ = endpointName_; + result.endpointType_ = endpointType_; onBuilt(); return result; } @@ -44537,41 +56546,30 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ConnectionIdList) { - return mergeFrom((context.ContextOuterClass.ConnectionIdList)other); + if (other instanceof context.ContextOuterClass.EndPointName) { + return mergeFrom((context.ContextOuterClass.EndPointName)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ConnectionIdList other) { - if (other == context.ContextOuterClass.ConnectionIdList.getDefaultInstance()) return this; - if (connectionIdsBuilder_ == null) { - if (!other.connectionIds_.isEmpty()) { - if (connectionIds_.isEmpty()) { - connectionIds_ = other.connectionIds_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureConnectionIdsIsMutable(); - connectionIds_.addAll(other.connectionIds_); - } - onChanged(); - } - } else { - if (!other.connectionIds_.isEmpty()) { - if (connectionIdsBuilder_.isEmpty()) { - connectionIdsBuilder_.dispose(); - connectionIdsBuilder_ = null; - connectionIds_ = other.connectionIds_; - bitField0_ = (bitField0_ & ~0x00000001); - connectionIdsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getConnectionIdsFieldBuilder() : null; - } else { - connectionIdsBuilder_.addAllMessages(other.connectionIds_); - } - } + public Builder mergeFrom(context.ContextOuterClass.EndPointName other) { + if (other == context.ContextOuterClass.EndPointName.getDefaultInstance()) return this; + if (other.hasEndpointId()) { + mergeEndpointId(other.getEndpointId()); + } + if (!other.getDeviceName().isEmpty()) { + deviceName_ = other.deviceName_; + onChanged(); + } + if (!other.getEndpointName().isEmpty()) { + endpointName_ = other.endpointName_; + onChanged(); + } + if (!other.getEndpointType().isEmpty()) { + endpointType_ = other.endpointType_; + onChanged(); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -44588,11 +56586,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ConnectionIdList parsedMessage = null; + context.ContextOuterClass.EndPointName parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ConnectionIdList) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.EndPointName) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -44601,246 +56599,352 @@ public final class ContextOuterClass { } return this; } - private int bitField0_; - - private java.util.List<context.ContextOuterClass.ConnectionId> connectionIds_ = - java.util.Collections.emptyList(); - private void ensureConnectionIdsIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - connectionIds_ = new java.util.ArrayList<context.ContextOuterClass.ConnectionId>(connectionIds_); - bitField0_ |= 0x00000001; - } - } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> connectionIdsBuilder_; - - /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> - */ - public java.util.List<context.ContextOuterClass.ConnectionId> getConnectionIdsList() { - if (connectionIdsBuilder_ == null) { - return java.util.Collections.unmodifiableList(connectionIds_); - } else { - return connectionIdsBuilder_.getMessageList(); - } - } + private context.ContextOuterClass.EndPointId endpointId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> endpointIdBuilder_; /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ - public int getConnectionIdsCount() { - if (connectionIdsBuilder_ == null) { - return connectionIds_.size(); - } else { - return connectionIdsBuilder_.getCount(); - } + public boolean hasEndpointId() { + return endpointIdBuilder_ != null || endpointId_ != null; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. */ - public context.ContextOuterClass.ConnectionId getConnectionIds(int index) { - if (connectionIdsBuilder_ == null) { - return connectionIds_.get(index); + public context.ContextOuterClass.EndPointId getEndpointId() { + if (endpointIdBuilder_ == null) { + return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; } else { - return connectionIdsBuilder_.getMessage(index); + return endpointIdBuilder_.getMessage(); } } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder setConnectionIds( - int index, context.ContextOuterClass.ConnectionId value) { - if (connectionIdsBuilder_ == null) { + public Builder setEndpointId(context.ContextOuterClass.EndPointId value) { + if (endpointIdBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureConnectionIdsIsMutable(); - connectionIds_.set(index, value); + endpointId_ = value; onChanged(); } else { - connectionIdsBuilder_.setMessage(index, value); + endpointIdBuilder_.setMessage(value); } + return this; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder setConnectionIds( - int index, context.ContextOuterClass.ConnectionId.Builder builderForValue) { - if (connectionIdsBuilder_ == null) { - ensureConnectionIdsIsMutable(); - connectionIds_.set(index, builderForValue.build()); + public Builder setEndpointId( + context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (endpointIdBuilder_ == null) { + endpointId_ = builderForValue.build(); onChanged(); } else { - connectionIdsBuilder_.setMessage(index, builderForValue.build()); + endpointIdBuilder_.setMessage(builderForValue.build()); } + return this; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder addConnectionIds(context.ContextOuterClass.ConnectionId value) { - if (connectionIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + public Builder mergeEndpointId(context.ContextOuterClass.EndPointId value) { + if (endpointIdBuilder_ == null) { + if (endpointId_ != null) { + endpointId_ = + context.ContextOuterClass.EndPointId.newBuilder(endpointId_).mergeFrom(value).buildPartial(); + } else { + endpointId_ = value; } - ensureConnectionIdsIsMutable(); - connectionIds_.add(value); onChanged(); } else { - connectionIdsBuilder_.addMessage(value); + endpointIdBuilder_.mergeFrom(value); } + return this; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder addConnectionIds( - int index, context.ContextOuterClass.ConnectionId value) { - if (connectionIdsBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureConnectionIdsIsMutable(); - connectionIds_.add(index, value); + public Builder clearEndpointId() { + if (endpointIdBuilder_ == null) { + endpointId_ = null; onChanged(); } else { - connectionIdsBuilder_.addMessage(index, value); + endpointId_ = null; + endpointIdBuilder_ = null; } + return this; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder addConnectionIds( - context.ContextOuterClass.ConnectionId.Builder builderForValue) { - if (connectionIdsBuilder_ == null) { - ensureConnectionIdsIsMutable(); - connectionIds_.add(builderForValue.build()); - onChanged(); + public context.ContextOuterClass.EndPointId.Builder getEndpointIdBuilder() { + + onChanged(); + return getEndpointIdFieldBuilder().getBuilder(); + } + /** + * <code>.context.EndPointId endpoint_id = 1;</code> + */ + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { + if (endpointIdBuilder_ != null) { + return endpointIdBuilder_.getMessageOrBuilder(); } else { - connectionIdsBuilder_.addMessage(builderForValue.build()); + return endpointId_ == null ? + context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; } - return this; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder addConnectionIds( - int index, context.ContextOuterClass.ConnectionId.Builder builderForValue) { - if (connectionIdsBuilder_ == null) { - ensureConnectionIdsIsMutable(); - connectionIds_.add(index, builderForValue.build()); - onChanged(); + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> + getEndpointIdFieldBuilder() { + if (endpointIdBuilder_ == null) { + endpointIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( + getEndpointId(), + getParentForChildren(), + isClean()); + endpointId_ = null; + } + return endpointIdBuilder_; + } + + private java.lang.Object deviceName_ = ""; + /** + * <code>string device_name = 2;</code> + * @return The deviceName. + */ + public java.lang.String getDeviceName() { + java.lang.Object ref = deviceName_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + deviceName_ = s; + return s; } else { - connectionIdsBuilder_.addMessage(index, builderForValue.build()); + return (java.lang.String) ref; } - return this; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>string device_name = 2;</code> + * @return The bytes for deviceName. */ - public Builder addAllConnectionIds( - java.lang.Iterable<? extends context.ContextOuterClass.ConnectionId> values) { - if (connectionIdsBuilder_ == null) { - ensureConnectionIdsIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, connectionIds_); - onChanged(); + public com.google.protobuf.ByteString + getDeviceNameBytes() { + java.lang.Object ref = deviceName_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + deviceName_ = b; + return b; } else { - connectionIdsBuilder_.addAllMessages(values); + return (com.google.protobuf.ByteString) ref; } + } + /** + * <code>string device_name = 2;</code> + * @param value The deviceName to set. + * @return This builder for chaining. + */ + public Builder setDeviceName( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + deviceName_ = value; + onChanged(); return this; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>string device_name = 2;</code> + * @return This builder for chaining. */ - public Builder clearConnectionIds() { - if (connectionIdsBuilder_ == null) { - connectionIds_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); + public Builder clearDeviceName() { + + deviceName_ = getDefaultInstance().getDeviceName(); + onChanged(); + return this; + } + /** + * <code>string device_name = 2;</code> + * @param value The bytes for deviceName to set. + * @return This builder for chaining. + */ + public Builder setDeviceNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + deviceName_ = value; + onChanged(); + return this; + } + + private java.lang.Object endpointName_ = ""; + /** + * <code>string endpoint_name = 3;</code> + * @return The endpointName. + */ + public java.lang.String getEndpointName() { + java.lang.Object ref = endpointName_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + endpointName_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * <code>string endpoint_name = 3;</code> + * @return The bytes for endpointName. + */ + public com.google.protobuf.ByteString + getEndpointNameBytes() { + java.lang.Object ref = endpointName_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + endpointName_ = b; + return b; } else { - connectionIdsBuilder_.clear(); + return (com.google.protobuf.ByteString) ref; } + } + /** + * <code>string endpoint_name = 3;</code> + * @param value The endpointName to set. + * @return This builder for chaining. + */ + public Builder setEndpointName( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + endpointName_ = value; + onChanged(); return this; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>string endpoint_name = 3;</code> + * @return This builder for chaining. */ - public Builder removeConnectionIds(int index) { - if (connectionIdsBuilder_ == null) { - ensureConnectionIdsIsMutable(); - connectionIds_.remove(index); - onChanged(); - } else { - connectionIdsBuilder_.remove(index); - } + public Builder clearEndpointName() { + + endpointName_ = getDefaultInstance().getEndpointName(); + onChanged(); return this; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>string endpoint_name = 3;</code> + * @param value The bytes for endpointName to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.ConnectionId.Builder getConnectionIdsBuilder( - int index) { - return getConnectionIdsFieldBuilder().getBuilder(index); + public Builder setEndpointNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + endpointName_ = value; + onChanged(); + return this; } + + private java.lang.Object endpointType_ = ""; /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>string endpoint_type = 4;</code> + * @return The endpointType. */ - public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdsOrBuilder( - int index) { - if (connectionIdsBuilder_ == null) { - return connectionIds_.get(index); } else { - return connectionIdsBuilder_.getMessageOrBuilder(index); + public java.lang.String getEndpointType() { + java.lang.Object ref = endpointType_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + endpointType_ = s; + return s; + } else { + return (java.lang.String) ref; } } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>string endpoint_type = 4;</code> + * @return The bytes for endpointType. */ - public java.util.List<? extends context.ContextOuterClass.ConnectionIdOrBuilder> - getConnectionIdsOrBuilderList() { - if (connectionIdsBuilder_ != null) { - return connectionIdsBuilder_.getMessageOrBuilderList(); + public com.google.protobuf.ByteString + getEndpointTypeBytes() { + java.lang.Object ref = endpointType_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + endpointType_ = b; + return b; } else { - return java.util.Collections.unmodifiableList(connectionIds_); + return (com.google.protobuf.ByteString) ref; } } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>string endpoint_type = 4;</code> + * @param value The endpointType to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.ConnectionId.Builder addConnectionIdsBuilder() { - return getConnectionIdsFieldBuilder().addBuilder( - context.ContextOuterClass.ConnectionId.getDefaultInstance()); + public Builder setEndpointType( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + endpointType_ = value; + onChanged(); + return this; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>string endpoint_type = 4;</code> + * @return This builder for chaining. */ - public context.ContextOuterClass.ConnectionId.Builder addConnectionIdsBuilder( - int index) { - return getConnectionIdsFieldBuilder().addBuilder( - index, context.ContextOuterClass.ConnectionId.getDefaultInstance()); + public Builder clearEndpointType() { + + endpointType_ = getDefaultInstance().getEndpointType(); + onChanged(); + return this; } /** - * <code>repeated .context.ConnectionId connection_ids = 1;</code> + * <code>string endpoint_type = 4;</code> + * @param value The bytes for endpointType to set. + * @return This builder for chaining. */ - public java.util.List<context.ContextOuterClass.ConnectionId.Builder> - getConnectionIdsBuilderList() { - return getConnectionIdsFieldBuilder().getBuilderList(); - } - private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> - getConnectionIdsFieldBuilder() { - if (connectionIdsBuilder_ == null) { - connectionIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder>( - connectionIds_, - ((bitField0_ & 0x00000001) != 0), - getParentForChildren(), - isClean()); - connectionIds_ = null; - } - return connectionIdsBuilder_; + public Builder setEndpointTypeBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + endpointType_ = value; + onChanged(); + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -44855,95 +56959,95 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ConnectionIdList) + // @@protoc_insertion_point(builder_scope:context.EndPointName) } - // @@protoc_insertion_point(class_scope:context.ConnectionIdList) - private static final context.ContextOuterClass.ConnectionIdList DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.EndPointName) + private static final context.ContextOuterClass.EndPointName DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionIdList(); + DEFAULT_INSTANCE = new context.ContextOuterClass.EndPointName(); } - public static context.ContextOuterClass.ConnectionIdList getDefaultInstance() { + public static context.ContextOuterClass.EndPointName getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ConnectionIdList> - PARSER = new com.google.protobuf.AbstractParser<ConnectionIdList>() { + private static final com.google.protobuf.Parser<EndPointName> + PARSER = new com.google.protobuf.AbstractParser<EndPointName>() { @java.lang.Override - public ConnectionIdList parsePartialFrom( + public EndPointName parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ConnectionIdList(input, extensionRegistry); + return new EndPointName(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ConnectionIdList> parser() { + public static com.google.protobuf.Parser<EndPointName> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ConnectionIdList> getParserForType() { + public com.google.protobuf.Parser<EndPointName> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ConnectionIdList getDefaultInstanceForType() { + public context.ContextOuterClass.EndPointName getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ConnectionListOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ConnectionList) + public interface EndPointIdListOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.EndPointIdList) com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - java.util.List<context.ContextOuterClass.Connection> - getConnectionsList(); + java.util.List<context.ContextOuterClass.EndPointId> + getEndpointIdsList(); /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - context.ContextOuterClass.Connection getConnections(int index); + context.ContextOuterClass.EndPointId getEndpointIds(int index); /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - int getConnectionsCount(); + int getEndpointIdsCount(); /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - java.util.List<? extends context.ContextOuterClass.ConnectionOrBuilder> - getConnectionsOrBuilderList(); + java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getEndpointIdsOrBuilderList(); /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - context.ContextOuterClass.ConnectionOrBuilder getConnectionsOrBuilder( + context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdsOrBuilder( int index); } /** - * Protobuf type {@code context.ConnectionList} + * Protobuf type {@code context.EndPointIdList} */ - public static final class ConnectionList extends + public static final class EndPointIdList extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ConnectionList) - ConnectionListOrBuilder { + // @@protoc_insertion_point(message_implements:context.EndPointIdList) + EndPointIdListOrBuilder { private static final long serialVersionUID = 0L; - // Use ConnectionList.newBuilder() to construct. - private ConnectionList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use EndPointIdList.newBuilder() to construct. + private EndPointIdList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ConnectionList() { - connections_ = java.util.Collections.emptyList(); + private EndPointIdList() { + endpointIds_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ConnectionList(); + return new EndPointIdList(); } @java.lang.Override @@ -44951,7 +57055,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ConnectionList( + private EndPointIdList( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -44972,11 +57076,11 @@ public final class ContextOuterClass { break; case 10: { if (!((mutable_bitField0_ & 0x00000001) != 0)) { - connections_ = new java.util.ArrayList<context.ContextOuterClass.Connection>(); + endpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(); mutable_bitField0_ |= 0x00000001; } - connections_.add( - input.readMessage(context.ContextOuterClass.Connection.parser(), extensionRegistry)); + endpointIds_.add( + input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry)); break; } default: { @@ -44995,7 +57099,7 @@ public final class ContextOuterClass { e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { - connections_ = java.util.Collections.unmodifiableList(connections_); + endpointIds_ = java.util.Collections.unmodifiableList(endpointIds_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); @@ -45003,55 +57107,55 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionList_descriptor; + return context.ContextOuterClass.internal_static_context_EndPointIdList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_EndPointIdList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionList.class, context.ContextOuterClass.ConnectionList.Builder.class); + context.ContextOuterClass.EndPointIdList.class, context.ContextOuterClass.EndPointIdList.Builder.class); } - public static final int CONNECTIONS_FIELD_NUMBER = 1; - private java.util.List<context.ContextOuterClass.Connection> connections_; + public static final int ENDPOINT_IDS_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.EndPointId> endpointIds_; /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ @java.lang.Override - public java.util.List<context.ContextOuterClass.Connection> getConnectionsList() { - return connections_; + public java.util.List<context.ContextOuterClass.EndPointId> getEndpointIdsList() { + return endpointIds_; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ @java.lang.Override - public java.util.List<? extends context.ContextOuterClass.ConnectionOrBuilder> - getConnectionsOrBuilderList() { - return connections_; + public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getEndpointIdsOrBuilderList() { + return endpointIds_; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ @java.lang.Override - public int getConnectionsCount() { - return connections_.size(); + public int getEndpointIdsCount() { + return endpointIds_.size(); } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.Connection getConnections(int index) { - return connections_.get(index); + public context.ContextOuterClass.EndPointId getEndpointIds(int index) { + return endpointIds_.get(index); } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.ConnectionOrBuilder getConnectionsOrBuilder( + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdsOrBuilder( int index) { - return connections_.get(index); + return endpointIds_.get(index); } private byte memoizedIsInitialized = -1; @@ -45068,8 +57172,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < connections_.size(); i++) { - output.writeMessage(1, connections_.get(i)); + for (int i = 0; i < endpointIds_.size(); i++) { + output.writeMessage(1, endpointIds_.get(i)); } unknownFields.writeTo(output); } @@ -45080,9 +57184,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - for (int i = 0; i < connections_.size(); i++) { + for (int i = 0; i < endpointIds_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, connections_.get(i)); + .computeMessageSize(1, endpointIds_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -45094,13 +57198,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ConnectionList)) { + if (!(obj instanceof context.ContextOuterClass.EndPointIdList)) { return super.equals(obj); } - context.ContextOuterClass.ConnectionList other = (context.ContextOuterClass.ConnectionList) obj; + context.ContextOuterClass.EndPointIdList other = (context.ContextOuterClass.EndPointIdList) obj; - if (!getConnectionsList() - .equals(other.getConnectionsList())) return false; + if (!getEndpointIdsList() + .equals(other.getEndpointIdsList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -45112,78 +57216,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getConnectionsCount() > 0) { - hash = (37 * hash) + CONNECTIONS_FIELD_NUMBER; - hash = (53 * hash) + getConnectionsList().hashCode(); + if (getEndpointIdsCount() > 0) { + hash = (37 * hash) + ENDPOINT_IDS_FIELD_NUMBER; + hash = (53 * hash) + getEndpointIdsList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ConnectionList parseFrom( + public static context.ContextOuterClass.EndPointIdList parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionList parseFrom( + public static context.ContextOuterClass.EndPointIdList parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionList parseFrom( + public static context.ContextOuterClass.EndPointIdList parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionList parseFrom( + public static context.ContextOuterClass.EndPointIdList parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionList parseFrom(byte[] data) + public static context.ContextOuterClass.EndPointIdList parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionList parseFrom( + public static context.ContextOuterClass.EndPointIdList parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionList parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.EndPointIdList parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionList parseFrom( + public static context.ContextOuterClass.EndPointIdList 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 context.ContextOuterClass.ConnectionList parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.EndPointIdList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionList parseDelimitedFrom( + public static context.ContextOuterClass.EndPointIdList 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 context.ContextOuterClass.ConnectionList parseFrom( + public static context.ContextOuterClass.EndPointIdList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionList parseFrom( + public static context.ContextOuterClass.EndPointIdList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -45196,7 +57300,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ConnectionList prototype) { + public static Builder newBuilder(context.ContextOuterClass.EndPointIdList prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -45212,26 +57316,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ConnectionList} + * Protobuf type {@code context.EndPointIdList} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ConnectionList) - context.ContextOuterClass.ConnectionListOrBuilder { + // @@protoc_insertion_point(builder_implements:context.EndPointIdList) + context.ContextOuterClass.EndPointIdListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionList_descriptor; + return context.ContextOuterClass.internal_static_context_EndPointIdList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionList_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_EndPointIdList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionList.class, context.ContextOuterClass.ConnectionList.Builder.class); + context.ContextOuterClass.EndPointIdList.class, context.ContextOuterClass.EndPointIdList.Builder.class); } - // Construct using context.ContextOuterClass.ConnectionList.newBuilder() + // Construct using context.ContextOuterClass.EndPointIdList.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -45244,17 +57348,17 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { - getConnectionsFieldBuilder(); + getEndpointIdsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (connectionsBuilder_ == null) { - connections_ = java.util.Collections.emptyList(); + if (endpointIdsBuilder_ == null) { + endpointIds_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); } else { - connectionsBuilder_.clear(); + endpointIdsBuilder_.clear(); } return this; } @@ -45262,17 +57366,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ConnectionList_descriptor; + return context.ContextOuterClass.internal_static_context_EndPointIdList_descriptor; } @java.lang.Override - public context.ContextOuterClass.ConnectionList getDefaultInstanceForType() { - return context.ContextOuterClass.ConnectionList.getDefaultInstance(); + public context.ContextOuterClass.EndPointIdList getDefaultInstanceForType() { + return context.ContextOuterClass.EndPointIdList.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ConnectionList build() { - context.ContextOuterClass.ConnectionList result = buildPartial(); + public context.ContextOuterClass.EndPointIdList build() { + context.ContextOuterClass.EndPointIdList result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -45280,17 +57384,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ConnectionList buildPartial() { - context.ContextOuterClass.ConnectionList result = new context.ContextOuterClass.ConnectionList(this); + public context.ContextOuterClass.EndPointIdList buildPartial() { + context.ContextOuterClass.EndPointIdList result = new context.ContextOuterClass.EndPointIdList(this); int from_bitField0_ = bitField0_; - if (connectionsBuilder_ == null) { + if (endpointIdsBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { - connections_ = java.util.Collections.unmodifiableList(connections_); + endpointIds_ = java.util.Collections.unmodifiableList(endpointIds_); bitField0_ = (bitField0_ & ~0x00000001); } - result.connections_ = connections_; + result.endpointIds_ = endpointIds_; } else { - result.connections_ = connectionsBuilder_.build(); + result.endpointIds_ = endpointIdsBuilder_.build(); } onBuilt(); return result; @@ -45330,39 +57434,39 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ConnectionList) { - return mergeFrom((context.ContextOuterClass.ConnectionList)other); + if (other instanceof context.ContextOuterClass.EndPointIdList) { + return mergeFrom((context.ContextOuterClass.EndPointIdList)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ConnectionList other) { - if (other == context.ContextOuterClass.ConnectionList.getDefaultInstance()) return this; - if (connectionsBuilder_ == null) { - if (!other.connections_.isEmpty()) { - if (connections_.isEmpty()) { - connections_ = other.connections_; + public Builder mergeFrom(context.ContextOuterClass.EndPointIdList other) { + if (other == context.ContextOuterClass.EndPointIdList.getDefaultInstance()) return this; + if (endpointIdsBuilder_ == null) { + if (!other.endpointIds_.isEmpty()) { + if (endpointIds_.isEmpty()) { + endpointIds_ = other.endpointIds_; bitField0_ = (bitField0_ & ~0x00000001); } else { - ensureConnectionsIsMutable(); - connections_.addAll(other.connections_); + ensureEndpointIdsIsMutable(); + endpointIds_.addAll(other.endpointIds_); } onChanged(); } } else { - if (!other.connections_.isEmpty()) { - if (connectionsBuilder_.isEmpty()) { - connectionsBuilder_.dispose(); - connectionsBuilder_ = null; - connections_ = other.connections_; + if (!other.endpointIds_.isEmpty()) { + if (endpointIdsBuilder_.isEmpty()) { + endpointIdsBuilder_.dispose(); + endpointIdsBuilder_ = null; + endpointIds_ = other.endpointIds_; bitField0_ = (bitField0_ & ~0x00000001); - connectionsBuilder_ = + endpointIdsBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? - getConnectionsFieldBuilder() : null; + getEndpointIdsFieldBuilder() : null; } else { - connectionsBuilder_.addAllMessages(other.connections_); + endpointIdsBuilder_.addAllMessages(other.endpointIds_); } } } @@ -45381,11 +57485,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ConnectionList parsedMessage = null; + context.ContextOuterClass.EndPointIdList parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ConnectionList) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.EndPointIdList) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -45396,244 +57500,244 @@ public final class ContextOuterClass { } private int bitField0_; - private java.util.List<context.ContextOuterClass.Connection> connections_ = + private java.util.List<context.ContextOuterClass.EndPointId> endpointIds_ = java.util.Collections.emptyList(); - private void ensureConnectionsIsMutable() { + private void ensureEndpointIdsIsMutable() { if (!((bitField0_ & 0x00000001) != 0)) { - connections_ = new java.util.ArrayList<context.ContextOuterClass.Connection>(connections_); + endpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(endpointIds_); bitField0_ |= 0x00000001; } } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Connection, context.ContextOuterClass.Connection.Builder, context.ContextOuterClass.ConnectionOrBuilder> connectionsBuilder_; + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> endpointIdsBuilder_; /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public java.util.List<context.ContextOuterClass.Connection> getConnectionsList() { - if (connectionsBuilder_ == null) { - return java.util.Collections.unmodifiableList(connections_); + public java.util.List<context.ContextOuterClass.EndPointId> getEndpointIdsList() { + if (endpointIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(endpointIds_); } else { - return connectionsBuilder_.getMessageList(); + return endpointIdsBuilder_.getMessageList(); } } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public int getConnectionsCount() { - if (connectionsBuilder_ == null) { - return connections_.size(); + public int getEndpointIdsCount() { + if (endpointIdsBuilder_ == null) { + return endpointIds_.size(); } else { - return connectionsBuilder_.getCount(); + return endpointIdsBuilder_.getCount(); } } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public context.ContextOuterClass.Connection getConnections(int index) { - if (connectionsBuilder_ == null) { - return connections_.get(index); + public context.ContextOuterClass.EndPointId getEndpointIds(int index) { + if (endpointIdsBuilder_ == null) { + return endpointIds_.get(index); } else { - return connectionsBuilder_.getMessage(index); + return endpointIdsBuilder_.getMessage(index); } } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public Builder setConnections( - int index, context.ContextOuterClass.Connection value) { - if (connectionsBuilder_ == null) { + public Builder setEndpointIds( + int index, context.ContextOuterClass.EndPointId value) { + if (endpointIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureConnectionsIsMutable(); - connections_.set(index, value); + ensureEndpointIdsIsMutable(); + endpointIds_.set(index, value); onChanged(); } else { - connectionsBuilder_.setMessage(index, value); + endpointIdsBuilder_.setMessage(index, value); } return this; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public Builder setConnections( - int index, context.ContextOuterClass.Connection.Builder builderForValue) { - if (connectionsBuilder_ == null) { - ensureConnectionsIsMutable(); - connections_.set(index, builderForValue.build()); + public Builder setEndpointIds( + int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (endpointIdsBuilder_ == null) { + ensureEndpointIdsIsMutable(); + endpointIds_.set(index, builderForValue.build()); onChanged(); } else { - connectionsBuilder_.setMessage(index, builderForValue.build()); + endpointIdsBuilder_.setMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public Builder addConnections(context.ContextOuterClass.Connection value) { - if (connectionsBuilder_ == null) { + public Builder addEndpointIds(context.ContextOuterClass.EndPointId value) { + if (endpointIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureConnectionsIsMutable(); - connections_.add(value); + ensureEndpointIdsIsMutable(); + endpointIds_.add(value); onChanged(); } else { - connectionsBuilder_.addMessage(value); + endpointIdsBuilder_.addMessage(value); } return this; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public Builder addConnections( - int index, context.ContextOuterClass.Connection value) { - if (connectionsBuilder_ == null) { + public Builder addEndpointIds( + int index, context.ContextOuterClass.EndPointId value) { + if (endpointIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureConnectionsIsMutable(); - connections_.add(index, value); + ensureEndpointIdsIsMutable(); + endpointIds_.add(index, value); onChanged(); } else { - connectionsBuilder_.addMessage(index, value); + endpointIdsBuilder_.addMessage(index, value); } return this; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public Builder addConnections( - context.ContextOuterClass.Connection.Builder builderForValue) { - if (connectionsBuilder_ == null) { - ensureConnectionsIsMutable(); - connections_.add(builderForValue.build()); + public Builder addEndpointIds( + context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (endpointIdsBuilder_ == null) { + ensureEndpointIdsIsMutable(); + endpointIds_.add(builderForValue.build()); onChanged(); } else { - connectionsBuilder_.addMessage(builderForValue.build()); + endpointIdsBuilder_.addMessage(builderForValue.build()); } return this; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public Builder addConnections( - int index, context.ContextOuterClass.Connection.Builder builderForValue) { - if (connectionsBuilder_ == null) { - ensureConnectionsIsMutable(); - connections_.add(index, builderForValue.build()); + public Builder addEndpointIds( + int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (endpointIdsBuilder_ == null) { + ensureEndpointIdsIsMutable(); + endpointIds_.add(index, builderForValue.build()); onChanged(); } else { - connectionsBuilder_.addMessage(index, builderForValue.build()); + endpointIdsBuilder_.addMessage(index, builderForValue.build()); } return this; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public Builder addAllConnections( - java.lang.Iterable<? extends context.ContextOuterClass.Connection> values) { - if (connectionsBuilder_ == null) { - ensureConnectionsIsMutable(); + public Builder addAllEndpointIds( + java.lang.Iterable<? extends context.ContextOuterClass.EndPointId> values) { + if (endpointIdsBuilder_ == null) { + ensureEndpointIdsIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( - values, connections_); + values, endpointIds_); onChanged(); } else { - connectionsBuilder_.addAllMessages(values); + endpointIdsBuilder_.addAllMessages(values); } return this; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public Builder clearConnections() { - if (connectionsBuilder_ == null) { - connections_ = java.util.Collections.emptyList(); + public Builder clearEndpointIds() { + if (endpointIdsBuilder_ == null) { + endpointIds_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { - connectionsBuilder_.clear(); + endpointIdsBuilder_.clear(); } return this; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public Builder removeConnections(int index) { - if (connectionsBuilder_ == null) { - ensureConnectionsIsMutable(); - connections_.remove(index); + public Builder removeEndpointIds(int index) { + if (endpointIdsBuilder_ == null) { + ensureEndpointIdsIsMutable(); + endpointIds_.remove(index); onChanged(); } else { - connectionsBuilder_.remove(index); + endpointIdsBuilder_.remove(index); } return this; } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public context.ContextOuterClass.Connection.Builder getConnectionsBuilder( + public context.ContextOuterClass.EndPointId.Builder getEndpointIdsBuilder( int index) { - return getConnectionsFieldBuilder().getBuilder(index); + return getEndpointIdsFieldBuilder().getBuilder(index); } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public context.ContextOuterClass.ConnectionOrBuilder getConnectionsOrBuilder( + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdsOrBuilder( int index) { - if (connectionsBuilder_ == null) { - return connections_.get(index); } else { - return connectionsBuilder_.getMessageOrBuilder(index); + if (endpointIdsBuilder_ == null) { + return endpointIds_.get(index); } else { + return endpointIdsBuilder_.getMessageOrBuilder(index); } } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public java.util.List<? extends context.ContextOuterClass.ConnectionOrBuilder> - getConnectionsOrBuilderList() { - if (connectionsBuilder_ != null) { - return connectionsBuilder_.getMessageOrBuilderList(); + public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getEndpointIdsOrBuilderList() { + if (endpointIdsBuilder_ != null) { + return endpointIdsBuilder_.getMessageOrBuilderList(); } else { - return java.util.Collections.unmodifiableList(connections_); + return java.util.Collections.unmodifiableList(endpointIds_); } } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public context.ContextOuterClass.Connection.Builder addConnectionsBuilder() { - return getConnectionsFieldBuilder().addBuilder( - context.ContextOuterClass.Connection.getDefaultInstance()); + public context.ContextOuterClass.EndPointId.Builder addEndpointIdsBuilder() { + return getEndpointIdsFieldBuilder().addBuilder( + context.ContextOuterClass.EndPointId.getDefaultInstance()); } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public context.ContextOuterClass.Connection.Builder addConnectionsBuilder( + public context.ContextOuterClass.EndPointId.Builder addEndpointIdsBuilder( int index) { - return getConnectionsFieldBuilder().addBuilder( - index, context.ContextOuterClass.Connection.getDefaultInstance()); + return getEndpointIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.EndPointId.getDefaultInstance()); } /** - * <code>repeated .context.Connection connections = 1;</code> + * <code>repeated .context.EndPointId endpoint_ids = 1;</code> */ - public java.util.List<context.ContextOuterClass.Connection.Builder> - getConnectionsBuilderList() { - return getConnectionsFieldBuilder().getBuilderList(); + public java.util.List<context.ContextOuterClass.EndPointId.Builder> + getEndpointIdsBuilderList() { + return getEndpointIdsFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Connection, context.ContextOuterClass.Connection.Builder, context.ContextOuterClass.ConnectionOrBuilder> - getConnectionsFieldBuilder() { - if (connectionsBuilder_ == null) { - connectionsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - context.ContextOuterClass.Connection, context.ContextOuterClass.Connection.Builder, context.ContextOuterClass.ConnectionOrBuilder>( - connections_, + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> + getEndpointIdsFieldBuilder() { + if (endpointIdsBuilder_ == null) { + endpointIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( + endpointIds_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); - connections_ = null; + endpointIds_ = null; } - return connectionsBuilder_; + return endpointIdsBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -45648,100 +57752,95 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ConnectionList) + // @@protoc_insertion_point(builder_scope:context.EndPointIdList) } - // @@protoc_insertion_point(class_scope:context.ConnectionList) - private static final context.ContextOuterClass.ConnectionList DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.EndPointIdList) + private static final context.ContextOuterClass.EndPointIdList DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionList(); + DEFAULT_INSTANCE = new context.ContextOuterClass.EndPointIdList(); } - public static context.ContextOuterClass.ConnectionList getDefaultInstance() { + public static context.ContextOuterClass.EndPointIdList getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ConnectionList> - PARSER = new com.google.protobuf.AbstractParser<ConnectionList>() { + private static final com.google.protobuf.Parser<EndPointIdList> + PARSER = new com.google.protobuf.AbstractParser<EndPointIdList>() { @java.lang.Override - public ConnectionList parsePartialFrom( + public EndPointIdList parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ConnectionList(input, extensionRegistry); + return new EndPointIdList(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ConnectionList> parser() { + public static com.google.protobuf.Parser<EndPointIdList> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ConnectionList> getParserForType() { + public com.google.protobuf.Parser<EndPointIdList> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ConnectionList getDefaultInstanceForType() { + public context.ContextOuterClass.EndPointIdList getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ConnectionEventOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ConnectionEvent) + public interface EndPointNameListOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.EndPointNameList) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. - */ - boolean hasEvent(); - /** - * <code>.context.Event event = 1;</code> - * @return The event. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - context.ContextOuterClass.Event getEvent(); + java.util.List<context.ContextOuterClass.EndPointName> + getEndpointNamesList(); /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - context.ContextOuterClass.EventOrBuilder getEventOrBuilder(); - + context.ContextOuterClass.EndPointName getEndpointNames(int index); /** - * <code>.context.ConnectionId connection_id = 2;</code> - * @return Whether the connectionId field is set. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - boolean hasConnectionId(); + int getEndpointNamesCount(); /** - * <code>.context.ConnectionId connection_id = 2;</code> - * @return The connectionId. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - context.ContextOuterClass.ConnectionId getConnectionId(); + java.util.List<? extends context.ContextOuterClass.EndPointNameOrBuilder> + getEndpointNamesOrBuilderList(); /** - * <code>.context.ConnectionId connection_id = 2;</code> + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder(); + context.ContextOuterClass.EndPointNameOrBuilder getEndpointNamesOrBuilder( + int index); } /** - * Protobuf type {@code context.ConnectionEvent} + * Protobuf type {@code context.EndPointNameList} */ - public static final class ConnectionEvent extends + public static final class EndPointNameList extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ConnectionEvent) - ConnectionEventOrBuilder { + // @@protoc_insertion_point(message_implements:context.EndPointNameList) + EndPointNameListOrBuilder { private static final long serialVersionUID = 0L; - // Use ConnectionEvent.newBuilder() to construct. - private ConnectionEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use EndPointNameList.newBuilder() to construct. + private EndPointNameList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ConnectionEvent() { + private EndPointNameList() { + endpointNames_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ConnectionEvent(); + return new EndPointNameList(); } @java.lang.Override @@ -45749,7 +57848,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ConnectionEvent( + private EndPointNameList( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -45757,6 +57856,7 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } + int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -45768,29 +57868,12 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.Event.Builder subBuilder = null; - if (event_ != null) { - subBuilder = event_.toBuilder(); - } - event_ = input.readMessage(context.ContextOuterClass.Event.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(event_); - event_ = subBuilder.buildPartial(); - } - - break; - } - case 18: { - context.ContextOuterClass.ConnectionId.Builder subBuilder = null; - if (connectionId_ != null) { - subBuilder = connectionId_.toBuilder(); - } - connectionId_ = input.readMessage(context.ContextOuterClass.ConnectionId.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(connectionId_); - connectionId_ = subBuilder.buildPartial(); + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + endpointNames_ = new java.util.ArrayList<context.ContextOuterClass.EndPointName>(); + mutable_bitField0_ |= 0x00000001; } - + endpointNames_.add( + input.readMessage(context.ContextOuterClass.EndPointName.parser(), extensionRegistry)); break; } default: { @@ -45808,73 +57891,64 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { + if (((mutable_bitField0_ & 0x00000001) != 0)) { + endpointNames_ = java.util.Collections.unmodifiableList(endpointNames_); + } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionEvent_descriptor; + return context.ContextOuterClass.internal_static_context_EndPointNameList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionEvent_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_EndPointNameList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionEvent.class, context.ContextOuterClass.ConnectionEvent.Builder.class); + context.ContextOuterClass.EndPointNameList.class, context.ContextOuterClass.EndPointNameList.Builder.class); } - public static final int EVENT_FIELD_NUMBER = 1; - private context.ContextOuterClass.Event event_; - /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. - */ - @java.lang.Override - public boolean hasEvent() { - return event_ != null; - } + public static final int ENDPOINT_NAMES_FIELD_NUMBER = 1; + private java.util.List<context.ContextOuterClass.EndPointName> endpointNames_; /** - * <code>.context.Event event = 1;</code> - * @return The event. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.Event getEvent() { - return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; + public java.util.List<context.ContextOuterClass.EndPointName> getEndpointNamesList() { + return endpointNames_; } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { - return getEvent(); + public java.util.List<? extends context.ContextOuterClass.EndPointNameOrBuilder> + getEndpointNamesOrBuilderList() { + return endpointNames_; } - - public static final int CONNECTION_ID_FIELD_NUMBER = 2; - private context.ContextOuterClass.ConnectionId connectionId_; /** - * <code>.context.ConnectionId connection_id = 2;</code> - * @return Whether the connectionId field is set. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ @java.lang.Override - public boolean hasConnectionId() { - return connectionId_ != null; + public int getEndpointNamesCount() { + return endpointNames_.size(); } /** - * <code>.context.ConnectionId connection_id = 2;</code> - * @return The connectionId. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.ConnectionId getConnectionId() { - return connectionId_ == null ? context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; + public context.ContextOuterClass.EndPointName getEndpointNames(int index) { + return endpointNames_.get(index); } /** - * <code>.context.ConnectionId connection_id = 2;</code> + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder() { - return getConnectionId(); + public context.ContextOuterClass.EndPointNameOrBuilder getEndpointNamesOrBuilder( + int index) { + return endpointNames_.get(index); } private byte memoizedIsInitialized = -1; @@ -45891,11 +57965,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (event_ != null) { - output.writeMessage(1, getEvent()); - } - if (connectionId_ != null) { - output.writeMessage(2, getConnectionId()); + for (int i = 0; i < endpointNames_.size(); i++) { + output.writeMessage(1, endpointNames_.get(i)); } unknownFields.writeTo(output); } @@ -45906,13 +57977,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (event_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getEvent()); - } - if (connectionId_ != null) { + for (int i = 0; i < endpointNames_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, getConnectionId()); + .computeMessageSize(1, endpointNames_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -45924,21 +57991,13 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ConnectionEvent)) { + if (!(obj instanceof context.ContextOuterClass.EndPointNameList)) { return super.equals(obj); } - context.ContextOuterClass.ConnectionEvent other = (context.ContextOuterClass.ConnectionEvent) obj; + context.ContextOuterClass.EndPointNameList other = (context.ContextOuterClass.EndPointNameList) obj; - if (hasEvent() != other.hasEvent()) return false; - if (hasEvent()) { - if (!getEvent() - .equals(other.getEvent())) return false; - } - if (hasConnectionId() != other.hasConnectionId()) return false; - if (hasConnectionId()) { - if (!getConnectionId() - .equals(other.getConnectionId())) return false; - } + if (!getEndpointNamesList() + .equals(other.getEndpointNamesList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -45950,82 +58009,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasEvent()) { - hash = (37 * hash) + EVENT_FIELD_NUMBER; - hash = (53 * hash) + getEvent().hashCode(); - } - if (hasConnectionId()) { - hash = (37 * hash) + CONNECTION_ID_FIELD_NUMBER; - hash = (53 * hash) + getConnectionId().hashCode(); + if (getEndpointNamesCount() > 0) { + hash = (37 * hash) + ENDPOINT_NAMES_FIELD_NUMBER; + hash = (53 * hash) + getEndpointNamesList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ConnectionEvent parseFrom( + public static context.ContextOuterClass.EndPointNameList parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionEvent parseFrom( + public static context.ContextOuterClass.EndPointNameList parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionEvent parseFrom( + public static context.ContextOuterClass.EndPointNameList parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionEvent parseFrom( + public static context.ContextOuterClass.EndPointNameList parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionEvent parseFrom(byte[] data) + public static context.ContextOuterClass.EndPointNameList parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConnectionEvent parseFrom( + public static context.ContextOuterClass.EndPointNameList parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConnectionEvent parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.EndPointNameList parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionEvent parseFrom( + public static context.ContextOuterClass.EndPointNameList 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 context.ContextOuterClass.ConnectionEvent parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.EndPointNameList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionEvent parseDelimitedFrom( + public static context.ContextOuterClass.EndPointNameList 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 context.ContextOuterClass.ConnectionEvent parseFrom( + public static context.ContextOuterClass.EndPointNameList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConnectionEvent parseFrom( + public static context.ContextOuterClass.EndPointNameList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -46038,7 +58093,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ConnectionEvent prototype) { + public static Builder newBuilder(context.ContextOuterClass.EndPointNameList prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -46054,26 +58109,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ConnectionEvent} + * Protobuf type {@code context.EndPointNameList} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ConnectionEvent) - context.ContextOuterClass.ConnectionEventOrBuilder { + // @@protoc_insertion_point(builder_implements:context.EndPointNameList) + context.ContextOuterClass.EndPointNameListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConnectionEvent_descriptor; + return context.ContextOuterClass.internal_static_context_EndPointNameList_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConnectionEvent_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_EndPointNameList_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConnectionEvent.class, context.ContextOuterClass.ConnectionEvent.Builder.class); + context.ContextOuterClass.EndPointNameList.class, context.ContextOuterClass.EndPointNameList.Builder.class); } - // Construct using context.ContextOuterClass.ConnectionEvent.newBuilder() + // Construct using context.ContextOuterClass.EndPointNameList.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -46086,22 +58141,17 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { + getEndpointNamesFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (eventBuilder_ == null) { - event_ = null; - } else { - event_ = null; - eventBuilder_ = null; - } - if (connectionIdBuilder_ == null) { - connectionId_ = null; + if (endpointNamesBuilder_ == null) { + endpointNames_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); } else { - connectionId_ = null; - connectionIdBuilder_ = null; + endpointNamesBuilder_.clear(); } return this; } @@ -46109,17 +58159,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ConnectionEvent_descriptor; + return context.ContextOuterClass.internal_static_context_EndPointNameList_descriptor; } @java.lang.Override - public context.ContextOuterClass.ConnectionEvent getDefaultInstanceForType() { - return context.ContextOuterClass.ConnectionEvent.getDefaultInstance(); + public context.ContextOuterClass.EndPointNameList getDefaultInstanceForType() { + return context.ContextOuterClass.EndPointNameList.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ConnectionEvent build() { - context.ContextOuterClass.ConnectionEvent result = buildPartial(); + public context.ContextOuterClass.EndPointNameList build() { + context.ContextOuterClass.EndPointNameList result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -46127,17 +58177,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ConnectionEvent buildPartial() { - context.ContextOuterClass.ConnectionEvent result = new context.ContextOuterClass.ConnectionEvent(this); - if (eventBuilder_ == null) { - result.event_ = event_; - } else { - result.event_ = eventBuilder_.build(); - } - if (connectionIdBuilder_ == null) { - result.connectionId_ = connectionId_; + public context.ContextOuterClass.EndPointNameList buildPartial() { + context.ContextOuterClass.EndPointNameList result = new context.ContextOuterClass.EndPointNameList(this); + int from_bitField0_ = bitField0_; + if (endpointNamesBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + endpointNames_ = java.util.Collections.unmodifiableList(endpointNames_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.endpointNames_ = endpointNames_; } else { - result.connectionId_ = connectionIdBuilder_.build(); + result.endpointNames_ = endpointNamesBuilder_.build(); } onBuilt(); return result; @@ -46177,21 +58227,41 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ConnectionEvent) { - return mergeFrom((context.ContextOuterClass.ConnectionEvent)other); + if (other instanceof context.ContextOuterClass.EndPointNameList) { + return mergeFrom((context.ContextOuterClass.EndPointNameList)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ConnectionEvent other) { - if (other == context.ContextOuterClass.ConnectionEvent.getDefaultInstance()) return this; - if (other.hasEvent()) { - mergeEvent(other.getEvent()); - } - if (other.hasConnectionId()) { - mergeConnectionId(other.getConnectionId()); + public Builder mergeFrom(context.ContextOuterClass.EndPointNameList other) { + if (other == context.ContextOuterClass.EndPointNameList.getDefaultInstance()) return this; + if (endpointNamesBuilder_ == null) { + if (!other.endpointNames_.isEmpty()) { + if (endpointNames_.isEmpty()) { + endpointNames_ = other.endpointNames_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureEndpointNamesIsMutable(); + endpointNames_.addAll(other.endpointNames_); + } + onChanged(); + } + } else { + if (!other.endpointNames_.isEmpty()) { + if (endpointNamesBuilder_.isEmpty()) { + endpointNamesBuilder_.dispose(); + endpointNamesBuilder_ = null; + endpointNames_ = other.endpointNames_; + bitField0_ = (bitField0_ & ~0x00000001); + endpointNamesBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getEndpointNamesFieldBuilder() : null; + } else { + endpointNamesBuilder_.addAllMessages(other.endpointNames_); + } + } } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -46208,11 +58278,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ConnectionEvent parsedMessage = null; + context.ContextOuterClass.EndPointNameList parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ConnectionEvent) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.EndPointNameList) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -46221,243 +58291,246 @@ public final class ContextOuterClass { } return this; } + private int bitField0_; + + private java.util.List<context.ContextOuterClass.EndPointName> endpointNames_ = + java.util.Collections.emptyList(); + private void ensureEndpointNamesIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + endpointNames_ = new java.util.ArrayList<context.ContextOuterClass.EndPointName>(endpointNames_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointName, context.ContextOuterClass.EndPointName.Builder, context.ContextOuterClass.EndPointNameOrBuilder> endpointNamesBuilder_; - private context.ContextOuterClass.Event event_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Event, context.ContextOuterClass.Event.Builder, context.ContextOuterClass.EventOrBuilder> eventBuilder_; /** - * <code>.context.Event event = 1;</code> - * @return Whether the event field is set. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public boolean hasEvent() { - return eventBuilder_ != null || event_ != null; + public java.util.List<context.ContextOuterClass.EndPointName> getEndpointNamesList() { + if (endpointNamesBuilder_ == null) { + return java.util.Collections.unmodifiableList(endpointNames_); + } else { + return endpointNamesBuilder_.getMessageList(); + } } /** - * <code>.context.Event event = 1;</code> - * @return The event. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public context.ContextOuterClass.Event getEvent() { - if (eventBuilder_ == null) { - return event_ == null ? context.ContextOuterClass.Event.getDefaultInstance() : event_; + public int getEndpointNamesCount() { + if (endpointNamesBuilder_ == null) { + return endpointNames_.size(); } else { - return eventBuilder_.getMessage(); + return endpointNamesBuilder_.getCount(); } } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public Builder setEvent(context.ContextOuterClass.Event value) { - if (eventBuilder_ == null) { + public context.ContextOuterClass.EndPointName getEndpointNames(int index) { + if (endpointNamesBuilder_ == null) { + return endpointNames_.get(index); + } else { + return endpointNamesBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.EndPointName endpoint_names = 1;</code> + */ + public Builder setEndpointNames( + int index, context.ContextOuterClass.EndPointName value) { + if (endpointNamesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - event_ = value; + ensureEndpointNamesIsMutable(); + endpointNames_.set(index, value); onChanged(); } else { - eventBuilder_.setMessage(value); + endpointNamesBuilder_.setMessage(index, value); } - return this; } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public Builder setEvent( - context.ContextOuterClass.Event.Builder builderForValue) { - if (eventBuilder_ == null) { - event_ = builderForValue.build(); + public Builder setEndpointNames( + int index, context.ContextOuterClass.EndPointName.Builder builderForValue) { + if (endpointNamesBuilder_ == null) { + ensureEndpointNamesIsMutable(); + endpointNames_.set(index, builderForValue.build()); onChanged(); } else { - eventBuilder_.setMessage(builderForValue.build()); + endpointNamesBuilder_.setMessage(index, builderForValue.build()); } - return this; } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public Builder mergeEvent(context.ContextOuterClass.Event value) { - if (eventBuilder_ == null) { - if (event_ != null) { - event_ = - context.ContextOuterClass.Event.newBuilder(event_).mergeFrom(value).buildPartial(); - } else { - event_ = value; + public Builder addEndpointNames(context.ContextOuterClass.EndPointName value) { + if (endpointNamesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + ensureEndpointNamesIsMutable(); + endpointNames_.add(value); onChanged(); } else { - eventBuilder_.mergeFrom(value); + endpointNamesBuilder_.addMessage(value); } - return this; } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public Builder clearEvent() { - if (eventBuilder_ == null) { - event_ = null; + public Builder addEndpointNames( + int index, context.ContextOuterClass.EndPointName value) { + if (endpointNamesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureEndpointNamesIsMutable(); + endpointNames_.add(index, value); onChanged(); } else { - event_ = null; - eventBuilder_ = null; + endpointNamesBuilder_.addMessage(index, value); } - return this; } /** - * <code>.context.Event event = 1;</code> - */ - public context.ContextOuterClass.Event.Builder getEventBuilder() { - - onChanged(); - return getEventFieldBuilder().getBuilder(); - } - /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public context.ContextOuterClass.EventOrBuilder getEventOrBuilder() { - if (eventBuilder_ != null) { - return eventBuilder_.getMessageOrBuilder(); + public Builder addEndpointNames( + context.ContextOuterClass.EndPointName.Builder builderForValue) { + if (endpointNamesBuilder_ == null) { + ensureEndpointNamesIsMutable(); + endpointNames_.add(builderForValue.build()); + onChanged(); } else { - return event_ == null ? - context.ContextOuterClass.Event.getDefaultInstance() : event_; + endpointNamesBuilder_.addMessage(builderForValue.build()); } + return this; } /** - * <code>.context.Event event = 1;</code> + * <code>repeated .context.EndPointName endpoint_names = 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(), - getParentForChildren(), - isClean()); - event_ = null; + public Builder addEndpointNames( + int index, context.ContextOuterClass.EndPointName.Builder builderForValue) { + if (endpointNamesBuilder_ == null) { + ensureEndpointNamesIsMutable(); + endpointNames_.add(index, builderForValue.build()); + onChanged(); + } else { + endpointNamesBuilder_.addMessage(index, builderForValue.build()); } - return eventBuilder_; - } - - private context.ContextOuterClass.ConnectionId connectionId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> connectionIdBuilder_; - /** - * <code>.context.ConnectionId connection_id = 2;</code> - * @return Whether the connectionId field is set. - */ - public boolean hasConnectionId() { - return connectionIdBuilder_ != null || connectionId_ != null; + return this; } /** - * <code>.context.ConnectionId connection_id = 2;</code> - * @return The connectionId. + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public context.ContextOuterClass.ConnectionId getConnectionId() { - if (connectionIdBuilder_ == null) { - return connectionId_ == null ? context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; + public Builder addAllEndpointNames( + java.lang.Iterable<? extends context.ContextOuterClass.EndPointName> values) { + if (endpointNamesBuilder_ == null) { + ensureEndpointNamesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, endpointNames_); + onChanged(); } else { - return connectionIdBuilder_.getMessage(); + endpointNamesBuilder_.addAllMessages(values); } + return this; } /** - * <code>.context.ConnectionId connection_id = 2;</code> + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public Builder setConnectionId(context.ContextOuterClass.ConnectionId value) { - if (connectionIdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - connectionId_ = value; + public Builder clearEndpointNames() { + if (endpointNamesBuilder_ == null) { + endpointNames_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { - connectionIdBuilder_.setMessage(value); + endpointNamesBuilder_.clear(); } - return this; } /** - * <code>.context.ConnectionId connection_id = 2;</code> + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public Builder setConnectionId( - context.ContextOuterClass.ConnectionId.Builder builderForValue) { - if (connectionIdBuilder_ == null) { - connectionId_ = builderForValue.build(); + public Builder removeEndpointNames(int index) { + if (endpointNamesBuilder_ == null) { + ensureEndpointNamesIsMutable(); + endpointNames_.remove(index); onChanged(); } else { - connectionIdBuilder_.setMessage(builderForValue.build()); + endpointNamesBuilder_.remove(index); } - return this; } /** - * <code>.context.ConnectionId connection_id = 2;</code> + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public Builder mergeConnectionId(context.ContextOuterClass.ConnectionId value) { - if (connectionIdBuilder_ == null) { - if (connectionId_ != null) { - connectionId_ = - context.ContextOuterClass.ConnectionId.newBuilder(connectionId_).mergeFrom(value).buildPartial(); - } else { - connectionId_ = value; - } - onChanged(); - } else { - connectionIdBuilder_.mergeFrom(value); + public context.ContextOuterClass.EndPointName.Builder getEndpointNamesBuilder( + int index) { + return getEndpointNamesFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .context.EndPointName endpoint_names = 1;</code> + */ + public context.ContextOuterClass.EndPointNameOrBuilder getEndpointNamesOrBuilder( + int index) { + if (endpointNamesBuilder_ == null) { + return endpointNames_.get(index); } else { + return endpointNamesBuilder_.getMessageOrBuilder(index); } - - return this; } /** - * <code>.context.ConnectionId connection_id = 2;</code> + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public Builder clearConnectionId() { - if (connectionIdBuilder_ == null) { - connectionId_ = null; - onChanged(); + public java.util.List<? extends context.ContextOuterClass.EndPointNameOrBuilder> + getEndpointNamesOrBuilderList() { + if (endpointNamesBuilder_ != null) { + return endpointNamesBuilder_.getMessageOrBuilderList(); } else { - connectionId_ = null; - connectionIdBuilder_ = null; + return java.util.Collections.unmodifiableList(endpointNames_); } - - return this; } /** - * <code>.context.ConnectionId connection_id = 2;</code> + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public context.ContextOuterClass.ConnectionId.Builder getConnectionIdBuilder() { - - onChanged(); - return getConnectionIdFieldBuilder().getBuilder(); + public context.ContextOuterClass.EndPointName.Builder addEndpointNamesBuilder() { + return getEndpointNamesFieldBuilder().addBuilder( + context.ContextOuterClass.EndPointName.getDefaultInstance()); } /** - * <code>.context.ConnectionId connection_id = 2;</code> + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder() { - if (connectionIdBuilder_ != null) { - return connectionIdBuilder_.getMessageOrBuilder(); - } else { - return connectionId_ == null ? - context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; - } + public context.ContextOuterClass.EndPointName.Builder addEndpointNamesBuilder( + int index) { + return getEndpointNamesFieldBuilder().addBuilder( + index, context.ContextOuterClass.EndPointName.getDefaultInstance()); } /** - * <code>.context.ConnectionId connection_id = 2;</code> + * <code>repeated .context.EndPointName endpoint_names = 1;</code> */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> - getConnectionIdFieldBuilder() { - if (connectionIdBuilder_ == null) { - connectionIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder>( - getConnectionId(), + public java.util.List<context.ContextOuterClass.EndPointName.Builder> + getEndpointNamesBuilderList() { + return getEndpointNamesFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointName, context.ContextOuterClass.EndPointName.Builder, context.ContextOuterClass.EndPointNameOrBuilder> + getEndpointNamesFieldBuilder() { + if (endpointNamesBuilder_ == null) { + endpointNamesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointName, context.ContextOuterClass.EndPointName.Builder, context.ContextOuterClass.EndPointNameOrBuilder>( + endpointNames_, + ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); - connectionId_ = null; + endpointNames_ = null; } - return connectionIdBuilder_; + return endpointNamesBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -46472,119 +58545,96 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ConnectionEvent) + // @@protoc_insertion_point(builder_scope:context.EndPointNameList) } - // @@protoc_insertion_point(class_scope:context.ConnectionEvent) - private static final context.ContextOuterClass.ConnectionEvent DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.EndPointNameList) + private static final context.ContextOuterClass.EndPointNameList DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ConnectionEvent(); + DEFAULT_INSTANCE = new context.ContextOuterClass.EndPointNameList(); } - public static context.ContextOuterClass.ConnectionEvent getDefaultInstance() { + public static context.ContextOuterClass.EndPointNameList getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ConnectionEvent> - PARSER = new com.google.protobuf.AbstractParser<ConnectionEvent>() { + private static final com.google.protobuf.Parser<EndPointNameList> + PARSER = new com.google.protobuf.AbstractParser<EndPointNameList>() { @java.lang.Override - public ConnectionEvent parsePartialFrom( + public EndPointNameList parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ConnectionEvent(input, extensionRegistry); + return new EndPointNameList(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ConnectionEvent> parser() { + public static com.google.protobuf.Parser<EndPointNameList> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ConnectionEvent> getParserForType() { + public com.google.protobuf.Parser<EndPointNameList> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ConnectionEvent getDefaultInstanceForType() { + public context.ContextOuterClass.EndPointNameList getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface EndPointIdOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.EndPointId) + public interface ConfigRule_CustomOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ConfigRule_Custom) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.TopologyId topology_id = 1;</code> - * @return Whether the topologyId field is set. - */ - boolean hasTopologyId(); - /** - * <code>.context.TopologyId topology_id = 1;</code> - * @return The topologyId. - */ - context.ContextOuterClass.TopologyId getTopologyId(); - /** - * <code>.context.TopologyId topology_id = 1;</code> - */ - context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder(); - - /** - * <code>.context.DeviceId device_id = 2;</code> - * @return Whether the deviceId field is set. - */ - boolean hasDeviceId(); - /** - * <code>.context.DeviceId device_id = 2;</code> - * @return The deviceId. + * <code>string resource_key = 1;</code> + * @return The resourceKey. */ - context.ContextOuterClass.DeviceId getDeviceId(); + java.lang.String getResourceKey(); /** - * <code>.context.DeviceId device_id = 2;</code> + * <code>string resource_key = 1;</code> + * @return The bytes for resourceKey. */ - context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder(); + com.google.protobuf.ByteString + getResourceKeyBytes(); /** - * <code>.context.Uuid endpoint_uuid = 3;</code> - * @return Whether the endpointUuid field is set. - */ - boolean hasEndpointUuid(); - /** - * <code>.context.Uuid endpoint_uuid = 3;</code> - * @return The endpointUuid. + * <code>string resource_value = 2;</code> + * @return The resourceValue. */ - context.ContextOuterClass.Uuid getEndpointUuid(); + java.lang.String getResourceValue(); /** - * <code>.context.Uuid endpoint_uuid = 3;</code> + * <code>string resource_value = 2;</code> + * @return The bytes for resourceValue. */ - context.ContextOuterClass.UuidOrBuilder getEndpointUuidOrBuilder(); + com.google.protobuf.ByteString + getResourceValueBytes(); } /** - * <pre> - * ----- Endpoint ------------------------------------------------------------------------------------------------------ - * </pre> - * - * Protobuf type {@code context.EndPointId} + * Protobuf type {@code context.ConfigRule_Custom} */ - public static final class EndPointId extends + public static final class ConfigRule_Custom extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.EndPointId) - EndPointIdOrBuilder { + // @@protoc_insertion_point(message_implements:context.ConfigRule_Custom) + ConfigRule_CustomOrBuilder { private static final long serialVersionUID = 0L; - // Use EndPointId.newBuilder() to construct. - private EndPointId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ConfigRule_Custom.newBuilder() to construct. + private ConfigRule_Custom(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private EndPointId() { + private ConfigRule_Custom() { + resourceKey_ = ""; + resourceValue_ = ""; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new EndPointId(); + return new ConfigRule_Custom(); } @java.lang.Override @@ -46592,7 +58642,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private EndPointId( + private ConfigRule_Custom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -46611,42 +58661,15 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.TopologyId.Builder subBuilder = null; - if (topologyId_ != null) { - subBuilder = topologyId_.toBuilder(); - } - topologyId_ = input.readMessage(context.ContextOuterClass.TopologyId.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(topologyId_); - topologyId_ = subBuilder.buildPartial(); - } + java.lang.String s = input.readStringRequireUtf8(); + resourceKey_ = s; break; } case 18: { - context.ContextOuterClass.DeviceId.Builder subBuilder = null; - if (deviceId_ != null) { - subBuilder = deviceId_.toBuilder(); - } - deviceId_ = input.readMessage(context.ContextOuterClass.DeviceId.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(deviceId_); - deviceId_ = subBuilder.buildPartial(); - } - - break; - } - case 26: { - context.ContextOuterClass.Uuid.Builder subBuilder = null; - if (endpointUuid_ != null) { - subBuilder = endpointUuid_.toBuilder(); - } - endpointUuid_ = input.readMessage(context.ContextOuterClass.Uuid.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(endpointUuid_); - endpointUuid_ = subBuilder.buildPartial(); - } + java.lang.String s = input.readStringRequireUtf8(); + resourceValue_ = s; break; } default: { @@ -46670,93 +58693,91 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_EndPointId_descriptor; + return context.ContextOuterClass.internal_static_context_ConfigRule_Custom_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_EndPointId_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConfigRule_Custom_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.EndPointId.class, context.ContextOuterClass.EndPointId.Builder.class); - } - - public static final int TOPOLOGY_ID_FIELD_NUMBER = 1; - private context.ContextOuterClass.TopologyId topologyId_; - /** - * <code>.context.TopologyId topology_id = 1;</code> - * @return Whether the topologyId field is set. - */ - @java.lang.Override - public boolean hasTopologyId() { - return topologyId_ != null; - } - /** - * <code>.context.TopologyId topology_id = 1;</code> - * @return The topologyId. - */ - @java.lang.Override - public context.ContextOuterClass.TopologyId getTopologyId() { - return topologyId_ == null ? context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_; - } - /** - * <code>.context.TopologyId topology_id = 1;</code> - */ - @java.lang.Override - public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder() { - return getTopologyId(); + context.ContextOuterClass.ConfigRule_Custom.class, context.ContextOuterClass.ConfigRule_Custom.Builder.class); } - public static final int DEVICE_ID_FIELD_NUMBER = 2; - private context.ContextOuterClass.DeviceId deviceId_; - /** - * <code>.context.DeviceId device_id = 2;</code> - * @return Whether the deviceId field is set. - */ - @java.lang.Override - public boolean hasDeviceId() { - return deviceId_ != null; - } + public static final int RESOURCE_KEY_FIELD_NUMBER = 1; + private volatile java.lang.Object resourceKey_; /** - * <code>.context.DeviceId device_id = 2;</code> - * @return The deviceId. + * <code>string resource_key = 1;</code> + * @return The resourceKey. */ @java.lang.Override - public context.ContextOuterClass.DeviceId getDeviceId() { - return deviceId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; + public java.lang.String getResourceKey() { + java.lang.Object ref = resourceKey_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + resourceKey_ = s; + return s; + } } /** - * <code>.context.DeviceId device_id = 2;</code> + * <code>string resource_key = 1;</code> + * @return The bytes for resourceKey. */ @java.lang.Override - public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder() { - return getDeviceId(); + public com.google.protobuf.ByteString + getResourceKeyBytes() { + java.lang.Object ref = resourceKey_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + resourceKey_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } - public static final int ENDPOINT_UUID_FIELD_NUMBER = 3; - private context.ContextOuterClass.Uuid endpointUuid_; - /** - * <code>.context.Uuid endpoint_uuid = 3;</code> - * @return Whether the endpointUuid field is set. - */ - @java.lang.Override - public boolean hasEndpointUuid() { - return endpointUuid_ != null; - } + public static final int RESOURCE_VALUE_FIELD_NUMBER = 2; + private volatile java.lang.Object resourceValue_; /** - * <code>.context.Uuid endpoint_uuid = 3;</code> - * @return The endpointUuid. + * <code>string resource_value = 2;</code> + * @return The resourceValue. */ @java.lang.Override - public context.ContextOuterClass.Uuid getEndpointUuid() { - return endpointUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : endpointUuid_; + public java.lang.String getResourceValue() { + java.lang.Object ref = resourceValue_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + resourceValue_ = s; + return s; + } } /** - * <code>.context.Uuid endpoint_uuid = 3;</code> + * <code>string resource_value = 2;</code> + * @return The bytes for resourceValue. */ @java.lang.Override - public context.ContextOuterClass.UuidOrBuilder getEndpointUuidOrBuilder() { - return getEndpointUuid(); + public com.google.protobuf.ByteString + getResourceValueBytes() { + java.lang.Object ref = resourceValue_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + resourceValue_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } private byte memoizedIsInitialized = -1; @@ -46773,14 +58794,11 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (topologyId_ != null) { - output.writeMessage(1, getTopologyId()); - } - if (deviceId_ != null) { - output.writeMessage(2, getDeviceId()); + if (!getResourceKeyBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, resourceKey_); } - if (endpointUuid_ != null) { - output.writeMessage(3, getEndpointUuid()); + if (!getResourceValueBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, resourceValue_); } unknownFields.writeTo(output); } @@ -46791,17 +58809,11 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (topologyId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getTopologyId()); - } - if (deviceId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, getDeviceId()); + if (!getResourceKeyBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, resourceKey_); } - if (endpointUuid_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(3, getEndpointUuid()); + if (!getResourceValueBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, resourceValue_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -46813,26 +58825,15 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.EndPointId)) { + if (!(obj instanceof context.ContextOuterClass.ConfigRule_Custom)) { return super.equals(obj); } - context.ContextOuterClass.EndPointId other = (context.ContextOuterClass.EndPointId) obj; + context.ContextOuterClass.ConfigRule_Custom other = (context.ContextOuterClass.ConfigRule_Custom) obj; - if (hasTopologyId() != other.hasTopologyId()) return false; - if (hasTopologyId()) { - if (!getTopologyId() - .equals(other.getTopologyId())) return false; - } - if (hasDeviceId() != other.hasDeviceId()) return false; - if (hasDeviceId()) { - if (!getDeviceId() - .equals(other.getDeviceId())) return false; - } - if (hasEndpointUuid() != other.hasEndpointUuid()) return false; - if (hasEndpointUuid()) { - if (!getEndpointUuid() - .equals(other.getEndpointUuid())) return false; - } + if (!getResourceKey() + .equals(other.getResourceKey())) return false; + if (!getResourceValue() + .equals(other.getResourceValue())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -46844,86 +58845,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasTopologyId()) { - hash = (37 * hash) + TOPOLOGY_ID_FIELD_NUMBER; - hash = (53 * hash) + getTopologyId().hashCode(); - } - if (hasDeviceId()) { - hash = (37 * hash) + DEVICE_ID_FIELD_NUMBER; - hash = (53 * hash) + getDeviceId().hashCode(); - } - if (hasEndpointUuid()) { - hash = (37 * hash) + ENDPOINT_UUID_FIELD_NUMBER; - hash = (53 * hash) + getEndpointUuid().hashCode(); - } + hash = (37 * hash) + RESOURCE_KEY_FIELD_NUMBER; + hash = (53 * hash) + getResourceKey().hashCode(); + hash = (37 * hash) + RESOURCE_VALUE_FIELD_NUMBER; + hash = (53 * hash) + getResourceValue().hashCode(); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.EndPointId parseFrom( + public static context.ContextOuterClass.ConfigRule_Custom parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.EndPointId parseFrom( + public static context.ContextOuterClass.ConfigRule_Custom parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.EndPointId parseFrom( + public static context.ContextOuterClass.ConfigRule_Custom parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.EndPointId parseFrom( + public static context.ContextOuterClass.ConfigRule_Custom parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.EndPointId parseFrom(byte[] data) + public static context.ContextOuterClass.ConfigRule_Custom parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.EndPointId parseFrom( + public static context.ContextOuterClass.ConfigRule_Custom parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.EndPointId parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConfigRule_Custom parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.EndPointId parseFrom( + public static context.ContextOuterClass.ConfigRule_Custom 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 context.ContextOuterClass.EndPointId parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConfigRule_Custom parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.EndPointId parseDelimitedFrom( + public static context.ContextOuterClass.ConfigRule_Custom 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 context.ContextOuterClass.EndPointId parseFrom( + public static context.ContextOuterClass.ConfigRule_Custom parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.EndPointId parseFrom( + public static context.ContextOuterClass.ConfigRule_Custom parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -46936,7 +58929,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.EndPointId prototype) { + public static Builder newBuilder(context.ContextOuterClass.ConfigRule_Custom prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -46952,30 +58945,26 @@ public final class ContextOuterClass { return builder; } /** - * <pre> - * ----- Endpoint ------------------------------------------------------------------------------------------------------ - * </pre> - * - * Protobuf type {@code context.EndPointId} + * Protobuf type {@code context.ConfigRule_Custom} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.EndPointId) - context.ContextOuterClass.EndPointIdOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ConfigRule_Custom) + context.ContextOuterClass.ConfigRule_CustomOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_EndPointId_descriptor; + return context.ContextOuterClass.internal_static_context_ConfigRule_Custom_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_EndPointId_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConfigRule_Custom_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.EndPointId.class, context.ContextOuterClass.EndPointId.Builder.class); + context.ContextOuterClass.ConfigRule_Custom.class, context.ContextOuterClass.ConfigRule_Custom.Builder.class); } - // Construct using context.ContextOuterClass.EndPointId.newBuilder() + // Construct using context.ContextOuterClass.ConfigRule_Custom.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -46993,41 +58982,27 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - if (topologyIdBuilder_ == null) { - topologyId_ = null; - } else { - topologyId_ = null; - topologyIdBuilder_ = null; - } - if (deviceIdBuilder_ == null) { - deviceId_ = null; - } else { - deviceId_ = null; - deviceIdBuilder_ = null; - } - if (endpointUuidBuilder_ == null) { - endpointUuid_ = null; - } else { - endpointUuid_ = null; - endpointUuidBuilder_ = null; - } + resourceKey_ = ""; + + resourceValue_ = ""; + return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_EndPointId_descriptor; + return context.ContextOuterClass.internal_static_context_ConfigRule_Custom_descriptor; } @java.lang.Override - public context.ContextOuterClass.EndPointId getDefaultInstanceForType() { - return context.ContextOuterClass.EndPointId.getDefaultInstance(); + public context.ContextOuterClass.ConfigRule_Custom getDefaultInstanceForType() { + return context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.EndPointId build() { - context.ContextOuterClass.EndPointId result = buildPartial(); + public context.ContextOuterClass.ConfigRule_Custom build() { + context.ContextOuterClass.ConfigRule_Custom result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -47035,23 +59010,10 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.EndPointId buildPartial() { - context.ContextOuterClass.EndPointId result = new context.ContextOuterClass.EndPointId(this); - if (topologyIdBuilder_ == null) { - result.topologyId_ = topologyId_; - } else { - result.topologyId_ = topologyIdBuilder_.build(); - } - if (deviceIdBuilder_ == null) { - result.deviceId_ = deviceId_; - } else { - result.deviceId_ = deviceIdBuilder_.build(); - } - if (endpointUuidBuilder_ == null) { - result.endpointUuid_ = endpointUuid_; - } else { - result.endpointUuid_ = endpointUuidBuilder_.build(); - } + public context.ContextOuterClass.ConfigRule_Custom buildPartial() { + context.ContextOuterClass.ConfigRule_Custom result = new context.ContextOuterClass.ConfigRule_Custom(this); + result.resourceKey_ = resourceKey_; + result.resourceValue_ = resourceValue_; onBuilt(); return result; } @@ -47090,24 +59052,23 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.EndPointId) { - return mergeFrom((context.ContextOuterClass.EndPointId)other); + if (other instanceof context.ContextOuterClass.ConfigRule_Custom) { + return mergeFrom((context.ContextOuterClass.ConfigRule_Custom)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.EndPointId other) { - if (other == context.ContextOuterClass.EndPointId.getDefaultInstance()) return this; - if (other.hasTopologyId()) { - mergeTopologyId(other.getTopologyId()); - } - if (other.hasDeviceId()) { - mergeDeviceId(other.getDeviceId()); + public Builder mergeFrom(context.ContextOuterClass.ConfigRule_Custom other) { + if (other == context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance()) return this; + if (!other.getResourceKey().isEmpty()) { + resourceKey_ = other.resourceKey_; + onChanged(); } - if (other.hasEndpointUuid()) { - mergeEndpointUuid(other.getEndpointUuid()); + if (!other.getResourceValue().isEmpty()) { + resourceValue_ = other.resourceValue_; + onChanged(); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -47124,11 +59085,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.EndPointId parsedMessage = null; + context.ContextOuterClass.ConfigRule_Custom parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.EndPointId) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ConfigRule_Custom) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -47138,361 +59099,156 @@ public final class ContextOuterClass { return this; } - private context.ContextOuterClass.TopologyId topologyId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> topologyIdBuilder_; - /** - * <code>.context.TopologyId topology_id = 1;</code> - * @return Whether the topologyId field is set. - */ - public boolean hasTopologyId() { - return topologyIdBuilder_ != null || topologyId_ != null; - } - /** - * <code>.context.TopologyId topology_id = 1;</code> - * @return The topologyId. - */ - public context.ContextOuterClass.TopologyId getTopologyId() { - if (topologyIdBuilder_ == null) { - return topologyId_ == null ? context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_; - } else { - return topologyIdBuilder_.getMessage(); - } - } - /** - * <code>.context.TopologyId topology_id = 1;</code> - */ - public Builder setTopologyId(context.ContextOuterClass.TopologyId value) { - if (topologyIdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - topologyId_ = value; - onChanged(); - } else { - topologyIdBuilder_.setMessage(value); - } - - return this; - } + private java.lang.Object resourceKey_ = ""; /** - * <code>.context.TopologyId topology_id = 1;</code> + * <code>string resource_key = 1;</code> + * @return The resourceKey. */ - public Builder setTopologyId( - context.ContextOuterClass.TopologyId.Builder builderForValue) { - if (topologyIdBuilder_ == null) { - topologyId_ = builderForValue.build(); - onChanged(); + public java.lang.String getResourceKey() { + java.lang.Object ref = resourceKey_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + resourceKey_ = s; + return s; } else { - topologyIdBuilder_.setMessage(builderForValue.build()); + return (java.lang.String) ref; } - - return this; } /** - * <code>.context.TopologyId topology_id = 1;</code> + * <code>string resource_key = 1;</code> + * @return The bytes for resourceKey. */ - public Builder mergeTopologyId(context.ContextOuterClass.TopologyId value) { - if (topologyIdBuilder_ == null) { - if (topologyId_ != null) { - topologyId_ = - context.ContextOuterClass.TopologyId.newBuilder(topologyId_).mergeFrom(value).buildPartial(); - } else { - topologyId_ = value; - } - onChanged(); + public com.google.protobuf.ByteString + getResourceKeyBytes() { + java.lang.Object ref = resourceKey_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + resourceKey_ = b; + return b; } else { - topologyIdBuilder_.mergeFrom(value); + return (com.google.protobuf.ByteString) ref; } - - return this; } /** - * <code>.context.TopologyId topology_id = 1;</code> + * <code>string resource_key = 1;</code> + * @param value The resourceKey to set. + * @return This builder for chaining. */ - public Builder clearTopologyId() { - if (topologyIdBuilder_ == null) { - topologyId_ = null; - onChanged(); - } else { - topologyId_ = null; - topologyIdBuilder_ = null; - } - + public Builder setResourceKey( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + resourceKey_ = value; + onChanged(); return this; } /** - * <code>.context.TopologyId topology_id = 1;</code> + * <code>string resource_key = 1;</code> + * @return This builder for chaining. */ - public context.ContextOuterClass.TopologyId.Builder getTopologyIdBuilder() { + public Builder clearResourceKey() { + resourceKey_ = getDefaultInstance().getResourceKey(); onChanged(); - return getTopologyIdFieldBuilder().getBuilder(); - } - /** - * <code>.context.TopologyId topology_id = 1;</code> - */ - public context.ContextOuterClass.TopologyIdOrBuilder getTopologyIdOrBuilder() { - if (topologyIdBuilder_ != null) { - return topologyIdBuilder_.getMessageOrBuilder(); - } else { - return topologyId_ == null ? - context.ContextOuterClass.TopologyId.getDefaultInstance() : topologyId_; - } - } - /** - * <code>.context.TopologyId topology_id = 1;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder> - getTopologyIdFieldBuilder() { - if (topologyIdBuilder_ == null) { - topologyIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyId.Builder, context.ContextOuterClass.TopologyIdOrBuilder>( - getTopologyId(), - getParentForChildren(), - isClean()); - topologyId_ = null; - } - return topologyIdBuilder_; - } - - private context.ContextOuterClass.DeviceId deviceId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> deviceIdBuilder_; - /** - * <code>.context.DeviceId device_id = 2;</code> - * @return Whether the deviceId field is set. - */ - public boolean hasDeviceId() { - return deviceIdBuilder_ != null || deviceId_ != null; - } - /** - * <code>.context.DeviceId device_id = 2;</code> - * @return The deviceId. - */ - public context.ContextOuterClass.DeviceId getDeviceId() { - if (deviceIdBuilder_ == null) { - return deviceId_ == null ? context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; - } else { - return deviceIdBuilder_.getMessage(); - } - } - /** - * <code>.context.DeviceId device_id = 2;</code> - */ - public Builder setDeviceId(context.ContextOuterClass.DeviceId value) { - if (deviceIdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - deviceId_ = value; - onChanged(); - } else { - deviceIdBuilder_.setMessage(value); - } - - return this; - } - /** - * <code>.context.DeviceId device_id = 2;</code> - */ - public Builder setDeviceId( - context.ContextOuterClass.DeviceId.Builder builderForValue) { - if (deviceIdBuilder_ == null) { - deviceId_ = builderForValue.build(); - onChanged(); - } else { - deviceIdBuilder_.setMessage(builderForValue.build()); - } - - return this; - } - /** - * <code>.context.DeviceId device_id = 2;</code> - */ - public Builder mergeDeviceId(context.ContextOuterClass.DeviceId value) { - if (deviceIdBuilder_ == null) { - if (deviceId_ != null) { - deviceId_ = - context.ContextOuterClass.DeviceId.newBuilder(deviceId_).mergeFrom(value).buildPartial(); - } else { - deviceId_ = value; - } - onChanged(); - } else { - deviceIdBuilder_.mergeFrom(value); - } - - return this; - } - /** - * <code>.context.DeviceId device_id = 2;</code> - */ - public Builder clearDeviceId() { - if (deviceIdBuilder_ == null) { - deviceId_ = null; - onChanged(); - } else { - deviceId_ = null; - deviceIdBuilder_ = null; - } - return this; } /** - * <code>.context.DeviceId device_id = 2;</code> + * <code>string resource_key = 1;</code> + * @param value The bytes for resourceKey to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.DeviceId.Builder getDeviceIdBuilder() { + public Builder setResourceKeyBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + resourceKey_ = value; onChanged(); - return getDeviceIdFieldBuilder().getBuilder(); - } - /** - * <code>.context.DeviceId device_id = 2;</code> - */ - public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdOrBuilder() { - if (deviceIdBuilder_ != null) { - return deviceIdBuilder_.getMessageOrBuilder(); - } else { - return deviceId_ == null ? - context.ContextOuterClass.DeviceId.getDefaultInstance() : deviceId_; - } - } - /** - * <code>.context.DeviceId device_id = 2;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> - getDeviceIdFieldBuilder() { - if (deviceIdBuilder_ == null) { - deviceIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder>( - getDeviceId(), - getParentForChildren(), - isClean()); - deviceId_ = null; - } - return deviceIdBuilder_; - } - - private context.ContextOuterClass.Uuid endpointUuid_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> endpointUuidBuilder_; - /** - * <code>.context.Uuid endpoint_uuid = 3;</code> - * @return Whether the endpointUuid field is set. - */ - public boolean hasEndpointUuid() { - return endpointUuidBuilder_ != null || endpointUuid_ != null; - } - /** - * <code>.context.Uuid endpoint_uuid = 3;</code> - * @return The endpointUuid. - */ - public context.ContextOuterClass.Uuid getEndpointUuid() { - if (endpointUuidBuilder_ == null) { - return endpointUuid_ == null ? context.ContextOuterClass.Uuid.getDefaultInstance() : endpointUuid_; - } else { - return endpointUuidBuilder_.getMessage(); - } - } - /** - * <code>.context.Uuid endpoint_uuid = 3;</code> - */ - public Builder setEndpointUuid(context.ContextOuterClass.Uuid value) { - if (endpointUuidBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - endpointUuid_ = value; - onChanged(); - } else { - endpointUuidBuilder_.setMessage(value); - } - return this; } - /** - * <code>.context.Uuid endpoint_uuid = 3;</code> - */ - public Builder setEndpointUuid( - context.ContextOuterClass.Uuid.Builder builderForValue) { - if (endpointUuidBuilder_ == null) { - endpointUuid_ = builderForValue.build(); - onChanged(); - } else { - endpointUuidBuilder_.setMessage(builderForValue.build()); - } - return this; - } + private java.lang.Object resourceValue_ = ""; /** - * <code>.context.Uuid endpoint_uuid = 3;</code> - */ - public Builder mergeEndpointUuid(context.ContextOuterClass.Uuid value) { - if (endpointUuidBuilder_ == null) { - if (endpointUuid_ != null) { - endpointUuid_ = - context.ContextOuterClass.Uuid.newBuilder(endpointUuid_).mergeFrom(value).buildPartial(); - } else { - endpointUuid_ = value; - } - onChanged(); + * <code>string resource_value = 2;</code> + * @return The resourceValue. + */ + public java.lang.String getResourceValue() { + java.lang.Object ref = resourceValue_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + resourceValue_ = s; + return s; } else { - endpointUuidBuilder_.mergeFrom(value); + return (java.lang.String) ref; } - - return this; } /** - * <code>.context.Uuid endpoint_uuid = 3;</code> + * <code>string resource_value = 2;</code> + * @return The bytes for resourceValue. */ - public Builder clearEndpointUuid() { - if (endpointUuidBuilder_ == null) { - endpointUuid_ = null; - onChanged(); + public com.google.protobuf.ByteString + getResourceValueBytes() { + java.lang.Object ref = resourceValue_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + resourceValue_ = b; + return b; } else { - endpointUuid_ = null; - endpointUuidBuilder_ = null; + return (com.google.protobuf.ByteString) ref; } - - return this; } /** - * <code>.context.Uuid endpoint_uuid = 3;</code> + * <code>string resource_value = 2;</code> + * @param value The resourceValue to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.Uuid.Builder getEndpointUuidBuilder() { - + public Builder setResourceValue( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + resourceValue_ = value; onChanged(); - return getEndpointUuidFieldBuilder().getBuilder(); + return this; } /** - * <code>.context.Uuid endpoint_uuid = 3;</code> + * <code>string resource_value = 2;</code> + * @return This builder for chaining. */ - public context.ContextOuterClass.UuidOrBuilder getEndpointUuidOrBuilder() { - if (endpointUuidBuilder_ != null) { - return endpointUuidBuilder_.getMessageOrBuilder(); - } else { - return endpointUuid_ == null ? - context.ContextOuterClass.Uuid.getDefaultInstance() : endpointUuid_; - } + public Builder clearResourceValue() { + + resourceValue_ = getDefaultInstance().getResourceValue(); + onChanged(); + return this; } /** - * <code>.context.Uuid endpoint_uuid = 3;</code> + * <code>string resource_value = 2;</code> + * @param value The bytes for resourceValue to set. + * @return This builder for chaining. */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder> - getEndpointUuidFieldBuilder() { - if (endpointUuidBuilder_ == null) { - endpointUuidBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Uuid, context.ContextOuterClass.Uuid.Builder, context.ContextOuterClass.UuidOrBuilder>( - getEndpointUuid(), - getParentForChildren(), - isClean()); - endpointUuid_ = null; - } - return endpointUuidBuilder_; + public Builder setResourceValueBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + resourceValue_ = value; + onChanged(); + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -47507,48 +59263,48 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.EndPointId) + // @@protoc_insertion_point(builder_scope:context.ConfigRule_Custom) } - // @@protoc_insertion_point(class_scope:context.EndPointId) - private static final context.ContextOuterClass.EndPointId DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ConfigRule_Custom) + private static final context.ContextOuterClass.ConfigRule_Custom DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.EndPointId(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ConfigRule_Custom(); } - public static context.ContextOuterClass.EndPointId getDefaultInstance() { + public static context.ContextOuterClass.ConfigRule_Custom getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<EndPointId> - PARSER = new com.google.protobuf.AbstractParser<EndPointId>() { + private static final com.google.protobuf.Parser<ConfigRule_Custom> + PARSER = new com.google.protobuf.AbstractParser<ConfigRule_Custom>() { @java.lang.Override - public EndPointId parsePartialFrom( + public ConfigRule_Custom parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new EndPointId(input, extensionRegistry); + return new ConfigRule_Custom(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<EndPointId> parser() { + public static com.google.protobuf.Parser<ConfigRule_Custom> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<EndPointId> getParserForType() { + public com.google.protobuf.Parser<ConfigRule_Custom> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.EndPointId getDefaultInstanceForType() { + public context.ContextOuterClass.ConfigRule_Custom getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface EndPointOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.EndPoint) + public interface ConfigRule_ACLOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ConfigRule_ACL) com.google.protobuf.MessageOrBuilder { /** @@ -47567,83 +59323,40 @@ public final class ContextOuterClass { context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder(); /** - * <code>string endpoint_type = 2;</code> - * @return The endpointType. - */ - java.lang.String getEndpointType(); - /** - * <code>string endpoint_type = 2;</code> - * @return The bytes for endpointType. - */ - com.google.protobuf.ByteString - getEndpointTypeBytes(); - - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 3;</code> - * @return A list containing the kpiSampleTypes. - */ - java.util.List<kpi_sample_types.KpiSampleTypes.KpiSampleType> getKpiSampleTypesList(); - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 3;</code> - * @return The count of kpiSampleTypes. - */ - int getKpiSampleTypesCount(); - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 3;</code> - * @param index The index of the element to return. - * @return The kpiSampleTypes at the given index. - */ - kpi_sample_types.KpiSampleTypes.KpiSampleType getKpiSampleTypes(int index); - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 3;</code> - * @return A list containing the enum numeric values on the wire for kpiSampleTypes. - */ - java.util.List<java.lang.Integer> - getKpiSampleTypesValueList(); - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 3;</code> - * @param index The index of the value to return. - * @return The enum numeric value on the wire of kpiSampleTypes at the given index. - */ - int getKpiSampleTypesValue(int index); - - /** - * <code>.context.Location endpoint_location = 4;</code> - * @return Whether the endpointLocation field is set. + * <code>.acl.AclRuleSet rule_set = 2;</code> + * @return Whether the ruleSet field is set. */ - boolean hasEndpointLocation(); + boolean hasRuleSet(); /** - * <code>.context.Location endpoint_location = 4;</code> - * @return The endpointLocation. + * <code>.acl.AclRuleSet rule_set = 2;</code> + * @return The ruleSet. */ - context.ContextOuterClass.Location getEndpointLocation(); + acl.Acl.AclRuleSet getRuleSet(); /** - * <code>.context.Location endpoint_location = 4;</code> + * <code>.acl.AclRuleSet rule_set = 2;</code> */ - context.ContextOuterClass.LocationOrBuilder getEndpointLocationOrBuilder(); + acl.Acl.AclRuleSetOrBuilder getRuleSetOrBuilder(); } /** - * Protobuf type {@code context.EndPoint} + * Protobuf type {@code context.ConfigRule_ACL} */ - public static final class EndPoint extends + public static final class ConfigRule_ACL extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.EndPoint) - EndPointOrBuilder { + // @@protoc_insertion_point(message_implements:context.ConfigRule_ACL) + ConfigRule_ACLOrBuilder { private static final long serialVersionUID = 0L; - // Use EndPoint.newBuilder() to construct. - private EndPoint(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ConfigRule_ACL.newBuilder() to construct. + private ConfigRule_ACL(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private EndPoint() { - endpointType_ = ""; - kpiSampleTypes_ = java.util.Collections.emptyList(); + private ConfigRule_ACL() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new EndPoint(); + return new ConfigRule_ACL(); } @java.lang.Override @@ -47651,7 +59364,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private EndPoint( + private ConfigRule_ACL( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -47659,7 +59372,6 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } - int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -47684,43 +59396,14 @@ public final class ContextOuterClass { break; } case 18: { - java.lang.String s = input.readStringRequireUtf8(); - - endpointType_ = s; - break; - } - case 24: { - int rawValue = input.readEnum(); - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - kpiSampleTypes_ = new java.util.ArrayList<java.lang.Integer>(); - mutable_bitField0_ |= 0x00000001; - } - kpiSampleTypes_.add(rawValue); - break; - } - case 26: { - int length = input.readRawVarint32(); - int oldLimit = input.pushLimit(length); - while(input.getBytesUntilLimit() > 0) { - int rawValue = input.readEnum(); - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - kpiSampleTypes_ = new java.util.ArrayList<java.lang.Integer>(); - mutable_bitField0_ |= 0x00000001; - } - kpiSampleTypes_.add(rawValue); - } - input.popLimit(oldLimit); - break; - } - case 34: { - context.ContextOuterClass.Location.Builder subBuilder = null; - if (endpointLocation_ != null) { - subBuilder = endpointLocation_.toBuilder(); + acl.Acl.AclRuleSet.Builder subBuilder = null; + if (ruleSet_ != null) { + subBuilder = ruleSet_.toBuilder(); } - endpointLocation_ = input.readMessage(context.ContextOuterClass.Location.parser(), extensionRegistry); + ruleSet_ = input.readMessage(acl.Acl.AclRuleSet.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(endpointLocation_); - endpointLocation_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(ruleSet_); + ruleSet_ = subBuilder.buildPartial(); } break; @@ -47740,24 +59423,21 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { - if (((mutable_bitField0_ & 0x00000001) != 0)) { - kpiSampleTypes_ = java.util.Collections.unmodifiableList(kpiSampleTypes_); - } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_EndPoint_descriptor; + return context.ContextOuterClass.internal_static_context_ConfigRule_ACL_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_EndPoint_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConfigRule_ACL_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.EndPoint.class, context.ContextOuterClass.EndPoint.Builder.class); + context.ContextOuterClass.ConfigRule_ACL.class, context.ContextOuterClass.ConfigRule_ACL.Builder.class); } public static final int ENDPOINT_ID_FIELD_NUMBER = 1; @@ -47786,126 +59466,30 @@ public final class ContextOuterClass { return getEndpointId(); } - public static final int ENDPOINT_TYPE_FIELD_NUMBER = 2; - private volatile java.lang.Object endpointType_; - /** - * <code>string endpoint_type = 2;</code> - * @return The endpointType. - */ - @java.lang.Override - public java.lang.String getEndpointType() { - java.lang.Object ref = endpointType_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - endpointType_ = s; - return s; - } - } - /** - * <code>string endpoint_type = 2;</code> - * @return The bytes for endpointType. - */ - @java.lang.Override - public com.google.protobuf.ByteString - getEndpointTypeBytes() { - java.lang.Object ref = endpointType_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - endpointType_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - - public static final int KPI_SAMPLE_TYPES_FIELD_NUMBER = 3; - private java.util.List<java.lang.Integer> kpiSampleTypes_; - private static final com.google.protobuf.Internal.ListAdapter.Converter< - java.lang.Integer, kpi_sample_types.KpiSampleTypes.KpiSampleType> kpiSampleTypes_converter_ = - new com.google.protobuf.Internal.ListAdapter.Converter< - java.lang.Integer, kpi_sample_types.KpiSampleTypes.KpiSampleType>() { - public kpi_sample_types.KpiSampleTypes.KpiSampleType convert(java.lang.Integer from) { - @SuppressWarnings("deprecation") - kpi_sample_types.KpiSampleTypes.KpiSampleType result = kpi_sample_types.KpiSampleTypes.KpiSampleType.valueOf(from); - return result == null ? kpi_sample_types.KpiSampleTypes.KpiSampleType.UNRECOGNIZED : result; - } - }; - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 3;</code> - * @return A list containing the kpiSampleTypes. - */ - @java.lang.Override - public java.util.List<kpi_sample_types.KpiSampleTypes.KpiSampleType> getKpiSampleTypesList() { - return new com.google.protobuf.Internal.ListAdapter< - java.lang.Integer, kpi_sample_types.KpiSampleTypes.KpiSampleType>(kpiSampleTypes_, kpiSampleTypes_converter_); - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 3;</code> - * @return The count of kpiSampleTypes. - */ - @java.lang.Override - public int getKpiSampleTypesCount() { - return kpiSampleTypes_.size(); - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 3;</code> - * @param index The index of the element to return. - * @return The kpiSampleTypes at the given index. - */ - @java.lang.Override - public kpi_sample_types.KpiSampleTypes.KpiSampleType getKpiSampleTypes(int index) { - return kpiSampleTypes_converter_.convert(kpiSampleTypes_.get(index)); - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 3;</code> - * @return A list containing the enum numeric values on the wire for kpiSampleTypes. - */ - @java.lang.Override - public java.util.List<java.lang.Integer> - getKpiSampleTypesValueList() { - return kpiSampleTypes_; - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 3;</code> - * @param index The index of the value to return. - * @return The enum numeric value on the wire of kpiSampleTypes at the given index. - */ - @java.lang.Override - public int getKpiSampleTypesValue(int index) { - return kpiSampleTypes_.get(index); - } - private int kpiSampleTypesMemoizedSerializedSize; - - public static final int ENDPOINT_LOCATION_FIELD_NUMBER = 4; - private context.ContextOuterClass.Location endpointLocation_; + public static final int RULE_SET_FIELD_NUMBER = 2; + private acl.Acl.AclRuleSet ruleSet_; /** - * <code>.context.Location endpoint_location = 4;</code> - * @return Whether the endpointLocation field is set. + * <code>.acl.AclRuleSet rule_set = 2;</code> + * @return Whether the ruleSet field is set. */ @java.lang.Override - public boolean hasEndpointLocation() { - return endpointLocation_ != null; + public boolean hasRuleSet() { + return ruleSet_ != null; } /** - * <code>.context.Location endpoint_location = 4;</code> - * @return The endpointLocation. + * <code>.acl.AclRuleSet rule_set = 2;</code> + * @return The ruleSet. */ @java.lang.Override - public context.ContextOuterClass.Location getEndpointLocation() { - return endpointLocation_ == null ? context.ContextOuterClass.Location.getDefaultInstance() : endpointLocation_; + public acl.Acl.AclRuleSet getRuleSet() { + return ruleSet_ == null ? acl.Acl.AclRuleSet.getDefaultInstance() : ruleSet_; } /** - * <code>.context.Location endpoint_location = 4;</code> + * <code>.acl.AclRuleSet rule_set = 2;</code> */ @java.lang.Override - public context.ContextOuterClass.LocationOrBuilder getEndpointLocationOrBuilder() { - return getEndpointLocation(); + public acl.Acl.AclRuleSetOrBuilder getRuleSetOrBuilder() { + return getRuleSet(); } private byte memoizedIsInitialized = -1; @@ -47922,22 +59506,11 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - getSerializedSize(); if (endpointId_ != null) { output.writeMessage(1, getEndpointId()); } - if (!getEndpointTypeBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, endpointType_); - } - if (getKpiSampleTypesList().size() > 0) { - output.writeUInt32NoTag(26); - output.writeUInt32NoTag(kpiSampleTypesMemoizedSerializedSize); - } - for (int i = 0; i < kpiSampleTypes_.size(); i++) { - output.writeEnumNoTag(kpiSampleTypes_.get(i)); - } - if (endpointLocation_ != null) { - output.writeMessage(4, getEndpointLocation()); + if (ruleSet_ != null) { + output.writeMessage(2, getRuleSet()); } unknownFields.writeTo(output); } @@ -47952,24 +59525,9 @@ public final class ContextOuterClass { size += com.google.protobuf.CodedOutputStream .computeMessageSize(1, getEndpointId()); } - if (!getEndpointTypeBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, endpointType_); - } - { - int dataSize = 0; - for (int i = 0; i < kpiSampleTypes_.size(); i++) { - dataSize += com.google.protobuf.CodedOutputStream - .computeEnumSizeNoTag(kpiSampleTypes_.get(i)); - } - size += dataSize; - if (!getKpiSampleTypesList().isEmpty()) { size += 1; - size += com.google.protobuf.CodedOutputStream - .computeUInt32SizeNoTag(dataSize); - }kpiSampleTypesMemoizedSerializedSize = dataSize; - } - if (endpointLocation_ != null) { + if (ruleSet_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(4, getEndpointLocation()); + .computeMessageSize(2, getRuleSet()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -47981,23 +59539,20 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.EndPoint)) { + if (!(obj instanceof context.ContextOuterClass.ConfigRule_ACL)) { return super.equals(obj); } - context.ContextOuterClass.EndPoint other = (context.ContextOuterClass.EndPoint) obj; + context.ContextOuterClass.ConfigRule_ACL other = (context.ContextOuterClass.ConfigRule_ACL) obj; if (hasEndpointId() != other.hasEndpointId()) return false; if (hasEndpointId()) { if (!getEndpointId() .equals(other.getEndpointId())) return false; } - if (!getEndpointType() - .equals(other.getEndpointType())) return false; - if (!kpiSampleTypes_.equals(other.kpiSampleTypes_)) return false; - if (hasEndpointLocation() != other.hasEndpointLocation()) return false; - if (hasEndpointLocation()) { - if (!getEndpointLocation() - .equals(other.getEndpointLocation())) return false; + if (hasRuleSet() != other.hasRuleSet()) return false; + if (hasRuleSet()) { + if (!getRuleSet() + .equals(other.getRuleSet())) return false; } if (!unknownFields.equals(other.unknownFields)) return false; return true; @@ -48014,84 +59569,78 @@ public final class ContextOuterClass { hash = (37 * hash) + ENDPOINT_ID_FIELD_NUMBER; hash = (53 * hash) + getEndpointId().hashCode(); } - hash = (37 * hash) + ENDPOINT_TYPE_FIELD_NUMBER; - hash = (53 * hash) + getEndpointType().hashCode(); - if (getKpiSampleTypesCount() > 0) { - hash = (37 * hash) + KPI_SAMPLE_TYPES_FIELD_NUMBER; - hash = (53 * hash) + kpiSampleTypes_.hashCode(); - } - if (hasEndpointLocation()) { - hash = (37 * hash) + ENDPOINT_LOCATION_FIELD_NUMBER; - hash = (53 * hash) + getEndpointLocation().hashCode(); + if (hasRuleSet()) { + hash = (37 * hash) + RULE_SET_FIELD_NUMBER; + hash = (53 * hash) + getRuleSet().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.EndPoint parseFrom( + public static context.ContextOuterClass.ConfigRule_ACL parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.EndPoint parseFrom( + public static context.ContextOuterClass.ConfigRule_ACL parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.EndPoint parseFrom( + public static context.ContextOuterClass.ConfigRule_ACL parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.EndPoint parseFrom( + public static context.ContextOuterClass.ConfigRule_ACL parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.EndPoint parseFrom(byte[] data) + public static context.ContextOuterClass.ConfigRule_ACL parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.EndPoint parseFrom( + public static context.ContextOuterClass.ConfigRule_ACL parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.EndPoint parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConfigRule_ACL parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.EndPoint parseFrom( + public static context.ContextOuterClass.ConfigRule_ACL 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 context.ContextOuterClass.EndPoint parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConfigRule_ACL parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.EndPoint parseDelimitedFrom( + public static context.ContextOuterClass.ConfigRule_ACL 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 context.ContextOuterClass.EndPoint parseFrom( + public static context.ContextOuterClass.ConfigRule_ACL parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.EndPoint parseFrom( + public static context.ContextOuterClass.ConfigRule_ACL parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -48104,7 +59653,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.EndPoint prototype) { + public static Builder newBuilder(context.ContextOuterClass.ConfigRule_ACL prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -48120,26 +59669,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.EndPoint} + * Protobuf type {@code context.ConfigRule_ACL} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.EndPoint) - context.ContextOuterClass.EndPointOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ConfigRule_ACL) + context.ContextOuterClass.ConfigRule_ACLOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_EndPoint_descriptor; + return context.ContextOuterClass.internal_static_context_ConfigRule_ACL_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_EndPoint_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConfigRule_ACL_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.EndPoint.class, context.ContextOuterClass.EndPoint.Builder.class); + context.ContextOuterClass.ConfigRule_ACL.class, context.ContextOuterClass.ConfigRule_ACL.Builder.class); } - // Construct using context.ContextOuterClass.EndPoint.newBuilder() + // Construct using context.ContextOuterClass.ConfigRule_ACL.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -48163,15 +59712,11 @@ public final class ContextOuterClass { endpointId_ = null; endpointIdBuilder_ = null; } - endpointType_ = ""; - - kpiSampleTypes_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - if (endpointLocationBuilder_ == null) { - endpointLocation_ = null; + if (ruleSetBuilder_ == null) { + ruleSet_ = null; } else { - endpointLocation_ = null; - endpointLocationBuilder_ = null; + ruleSet_ = null; + ruleSetBuilder_ = null; } return this; } @@ -48179,17 +59724,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_EndPoint_descriptor; + return context.ContextOuterClass.internal_static_context_ConfigRule_ACL_descriptor; } @java.lang.Override - public context.ContextOuterClass.EndPoint getDefaultInstanceForType() { - return context.ContextOuterClass.EndPoint.getDefaultInstance(); + public context.ContextOuterClass.ConfigRule_ACL getDefaultInstanceForType() { + return context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.EndPoint build() { - context.ContextOuterClass.EndPoint result = buildPartial(); + public context.ContextOuterClass.ConfigRule_ACL build() { + context.ContextOuterClass.ConfigRule_ACL result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -48197,24 +59742,17 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.EndPoint buildPartial() { - context.ContextOuterClass.EndPoint result = new context.ContextOuterClass.EndPoint(this); - int from_bitField0_ = bitField0_; + public context.ContextOuterClass.ConfigRule_ACL buildPartial() { + context.ContextOuterClass.ConfigRule_ACL result = new context.ContextOuterClass.ConfigRule_ACL(this); if (endpointIdBuilder_ == null) { result.endpointId_ = endpointId_; } else { result.endpointId_ = endpointIdBuilder_.build(); } - result.endpointType_ = endpointType_; - if (((bitField0_ & 0x00000001) != 0)) { - kpiSampleTypes_ = java.util.Collections.unmodifiableList(kpiSampleTypes_); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.kpiSampleTypes_ = kpiSampleTypes_; - if (endpointLocationBuilder_ == null) { - result.endpointLocation_ = endpointLocation_; + if (ruleSetBuilder_ == null) { + result.ruleSet_ = ruleSet_; } else { - result.endpointLocation_ = endpointLocationBuilder_.build(); + result.ruleSet_ = ruleSetBuilder_.build(); } onBuilt(); return result; @@ -48254,35 +59792,21 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.EndPoint) { - return mergeFrom((context.ContextOuterClass.EndPoint)other); + if (other instanceof context.ContextOuterClass.ConfigRule_ACL) { + return mergeFrom((context.ContextOuterClass.ConfigRule_ACL)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.EndPoint other) { - if (other == context.ContextOuterClass.EndPoint.getDefaultInstance()) return this; + public Builder mergeFrom(context.ContextOuterClass.ConfigRule_ACL other) { + if (other == context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance()) return this; if (other.hasEndpointId()) { mergeEndpointId(other.getEndpointId()); } - if (!other.getEndpointType().isEmpty()) { - endpointType_ = other.endpointType_; - onChanged(); - } - if (!other.kpiSampleTypes_.isEmpty()) { - if (kpiSampleTypes_.isEmpty()) { - kpiSampleTypes_ = other.kpiSampleTypes_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureKpiSampleTypesIsMutable(); - kpiSampleTypes_.addAll(other.kpiSampleTypes_); - } - onChanged(); - } - if (other.hasEndpointLocation()) { - mergeEndpointLocation(other.getEndpointLocation()); + if (other.hasRuleSet()) { + mergeRuleSet(other.getRuleSet()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -48299,11 +59823,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.EndPoint parsedMessage = null; + context.ContextOuterClass.ConfigRule_ACL parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.EndPoint) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ConfigRule_ACL) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -48312,7 +59836,6 @@ public final class ContextOuterClass { } return this; } - private int bitField0_; private context.ContextOuterClass.EndPointId endpointId_; private com.google.protobuf.SingleFieldBuilderV3< @@ -48433,339 +59956,123 @@ public final class ContextOuterClass { return endpointIdBuilder_; } - private java.lang.Object endpointType_ = ""; - /** - * <code>string endpoint_type = 2;</code> - * @return The endpointType. - */ - public java.lang.String getEndpointType() { - java.lang.Object ref = endpointType_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - endpointType_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - /** - * <code>string endpoint_type = 2;</code> - * @return The bytes for endpointType. - */ - public com.google.protobuf.ByteString - getEndpointTypeBytes() { - java.lang.Object ref = endpointType_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - endpointType_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - /** - * <code>string endpoint_type = 2;</code> - * @param value The endpointType to set. - * @return This builder for chaining. - */ - public Builder setEndpointType( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - endpointType_ = value; - onChanged(); - return this; - } - /** - * <code>string endpoint_type = 2;</code> - * @return This builder for chaining. - */ - public Builder clearEndpointType() { - - endpointType_ = getDefaultInstance().getEndpointType(); - onChanged(); - return this; - } - /** - * <code>string endpoint_type = 2;</code> - * @param value The bytes for endpointType to set. - * @return This builder for chaining. - */ - public Builder setEndpointTypeBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - endpointType_ = value; - onChanged(); - return this; - } - - private java.util.List<java.lang.Integer> kpiSampleTypes_ = - java.util.Collections.emptyList(); - private void ensureKpiSampleTypesIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - kpiSampleTypes_ = new java.util.ArrayList<java.lang.Integer>(kpiSampleTypes_); - bitField0_ |= 0x00000001; - } - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 3;</code> - * @return A list containing the kpiSampleTypes. - */ - public java.util.List<kpi_sample_types.KpiSampleTypes.KpiSampleType> getKpiSampleTypesList() { - return new com.google.protobuf.Internal.ListAdapter< - java.lang.Integer, kpi_sample_types.KpiSampleTypes.KpiSampleType>(kpiSampleTypes_, kpiSampleTypes_converter_); - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 3;</code> - * @return The count of kpiSampleTypes. - */ - public int getKpiSampleTypesCount() { - return kpiSampleTypes_.size(); - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 3;</code> - * @param index The index of the element to return. - * @return The kpiSampleTypes at the given index. - */ - public kpi_sample_types.KpiSampleTypes.KpiSampleType getKpiSampleTypes(int index) { - return kpiSampleTypes_converter_.convert(kpiSampleTypes_.get(index)); - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 3;</code> - * @param index The index to set the value at. - * @param value The kpiSampleTypes to set. - * @return This builder for chaining. - */ - public Builder setKpiSampleTypes( - int index, kpi_sample_types.KpiSampleTypes.KpiSampleType value) { - if (value == null) { - throw new NullPointerException(); - } - ensureKpiSampleTypesIsMutable(); - kpiSampleTypes_.set(index, value.getNumber()); - onChanged(); - return this; - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 3;</code> - * @param value The kpiSampleTypes to add. - * @return This builder for chaining. - */ - public Builder addKpiSampleTypes(kpi_sample_types.KpiSampleTypes.KpiSampleType value) { - if (value == null) { - throw new NullPointerException(); - } - ensureKpiSampleTypesIsMutable(); - kpiSampleTypes_.add(value.getNumber()); - onChanged(); - return this; - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 3;</code> - * @param values The kpiSampleTypes to add. - * @return This builder for chaining. - */ - public Builder addAllKpiSampleTypes( - java.lang.Iterable<? extends kpi_sample_types.KpiSampleTypes.KpiSampleType> values) { - ensureKpiSampleTypesIsMutable(); - for (kpi_sample_types.KpiSampleTypes.KpiSampleType value : values) { - kpiSampleTypes_.add(value.getNumber()); - } - onChanged(); - return this; - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 3;</code> - * @return This builder for chaining. - */ - public Builder clearKpiSampleTypes() { - kpiSampleTypes_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - return this; - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 3;</code> - * @return A list containing the enum numeric values on the wire for kpiSampleTypes. - */ - public java.util.List<java.lang.Integer> - getKpiSampleTypesValueList() { - return java.util.Collections.unmodifiableList(kpiSampleTypes_); - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 3;</code> - * @param index The index of the value to return. - * @return The enum numeric value on the wire of kpiSampleTypes at the given index. - */ - public int getKpiSampleTypesValue(int index) { - return kpiSampleTypes_.get(index); - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 3;</code> - * @param index The index of the value to return. - * @return The enum numeric value on the wire of kpiSampleTypes at the given index. - * @return This builder for chaining. - */ - public Builder setKpiSampleTypesValue( - int index, int value) { - ensureKpiSampleTypesIsMutable(); - kpiSampleTypes_.set(index, value); - onChanged(); - return this; - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 3;</code> - * @param value The enum numeric value on the wire for kpiSampleTypes to add. - * @return This builder for chaining. - */ - public Builder addKpiSampleTypesValue(int value) { - ensureKpiSampleTypesIsMutable(); - kpiSampleTypes_.add(value); - onChanged(); - return this; - } - /** - * <code>repeated .kpi_sample_types.KpiSampleType kpi_sample_types = 3;</code> - * @param values The enum numeric values on the wire for kpiSampleTypes to add. - * @return This builder for chaining. - */ - public Builder addAllKpiSampleTypesValue( - java.lang.Iterable<java.lang.Integer> values) { - ensureKpiSampleTypesIsMutable(); - for (int value : values) { - kpiSampleTypes_.add(value); - } - onChanged(); - return this; - } - - private context.ContextOuterClass.Location endpointLocation_; + private acl.Acl.AclRuleSet ruleSet_; private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Location, context.ContextOuterClass.Location.Builder, context.ContextOuterClass.LocationOrBuilder> endpointLocationBuilder_; + acl.Acl.AclRuleSet, acl.Acl.AclRuleSet.Builder, acl.Acl.AclRuleSetOrBuilder> ruleSetBuilder_; /** - * <code>.context.Location endpoint_location = 4;</code> - * @return Whether the endpointLocation field is set. + * <code>.acl.AclRuleSet rule_set = 2;</code> + * @return Whether the ruleSet field is set. */ - public boolean hasEndpointLocation() { - return endpointLocationBuilder_ != null || endpointLocation_ != null; + public boolean hasRuleSet() { + return ruleSetBuilder_ != null || ruleSet_ != null; } /** - * <code>.context.Location endpoint_location = 4;</code> - * @return The endpointLocation. + * <code>.acl.AclRuleSet rule_set = 2;</code> + * @return The ruleSet. */ - public context.ContextOuterClass.Location getEndpointLocation() { - if (endpointLocationBuilder_ == null) { - return endpointLocation_ == null ? context.ContextOuterClass.Location.getDefaultInstance() : endpointLocation_; + public acl.Acl.AclRuleSet getRuleSet() { + if (ruleSetBuilder_ == null) { + return ruleSet_ == null ? acl.Acl.AclRuleSet.getDefaultInstance() : ruleSet_; } else { - return endpointLocationBuilder_.getMessage(); + return ruleSetBuilder_.getMessage(); } } /** - * <code>.context.Location endpoint_location = 4;</code> + * <code>.acl.AclRuleSet rule_set = 2;</code> */ - public Builder setEndpointLocation(context.ContextOuterClass.Location value) { - if (endpointLocationBuilder_ == null) { + public Builder setRuleSet(acl.Acl.AclRuleSet value) { + if (ruleSetBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - endpointLocation_ = value; + ruleSet_ = value; onChanged(); } else { - endpointLocationBuilder_.setMessage(value); + ruleSetBuilder_.setMessage(value); } return this; } /** - * <code>.context.Location endpoint_location = 4;</code> + * <code>.acl.AclRuleSet rule_set = 2;</code> */ - public Builder setEndpointLocation( - context.ContextOuterClass.Location.Builder builderForValue) { - if (endpointLocationBuilder_ == null) { - endpointLocation_ = builderForValue.build(); + public Builder setRuleSet( + acl.Acl.AclRuleSet.Builder builderForValue) { + if (ruleSetBuilder_ == null) { + ruleSet_ = builderForValue.build(); onChanged(); } else { - endpointLocationBuilder_.setMessage(builderForValue.build()); + ruleSetBuilder_.setMessage(builderForValue.build()); } return this; } /** - * <code>.context.Location endpoint_location = 4;</code> + * <code>.acl.AclRuleSet rule_set = 2;</code> */ - public Builder mergeEndpointLocation(context.ContextOuterClass.Location value) { - if (endpointLocationBuilder_ == null) { - if (endpointLocation_ != null) { - endpointLocation_ = - context.ContextOuterClass.Location.newBuilder(endpointLocation_).mergeFrom(value).buildPartial(); + public Builder mergeRuleSet(acl.Acl.AclRuleSet value) { + if (ruleSetBuilder_ == null) { + if (ruleSet_ != null) { + ruleSet_ = + acl.Acl.AclRuleSet.newBuilder(ruleSet_).mergeFrom(value).buildPartial(); } else { - endpointLocation_ = value; + ruleSet_ = value; } onChanged(); } else { - endpointLocationBuilder_.mergeFrom(value); + ruleSetBuilder_.mergeFrom(value); } return this; } /** - * <code>.context.Location endpoint_location = 4;</code> + * <code>.acl.AclRuleSet rule_set = 2;</code> */ - public Builder clearEndpointLocation() { - if (endpointLocationBuilder_ == null) { - endpointLocation_ = null; + public Builder clearRuleSet() { + if (ruleSetBuilder_ == null) { + ruleSet_ = null; onChanged(); } else { - endpointLocation_ = null; - endpointLocationBuilder_ = null; + ruleSet_ = null; + ruleSetBuilder_ = null; } return this; } /** - * <code>.context.Location endpoint_location = 4;</code> + * <code>.acl.AclRuleSet rule_set = 2;</code> */ - public context.ContextOuterClass.Location.Builder getEndpointLocationBuilder() { + public acl.Acl.AclRuleSet.Builder getRuleSetBuilder() { onChanged(); - return getEndpointLocationFieldBuilder().getBuilder(); + return getRuleSetFieldBuilder().getBuilder(); } /** - * <code>.context.Location endpoint_location = 4;</code> + * <code>.acl.AclRuleSet rule_set = 2;</code> */ - public context.ContextOuterClass.LocationOrBuilder getEndpointLocationOrBuilder() { - if (endpointLocationBuilder_ != null) { - return endpointLocationBuilder_.getMessageOrBuilder(); + public acl.Acl.AclRuleSetOrBuilder getRuleSetOrBuilder() { + if (ruleSetBuilder_ != null) { + return ruleSetBuilder_.getMessageOrBuilder(); } else { - return endpointLocation_ == null ? - context.ContextOuterClass.Location.getDefaultInstance() : endpointLocation_; + return ruleSet_ == null ? + acl.Acl.AclRuleSet.getDefaultInstance() : ruleSet_; } } /** - * <code>.context.Location endpoint_location = 4;</code> + * <code>.acl.AclRuleSet rule_set = 2;</code> */ private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Location, context.ContextOuterClass.Location.Builder, context.ContextOuterClass.LocationOrBuilder> - getEndpointLocationFieldBuilder() { - if (endpointLocationBuilder_ == null) { - endpointLocationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Location, context.ContextOuterClass.Location.Builder, context.ContextOuterClass.LocationOrBuilder>( - getEndpointLocation(), + acl.Acl.AclRuleSet, acl.Acl.AclRuleSet.Builder, acl.Acl.AclRuleSetOrBuilder> + getRuleSetFieldBuilder() { + if (ruleSetBuilder_ == null) { + ruleSetBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + acl.Acl.AclRuleSet, acl.Acl.AclRuleSet.Builder, acl.Acl.AclRuleSetOrBuilder>( + getRuleSet(), getParentForChildren(), isClean()); - endpointLocation_ = null; + ruleSet_ = null; } - return endpointLocationBuilder_; + return ruleSetBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -48780,96 +60087,114 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.EndPoint) + // @@protoc_insertion_point(builder_scope:context.ConfigRule_ACL) } - // @@protoc_insertion_point(class_scope:context.EndPoint) - private static final context.ContextOuterClass.EndPoint DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ConfigRule_ACL) + private static final context.ContextOuterClass.ConfigRule_ACL DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.EndPoint(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ConfigRule_ACL(); } - public static context.ContextOuterClass.EndPoint getDefaultInstance() { + public static context.ContextOuterClass.ConfigRule_ACL getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<EndPoint> - PARSER = new com.google.protobuf.AbstractParser<EndPoint>() { + private static final com.google.protobuf.Parser<ConfigRule_ACL> + PARSER = new com.google.protobuf.AbstractParser<ConfigRule_ACL>() { @java.lang.Override - public EndPoint parsePartialFrom( + public ConfigRule_ACL parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new EndPoint(input, extensionRegistry); + return new ConfigRule_ACL(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<EndPoint> parser() { + public static com.google.protobuf.Parser<ConfigRule_ACL> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<EndPoint> getParserForType() { + public com.google.protobuf.Parser<ConfigRule_ACL> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.EndPoint getDefaultInstanceForType() { + public context.ContextOuterClass.ConfigRule_ACL getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ConfigRule_CustomOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ConfigRule_Custom) + public interface ConfigRuleOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.ConfigRule) com.google.protobuf.MessageOrBuilder { /** - * <code>string resource_key = 1;</code> - * @return The resourceKey. + * <code>.context.ConfigActionEnum action = 1;</code> + * @return The enum numeric value on the wire for action. */ - java.lang.String getResourceKey(); + int getActionValue(); /** - * <code>string resource_key = 1;</code> - * @return The bytes for resourceKey. + * <code>.context.ConfigActionEnum action = 1;</code> + * @return The action. */ - com.google.protobuf.ByteString - getResourceKeyBytes(); + context.ContextOuterClass.ConfigActionEnum getAction(); /** - * <code>string resource_value = 2;</code> - * @return The resourceValue. + * <code>.context.ConfigRule_Custom custom = 2;</code> + * @return Whether the custom field is set. */ - java.lang.String getResourceValue(); + boolean hasCustom(); /** - * <code>string resource_value = 2;</code> - * @return The bytes for resourceValue. + * <code>.context.ConfigRule_Custom custom = 2;</code> + * @return The custom. */ - com.google.protobuf.ByteString - getResourceValueBytes(); + context.ContextOuterClass.ConfigRule_Custom getCustom(); + /** + * <code>.context.ConfigRule_Custom custom = 2;</code> + */ + context.ContextOuterClass.ConfigRule_CustomOrBuilder getCustomOrBuilder(); + + /** + * <code>.context.ConfigRule_ACL acl = 3;</code> + * @return Whether the acl field is set. + */ + boolean hasAcl(); + /** + * <code>.context.ConfigRule_ACL acl = 3;</code> + * @return The acl. + */ + context.ContextOuterClass.ConfigRule_ACL getAcl(); + /** + * <code>.context.ConfigRule_ACL acl = 3;</code> + */ + context.ContextOuterClass.ConfigRule_ACLOrBuilder getAclOrBuilder(); + + public context.ContextOuterClass.ConfigRule.ConfigRuleCase getConfigRuleCase(); } /** - * Protobuf type {@code context.ConfigRule_Custom} + * Protobuf type {@code context.ConfigRule} */ - public static final class ConfigRule_Custom extends + public static final class ConfigRule extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ConfigRule_Custom) - ConfigRule_CustomOrBuilder { + // @@protoc_insertion_point(message_implements:context.ConfigRule) + ConfigRuleOrBuilder { private static final long serialVersionUID = 0L; - // Use ConfigRule_Custom.newBuilder() to construct. - private ConfigRule_Custom(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use ConfigRule.newBuilder() to construct. + private ConfigRule(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ConfigRule_Custom() { - resourceKey_ = ""; - resourceValue_ = ""; + private ConfigRule() { + action_ = 0; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ConfigRule_Custom(); + return new ConfigRule(); } @java.lang.Override @@ -48877,7 +60202,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ConfigRule_Custom( + private ConfigRule( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -48895,16 +60220,38 @@ public final class ContextOuterClass { case 0: done = true; break; - case 10: { - java.lang.String s = input.readStringRequireUtf8(); + case 8: { + int rawValue = input.readEnum(); - resourceKey_ = s; + action_ = rawValue; break; } case 18: { - java.lang.String s = input.readStringRequireUtf8(); - - resourceValue_ = s; + context.ContextOuterClass.ConfigRule_Custom.Builder subBuilder = null; + if (configRuleCase_ == 2) { + subBuilder = ((context.ContextOuterClass.ConfigRule_Custom) configRule_).toBuilder(); + } + configRule_ = + input.readMessage(context.ContextOuterClass.ConfigRule_Custom.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom((context.ContextOuterClass.ConfigRule_Custom) configRule_); + configRule_ = subBuilder.buildPartial(); + } + configRuleCase_ = 2; + break; + } + case 26: { + context.ContextOuterClass.ConfigRule_ACL.Builder subBuilder = null; + if (configRuleCase_ == 3) { + subBuilder = ((context.ContextOuterClass.ConfigRule_ACL) configRule_).toBuilder(); + } + configRule_ = + input.readMessage(context.ContextOuterClass.ConfigRule_ACL.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom((context.ContextOuterClass.ConfigRule_ACL) configRule_); + configRule_ = subBuilder.buildPartial(); + } + configRuleCase_ = 3; break; } default: { @@ -48928,91 +60275,137 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConfigRule_Custom_descriptor; + return context.ContextOuterClass.internal_static_context_ConfigRule_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConfigRule_Custom_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConfigRule_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConfigRule_Custom.class, context.ContextOuterClass.ConfigRule_Custom.Builder.class); + context.ContextOuterClass.ConfigRule.class, context.ContextOuterClass.ConfigRule.Builder.class); } - public static final int RESOURCE_KEY_FIELD_NUMBER = 1; - private volatile java.lang.Object resourceKey_; + private int configRuleCase_ = 0; + private java.lang.Object configRule_; + public enum ConfigRuleCase + implements com.google.protobuf.Internal.EnumLite, + com.google.protobuf.AbstractMessage.InternalOneOfEnum { + CUSTOM(2), + ACL(3), + CONFIGRULE_NOT_SET(0); + private final int value; + private ConfigRuleCase(int value) { + this.value = value; + } + /** + * @param value The number of the enum to look for. + * @return The enum associated with the given number. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static ConfigRuleCase valueOf(int value) { + return forNumber(value); + } + + public static ConfigRuleCase forNumber(int value) { + switch (value) { + case 2: return CUSTOM; + case 3: return ACL; + case 0: return CONFIGRULE_NOT_SET; + default: return null; + } + } + public int getNumber() { + return this.value; + } + }; + + public ConfigRuleCase + getConfigRuleCase() { + return ConfigRuleCase.forNumber( + configRuleCase_); + } + + public static final int ACTION_FIELD_NUMBER = 1; + private int action_; /** - * <code>string resource_key = 1;</code> - * @return The resourceKey. + * <code>.context.ConfigActionEnum action = 1;</code> + * @return The enum numeric value on the wire for action. + */ + @java.lang.Override public int getActionValue() { + return action_; + } + /** + * <code>.context.ConfigActionEnum action = 1;</code> + * @return The action. + */ + @java.lang.Override public context.ContextOuterClass.ConfigActionEnum getAction() { + @SuppressWarnings("deprecation") + context.ContextOuterClass.ConfigActionEnum result = context.ContextOuterClass.ConfigActionEnum.valueOf(action_); + return result == null ? context.ContextOuterClass.ConfigActionEnum.UNRECOGNIZED : result; + } + + public static final int CUSTOM_FIELD_NUMBER = 2; + /** + * <code>.context.ConfigRule_Custom custom = 2;</code> + * @return Whether the custom field is set. + */ + @java.lang.Override + public boolean hasCustom() { + return configRuleCase_ == 2; + } + /** + * <code>.context.ConfigRule_Custom custom = 2;</code> + * @return The custom. */ @java.lang.Override - public java.lang.String getResourceKey() { - java.lang.Object ref = resourceKey_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - resourceKey_ = s; - return s; + public context.ContextOuterClass.ConfigRule_Custom getCustom() { + if (configRuleCase_ == 2) { + return (context.ContextOuterClass.ConfigRule_Custom) configRule_; } + return context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); } /** - * <code>string resource_key = 1;</code> - * @return The bytes for resourceKey. + * <code>.context.ConfigRule_Custom custom = 2;</code> */ @java.lang.Override - public com.google.protobuf.ByteString - getResourceKeyBytes() { - java.lang.Object ref = resourceKey_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - resourceKey_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + public context.ContextOuterClass.ConfigRule_CustomOrBuilder getCustomOrBuilder() { + if (configRuleCase_ == 2) { + return (context.ContextOuterClass.ConfigRule_Custom) configRule_; } + return context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); } - public static final int RESOURCE_VALUE_FIELD_NUMBER = 2; - private volatile java.lang.Object resourceValue_; + public static final int ACL_FIELD_NUMBER = 3; /** - * <code>string resource_value = 2;</code> - * @return The resourceValue. + * <code>.context.ConfigRule_ACL acl = 3;</code> + * @return Whether the acl field is set. */ @java.lang.Override - public java.lang.String getResourceValue() { - java.lang.Object ref = resourceValue_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - resourceValue_ = s; - return s; + public boolean hasAcl() { + return configRuleCase_ == 3; + } + /** + * <code>.context.ConfigRule_ACL acl = 3;</code> + * @return The acl. + */ + @java.lang.Override + public context.ContextOuterClass.ConfigRule_ACL getAcl() { + if (configRuleCase_ == 3) { + return (context.ContextOuterClass.ConfigRule_ACL) configRule_; } + return context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); } /** - * <code>string resource_value = 2;</code> - * @return The bytes for resourceValue. + * <code>.context.ConfigRule_ACL acl = 3;</code> */ @java.lang.Override - public com.google.protobuf.ByteString - getResourceValueBytes() { - java.lang.Object ref = resourceValue_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - resourceValue_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + public context.ContextOuterClass.ConfigRule_ACLOrBuilder getAclOrBuilder() { + if (configRuleCase_ == 3) { + return (context.ContextOuterClass.ConfigRule_ACL) configRule_; } + return context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); } private byte memoizedIsInitialized = -1; @@ -49029,11 +60422,14 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getResourceKeyBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 1, resourceKey_); + if (action_ != context.ContextOuterClass.ConfigActionEnum.CONFIGACTION_UNDEFINED.getNumber()) { + output.writeEnum(1, action_); } - if (!getResourceValueBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, resourceValue_); + if (configRuleCase_ == 2) { + output.writeMessage(2, (context.ContextOuterClass.ConfigRule_Custom) configRule_); + } + if (configRuleCase_ == 3) { + output.writeMessage(3, (context.ContextOuterClass.ConfigRule_ACL) configRule_); } unknownFields.writeTo(output); } @@ -49044,11 +60440,17 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (!getResourceKeyBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, resourceKey_); + if (action_ != context.ContextOuterClass.ConfigActionEnum.CONFIGACTION_UNDEFINED.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(1, action_); } - if (!getResourceValueBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, resourceValue_); + if (configRuleCase_ == 2) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, (context.ContextOuterClass.ConfigRule_Custom) configRule_); + } + if (configRuleCase_ == 3) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(3, (context.ContextOuterClass.ConfigRule_ACL) configRule_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -49060,15 +60462,25 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ConfigRule_Custom)) { + if (!(obj instanceof context.ContextOuterClass.ConfigRule)) { return super.equals(obj); } - context.ContextOuterClass.ConfigRule_Custom other = (context.ContextOuterClass.ConfigRule_Custom) obj; + context.ContextOuterClass.ConfigRule other = (context.ContextOuterClass.ConfigRule) obj; - if (!getResourceKey() - .equals(other.getResourceKey())) return false; - if (!getResourceValue() - .equals(other.getResourceValue())) return false; + if (action_ != other.action_) return false; + if (!getConfigRuleCase().equals(other.getConfigRuleCase())) return false; + switch (configRuleCase_) { + case 2: + if (!getCustom() + .equals(other.getCustom())) return false; + break; + case 3: + if (!getAcl() + .equals(other.getAcl())) return false; + break; + case 0: + default: + } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -49080,78 +60492,88 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + RESOURCE_KEY_FIELD_NUMBER; - hash = (53 * hash) + getResourceKey().hashCode(); - hash = (37 * hash) + RESOURCE_VALUE_FIELD_NUMBER; - hash = (53 * hash) + getResourceValue().hashCode(); + hash = (37 * hash) + ACTION_FIELD_NUMBER; + hash = (53 * hash) + action_; + switch (configRuleCase_) { + case 2: + hash = (37 * hash) + CUSTOM_FIELD_NUMBER; + hash = (53 * hash) + getCustom().hashCode(); + break; + case 3: + hash = (37 * hash) + ACL_FIELD_NUMBER; + hash = (53 * hash) + getAcl().hashCode(); + break; + case 0: + default: + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ConfigRule_Custom parseFrom( + public static context.ContextOuterClass.ConfigRule parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConfigRule_Custom parseFrom( + public static context.ContextOuterClass.ConfigRule parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConfigRule_Custom parseFrom( + public static context.ContextOuterClass.ConfigRule parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConfigRule_Custom parseFrom( + public static context.ContextOuterClass.ConfigRule parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConfigRule_Custom parseFrom(byte[] data) + public static context.ContextOuterClass.ConfigRule parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConfigRule_Custom parseFrom( + public static context.ContextOuterClass.ConfigRule parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConfigRule_Custom parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConfigRule parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConfigRule_Custom parseFrom( + public static context.ContextOuterClass.ConfigRule 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 context.ContextOuterClass.ConfigRule_Custom parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.ConfigRule parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConfigRule_Custom parseDelimitedFrom( + public static context.ContextOuterClass.ConfigRule 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 context.ContextOuterClass.ConfigRule_Custom parseFrom( + public static context.ContextOuterClass.ConfigRule parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConfigRule_Custom parseFrom( + public static context.ContextOuterClass.ConfigRule parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -49164,7 +60586,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ConfigRule_Custom prototype) { + public static Builder newBuilder(context.ContextOuterClass.ConfigRule prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -49180,26 +60602,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ConfigRule_Custom} + * Protobuf type {@code context.ConfigRule} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ConfigRule_Custom) - context.ContextOuterClass.ConfigRule_CustomOrBuilder { + // @@protoc_insertion_point(builder_implements:context.ConfigRule) + context.ContextOuterClass.ConfigRuleOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConfigRule_Custom_descriptor; + return context.ContextOuterClass.internal_static_context_ConfigRule_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConfigRule_Custom_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_ConfigRule_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConfigRule_Custom.class, context.ContextOuterClass.ConfigRule_Custom.Builder.class); + context.ContextOuterClass.ConfigRule.class, context.ContextOuterClass.ConfigRule.Builder.class); } - // Construct using context.ContextOuterClass.ConfigRule_Custom.newBuilder() + // Construct using context.ContextOuterClass.ConfigRule.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -49217,27 +60639,27 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - resourceKey_ = ""; - - resourceValue_ = ""; + action_ = 0; + configRuleCase_ = 0; + configRule_ = null; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ConfigRule_Custom_descriptor; + return context.ContextOuterClass.internal_static_context_ConfigRule_descriptor; } @java.lang.Override - public context.ContextOuterClass.ConfigRule_Custom getDefaultInstanceForType() { - return context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); + public context.ContextOuterClass.ConfigRule getDefaultInstanceForType() { + return context.ContextOuterClass.ConfigRule.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ConfigRule_Custom build() { - context.ContextOuterClass.ConfigRule_Custom result = buildPartial(); + public context.ContextOuterClass.ConfigRule build() { + context.ContextOuterClass.ConfigRule result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -49245,10 +60667,24 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ConfigRule_Custom buildPartial() { - context.ContextOuterClass.ConfigRule_Custom result = new context.ContextOuterClass.ConfigRule_Custom(this); - result.resourceKey_ = resourceKey_; - result.resourceValue_ = resourceValue_; + public context.ContextOuterClass.ConfigRule buildPartial() { + context.ContextOuterClass.ConfigRule result = new context.ContextOuterClass.ConfigRule(this); + result.action_ = action_; + if (configRuleCase_ == 2) { + if (customBuilder_ == null) { + result.configRule_ = configRule_; + } else { + result.configRule_ = customBuilder_.build(); + } + } + if (configRuleCase_ == 3) { + if (aclBuilder_ == null) { + result.configRule_ = configRule_; + } else { + result.configRule_ = aclBuilder_.build(); + } + } + result.configRuleCase_ = configRuleCase_; onBuilt(); return result; } @@ -49287,23 +60723,31 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ConfigRule_Custom) { - return mergeFrom((context.ContextOuterClass.ConfigRule_Custom)other); + if (other instanceof context.ContextOuterClass.ConfigRule) { + return mergeFrom((context.ContextOuterClass.ConfigRule)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ConfigRule_Custom other) { - if (other == context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance()) return this; - if (!other.getResourceKey().isEmpty()) { - resourceKey_ = other.resourceKey_; - onChanged(); + public Builder mergeFrom(context.ContextOuterClass.ConfigRule other) { + if (other == context.ContextOuterClass.ConfigRule.getDefaultInstance()) return this; + if (other.action_ != 0) { + setActionValue(other.getActionValue()); } - if (!other.getResourceValue().isEmpty()) { - resourceValue_ = other.resourceValue_; - onChanged(); + switch (other.getConfigRuleCase()) { + case CUSTOM: { + mergeCustom(other.getCustom()); + break; + } + case ACL: { + mergeAcl(other.getAcl()); + break; + } + case CONFIGRULE_NOT_SET: { + break; + } } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -49320,11 +60764,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ConfigRule_Custom parsedMessage = null; + context.ContextOuterClass.ConfigRule parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ConfigRule_Custom) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.ConfigRule) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -49333,157 +60777,356 @@ public final class ContextOuterClass { } return this; } + private int configRuleCase_ = 0; + private java.lang.Object configRule_; + public ConfigRuleCase + getConfigRuleCase() { + return ConfigRuleCase.forNumber( + configRuleCase_); + } + + public Builder clearConfigRule() { + configRuleCase_ = 0; + configRule_ = null; + onChanged(); + return this; + } + + + private int action_ = 0; + /** + * <code>.context.ConfigActionEnum action = 1;</code> + * @return The enum numeric value on the wire for action. + */ + @java.lang.Override public int getActionValue() { + return action_; + } + /** + * <code>.context.ConfigActionEnum action = 1;</code> + * @param value The enum numeric value on the wire for action to set. + * @return This builder for chaining. + */ + public Builder setActionValue(int value) { + + action_ = value; + onChanged(); + return this; + } + /** + * <code>.context.ConfigActionEnum action = 1;</code> + * @return The action. + */ + @java.lang.Override + public context.ContextOuterClass.ConfigActionEnum getAction() { + @SuppressWarnings("deprecation") + context.ContextOuterClass.ConfigActionEnum result = context.ContextOuterClass.ConfigActionEnum.valueOf(action_); + return result == null ? context.ContextOuterClass.ConfigActionEnum.UNRECOGNIZED : result; + } + /** + * <code>.context.ConfigActionEnum action = 1;</code> + * @param value The action to set. + * @return This builder for chaining. + */ + public Builder setAction(context.ContextOuterClass.ConfigActionEnum value) { + if (value == null) { + throw new NullPointerException(); + } + + action_ = value.getNumber(); + onChanged(); + return this; + } + /** + * <code>.context.ConfigActionEnum action = 1;</code> + * @return This builder for chaining. + */ + public Builder clearAction() { + + action_ = 0; + onChanged(); + return this; + } - private java.lang.Object resourceKey_ = ""; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConfigRule_Custom, context.ContextOuterClass.ConfigRule_Custom.Builder, context.ContextOuterClass.ConfigRule_CustomOrBuilder> customBuilder_; /** - * <code>string resource_key = 1;</code> - * @return The resourceKey. + * <code>.context.ConfigRule_Custom custom = 2;</code> + * @return Whether the custom field is set. */ - public java.lang.String getResourceKey() { - java.lang.Object ref = resourceKey_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - resourceKey_ = s; - return s; + @java.lang.Override + public boolean hasCustom() { + return configRuleCase_ == 2; + } + /** + * <code>.context.ConfigRule_Custom custom = 2;</code> + * @return The custom. + */ + @java.lang.Override + public context.ContextOuterClass.ConfigRule_Custom getCustom() { + if (customBuilder_ == null) { + if (configRuleCase_ == 2) { + return (context.ContextOuterClass.ConfigRule_Custom) configRule_; + } + return context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); } else { - return (java.lang.String) ref; + if (configRuleCase_ == 2) { + return customBuilder_.getMessage(); + } + return context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); } } /** - * <code>string resource_key = 1;</code> - * @return The bytes for resourceKey. + * <code>.context.ConfigRule_Custom custom = 2;</code> */ - public com.google.protobuf.ByteString - getResourceKeyBytes() { - java.lang.Object ref = resourceKey_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - resourceKey_ = b; - return b; + public Builder setCustom(context.ContextOuterClass.ConfigRule_Custom value) { + if (customBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + configRule_ = value; + onChanged(); } else { - return (com.google.protobuf.ByteString) ref; + customBuilder_.setMessage(value); } + configRuleCase_ = 2; + return this; } /** - * <code>string resource_key = 1;</code> - * @param value The resourceKey to set. - * @return This builder for chaining. + * <code>.context.ConfigRule_Custom custom = 2;</code> */ - public Builder setResourceKey( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - resourceKey_ = value; - onChanged(); + public Builder setCustom( + context.ContextOuterClass.ConfigRule_Custom.Builder builderForValue) { + if (customBuilder_ == null) { + configRule_ = builderForValue.build(); + onChanged(); + } else { + customBuilder_.setMessage(builderForValue.build()); + } + configRuleCase_ = 2; + return this; + } + /** + * <code>.context.ConfigRule_Custom custom = 2;</code> + */ + public Builder mergeCustom(context.ContextOuterClass.ConfigRule_Custom value) { + if (customBuilder_ == null) { + if (configRuleCase_ == 2 && + configRule_ != context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance()) { + configRule_ = context.ContextOuterClass.ConfigRule_Custom.newBuilder((context.ContextOuterClass.ConfigRule_Custom) configRule_) + .mergeFrom(value).buildPartial(); + } else { + configRule_ = value; + } + onChanged(); + } else { + if (configRuleCase_ == 2) { + customBuilder_.mergeFrom(value); + } + customBuilder_.setMessage(value); + } + configRuleCase_ = 2; + return this; + } + /** + * <code>.context.ConfigRule_Custom custom = 2;</code> + */ + public Builder clearCustom() { + if (customBuilder_ == null) { + if (configRuleCase_ == 2) { + configRuleCase_ = 0; + configRule_ = null; + onChanged(); + } + } else { + if (configRuleCase_ == 2) { + configRuleCase_ = 0; + configRule_ = null; + } + customBuilder_.clear(); + } return this; } /** - * <code>string resource_key = 1;</code> - * @return This builder for chaining. + * <code>.context.ConfigRule_Custom custom = 2;</code> + */ + public context.ContextOuterClass.ConfigRule_Custom.Builder getCustomBuilder() { + return getCustomFieldBuilder().getBuilder(); + } + /** + * <code>.context.ConfigRule_Custom custom = 2;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ConfigRule_CustomOrBuilder getCustomOrBuilder() { + if ((configRuleCase_ == 2) && (customBuilder_ != null)) { + return customBuilder_.getMessageOrBuilder(); + } else { + if (configRuleCase_ == 2) { + return (context.ContextOuterClass.ConfigRule_Custom) configRule_; + } + return context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); + } + } + /** + * <code>.context.ConfigRule_Custom custom = 2;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConfigRule_Custom, context.ContextOuterClass.ConfigRule_Custom.Builder, context.ContextOuterClass.ConfigRule_CustomOrBuilder> + getCustomFieldBuilder() { + if (customBuilder_ == null) { + if (!(configRuleCase_ == 2)) { + configRule_ = context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); + } + customBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConfigRule_Custom, context.ContextOuterClass.ConfigRule_Custom.Builder, context.ContextOuterClass.ConfigRule_CustomOrBuilder>( + (context.ContextOuterClass.ConfigRule_Custom) configRule_, + getParentForChildren(), + isClean()); + configRule_ = null; + } + configRuleCase_ = 2; + onChanged();; + return customBuilder_; + } + + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConfigRule_ACL, context.ContextOuterClass.ConfigRule_ACL.Builder, context.ContextOuterClass.ConfigRule_ACLOrBuilder> aclBuilder_; + /** + * <code>.context.ConfigRule_ACL acl = 3;</code> + * @return Whether the acl field is set. + */ + @java.lang.Override + public boolean hasAcl() { + return configRuleCase_ == 3; + } + /** + * <code>.context.ConfigRule_ACL acl = 3;</code> + * @return The acl. + */ + @java.lang.Override + public context.ContextOuterClass.ConfigRule_ACL getAcl() { + if (aclBuilder_ == null) { + if (configRuleCase_ == 3) { + return (context.ContextOuterClass.ConfigRule_ACL) configRule_; + } + return context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); + } else { + if (configRuleCase_ == 3) { + return aclBuilder_.getMessage(); + } + return context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); + } + } + /** + * <code>.context.ConfigRule_ACL acl = 3;</code> */ - public Builder clearResourceKey() { - - resourceKey_ = getDefaultInstance().getResourceKey(); - onChanged(); + public Builder setAcl(context.ContextOuterClass.ConfigRule_ACL value) { + if (aclBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + configRule_ = value; + onChanged(); + } else { + aclBuilder_.setMessage(value); + } + configRuleCase_ = 3; return this; } /** - * <code>string resource_key = 1;</code> - * @param value The bytes for resourceKey to set. - * @return This builder for chaining. + * <code>.context.ConfigRule_ACL acl = 3;</code> */ - public Builder setResourceKeyBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - resourceKey_ = value; - onChanged(); + public Builder setAcl( + context.ContextOuterClass.ConfigRule_ACL.Builder builderForValue) { + if (aclBuilder_ == null) { + configRule_ = builderForValue.build(); + onChanged(); + } else { + aclBuilder_.setMessage(builderForValue.build()); + } + configRuleCase_ = 3; return this; } - - private java.lang.Object resourceValue_ = ""; /** - * <code>string resource_value = 2;</code> - * @return The resourceValue. + * <code>.context.ConfigRule_ACL acl = 3;</code> */ - public java.lang.String getResourceValue() { - java.lang.Object ref = resourceValue_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - resourceValue_ = s; - return s; + public Builder mergeAcl(context.ContextOuterClass.ConfigRule_ACL value) { + if (aclBuilder_ == null) { + if (configRuleCase_ == 3 && + configRule_ != context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance()) { + configRule_ = context.ContextOuterClass.ConfigRule_ACL.newBuilder((context.ContextOuterClass.ConfigRule_ACL) configRule_) + .mergeFrom(value).buildPartial(); + } else { + configRule_ = value; + } + onChanged(); } else { - return (java.lang.String) ref; + if (configRuleCase_ == 3) { + aclBuilder_.mergeFrom(value); + } + aclBuilder_.setMessage(value); } + configRuleCase_ = 3; + return this; } /** - * <code>string resource_value = 2;</code> - * @return The bytes for resourceValue. + * <code>.context.ConfigRule_ACL acl = 3;</code> */ - public com.google.protobuf.ByteString - getResourceValueBytes() { - java.lang.Object ref = resourceValue_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - resourceValue_ = b; - return b; + public Builder clearAcl() { + if (aclBuilder_ == null) { + if (configRuleCase_ == 3) { + configRuleCase_ = 0; + configRule_ = null; + onChanged(); + } } else { - return (com.google.protobuf.ByteString) ref; + if (configRuleCase_ == 3) { + configRuleCase_ = 0; + configRule_ = null; + } + aclBuilder_.clear(); } + return this; } /** - * <code>string resource_value = 2;</code> - * @param value The resourceValue to set. - * @return This builder for chaining. + * <code>.context.ConfigRule_ACL acl = 3;</code> */ - public Builder setResourceValue( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - resourceValue_ = value; - onChanged(); - return this; + public context.ContextOuterClass.ConfigRule_ACL.Builder getAclBuilder() { + return getAclFieldBuilder().getBuilder(); } /** - * <code>string resource_value = 2;</code> - * @return This builder for chaining. + * <code>.context.ConfigRule_ACL acl = 3;</code> */ - public Builder clearResourceValue() { - - resourceValue_ = getDefaultInstance().getResourceValue(); - onChanged(); - return this; + @java.lang.Override + public context.ContextOuterClass.ConfigRule_ACLOrBuilder getAclOrBuilder() { + if ((configRuleCase_ == 3) && (aclBuilder_ != null)) { + return aclBuilder_.getMessageOrBuilder(); + } else { + if (configRuleCase_ == 3) { + return (context.ContextOuterClass.ConfigRule_ACL) configRule_; + } + return context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); + } } /** - * <code>string resource_value = 2;</code> - * @param value The bytes for resourceValue to set. - * @return This builder for chaining. + * <code>.context.ConfigRule_ACL acl = 3;</code> */ - public Builder setResourceValueBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - resourceValue_ = value; - onChanged(); - return this; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConfigRule_ACL, context.ContextOuterClass.ConfigRule_ACL.Builder, context.ContextOuterClass.ConfigRule_ACLOrBuilder> + getAclFieldBuilder() { + if (aclBuilder_ == null) { + if (!(configRuleCase_ == 3)) { + configRule_ = context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); + } + aclBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConfigRule_ACL, context.ContextOuterClass.ConfigRule_ACL.Builder, context.ContextOuterClass.ConfigRule_ACLOrBuilder>( + (context.ContextOuterClass.ConfigRule_ACL) configRule_, + getParentForChildren(), + isClean()); + configRule_ = null; + } + configRuleCase_ = 3; + onChanged();; + return aclBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -49498,100 +61141,96 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ConfigRule_Custom) + // @@protoc_insertion_point(builder_scope:context.ConfigRule) } - // @@protoc_insertion_point(class_scope:context.ConfigRule_Custom) - private static final context.ContextOuterClass.ConfigRule_Custom DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.ConfigRule) + private static final context.ContextOuterClass.ConfigRule DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ConfigRule_Custom(); + DEFAULT_INSTANCE = new context.ContextOuterClass.ConfigRule(); } - public static context.ContextOuterClass.ConfigRule_Custom getDefaultInstance() { + public static context.ContextOuterClass.ConfigRule getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ConfigRule_Custom> - PARSER = new com.google.protobuf.AbstractParser<ConfigRule_Custom>() { + private static final com.google.protobuf.Parser<ConfigRule> + PARSER = new com.google.protobuf.AbstractParser<ConfigRule>() { @java.lang.Override - public ConfigRule_Custom parsePartialFrom( + public ConfigRule parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ConfigRule_Custom(input, extensionRegistry); + return new ConfigRule(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ConfigRule_Custom> parser() { + public static com.google.protobuf.Parser<ConfigRule> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ConfigRule_Custom> getParserForType() { + public com.google.protobuf.Parser<ConfigRule> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ConfigRule_Custom getDefaultInstanceForType() { + public context.ContextOuterClass.ConfigRule getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ConfigRule_ACLOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ConfigRule_ACL) + public interface Constraint_CustomOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Constraint_Custom) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return Whether the endpointId field is set. - */ - boolean hasEndpointId(); - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return The endpointId. + * <code>string constraint_type = 1;</code> + * @return The constraintType. */ - context.ContextOuterClass.EndPointId getEndpointId(); + java.lang.String getConstraintType(); /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>string constraint_type = 1;</code> + * @return The bytes for constraintType. */ - context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder(); + com.google.protobuf.ByteString + getConstraintTypeBytes(); /** - * <code>.acl.AclRuleSet rule_set = 2;</code> - * @return Whether the ruleSet field is set. - */ - boolean hasRuleSet(); - /** - * <code>.acl.AclRuleSet rule_set = 2;</code> - * @return The ruleSet. + * <code>string constraint_value = 2;</code> + * @return The constraintValue. */ - acl.Acl.AclRuleSet getRuleSet(); + java.lang.String getConstraintValue(); /** - * <code>.acl.AclRuleSet rule_set = 2;</code> + * <code>string constraint_value = 2;</code> + * @return The bytes for constraintValue. */ - acl.Acl.AclRuleSetOrBuilder getRuleSetOrBuilder(); + com.google.protobuf.ByteString + getConstraintValueBytes(); } /** - * Protobuf type {@code context.ConfigRule_ACL} + * Protobuf type {@code context.Constraint_Custom} */ - public static final class ConfigRule_ACL extends + public static final class Constraint_Custom extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ConfigRule_ACL) - ConfigRule_ACLOrBuilder { + // @@protoc_insertion_point(message_implements:context.Constraint_Custom) + Constraint_CustomOrBuilder { private static final long serialVersionUID = 0L; - // Use ConfigRule_ACL.newBuilder() to construct. - private ConfigRule_ACL(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Constraint_Custom.newBuilder() to construct. + private Constraint_Custom(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ConfigRule_ACL() { + private Constraint_Custom() { + constraintType_ = ""; + constraintValue_ = ""; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ConfigRule_ACL(); + return new Constraint_Custom(); } @java.lang.Override @@ -49599,7 +61238,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ConfigRule_ACL( + private Constraint_Custom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -49618,29 +61257,15 @@ public final class ContextOuterClass { done = true; break; case 10: { - context.ContextOuterClass.EndPointId.Builder subBuilder = null; - if (endpointId_ != null) { - subBuilder = endpointId_.toBuilder(); - } - endpointId_ = input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(endpointId_); - endpointId_ = subBuilder.buildPartial(); - } + java.lang.String s = input.readStringRequireUtf8(); + constraintType_ = s; break; } case 18: { - acl.Acl.AclRuleSet.Builder subBuilder = null; - if (ruleSet_ != null) { - subBuilder = ruleSet_.toBuilder(); - } - ruleSet_ = input.readMessage(acl.Acl.AclRuleSet.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(ruleSet_); - ruleSet_ = subBuilder.buildPartial(); - } + java.lang.String s = input.readStringRequireUtf8(); + constraintValue_ = s; break; } default: { @@ -49664,67 +61289,91 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConfigRule_ACL_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_Custom_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConfigRule_ACL_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_Custom_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConfigRule_ACL.class, context.ContextOuterClass.ConfigRule_ACL.Builder.class); + context.ContextOuterClass.Constraint_Custom.class, context.ContextOuterClass.Constraint_Custom.Builder.class); } - public static final int ENDPOINT_ID_FIELD_NUMBER = 1; - private context.ContextOuterClass.EndPointId endpointId_; - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return Whether the endpointId field is set. - */ - @java.lang.Override - public boolean hasEndpointId() { - return endpointId_ != null; - } + public static final int CONSTRAINT_TYPE_FIELD_NUMBER = 1; + private volatile java.lang.Object constraintType_; /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return The endpointId. + * <code>string constraint_type = 1;</code> + * @return The constraintType. */ @java.lang.Override - public context.ContextOuterClass.EndPointId getEndpointId() { - return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; + public java.lang.String getConstraintType() { + java.lang.Object ref = constraintType_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + constraintType_ = s; + return s; + } } /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>string constraint_type = 1;</code> + * @return The bytes for constraintType. */ @java.lang.Override - public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { - return getEndpointId(); + public com.google.protobuf.ByteString + getConstraintTypeBytes() { + java.lang.Object ref = constraintType_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + constraintType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } - public static final int RULE_SET_FIELD_NUMBER = 2; - private acl.Acl.AclRuleSet ruleSet_; - /** - * <code>.acl.AclRuleSet rule_set = 2;</code> - * @return Whether the ruleSet field is set. - */ - @java.lang.Override - public boolean hasRuleSet() { - return ruleSet_ != null; - } + public static final int CONSTRAINT_VALUE_FIELD_NUMBER = 2; + private volatile java.lang.Object constraintValue_; /** - * <code>.acl.AclRuleSet rule_set = 2;</code> - * @return The ruleSet. + * <code>string constraint_value = 2;</code> + * @return The constraintValue. */ @java.lang.Override - public acl.Acl.AclRuleSet getRuleSet() { - return ruleSet_ == null ? acl.Acl.AclRuleSet.getDefaultInstance() : ruleSet_; + public java.lang.String getConstraintValue() { + java.lang.Object ref = constraintValue_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + constraintValue_ = s; + return s; + } } /** - * <code>.acl.AclRuleSet rule_set = 2;</code> + * <code>string constraint_value = 2;</code> + * @return The bytes for constraintValue. */ @java.lang.Override - public acl.Acl.AclRuleSetOrBuilder getRuleSetOrBuilder() { - return getRuleSet(); + public com.google.protobuf.ByteString + getConstraintValueBytes() { + java.lang.Object ref = constraintValue_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + constraintValue_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } private byte memoizedIsInitialized = -1; @@ -49741,11 +61390,11 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (endpointId_ != null) { - output.writeMessage(1, getEndpointId()); + if (!getConstraintTypeBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, constraintType_); } - if (ruleSet_ != null) { - output.writeMessage(2, getRuleSet()); + if (!getConstraintValueBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, constraintValue_); } unknownFields.writeTo(output); } @@ -49756,13 +61405,11 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (endpointId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getEndpointId()); + if (!getConstraintTypeBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, constraintType_); } - if (ruleSet_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, getRuleSet()); + if (!getConstraintValueBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, constraintValue_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -49774,21 +61421,15 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ConfigRule_ACL)) { + if (!(obj instanceof context.ContextOuterClass.Constraint_Custom)) { return super.equals(obj); } - context.ContextOuterClass.ConfigRule_ACL other = (context.ContextOuterClass.ConfigRule_ACL) obj; + context.ContextOuterClass.Constraint_Custom other = (context.ContextOuterClass.Constraint_Custom) obj; - if (hasEndpointId() != other.hasEndpointId()) return false; - if (hasEndpointId()) { - if (!getEndpointId() - .equals(other.getEndpointId())) return false; - } - if (hasRuleSet() != other.hasRuleSet()) return false; - if (hasRuleSet()) { - if (!getRuleSet() - .equals(other.getRuleSet())) return false; - } + if (!getConstraintType() + .equals(other.getConstraintType())) return false; + if (!getConstraintValue() + .equals(other.getConstraintValue())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -49800,82 +61441,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasEndpointId()) { - hash = (37 * hash) + ENDPOINT_ID_FIELD_NUMBER; - hash = (53 * hash) + getEndpointId().hashCode(); - } - if (hasRuleSet()) { - hash = (37 * hash) + RULE_SET_FIELD_NUMBER; - hash = (53 * hash) + getRuleSet().hashCode(); - } + hash = (37 * hash) + CONSTRAINT_TYPE_FIELD_NUMBER; + hash = (53 * hash) + getConstraintType().hashCode(); + hash = (37 * hash) + CONSTRAINT_VALUE_FIELD_NUMBER; + hash = (53 * hash) + getConstraintValue().hashCode(); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ConfigRule_ACL parseFrom( + public static context.ContextOuterClass.Constraint_Custom parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConfigRule_ACL parseFrom( + public static context.ContextOuterClass.Constraint_Custom parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConfigRule_ACL parseFrom( + public static context.ContextOuterClass.Constraint_Custom parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConfigRule_ACL parseFrom( + public static context.ContextOuterClass.Constraint_Custom parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConfigRule_ACL parseFrom(byte[] data) + public static context.ContextOuterClass.Constraint_Custom parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConfigRule_ACL parseFrom( + public static context.ContextOuterClass.Constraint_Custom parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConfigRule_ACL parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_Custom parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConfigRule_ACL parseFrom( + public static context.ContextOuterClass.Constraint_Custom 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 context.ContextOuterClass.ConfigRule_ACL parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_Custom parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConfigRule_ACL parseDelimitedFrom( + public static context.ContextOuterClass.Constraint_Custom 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 context.ContextOuterClass.ConfigRule_ACL parseFrom( + public static context.ContextOuterClass.Constraint_Custom parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConfigRule_ACL parseFrom( + public static context.ContextOuterClass.Constraint_Custom parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -49888,7 +61525,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ConfigRule_ACL prototype) { + public static Builder newBuilder(context.ContextOuterClass.Constraint_Custom prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -49904,26 +61541,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ConfigRule_ACL} + * Protobuf type {@code context.Constraint_Custom} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ConfigRule_ACL) - context.ContextOuterClass.ConfigRule_ACLOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Constraint_Custom) + context.ContextOuterClass.Constraint_CustomOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConfigRule_ACL_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_Custom_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConfigRule_ACL_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_Custom_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConfigRule_ACL.class, context.ContextOuterClass.ConfigRule_ACL.Builder.class); + context.ContextOuterClass.Constraint_Custom.class, context.ContextOuterClass.Constraint_Custom.Builder.class); } - // Construct using context.ContextOuterClass.ConfigRule_ACL.newBuilder() + // Construct using context.ContextOuterClass.Constraint_Custom.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -49941,35 +61578,27 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - if (endpointIdBuilder_ == null) { - endpointId_ = null; - } else { - endpointId_ = null; - endpointIdBuilder_ = null; - } - if (ruleSetBuilder_ == null) { - ruleSet_ = null; - } else { - ruleSet_ = null; - ruleSetBuilder_ = null; - } + constraintType_ = ""; + + constraintValue_ = ""; + return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ConfigRule_ACL_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_Custom_descriptor; } @java.lang.Override - public context.ContextOuterClass.ConfigRule_ACL getDefaultInstanceForType() { - return context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); + public context.ContextOuterClass.Constraint_Custom getDefaultInstanceForType() { + return context.ContextOuterClass.Constraint_Custom.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ConfigRule_ACL build() { - context.ContextOuterClass.ConfigRule_ACL result = buildPartial(); + public context.ContextOuterClass.Constraint_Custom build() { + context.ContextOuterClass.Constraint_Custom result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -49977,18 +61606,10 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ConfigRule_ACL buildPartial() { - context.ContextOuterClass.ConfigRule_ACL result = new context.ContextOuterClass.ConfigRule_ACL(this); - if (endpointIdBuilder_ == null) { - result.endpointId_ = endpointId_; - } else { - result.endpointId_ = endpointIdBuilder_.build(); - } - if (ruleSetBuilder_ == null) { - result.ruleSet_ = ruleSet_; - } else { - result.ruleSet_ = ruleSetBuilder_.build(); - } + public context.ContextOuterClass.Constraint_Custom buildPartial() { + context.ContextOuterClass.Constraint_Custom result = new context.ContextOuterClass.Constraint_Custom(this); + result.constraintType_ = constraintType_; + result.constraintValue_ = constraintValue_; onBuilt(); return result; } @@ -50027,21 +61648,23 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ConfigRule_ACL) { - return mergeFrom((context.ContextOuterClass.ConfigRule_ACL)other); + if (other instanceof context.ContextOuterClass.Constraint_Custom) { + return mergeFrom((context.ContextOuterClass.Constraint_Custom)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ConfigRule_ACL other) { - if (other == context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance()) return this; - if (other.hasEndpointId()) { - mergeEndpointId(other.getEndpointId()); + public Builder mergeFrom(context.ContextOuterClass.Constraint_Custom other) { + if (other == context.ContextOuterClass.Constraint_Custom.getDefaultInstance()) return this; + if (!other.getConstraintType().isEmpty()) { + constraintType_ = other.constraintType_; + onChanged(); } - if (other.hasRuleSet()) { - mergeRuleSet(other.getRuleSet()); + if (!other.getConstraintValue().isEmpty()) { + constraintValue_ = other.constraintValue_; + onChanged(); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -50058,11 +61681,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.ConfigRule_ACL parsedMessage = null; + context.ContextOuterClass.Constraint_Custom parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ConfigRule_ACL) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.Constraint_Custom) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -50072,242 +61695,156 @@ public final class ContextOuterClass { return this; } - private context.ContextOuterClass.EndPointId endpointId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> endpointIdBuilder_; - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return Whether the endpointId field is set. - */ - public boolean hasEndpointId() { - return endpointIdBuilder_ != null || endpointId_ != null; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return The endpointId. - */ - public context.ContextOuterClass.EndPointId getEndpointId() { - if (endpointIdBuilder_ == null) { - return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; - } else { - return endpointIdBuilder_.getMessage(); - } - } + private java.lang.Object constraintType_ = ""; /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>string constraint_type = 1;</code> + * @return The constraintType. */ - public Builder setEndpointId(context.ContextOuterClass.EndPointId value) { - if (endpointIdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - endpointId_ = value; - onChanged(); + public java.lang.String getConstraintType() { + java.lang.Object ref = constraintType_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + constraintType_ = s; + return s; } else { - endpointIdBuilder_.setMessage(value); + return (java.lang.String) ref; } - - return this; } /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>string constraint_type = 1;</code> + * @return The bytes for constraintType. */ - public Builder setEndpointId( - context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (endpointIdBuilder_ == null) { - endpointId_ = builderForValue.build(); - onChanged(); + public com.google.protobuf.ByteString + getConstraintTypeBytes() { + java.lang.Object ref = constraintType_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + constraintType_ = b; + return b; } else { - endpointIdBuilder_.setMessage(builderForValue.build()); + return (com.google.protobuf.ByteString) ref; } - - return this; } /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>string constraint_type = 1;</code> + * @param value The constraintType to set. + * @return This builder for chaining. */ - public Builder mergeEndpointId(context.ContextOuterClass.EndPointId value) { - if (endpointIdBuilder_ == null) { - if (endpointId_ != null) { - endpointId_ = - context.ContextOuterClass.EndPointId.newBuilder(endpointId_).mergeFrom(value).buildPartial(); - } else { - endpointId_ = value; - } - onChanged(); - } else { - endpointIdBuilder_.mergeFrom(value); - } - + public Builder setConstraintType( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + constraintType_ = value; + onChanged(); return this; } /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>string constraint_type = 1;</code> + * @return This builder for chaining. */ - public Builder clearEndpointId() { - if (endpointIdBuilder_ == null) { - endpointId_ = null; - onChanged(); - } else { - endpointId_ = null; - endpointIdBuilder_ = null; - } - + public Builder clearConstraintType() { + + constraintType_ = getDefaultInstance().getConstraintType(); + onChanged(); return this; } /** - * <code>.context.EndPointId endpoint_id = 1;</code> + * <code>string constraint_type = 1;</code> + * @param value The bytes for constraintType to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.EndPointId.Builder getEndpointIdBuilder() { + public Builder setConstraintTypeBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + constraintType_ = value; onChanged(); - return getEndpointIdFieldBuilder().getBuilder(); - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { - if (endpointIdBuilder_ != null) { - return endpointIdBuilder_.getMessageOrBuilder(); - } else { - return endpointId_ == null ? - context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; - } - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> - getEndpointIdFieldBuilder() { - if (endpointIdBuilder_ == null) { - endpointIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( - getEndpointId(), - getParentForChildren(), - isClean()); - endpointId_ = null; - } - return endpointIdBuilder_; + return this; } - private acl.Acl.AclRuleSet ruleSet_; - private com.google.protobuf.SingleFieldBuilderV3< - acl.Acl.AclRuleSet, acl.Acl.AclRuleSet.Builder, acl.Acl.AclRuleSetOrBuilder> ruleSetBuilder_; - /** - * <code>.acl.AclRuleSet rule_set = 2;</code> - * @return Whether the ruleSet field is set. - */ - public boolean hasRuleSet() { - return ruleSetBuilder_ != null || ruleSet_ != null; - } - /** - * <code>.acl.AclRuleSet rule_set = 2;</code> - * @return The ruleSet. - */ - public acl.Acl.AclRuleSet getRuleSet() { - if (ruleSetBuilder_ == null) { - return ruleSet_ == null ? acl.Acl.AclRuleSet.getDefaultInstance() : ruleSet_; - } else { - return ruleSetBuilder_.getMessage(); - } - } + private java.lang.Object constraintValue_ = ""; /** - * <code>.acl.AclRuleSet rule_set = 2;</code> + * <code>string constraint_value = 2;</code> + * @return The constraintValue. */ - public Builder setRuleSet(acl.Acl.AclRuleSet value) { - if (ruleSetBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ruleSet_ = value; - onChanged(); + public java.lang.String getConstraintValue() { + java.lang.Object ref = constraintValue_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + constraintValue_ = s; + return s; } else { - ruleSetBuilder_.setMessage(value); + return (java.lang.String) ref; } - - return this; } /** - * <code>.acl.AclRuleSet rule_set = 2;</code> + * <code>string constraint_value = 2;</code> + * @return The bytes for constraintValue. */ - public Builder setRuleSet( - acl.Acl.AclRuleSet.Builder builderForValue) { - if (ruleSetBuilder_ == null) { - ruleSet_ = builderForValue.build(); - onChanged(); + public com.google.protobuf.ByteString + getConstraintValueBytes() { + java.lang.Object ref = constraintValue_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + constraintValue_ = b; + return b; } else { - ruleSetBuilder_.setMessage(builderForValue.build()); + return (com.google.protobuf.ByteString) ref; } - - return this; } /** - * <code>.acl.AclRuleSet rule_set = 2;</code> + * <code>string constraint_value = 2;</code> + * @param value The constraintValue to set. + * @return This builder for chaining. */ - public Builder mergeRuleSet(acl.Acl.AclRuleSet value) { - if (ruleSetBuilder_ == null) { - if (ruleSet_ != null) { - ruleSet_ = - acl.Acl.AclRuleSet.newBuilder(ruleSet_).mergeFrom(value).buildPartial(); - } else { - ruleSet_ = value; - } - onChanged(); - } else { - ruleSetBuilder_.mergeFrom(value); - } - + public Builder setConstraintValue( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + constraintValue_ = value; + onChanged(); return this; } /** - * <code>.acl.AclRuleSet rule_set = 2;</code> + * <code>string constraint_value = 2;</code> + * @return This builder for chaining. */ - public Builder clearRuleSet() { - if (ruleSetBuilder_ == null) { - ruleSet_ = null; - onChanged(); - } else { - ruleSet_ = null; - ruleSetBuilder_ = null; - } - + public Builder clearConstraintValue() { + + constraintValue_ = getDefaultInstance().getConstraintValue(); + onChanged(); return this; } /** - * <code>.acl.AclRuleSet rule_set = 2;</code> + * <code>string constraint_value = 2;</code> + * @param value The bytes for constraintValue to set. + * @return This builder for chaining. */ - public acl.Acl.AclRuleSet.Builder getRuleSetBuilder() { + public Builder setConstraintValueBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + constraintValue_ = value; onChanged(); - return getRuleSetFieldBuilder().getBuilder(); - } - /** - * <code>.acl.AclRuleSet rule_set = 2;</code> - */ - public acl.Acl.AclRuleSetOrBuilder getRuleSetOrBuilder() { - if (ruleSetBuilder_ != null) { - return ruleSetBuilder_.getMessageOrBuilder(); - } else { - return ruleSet_ == null ? - acl.Acl.AclRuleSet.getDefaultInstance() : ruleSet_; - } - } - /** - * <code>.acl.AclRuleSet rule_set = 2;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - acl.Acl.AclRuleSet, acl.Acl.AclRuleSet.Builder, acl.Acl.AclRuleSetOrBuilder> - getRuleSetFieldBuilder() { - if (ruleSetBuilder_ == null) { - ruleSetBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - acl.Acl.AclRuleSet, acl.Acl.AclRuleSet.Builder, acl.Acl.AclRuleSetOrBuilder>( - getRuleSet(), - getParentForChildren(), - isClean()); - ruleSet_ = null; - } - return ruleSetBuilder_; + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -50322,114 +61859,82 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ConfigRule_ACL) + // @@protoc_insertion_point(builder_scope:context.Constraint_Custom) } - // @@protoc_insertion_point(class_scope:context.ConfigRule_ACL) - private static final context.ContextOuterClass.ConfigRule_ACL DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Constraint_Custom) + private static final context.ContextOuterClass.Constraint_Custom DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ConfigRule_ACL(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_Custom(); } - public static context.ContextOuterClass.ConfigRule_ACL getDefaultInstance() { + public static context.ContextOuterClass.Constraint_Custom getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ConfigRule_ACL> - PARSER = new com.google.protobuf.AbstractParser<ConfigRule_ACL>() { + private static final com.google.protobuf.Parser<Constraint_Custom> + PARSER = new com.google.protobuf.AbstractParser<Constraint_Custom>() { @java.lang.Override - public ConfigRule_ACL parsePartialFrom( + public Constraint_Custom parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ConfigRule_ACL(input, extensionRegistry); + return new Constraint_Custom(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ConfigRule_ACL> parser() { + public static com.google.protobuf.Parser<Constraint_Custom> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ConfigRule_ACL> getParserForType() { + public com.google.protobuf.Parser<Constraint_Custom> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ConfigRule_ACL getDefaultInstanceForType() { + public context.ContextOuterClass.Constraint_Custom getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ConfigRuleOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.ConfigRule) + public interface Constraint_ScheduleOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Constraint_Schedule) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.ConfigActionEnum action = 1;</code> - * @return The enum numeric value on the wire for action. - */ - int getActionValue(); - /** - * <code>.context.ConfigActionEnum action = 1;</code> - * @return The action. - */ - context.ContextOuterClass.ConfigActionEnum getAction(); - - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - * @return Whether the custom field is set. - */ - boolean hasCustom(); - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - * @return The custom. - */ - context.ContextOuterClass.ConfigRule_Custom getCustom(); - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> + * <code>float start_timestamp = 1;</code> + * @return The startTimestamp. */ - context.ContextOuterClass.ConfigRule_CustomOrBuilder getCustomOrBuilder(); + float getStartTimestamp(); /** - * <code>.context.ConfigRule_ACL acl = 3;</code> - * @return Whether the acl field is set. - */ - boolean hasAcl(); - /** - * <code>.context.ConfigRule_ACL acl = 3;</code> - * @return The acl. - */ - context.ContextOuterClass.ConfigRule_ACL getAcl(); - /** - * <code>.context.ConfigRule_ACL acl = 3;</code> + * <code>float duration_days = 2;</code> + * @return The durationDays. */ - context.ContextOuterClass.ConfigRule_ACLOrBuilder getAclOrBuilder(); - - public context.ContextOuterClass.ConfigRule.ConfigRuleCase getConfigRuleCase(); + float getDurationDays(); } /** - * Protobuf type {@code context.ConfigRule} + * Protobuf type {@code context.Constraint_Schedule} */ - public static final class ConfigRule extends + public static final class Constraint_Schedule extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.ConfigRule) - ConfigRuleOrBuilder { + // @@protoc_insertion_point(message_implements:context.Constraint_Schedule) + Constraint_ScheduleOrBuilder { private static final long serialVersionUID = 0L; - // Use ConfigRule.newBuilder() to construct. - private ConfigRule(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Constraint_Schedule.newBuilder() to construct. + private Constraint_Schedule(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private ConfigRule() { - action_ = 0; + private Constraint_Schedule() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new ConfigRule(); + return new Constraint_Schedule(); } @java.lang.Override @@ -50437,7 +61942,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private ConfigRule( + private Constraint_Schedule( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -50455,192 +61960,68 @@ public final class ContextOuterClass { case 0: done = true; break; - case 8: { - int rawValue = input.readEnum(); - - action_ = rawValue; - break; - } - case 18: { - context.ContextOuterClass.ConfigRule_Custom.Builder subBuilder = null; - if (configRuleCase_ == 2) { - subBuilder = ((context.ContextOuterClass.ConfigRule_Custom) configRule_).toBuilder(); - } - configRule_ = - input.readMessage(context.ContextOuterClass.ConfigRule_Custom.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom((context.ContextOuterClass.ConfigRule_Custom) configRule_); - configRule_ = subBuilder.buildPartial(); - } - configRuleCase_ = 2; - break; - } - case 26: { - context.ContextOuterClass.ConfigRule_ACL.Builder subBuilder = null; - if (configRuleCase_ == 3) { - subBuilder = ((context.ContextOuterClass.ConfigRule_ACL) configRule_).toBuilder(); - } - configRule_ = - input.readMessage(context.ContextOuterClass.ConfigRule_ACL.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom((context.ContextOuterClass.ConfigRule_ACL) configRule_); - configRule_ = subBuilder.buildPartial(); - } - configRuleCase_ = 3; - 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 { - this.unknownFields = unknownFields.build(); - makeExtensionsImmutable(); - } - } - public static final com.google.protobuf.Descriptors.Descriptor - getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConfigRule_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConfigRule_fieldAccessorTable - .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConfigRule.class, context.ContextOuterClass.ConfigRule.Builder.class); - } - - private int configRuleCase_ = 0; - private java.lang.Object configRule_; - public enum ConfigRuleCase - implements com.google.protobuf.Internal.EnumLite, - com.google.protobuf.AbstractMessage.InternalOneOfEnum { - CUSTOM(2), - ACL(3), - CONFIGRULE_NOT_SET(0); - private final int value; - private ConfigRuleCase(int value) { - this.value = value; - } - /** - * @param value The number of the enum to look for. - * @return The enum associated with the given number. - * @deprecated Use {@link #forNumber(int)} instead. - */ - @java.lang.Deprecated - public static ConfigRuleCase valueOf(int value) { - return forNumber(value); - } - - public static ConfigRuleCase forNumber(int value) { - switch (value) { - case 2: return CUSTOM; - case 3: return ACL; - case 0: return CONFIGRULE_NOT_SET; - default: return null; - } - } - public int getNumber() { - return this.value; - } - }; - - public ConfigRuleCase - getConfigRuleCase() { - return ConfigRuleCase.forNumber( - configRuleCase_); - } + case 13: { - public static final int ACTION_FIELD_NUMBER = 1; - private int action_; - /** - * <code>.context.ConfigActionEnum action = 1;</code> - * @return The enum numeric value on the wire for action. - */ - @java.lang.Override public int getActionValue() { - return action_; - } - /** - * <code>.context.ConfigActionEnum action = 1;</code> - * @return The action. - */ - @java.lang.Override public context.ContextOuterClass.ConfigActionEnum getAction() { - @SuppressWarnings("deprecation") - context.ContextOuterClass.ConfigActionEnum result = context.ContextOuterClass.ConfigActionEnum.valueOf(action_); - return result == null ? context.ContextOuterClass.ConfigActionEnum.UNRECOGNIZED : result; - } + startTimestamp_ = input.readFloat(); + break; + } + case 21: { - public static final int CUSTOM_FIELD_NUMBER = 2; - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - * @return Whether the custom field is set. - */ - @java.lang.Override - public boolean hasCustom() { - return configRuleCase_ == 2; - } - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - * @return The custom. - */ - @java.lang.Override - public context.ContextOuterClass.ConfigRule_Custom getCustom() { - if (configRuleCase_ == 2) { - return (context.ContextOuterClass.ConfigRule_Custom) configRule_; + durationDays_ = input.readFloat(); + 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 { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); } - return context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); } - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - */ - @java.lang.Override - public context.ContextOuterClass.ConfigRule_CustomOrBuilder getCustomOrBuilder() { - if (configRuleCase_ == 2) { - return (context.ContextOuterClass.ConfigRule_Custom) configRule_; - } - return context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_Constraint_Schedule_descriptor; } - public static final int ACL_FIELD_NUMBER = 3; - /** - * <code>.context.ConfigRule_ACL acl = 3;</code> - * @return Whether the acl field is set. - */ @java.lang.Override - public boolean hasAcl() { - return configRuleCase_ == 3; + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_Constraint_Schedule_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.Constraint_Schedule.class, context.ContextOuterClass.Constraint_Schedule.Builder.class); } + + public static final int START_TIMESTAMP_FIELD_NUMBER = 1; + private float startTimestamp_; /** - * <code>.context.ConfigRule_ACL acl = 3;</code> - * @return The acl. + * <code>float start_timestamp = 1;</code> + * @return The startTimestamp. */ @java.lang.Override - public context.ContextOuterClass.ConfigRule_ACL getAcl() { - if (configRuleCase_ == 3) { - return (context.ContextOuterClass.ConfigRule_ACL) configRule_; - } - return context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); + public float getStartTimestamp() { + return startTimestamp_; } + + public static final int DURATION_DAYS_FIELD_NUMBER = 2; + private float durationDays_; /** - * <code>.context.ConfigRule_ACL acl = 3;</code> + * <code>float duration_days = 2;</code> + * @return The durationDays. */ @java.lang.Override - public context.ContextOuterClass.ConfigRule_ACLOrBuilder getAclOrBuilder() { - if (configRuleCase_ == 3) { - return (context.ContextOuterClass.ConfigRule_ACL) configRule_; - } - return context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); + public float getDurationDays() { + return durationDays_; } private byte memoizedIsInitialized = -1; @@ -50657,14 +62038,11 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (action_ != context.ContextOuterClass.ConfigActionEnum.CONFIGACTION_UNDEFINED.getNumber()) { - output.writeEnum(1, action_); - } - if (configRuleCase_ == 2) { - output.writeMessage(2, (context.ContextOuterClass.ConfigRule_Custom) configRule_); + if (startTimestamp_ != 0F) { + output.writeFloat(1, startTimestamp_); } - if (configRuleCase_ == 3) { - output.writeMessage(3, (context.ContextOuterClass.ConfigRule_ACL) configRule_); + if (durationDays_ != 0F) { + output.writeFloat(2, durationDays_); } unknownFields.writeTo(output); } @@ -50675,17 +62053,13 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (action_ != context.ContextOuterClass.ConfigActionEnum.CONFIGACTION_UNDEFINED.getNumber()) { - size += com.google.protobuf.CodedOutputStream - .computeEnumSize(1, action_); - } - if (configRuleCase_ == 2) { + if (startTimestamp_ != 0F) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, (context.ContextOuterClass.ConfigRule_Custom) configRule_); + .computeFloatSize(1, startTimestamp_); } - if (configRuleCase_ == 3) { + if (durationDays_ != 0F) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(3, (context.ContextOuterClass.ConfigRule_ACL) configRule_); + .computeFloatSize(2, durationDays_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -50697,25 +62071,17 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.ConfigRule)) { + if (!(obj instanceof context.ContextOuterClass.Constraint_Schedule)) { return super.equals(obj); } - context.ContextOuterClass.ConfigRule other = (context.ContextOuterClass.ConfigRule) obj; + context.ContextOuterClass.Constraint_Schedule other = (context.ContextOuterClass.Constraint_Schedule) obj; - if (action_ != other.action_) return false; - if (!getConfigRuleCase().equals(other.getConfigRuleCase())) return false; - switch (configRuleCase_) { - case 2: - if (!getCustom() - .equals(other.getCustom())) return false; - break; - case 3: - if (!getAcl() - .equals(other.getAcl())) return false; - break; - case 0: - default: - } + if (java.lang.Float.floatToIntBits(getStartTimestamp()) + != java.lang.Float.floatToIntBits( + other.getStartTimestamp())) return false; + if (java.lang.Float.floatToIntBits(getDurationDays()) + != java.lang.Float.floatToIntBits( + other.getDurationDays())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -50727,88 +62093,80 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + ACTION_FIELD_NUMBER; - hash = (53 * hash) + action_; - switch (configRuleCase_) { - case 2: - hash = (37 * hash) + CUSTOM_FIELD_NUMBER; - hash = (53 * hash) + getCustom().hashCode(); - break; - case 3: - hash = (37 * hash) + ACL_FIELD_NUMBER; - hash = (53 * hash) + getAcl().hashCode(); - break; - case 0: - default: - } + hash = (37 * hash) + START_TIMESTAMP_FIELD_NUMBER; + hash = (53 * hash) + java.lang.Float.floatToIntBits( + getStartTimestamp()); + hash = (37 * hash) + DURATION_DAYS_FIELD_NUMBER; + hash = (53 * hash) + java.lang.Float.floatToIntBits( + getDurationDays()); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.ConfigRule parseFrom( + public static context.ContextOuterClass.Constraint_Schedule parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConfigRule parseFrom( + public static context.ContextOuterClass.Constraint_Schedule parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConfigRule parseFrom( + public static context.ContextOuterClass.Constraint_Schedule parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConfigRule parseFrom( + public static context.ContextOuterClass.Constraint_Schedule parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConfigRule parseFrom(byte[] data) + public static context.ContextOuterClass.Constraint_Schedule parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.ConfigRule parseFrom( + public static context.ContextOuterClass.Constraint_Schedule parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.ConfigRule parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_Schedule parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConfigRule parseFrom( + public static context.ContextOuterClass.Constraint_Schedule 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 context.ContextOuterClass.ConfigRule parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_Schedule parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConfigRule parseDelimitedFrom( + public static context.ContextOuterClass.Constraint_Schedule 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 context.ContextOuterClass.ConfigRule parseFrom( + public static context.ContextOuterClass.Constraint_Schedule parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.ConfigRule parseFrom( + public static context.ContextOuterClass.Constraint_Schedule parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -50821,7 +62179,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.ConfigRule prototype) { + public static Builder newBuilder(context.ContextOuterClass.Constraint_Schedule prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -50837,26 +62195,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.ConfigRule} + * Protobuf type {@code context.Constraint_Schedule} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.ConfigRule) - context.ContextOuterClass.ConfigRuleOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Constraint_Schedule) + context.ContextOuterClass.Constraint_ScheduleOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_ConfigRule_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_Schedule_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_ConfigRule_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_Schedule_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.ConfigRule.class, context.ContextOuterClass.ConfigRule.Builder.class); + context.ContextOuterClass.Constraint_Schedule.class, context.ContextOuterClass.Constraint_Schedule.Builder.class); } - // Construct using context.ContextOuterClass.ConfigRule.newBuilder() + // Construct using context.ContextOuterClass.Constraint_Schedule.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -50874,27 +62232,27 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - action_ = 0; + startTimestamp_ = 0F; + + durationDays_ = 0F; - configRuleCase_ = 0; - configRule_ = null; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_ConfigRule_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_Schedule_descriptor; } @java.lang.Override - public context.ContextOuterClass.ConfigRule getDefaultInstanceForType() { - return context.ContextOuterClass.ConfigRule.getDefaultInstance(); + public context.ContextOuterClass.Constraint_Schedule getDefaultInstanceForType() { + return context.ContextOuterClass.Constraint_Schedule.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.ConfigRule build() { - context.ContextOuterClass.ConfigRule result = buildPartial(); + public context.ContextOuterClass.Constraint_Schedule build() { + context.ContextOuterClass.Constraint_Schedule result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -50902,24 +62260,10 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.ConfigRule buildPartial() { - context.ContextOuterClass.ConfigRule result = new context.ContextOuterClass.ConfigRule(this); - result.action_ = action_; - if (configRuleCase_ == 2) { - if (customBuilder_ == null) { - result.configRule_ = configRule_; - } else { - result.configRule_ = customBuilder_.build(); - } - } - if (configRuleCase_ == 3) { - if (aclBuilder_ == null) { - result.configRule_ = configRule_; - } else { - result.configRule_ = aclBuilder_.build(); - } - } - result.configRuleCase_ = configRuleCase_; + public context.ContextOuterClass.Constraint_Schedule buildPartial() { + context.ContextOuterClass.Constraint_Schedule result = new context.ContextOuterClass.Constraint_Schedule(this); + result.startTimestamp_ = startTimestamp_; + result.durationDays_ = durationDays_; onBuilt(); return result; } @@ -50958,410 +62302,111 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.ConfigRule) { - return mergeFrom((context.ContextOuterClass.ConfigRule)other); + if (other instanceof context.ContextOuterClass.Constraint_Schedule) { + return mergeFrom((context.ContextOuterClass.Constraint_Schedule)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.ConfigRule other) { - if (other == context.ContextOuterClass.ConfigRule.getDefaultInstance()) return this; - if (other.action_ != 0) { - setActionValue(other.getActionValue()); - } - switch (other.getConfigRuleCase()) { - case CUSTOM: { - mergeCustom(other.getCustom()); - break; - } - case ACL: { - mergeAcl(other.getAcl()); - break; - } - case CONFIGRULE_NOT_SET: { - break; - } - } - this.mergeUnknownFields(other.unknownFields); - onChanged(); - return this; - } - - @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 { - context.ContextOuterClass.ConfigRule parsedMessage = null; - try { - parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.ConfigRule) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); - } - } - return this; - } - private int configRuleCase_ = 0; - private java.lang.Object configRule_; - public ConfigRuleCase - getConfigRuleCase() { - return ConfigRuleCase.forNumber( - configRuleCase_); - } - - public Builder clearConfigRule() { - configRuleCase_ = 0; - configRule_ = null; - onChanged(); - return this; - } - - - private int action_ = 0; - /** - * <code>.context.ConfigActionEnum action = 1;</code> - * @return The enum numeric value on the wire for action. - */ - @java.lang.Override public int getActionValue() { - return action_; - } - /** - * <code>.context.ConfigActionEnum action = 1;</code> - * @param value The enum numeric value on the wire for action to set. - * @return This builder for chaining. - */ - public Builder setActionValue(int value) { - - action_ = value; - onChanged(); - return this; - } - /** - * <code>.context.ConfigActionEnum action = 1;</code> - * @return The action. - */ - @java.lang.Override - public context.ContextOuterClass.ConfigActionEnum getAction() { - @SuppressWarnings("deprecation") - context.ContextOuterClass.ConfigActionEnum result = context.ContextOuterClass.ConfigActionEnum.valueOf(action_); - return result == null ? context.ContextOuterClass.ConfigActionEnum.UNRECOGNIZED : result; - } - /** - * <code>.context.ConfigActionEnum action = 1;</code> - * @param value The action to set. - * @return This builder for chaining. - */ - public Builder setAction(context.ContextOuterClass.ConfigActionEnum value) { - if (value == null) { - throw new NullPointerException(); - } - - action_ = value.getNumber(); - onChanged(); - return this; - } - /** - * <code>.context.ConfigActionEnum action = 1;</code> - * @return This builder for chaining. - */ - public Builder clearAction() { - - action_ = 0; - onChanged(); - return this; - } - - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConfigRule_Custom, context.ContextOuterClass.ConfigRule_Custom.Builder, context.ContextOuterClass.ConfigRule_CustomOrBuilder> customBuilder_; - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - * @return Whether the custom field is set. - */ - @java.lang.Override - public boolean hasCustom() { - return configRuleCase_ == 2; - } - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - * @return The custom. - */ - @java.lang.Override - public context.ContextOuterClass.ConfigRule_Custom getCustom() { - if (customBuilder_ == null) { - if (configRuleCase_ == 2) { - return (context.ContextOuterClass.ConfigRule_Custom) configRule_; - } - return context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); - } else { - if (configRuleCase_ == 2) { - return customBuilder_.getMessage(); - } - return context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); - } - } - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - */ - public Builder setCustom(context.ContextOuterClass.ConfigRule_Custom value) { - if (customBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - configRule_ = value; - onChanged(); - } else { - customBuilder_.setMessage(value); - } - configRuleCase_ = 2; - return this; - } - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - */ - public Builder setCustom( - context.ContextOuterClass.ConfigRule_Custom.Builder builderForValue) { - if (customBuilder_ == null) { - configRule_ = builderForValue.build(); - onChanged(); - } else { - customBuilder_.setMessage(builderForValue.build()); - } - configRuleCase_ = 2; - return this; - } - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - */ - public Builder mergeCustom(context.ContextOuterClass.ConfigRule_Custom value) { - if (customBuilder_ == null) { - if (configRuleCase_ == 2 && - configRule_ != context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance()) { - configRule_ = context.ContextOuterClass.ConfigRule_Custom.newBuilder((context.ContextOuterClass.ConfigRule_Custom) configRule_) - .mergeFrom(value).buildPartial(); - } else { - configRule_ = value; - } - onChanged(); - } else { - if (configRuleCase_ == 2) { - customBuilder_.mergeFrom(value); - } - customBuilder_.setMessage(value); - } - configRuleCase_ = 2; - return this; - } - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - */ - public Builder clearCustom() { - if (customBuilder_ == null) { - if (configRuleCase_ == 2) { - configRuleCase_ = 0; - configRule_ = null; - onChanged(); - } - } else { - if (configRuleCase_ == 2) { - configRuleCase_ = 0; - configRule_ = null; - } - customBuilder_.clear(); - } - return this; - } - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - */ - public context.ContextOuterClass.ConfigRule_Custom.Builder getCustomBuilder() { - return getCustomFieldBuilder().getBuilder(); - } - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - */ - @java.lang.Override - public context.ContextOuterClass.ConfigRule_CustomOrBuilder getCustomOrBuilder() { - if ((configRuleCase_ == 2) && (customBuilder_ != null)) { - return customBuilder_.getMessageOrBuilder(); - } else { - if (configRuleCase_ == 2) { - return (context.ContextOuterClass.ConfigRule_Custom) configRule_; - } - return context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); + public Builder mergeFrom(context.ContextOuterClass.Constraint_Schedule other) { + if (other == context.ContextOuterClass.Constraint_Schedule.getDefaultInstance()) return this; + if (other.getStartTimestamp() != 0F) { + setStartTimestamp(other.getStartTimestamp()); } - } - /** - * <code>.context.ConfigRule_Custom custom = 2;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConfigRule_Custom, context.ContextOuterClass.ConfigRule_Custom.Builder, context.ContextOuterClass.ConfigRule_CustomOrBuilder> - getCustomFieldBuilder() { - if (customBuilder_ == null) { - if (!(configRuleCase_ == 2)) { - configRule_ = context.ContextOuterClass.ConfigRule_Custom.getDefaultInstance(); - } - customBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConfigRule_Custom, context.ContextOuterClass.ConfigRule_Custom.Builder, context.ContextOuterClass.ConfigRule_CustomOrBuilder>( - (context.ContextOuterClass.ConfigRule_Custom) configRule_, - getParentForChildren(), - isClean()); - configRule_ = null; + if (other.getDurationDays() != 0F) { + setDurationDays(other.getDurationDays()); } - configRuleCase_ = 2; - onChanged();; - return customBuilder_; - } - - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConfigRule_ACL, context.ContextOuterClass.ConfigRule_ACL.Builder, context.ContextOuterClass.ConfigRule_ACLOrBuilder> aclBuilder_; - /** - * <code>.context.ConfigRule_ACL acl = 3;</code> - * @return Whether the acl field is set. - */ - @java.lang.Override - public boolean hasAcl() { - return configRuleCase_ == 3; + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; } - /** - * <code>.context.ConfigRule_ACL acl = 3;</code> - * @return The acl. - */ + @java.lang.Override - public context.ContextOuterClass.ConfigRule_ACL getAcl() { - if (aclBuilder_ == null) { - if (configRuleCase_ == 3) { - return (context.ContextOuterClass.ConfigRule_ACL) configRule_; - } - return context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); - } else { - if (configRuleCase_ == 3) { - return aclBuilder_.getMessage(); - } - return context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); - } + public final boolean isInitialized() { + return true; } - /** - * <code>.context.ConfigRule_ACL acl = 3;</code> - */ - public Builder setAcl(context.ContextOuterClass.ConfigRule_ACL value) { - if (aclBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + context.ContextOuterClass.Constraint_Schedule parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.Constraint_Schedule) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); } - configRule_ = value; - onChanged(); - } else { - aclBuilder_.setMessage(value); } - configRuleCase_ = 3; return this; } + + private float startTimestamp_ ; /** - * <code>.context.ConfigRule_ACL acl = 3;</code> + * <code>float start_timestamp = 1;</code> + * @return The startTimestamp. */ - public Builder setAcl( - context.ContextOuterClass.ConfigRule_ACL.Builder builderForValue) { - if (aclBuilder_ == null) { - configRule_ = builderForValue.build(); - onChanged(); - } else { - aclBuilder_.setMessage(builderForValue.build()); - } - configRuleCase_ = 3; - return this; + @java.lang.Override + public float getStartTimestamp() { + return startTimestamp_; } /** - * <code>.context.ConfigRule_ACL acl = 3;</code> + * <code>float start_timestamp = 1;</code> + * @param value The startTimestamp to set. + * @return This builder for chaining. */ - public Builder mergeAcl(context.ContextOuterClass.ConfigRule_ACL value) { - if (aclBuilder_ == null) { - if (configRuleCase_ == 3 && - configRule_ != context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance()) { - configRule_ = context.ContextOuterClass.ConfigRule_ACL.newBuilder((context.ContextOuterClass.ConfigRule_ACL) configRule_) - .mergeFrom(value).buildPartial(); - } else { - configRule_ = value; - } - onChanged(); - } else { - if (configRuleCase_ == 3) { - aclBuilder_.mergeFrom(value); - } - aclBuilder_.setMessage(value); - } - configRuleCase_ = 3; + public Builder setStartTimestamp(float value) { + + startTimestamp_ = value; + onChanged(); return this; } /** - * <code>.context.ConfigRule_ACL acl = 3;</code> + * <code>float start_timestamp = 1;</code> + * @return This builder for chaining. */ - public Builder clearAcl() { - if (aclBuilder_ == null) { - if (configRuleCase_ == 3) { - configRuleCase_ = 0; - configRule_ = null; - onChanged(); - } - } else { - if (configRuleCase_ == 3) { - configRuleCase_ = 0; - configRule_ = null; - } - aclBuilder_.clear(); - } + public Builder clearStartTimestamp() { + + startTimestamp_ = 0F; + onChanged(); return this; } + + private float durationDays_ ; /** - * <code>.context.ConfigRule_ACL acl = 3;</code> + * <code>float duration_days = 2;</code> + * @return The durationDays. */ - public context.ContextOuterClass.ConfigRule_ACL.Builder getAclBuilder() { - return getAclFieldBuilder().getBuilder(); + @java.lang.Override + public float getDurationDays() { + return durationDays_; } /** - * <code>.context.ConfigRule_ACL acl = 3;</code> + * <code>float duration_days = 2;</code> + * @param value The durationDays to set. + * @return This builder for chaining. */ - @java.lang.Override - public context.ContextOuterClass.ConfigRule_ACLOrBuilder getAclOrBuilder() { - if ((configRuleCase_ == 3) && (aclBuilder_ != null)) { - return aclBuilder_.getMessageOrBuilder(); - } else { - if (configRuleCase_ == 3) { - return (context.ContextOuterClass.ConfigRule_ACL) configRule_; - } - return context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); - } + public Builder setDurationDays(float value) { + + durationDays_ = value; + onChanged(); + return this; } /** - * <code>.context.ConfigRule_ACL acl = 3;</code> + * <code>float duration_days = 2;</code> + * @return This builder for chaining. */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConfigRule_ACL, context.ContextOuterClass.ConfigRule_ACL.Builder, context.ContextOuterClass.ConfigRule_ACLOrBuilder> - getAclFieldBuilder() { - if (aclBuilder_ == null) { - if (!(configRuleCase_ == 3)) { - configRule_ = context.ContextOuterClass.ConfigRule_ACL.getDefaultInstance(); - } - aclBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.ConfigRule_ACL, context.ContextOuterClass.ConfigRule_ACL.Builder, context.ContextOuterClass.ConfigRule_ACLOrBuilder>( - (context.ContextOuterClass.ConfigRule_ACL) configRule_, - getParentForChildren(), - isClean()); - configRule_ = null; - } - configRuleCase_ = 3; - onChanged();; - return aclBuilder_; + public Builder clearDurationDays() { + + durationDays_ = 0F; + onChanged(); + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -51376,100 +62421,82 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.ConfigRule) + // @@protoc_insertion_point(builder_scope:context.Constraint_Schedule) } - // @@protoc_insertion_point(class_scope:context.ConfigRule) - private static final context.ContextOuterClass.ConfigRule DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Constraint_Schedule) + private static final context.ContextOuterClass.Constraint_Schedule DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.ConfigRule(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_Schedule(); } - public static context.ContextOuterClass.ConfigRule getDefaultInstance() { + public static context.ContextOuterClass.Constraint_Schedule getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<ConfigRule> - PARSER = new com.google.protobuf.AbstractParser<ConfigRule>() { + private static final com.google.protobuf.Parser<Constraint_Schedule> + PARSER = new com.google.protobuf.AbstractParser<Constraint_Schedule>() { @java.lang.Override - public ConfigRule parsePartialFrom( + public Constraint_Schedule parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ConfigRule(input, extensionRegistry); + return new Constraint_Schedule(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<ConfigRule> parser() { + public static com.google.protobuf.Parser<Constraint_Schedule> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<ConfigRule> getParserForType() { + public com.google.protobuf.Parser<Constraint_Schedule> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.ConfigRule getDefaultInstanceForType() { + public context.ContextOuterClass.Constraint_Schedule getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface Constraint_CustomOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Constraint_Custom) + public interface GPS_PositionOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.GPS_Position) com.google.protobuf.MessageOrBuilder { /** - * <code>string constraint_type = 1;</code> - * @return The constraintType. - */ - java.lang.String getConstraintType(); - /** - * <code>string constraint_type = 1;</code> - * @return The bytes for constraintType. + * <code>float latitude = 1;</code> + * @return The latitude. */ - com.google.protobuf.ByteString - getConstraintTypeBytes(); + float getLatitude(); /** - * <code>string constraint_value = 2;</code> - * @return The constraintValue. - */ - java.lang.String getConstraintValue(); - /** - * <code>string constraint_value = 2;</code> - * @return The bytes for constraintValue. + * <code>float longitude = 2;</code> + * @return The longitude. */ - com.google.protobuf.ByteString - getConstraintValueBytes(); + float getLongitude(); } /** - * <pre> - * ----- Constraint ---------------------------------------------------------------------------------------------------- - * </pre> - * - * Protobuf type {@code context.Constraint_Custom} + * Protobuf type {@code context.GPS_Position} */ - public static final class Constraint_Custom extends + public static final class GPS_Position extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Constraint_Custom) - Constraint_CustomOrBuilder { + // @@protoc_insertion_point(message_implements:context.GPS_Position) + GPS_PositionOrBuilder { private static final long serialVersionUID = 0L; - // Use Constraint_Custom.newBuilder() to construct. - private Constraint_Custom(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use GPS_Position.newBuilder() to construct. + private GPS_Position(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private Constraint_Custom() { - constraintType_ = ""; - constraintValue_ = ""; + private GPS_Position() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new Constraint_Custom(); + return new GPS_Position(); } @java.lang.Override @@ -51477,7 +62504,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private Constraint_Custom( + private GPS_Position( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -51495,16 +62522,14 @@ public final class ContextOuterClass { case 0: done = true; break; - case 10: { - java.lang.String s = input.readStringRequireUtf8(); + case 13: { - constraintType_ = s; + latitude_ = input.readFloat(); break; } - case 18: { - java.lang.String s = input.readStringRequireUtf8(); + case 21: { - constraintValue_ = s; + longitude_ = input.readFloat(); break; } default: { @@ -51528,91 +62553,37 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_Custom_descriptor; + return context.ContextOuterClass.internal_static_context_GPS_Position_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_Custom_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_GPS_Position_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_Custom.class, context.ContextOuterClass.Constraint_Custom.Builder.class); + context.ContextOuterClass.GPS_Position.class, context.ContextOuterClass.GPS_Position.Builder.class); } - public static final int CONSTRAINT_TYPE_FIELD_NUMBER = 1; - private volatile java.lang.Object constraintType_; - /** - * <code>string constraint_type = 1;</code> - * @return The constraintType. - */ - @java.lang.Override - public java.lang.String getConstraintType() { - java.lang.Object ref = constraintType_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - constraintType_ = s; - return s; - } - } + public static final int LATITUDE_FIELD_NUMBER = 1; + private float latitude_; /** - * <code>string constraint_type = 1;</code> - * @return The bytes for constraintType. + * <code>float latitude = 1;</code> + * @return The latitude. */ @java.lang.Override - public com.google.protobuf.ByteString - getConstraintTypeBytes() { - java.lang.Object ref = constraintType_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - constraintType_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public float getLatitude() { + return latitude_; } - public static final int CONSTRAINT_VALUE_FIELD_NUMBER = 2; - private volatile java.lang.Object constraintValue_; - /** - * <code>string constraint_value = 2;</code> - * @return The constraintValue. - */ - @java.lang.Override - public java.lang.String getConstraintValue() { - java.lang.Object ref = constraintValue_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - constraintValue_ = s; - return s; - } - } + public static final int LONGITUDE_FIELD_NUMBER = 2; + private float longitude_; /** - * <code>string constraint_value = 2;</code> - * @return The bytes for constraintValue. + * <code>float longitude = 2;</code> + * @return The longitude. */ @java.lang.Override - public com.google.protobuf.ByteString - getConstraintValueBytes() { - java.lang.Object ref = constraintValue_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - constraintValue_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public float getLongitude() { + return longitude_; } private byte memoizedIsInitialized = -1; @@ -51629,11 +62600,11 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getConstraintTypeBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 1, constraintType_); + if (latitude_ != 0F) { + output.writeFloat(1, latitude_); } - if (!getConstraintValueBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, constraintValue_); + if (longitude_ != 0F) { + output.writeFloat(2, longitude_); } unknownFields.writeTo(output); } @@ -51644,11 +62615,13 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (!getConstraintTypeBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, constraintType_); + if (latitude_ != 0F) { + size += com.google.protobuf.CodedOutputStream + .computeFloatSize(1, latitude_); } - if (!getConstraintValueBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, constraintValue_); + if (longitude_ != 0F) { + size += com.google.protobuf.CodedOutputStream + .computeFloatSize(2, longitude_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -51660,15 +62633,17 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.Constraint_Custom)) { + if (!(obj instanceof context.ContextOuterClass.GPS_Position)) { return super.equals(obj); } - context.ContextOuterClass.Constraint_Custom other = (context.ContextOuterClass.Constraint_Custom) obj; + context.ContextOuterClass.GPS_Position other = (context.ContextOuterClass.GPS_Position) obj; - if (!getConstraintType() - .equals(other.getConstraintType())) return false; - if (!getConstraintValue() - .equals(other.getConstraintValue())) return false; + if (java.lang.Float.floatToIntBits(getLatitude()) + != java.lang.Float.floatToIntBits( + other.getLatitude())) return false; + if (java.lang.Float.floatToIntBits(getLongitude()) + != java.lang.Float.floatToIntBits( + other.getLongitude())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -51680,78 +62655,80 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + CONSTRAINT_TYPE_FIELD_NUMBER; - hash = (53 * hash) + getConstraintType().hashCode(); - hash = (37 * hash) + CONSTRAINT_VALUE_FIELD_NUMBER; - hash = (53 * hash) + getConstraintValue().hashCode(); + hash = (37 * hash) + LATITUDE_FIELD_NUMBER; + hash = (53 * hash) + java.lang.Float.floatToIntBits( + getLatitude()); + hash = (37 * hash) + LONGITUDE_FIELD_NUMBER; + hash = (53 * hash) + java.lang.Float.floatToIntBits( + getLongitude()); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.Constraint_Custom parseFrom( + public static context.ContextOuterClass.GPS_Position parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_Custom parseFrom( + public static context.ContextOuterClass.GPS_Position parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_Custom parseFrom( + public static context.ContextOuterClass.GPS_Position parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_Custom parseFrom( + public static context.ContextOuterClass.GPS_Position parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_Custom parseFrom(byte[] data) + public static context.ContextOuterClass.GPS_Position parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_Custom parseFrom( + public static context.ContextOuterClass.GPS_Position parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_Custom parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.GPS_Position parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_Custom parseFrom( + public static context.ContextOuterClass.GPS_Position 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 context.ContextOuterClass.Constraint_Custom parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.GPS_Position parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_Custom parseDelimitedFrom( + public static context.ContextOuterClass.GPS_Position 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 context.ContextOuterClass.Constraint_Custom parseFrom( + public static context.ContextOuterClass.GPS_Position parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_Custom parseFrom( + public static context.ContextOuterClass.GPS_Position parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -51764,7 +62741,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.Constraint_Custom prototype) { + public static Builder newBuilder(context.ContextOuterClass.GPS_Position prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -51780,30 +62757,26 @@ public final class ContextOuterClass { return builder; } /** - * <pre> - * ----- Constraint ---------------------------------------------------------------------------------------------------- - * </pre> - * - * Protobuf type {@code context.Constraint_Custom} + * Protobuf type {@code context.GPS_Position} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Constraint_Custom) - context.ContextOuterClass.Constraint_CustomOrBuilder { + // @@protoc_insertion_point(builder_implements:context.GPS_Position) + context.ContextOuterClass.GPS_PositionOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_Custom_descriptor; + return context.ContextOuterClass.internal_static_context_GPS_Position_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_Custom_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_GPS_Position_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_Custom.class, context.ContextOuterClass.Constraint_Custom.Builder.class); + context.ContextOuterClass.GPS_Position.class, context.ContextOuterClass.GPS_Position.Builder.class); } - // Construct using context.ContextOuterClass.Constraint_Custom.newBuilder() + // Construct using context.ContextOuterClass.GPS_Position.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -51821,9 +62794,9 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - constraintType_ = ""; + latitude_ = 0F; - constraintValue_ = ""; + longitude_ = 0F; return this; } @@ -51831,17 +62804,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Constraint_Custom_descriptor; + return context.ContextOuterClass.internal_static_context_GPS_Position_descriptor; } @java.lang.Override - public context.ContextOuterClass.Constraint_Custom getDefaultInstanceForType() { - return context.ContextOuterClass.Constraint_Custom.getDefaultInstance(); + public context.ContextOuterClass.GPS_Position getDefaultInstanceForType() { + return context.ContextOuterClass.GPS_Position.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.Constraint_Custom build() { - context.ContextOuterClass.Constraint_Custom result = buildPartial(); + public context.ContextOuterClass.GPS_Position build() { + context.ContextOuterClass.GPS_Position result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -51849,10 +62822,10 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.Constraint_Custom buildPartial() { - context.ContextOuterClass.Constraint_Custom result = new context.ContextOuterClass.Constraint_Custom(this); - result.constraintType_ = constraintType_; - result.constraintValue_ = constraintValue_; + public context.ContextOuterClass.GPS_Position buildPartial() { + context.ContextOuterClass.GPS_Position result = new context.ContextOuterClass.GPS_Position(this); + result.latitude_ = latitude_; + result.longitude_ = longitude_; onBuilt(); return result; } @@ -51891,23 +62864,21 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.Constraint_Custom) { - return mergeFrom((context.ContextOuterClass.Constraint_Custom)other); + if (other instanceof context.ContextOuterClass.GPS_Position) { + return mergeFrom((context.ContextOuterClass.GPS_Position)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.Constraint_Custom other) { - if (other == context.ContextOuterClass.Constraint_Custom.getDefaultInstance()) return this; - if (!other.getConstraintType().isEmpty()) { - constraintType_ = other.constraintType_; - onChanged(); + public Builder mergeFrom(context.ContextOuterClass.GPS_Position other) { + if (other == context.ContextOuterClass.GPS_Position.getDefaultInstance()) return this; + if (other.getLatitude() != 0F) { + setLatitude(other.getLatitude()); } - if (!other.getConstraintValue().isEmpty()) { - constraintValue_ = other.constraintValue_; - onChanged(); + if (other.getLongitude() != 0F) { + setLongitude(other.getLongitude()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -51920,172 +62891,82 @@ public final class ContextOuterClass { } @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - context.ContextOuterClass.Constraint_Custom parsedMessage = null; - try { - parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Constraint_Custom) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); - } - } - return this; - } - - private java.lang.Object constraintType_ = ""; - /** - * <code>string constraint_type = 1;</code> - * @return The constraintType. - */ - public java.lang.String getConstraintType() { - java.lang.Object ref = constraintType_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - constraintType_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - /** - * <code>string constraint_type = 1;</code> - * @return The bytes for constraintType. - */ - public com.google.protobuf.ByteString - getConstraintTypeBytes() { - java.lang.Object ref = constraintType_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - constraintType_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + context.ContextOuterClass.GPS_Position parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.GPS_Position) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } } + return this; } + + private float latitude_ ; /** - * <code>string constraint_type = 1;</code> - * @param value The constraintType to set. - * @return This builder for chaining. + * <code>float latitude = 1;</code> + * @return The latitude. */ - public Builder setConstraintType( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - constraintType_ = value; - onChanged(); - return this; + @java.lang.Override + public float getLatitude() { + return latitude_; } /** - * <code>string constraint_type = 1;</code> + * <code>float latitude = 1;</code> + * @param value The latitude to set. * @return This builder for chaining. */ - public Builder clearConstraintType() { + public Builder setLatitude(float value) { - constraintType_ = getDefaultInstance().getConstraintType(); + latitude_ = value; onChanged(); return this; } /** - * <code>string constraint_type = 1;</code> - * @param value The bytes for constraintType to set. + * <code>float latitude = 1;</code> * @return This builder for chaining. */ - public Builder setConstraintTypeBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); + public Builder clearLatitude() { - constraintType_ = value; + latitude_ = 0F; onChanged(); return this; } - private java.lang.Object constraintValue_ = ""; - /** - * <code>string constraint_value = 2;</code> - * @return The constraintValue. - */ - public java.lang.String getConstraintValue() { - java.lang.Object ref = constraintValue_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - constraintValue_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - /** - * <code>string constraint_value = 2;</code> - * @return The bytes for constraintValue. - */ - public com.google.protobuf.ByteString - getConstraintValueBytes() { - java.lang.Object ref = constraintValue_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - constraintValue_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + private float longitude_ ; /** - * <code>string constraint_value = 2;</code> - * @param value The constraintValue to set. - * @return This builder for chaining. + * <code>float longitude = 2;</code> + * @return The longitude. */ - public Builder setConstraintValue( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - constraintValue_ = value; - onChanged(); - return this; + @java.lang.Override + public float getLongitude() { + return longitude_; } /** - * <code>string constraint_value = 2;</code> + * <code>float longitude = 2;</code> + * @param value The longitude to set. * @return This builder for chaining. */ - public Builder clearConstraintValue() { + public Builder setLongitude(float value) { - constraintValue_ = getDefaultInstance().getConstraintValue(); + longitude_ = value; onChanged(); return this; } /** - * <code>string constraint_value = 2;</code> - * @param value The bytes for constraintValue to set. + * <code>float longitude = 2;</code> * @return This builder for chaining. */ - public Builder setConstraintValueBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); + public Builder clearLongitude() { - constraintValue_ = value; + longitude_ = 0F; onChanged(); return this; } @@ -52102,82 +62983,104 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.Constraint_Custom) + // @@protoc_insertion_point(builder_scope:context.GPS_Position) } - // @@protoc_insertion_point(class_scope:context.Constraint_Custom) - private static final context.ContextOuterClass.Constraint_Custom DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.GPS_Position) + private static final context.ContextOuterClass.GPS_Position DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_Custom(); + DEFAULT_INSTANCE = new context.ContextOuterClass.GPS_Position(); } - public static context.ContextOuterClass.Constraint_Custom getDefaultInstance() { + public static context.ContextOuterClass.GPS_Position getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<Constraint_Custom> - PARSER = new com.google.protobuf.AbstractParser<Constraint_Custom>() { + private static final com.google.protobuf.Parser<GPS_Position> + PARSER = new com.google.protobuf.AbstractParser<GPS_Position>() { @java.lang.Override - public Constraint_Custom parsePartialFrom( + public GPS_Position parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new Constraint_Custom(input, extensionRegistry); + return new GPS_Position(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<Constraint_Custom> parser() { + public static com.google.protobuf.Parser<GPS_Position> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<Constraint_Custom> getParserForType() { + public com.google.protobuf.Parser<GPS_Position> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.Constraint_Custom getDefaultInstanceForType() { + public context.ContextOuterClass.GPS_Position getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface Constraint_ScheduleOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Constraint_Schedule) + public interface LocationOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Location) com.google.protobuf.MessageOrBuilder { /** - * <code>float start_timestamp = 1;</code> - * @return The startTimestamp. + * <code>string region = 1;</code> + * @return Whether the region field is set. */ - float getStartTimestamp(); + boolean hasRegion(); + /** + * <code>string region = 1;</code> + * @return The region. + */ + java.lang.String getRegion(); + /** + * <code>string region = 1;</code> + * @return The bytes for region. + */ + com.google.protobuf.ByteString + getRegionBytes(); /** - * <code>float duration_days = 2;</code> - * @return The durationDays. + * <code>.context.GPS_Position gps_position = 2;</code> + * @return Whether the gpsPosition field is set. */ - float getDurationDays(); + boolean hasGpsPosition(); + /** + * <code>.context.GPS_Position gps_position = 2;</code> + * @return The gpsPosition. + */ + context.ContextOuterClass.GPS_Position getGpsPosition(); + /** + * <code>.context.GPS_Position gps_position = 2;</code> + */ + context.ContextOuterClass.GPS_PositionOrBuilder getGpsPositionOrBuilder(); + + public context.ContextOuterClass.Location.LocationCase getLocationCase(); } /** - * Protobuf type {@code context.Constraint_Schedule} + * Protobuf type {@code context.Location} */ - public static final class Constraint_Schedule extends + public static final class Location extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Constraint_Schedule) - Constraint_ScheduleOrBuilder { + // @@protoc_insertion_point(message_implements:context.Location) + LocationOrBuilder { private static final long serialVersionUID = 0L; - // Use Constraint_Schedule.newBuilder() to construct. - private Constraint_Schedule(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Location.newBuilder() to construct. + private Location(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private Constraint_Schedule() { + private Location() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new Constraint_Schedule(); + return new Location(); } @java.lang.Override @@ -52185,7 +63088,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private Constraint_Schedule( + private Location( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -52203,14 +63106,24 @@ public final class ContextOuterClass { case 0: done = true; break; - case 13: { - - startTimestamp_ = input.readFloat(); + case 10: { + java.lang.String s = input.readStringRequireUtf8(); + locationCase_ = 1; + location_ = s; break; } - case 21: { - - durationDays_ = input.readFloat(); + case 18: { + context.ContextOuterClass.GPS_Position.Builder subBuilder = null; + if (locationCase_ == 2) { + subBuilder = ((context.ContextOuterClass.GPS_Position) location_).toBuilder(); + } + location_ = + input.readMessage(context.ContextOuterClass.GPS_Position.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom((context.ContextOuterClass.GPS_Position) location_); + location_ = subBuilder.buildPartial(); + } + locationCase_ = 2; break; } default: { @@ -52234,37 +63147,139 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_Schedule_descriptor; + return context.ContextOuterClass.internal_static_context_Location_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_Schedule_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Location_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_Schedule.class, context.ContextOuterClass.Constraint_Schedule.Builder.class); + context.ContextOuterClass.Location.class, context.ContextOuterClass.Location.Builder.class); } - public static final int START_TIMESTAMP_FIELD_NUMBER = 1; - private float startTimestamp_; + private int locationCase_ = 0; + private java.lang.Object location_; + public enum LocationCase + implements com.google.protobuf.Internal.EnumLite, + com.google.protobuf.AbstractMessage.InternalOneOfEnum { + REGION(1), + GPS_POSITION(2), + LOCATION_NOT_SET(0); + private final int value; + private LocationCase(int value) { + this.value = value; + } + /** + * @param value The number of the enum to look for. + * @return The enum associated with the given number. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static LocationCase valueOf(int value) { + return forNumber(value); + } + + public static LocationCase forNumber(int value) { + switch (value) { + case 1: return REGION; + case 2: return GPS_POSITION; + case 0: return LOCATION_NOT_SET; + default: return null; + } + } + public int getNumber() { + return this.value; + } + }; + + public LocationCase + getLocationCase() { + return LocationCase.forNumber( + locationCase_); + } + + public static final int REGION_FIELD_NUMBER = 1; /** - * <code>float start_timestamp = 1;</code> - * @return The startTimestamp. + * <code>string region = 1;</code> + * @return Whether the region field is set. */ - @java.lang.Override - public float getStartTimestamp() { - return startTimestamp_; + public boolean hasRegion() { + return locationCase_ == 1; + } + /** + * <code>string region = 1;</code> + * @return The region. + */ + public java.lang.String getRegion() { + java.lang.Object ref = ""; + if (locationCase_ == 1) { + ref = location_; + } + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + if (locationCase_ == 1) { + location_ = s; + } + return s; + } + } + /** + * <code>string region = 1;</code> + * @return The bytes for region. + */ + public com.google.protobuf.ByteString + getRegionBytes() { + java.lang.Object ref = ""; + if (locationCase_ == 1) { + ref = location_; + } + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + if (locationCase_ == 1) { + location_ = b; + } + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } - public static final int DURATION_DAYS_FIELD_NUMBER = 2; - private float durationDays_; + public static final int GPS_POSITION_FIELD_NUMBER = 2; /** - * <code>float duration_days = 2;</code> - * @return The durationDays. + * <code>.context.GPS_Position gps_position = 2;</code> + * @return Whether the gpsPosition field is set. */ @java.lang.Override - public float getDurationDays() { - return durationDays_; + public boolean hasGpsPosition() { + return locationCase_ == 2; + } + /** + * <code>.context.GPS_Position gps_position = 2;</code> + * @return The gpsPosition. + */ + @java.lang.Override + public context.ContextOuterClass.GPS_Position getGpsPosition() { + if (locationCase_ == 2) { + return (context.ContextOuterClass.GPS_Position) location_; + } + return context.ContextOuterClass.GPS_Position.getDefaultInstance(); + } + /** + * <code>.context.GPS_Position gps_position = 2;</code> + */ + @java.lang.Override + public context.ContextOuterClass.GPS_PositionOrBuilder getGpsPositionOrBuilder() { + if (locationCase_ == 2) { + return (context.ContextOuterClass.GPS_Position) location_; + } + return context.ContextOuterClass.GPS_Position.getDefaultInstance(); } private byte memoizedIsInitialized = -1; @@ -52281,11 +63296,11 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (startTimestamp_ != 0F) { - output.writeFloat(1, startTimestamp_); + if (locationCase_ == 1) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, location_); } - if (durationDays_ != 0F) { - output.writeFloat(2, durationDays_); + if (locationCase_ == 2) { + output.writeMessage(2, (context.ContextOuterClass.GPS_Position) location_); } unknownFields.writeTo(output); } @@ -52296,13 +63311,12 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (startTimestamp_ != 0F) { - size += com.google.protobuf.CodedOutputStream - .computeFloatSize(1, startTimestamp_); + if (locationCase_ == 1) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, location_); } - if (durationDays_ != 0F) { + if (locationCase_ == 2) { size += com.google.protobuf.CodedOutputStream - .computeFloatSize(2, durationDays_); + .computeMessageSize(2, (context.ContextOuterClass.GPS_Position) location_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -52314,17 +63328,24 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.Constraint_Schedule)) { + if (!(obj instanceof context.ContextOuterClass.Location)) { return super.equals(obj); } - context.ContextOuterClass.Constraint_Schedule other = (context.ContextOuterClass.Constraint_Schedule) obj; + context.ContextOuterClass.Location other = (context.ContextOuterClass.Location) obj; - if (java.lang.Float.floatToIntBits(getStartTimestamp()) - != java.lang.Float.floatToIntBits( - other.getStartTimestamp())) return false; - if (java.lang.Float.floatToIntBits(getDurationDays()) - != java.lang.Float.floatToIntBits( - other.getDurationDays())) return false; + if (!getLocationCase().equals(other.getLocationCase())) return false; + switch (locationCase_) { + case 1: + if (!getRegion() + .equals(other.getRegion())) return false; + break; + case 2: + if (!getGpsPosition() + .equals(other.getGpsPosition())) return false; + break; + case 0: + default: + } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -52336,80 +63357,86 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + START_TIMESTAMP_FIELD_NUMBER; - hash = (53 * hash) + java.lang.Float.floatToIntBits( - getStartTimestamp()); - hash = (37 * hash) + DURATION_DAYS_FIELD_NUMBER; - hash = (53 * hash) + java.lang.Float.floatToIntBits( - getDurationDays()); + switch (locationCase_) { + case 1: + hash = (37 * hash) + REGION_FIELD_NUMBER; + hash = (53 * hash) + getRegion().hashCode(); + break; + case 2: + hash = (37 * hash) + GPS_POSITION_FIELD_NUMBER; + hash = (53 * hash) + getGpsPosition().hashCode(); + break; + case 0: + default: + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.Constraint_Schedule parseFrom( + public static context.ContextOuterClass.Location parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_Schedule parseFrom( + public static context.ContextOuterClass.Location parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_Schedule parseFrom( + public static context.ContextOuterClass.Location parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_Schedule parseFrom( + public static context.ContextOuterClass.Location parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_Schedule parseFrom(byte[] data) + public static context.ContextOuterClass.Location parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_Schedule parseFrom( + public static context.ContextOuterClass.Location parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_Schedule parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Location parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_Schedule parseFrom( + public static context.ContextOuterClass.Location 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 context.ContextOuterClass.Constraint_Schedule parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Location parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_Schedule parseDelimitedFrom( + public static context.ContextOuterClass.Location 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 context.ContextOuterClass.Constraint_Schedule parseFrom( + public static context.ContextOuterClass.Location parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_Schedule parseFrom( + public static context.ContextOuterClass.Location parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -52422,7 +63449,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.Constraint_Schedule prototype) { + public static Builder newBuilder(context.ContextOuterClass.Location prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -52438,26 +63465,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.Constraint_Schedule} + * Protobuf type {@code context.Location} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Constraint_Schedule) - context.ContextOuterClass.Constraint_ScheduleOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Location) + context.ContextOuterClass.LocationOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_Schedule_descriptor; + return context.ContextOuterClass.internal_static_context_Location_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_Schedule_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Location_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_Schedule.class, context.ContextOuterClass.Constraint_Schedule.Builder.class); + context.ContextOuterClass.Location.class, context.ContextOuterClass.Location.Builder.class); } - // Construct using context.ContextOuterClass.Constraint_Schedule.newBuilder() + // Construct using context.ContextOuterClass.Location.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -52475,27 +63502,25 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - startTimestamp_ = 0F; - - durationDays_ = 0F; - + locationCase_ = 0; + location_ = null; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Constraint_Schedule_descriptor; + return context.ContextOuterClass.internal_static_context_Location_descriptor; } @java.lang.Override - public context.ContextOuterClass.Constraint_Schedule getDefaultInstanceForType() { - return context.ContextOuterClass.Constraint_Schedule.getDefaultInstance(); + public context.ContextOuterClass.Location getDefaultInstanceForType() { + return context.ContextOuterClass.Location.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.Constraint_Schedule build() { - context.ContextOuterClass.Constraint_Schedule result = buildPartial(); + public context.ContextOuterClass.Location build() { + context.ContextOuterClass.Location result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -52503,10 +63528,19 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.Constraint_Schedule buildPartial() { - context.ContextOuterClass.Constraint_Schedule result = new context.ContextOuterClass.Constraint_Schedule(this); - result.startTimestamp_ = startTimestamp_; - result.durationDays_ = durationDays_; + public context.ContextOuterClass.Location buildPartial() { + context.ContextOuterClass.Location result = new context.ContextOuterClass.Location(this); + if (locationCase_ == 1) { + result.location_ = location_; + } + if (locationCase_ == 2) { + if (gpsPositionBuilder_ == null) { + result.location_ = location_; + } else { + result.location_ = gpsPositionBuilder_.build(); + } + } + result.locationCase_ = locationCase_; onBuilt(); return result; } @@ -52545,21 +63579,30 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.Constraint_Schedule) { - return mergeFrom((context.ContextOuterClass.Constraint_Schedule)other); + if (other instanceof context.ContextOuterClass.Location) { + return mergeFrom((context.ContextOuterClass.Location)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.Constraint_Schedule other) { - if (other == context.ContextOuterClass.Constraint_Schedule.getDefaultInstance()) return this; - if (other.getStartTimestamp() != 0F) { - setStartTimestamp(other.getStartTimestamp()); - } - if (other.getDurationDays() != 0F) { - setDurationDays(other.getDurationDays()); + public Builder mergeFrom(context.ContextOuterClass.Location other) { + if (other == context.ContextOuterClass.Location.getDefaultInstance()) return this; + switch (other.getLocationCase()) { + case REGION: { + locationCase_ = 1; + location_ = other.location_; + onChanged(); + break; + } + case GPS_POSITION: { + mergeGpsPosition(other.getGpsPosition()); + break; + } + case LOCATION_NOT_SET: { + break; + } } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -52576,11 +63619,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.Constraint_Schedule parsedMessage = null; + context.ContextOuterClass.Location parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Constraint_Schedule) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.Location) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -52589,68 +63632,259 @@ public final class ContextOuterClass { } return this; } + private int locationCase_ = 0; + private java.lang.Object location_; + public LocationCase + getLocationCase() { + return LocationCase.forNumber( + locationCase_); + } + + public Builder clearLocation() { + locationCase_ = 0; + location_ = null; + onChanged(); + return this; + } + - private float startTimestamp_ ; /** - * <code>float start_timestamp = 1;</code> - * @return The startTimestamp. + * <code>string region = 1;</code> + * @return Whether the region field is set. */ @java.lang.Override - public float getStartTimestamp() { - return startTimestamp_; + public boolean hasRegion() { + return locationCase_ == 1; } /** - * <code>float start_timestamp = 1;</code> - * @param value The startTimestamp to set. + * <code>string region = 1;</code> + * @return The region. + */ + @java.lang.Override + public java.lang.String getRegion() { + java.lang.Object ref = ""; + if (locationCase_ == 1) { + ref = location_; + } + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + if (locationCase_ == 1) { + location_ = s; + } + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * <code>string region = 1;</code> + * @return The bytes for region. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getRegionBytes() { + java.lang.Object ref = ""; + if (locationCase_ == 1) { + ref = location_; + } + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + if (locationCase_ == 1) { + location_ = b; + } + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * <code>string region = 1;</code> + * @param value The region to set. * @return This builder for chaining. */ - public Builder setStartTimestamp(float value) { - - startTimestamp_ = value; + public Builder setRegion( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + locationCase_ = 1; + location_ = value; onChanged(); return this; } /** - * <code>float start_timestamp = 1;</code> + * <code>string region = 1;</code> * @return This builder for chaining. */ - public Builder clearStartTimestamp() { - - startTimestamp_ = 0F; + public Builder clearRegion() { + if (locationCase_ == 1) { + locationCase_ = 0; + location_ = null; + onChanged(); + } + return this; + } + /** + * <code>string region = 1;</code> + * @param value The bytes for region to set. + * @return This builder for chaining. + */ + public Builder setRegionBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + locationCase_ = 1; + location_ = value; onChanged(); return this; } - private float durationDays_ ; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.GPS_Position, context.ContextOuterClass.GPS_Position.Builder, context.ContextOuterClass.GPS_PositionOrBuilder> gpsPositionBuilder_; /** - * <code>float duration_days = 2;</code> - * @return The durationDays. + * <code>.context.GPS_Position gps_position = 2;</code> + * @return Whether the gpsPosition field is set. */ @java.lang.Override - public float getDurationDays() { - return durationDays_; + public boolean hasGpsPosition() { + return locationCase_ == 2; } /** - * <code>float duration_days = 2;</code> - * @param value The durationDays to set. - * @return This builder for chaining. + * <code>.context.GPS_Position gps_position = 2;</code> + * @return The gpsPosition. */ - public Builder setDurationDays(float value) { - - durationDays_ = value; - onChanged(); + @java.lang.Override + public context.ContextOuterClass.GPS_Position getGpsPosition() { + if (gpsPositionBuilder_ == null) { + if (locationCase_ == 2) { + return (context.ContextOuterClass.GPS_Position) location_; + } + return context.ContextOuterClass.GPS_Position.getDefaultInstance(); + } else { + if (locationCase_ == 2) { + return gpsPositionBuilder_.getMessage(); + } + return context.ContextOuterClass.GPS_Position.getDefaultInstance(); + } + } + /** + * <code>.context.GPS_Position gps_position = 2;</code> + */ + public Builder setGpsPosition(context.ContextOuterClass.GPS_Position value) { + if (gpsPositionBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + location_ = value; + onChanged(); + } else { + gpsPositionBuilder_.setMessage(value); + } + locationCase_ = 2; return this; } /** - * <code>float duration_days = 2;</code> - * @return This builder for chaining. + * <code>.context.GPS_Position gps_position = 2;</code> */ - public Builder clearDurationDays() { - - durationDays_ = 0F; - onChanged(); + public Builder setGpsPosition( + context.ContextOuterClass.GPS_Position.Builder builderForValue) { + if (gpsPositionBuilder_ == null) { + location_ = builderForValue.build(); + onChanged(); + } else { + gpsPositionBuilder_.setMessage(builderForValue.build()); + } + locationCase_ = 2; + return this; + } + /** + * <code>.context.GPS_Position gps_position = 2;</code> + */ + public Builder mergeGpsPosition(context.ContextOuterClass.GPS_Position value) { + if (gpsPositionBuilder_ == null) { + if (locationCase_ == 2 && + location_ != context.ContextOuterClass.GPS_Position.getDefaultInstance()) { + location_ = context.ContextOuterClass.GPS_Position.newBuilder((context.ContextOuterClass.GPS_Position) location_) + .mergeFrom(value).buildPartial(); + } else { + location_ = value; + } + onChanged(); + } else { + if (locationCase_ == 2) { + gpsPositionBuilder_.mergeFrom(value); + } + gpsPositionBuilder_.setMessage(value); + } + locationCase_ = 2; + return this; + } + /** + * <code>.context.GPS_Position gps_position = 2;</code> + */ + public Builder clearGpsPosition() { + if (gpsPositionBuilder_ == null) { + if (locationCase_ == 2) { + locationCase_ = 0; + location_ = null; + onChanged(); + } + } else { + if (locationCase_ == 2) { + locationCase_ = 0; + location_ = null; + } + gpsPositionBuilder_.clear(); + } return this; } + /** + * <code>.context.GPS_Position gps_position = 2;</code> + */ + public context.ContextOuterClass.GPS_Position.Builder getGpsPositionBuilder() { + return getGpsPositionFieldBuilder().getBuilder(); + } + /** + * <code>.context.GPS_Position gps_position = 2;</code> + */ + @java.lang.Override + public context.ContextOuterClass.GPS_PositionOrBuilder getGpsPositionOrBuilder() { + if ((locationCase_ == 2) && (gpsPositionBuilder_ != null)) { + return gpsPositionBuilder_.getMessageOrBuilder(); + } else { + if (locationCase_ == 2) { + return (context.ContextOuterClass.GPS_Position) location_; + } + return context.ContextOuterClass.GPS_Position.getDefaultInstance(); + } + } + /** + * <code>.context.GPS_Position gps_position = 2;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.GPS_Position, context.ContextOuterClass.GPS_Position.Builder, context.ContextOuterClass.GPS_PositionOrBuilder> + getGpsPositionFieldBuilder() { + if (gpsPositionBuilder_ == null) { + if (!(locationCase_ == 2)) { + location_ = context.ContextOuterClass.GPS_Position.getDefaultInstance(); + } + gpsPositionBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.GPS_Position, context.ContextOuterClass.GPS_Position.Builder, context.ContextOuterClass.GPS_PositionOrBuilder>( + (context.ContextOuterClass.GPS_Position) location_, + getParentForChildren(), + isClean()); + location_ = null; + } + locationCase_ = 2; + onChanged();; + return gpsPositionBuilder_; + } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { @@ -52664,82 +63898,100 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.Constraint_Schedule) + // @@protoc_insertion_point(builder_scope:context.Location) } - // @@protoc_insertion_point(class_scope:context.Constraint_Schedule) - private static final context.ContextOuterClass.Constraint_Schedule DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Location) + private static final context.ContextOuterClass.Location DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_Schedule(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Location(); } - public static context.ContextOuterClass.Constraint_Schedule getDefaultInstance() { + public static context.ContextOuterClass.Location getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<Constraint_Schedule> - PARSER = new com.google.protobuf.AbstractParser<Constraint_Schedule>() { + private static final com.google.protobuf.Parser<Location> + PARSER = new com.google.protobuf.AbstractParser<Location>() { @java.lang.Override - public Constraint_Schedule parsePartialFrom( + public Location parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new Constraint_Schedule(input, extensionRegistry); + return new Location(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<Constraint_Schedule> parser() { + public static com.google.protobuf.Parser<Location> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<Constraint_Schedule> getParserForType() { + public com.google.protobuf.Parser<Location> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.Constraint_Schedule getDefaultInstanceForType() { + public context.ContextOuterClass.Location getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface GPS_PositionOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.GPS_Position) + public interface Constraint_EndPointLocationOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Constraint_EndPointLocation) com.google.protobuf.MessageOrBuilder { /** - * <code>float latitude = 1;</code> - * @return The latitude. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ - float getLatitude(); + boolean hasEndpointId(); + /** + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. + */ + context.ContextOuterClass.EndPointId getEndpointId(); + /** + * <code>.context.EndPointId endpoint_id = 1;</code> + */ + context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder(); /** - * <code>float longitude = 2;</code> - * @return The longitude. + * <code>.context.Location location = 2;</code> + * @return Whether the location field is set. */ - float getLongitude(); + boolean hasLocation(); + /** + * <code>.context.Location location = 2;</code> + * @return The location. + */ + context.ContextOuterClass.Location getLocation(); + /** + * <code>.context.Location location = 2;</code> + */ + context.ContextOuterClass.LocationOrBuilder getLocationOrBuilder(); } /** - * Protobuf type {@code context.GPS_Position} + * Protobuf type {@code context.Constraint_EndPointLocation} */ - public static final class GPS_Position extends + public static final class Constraint_EndPointLocation extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.GPS_Position) - GPS_PositionOrBuilder { + // @@protoc_insertion_point(message_implements:context.Constraint_EndPointLocation) + Constraint_EndPointLocationOrBuilder { private static final long serialVersionUID = 0L; - // Use GPS_Position.newBuilder() to construct. - private GPS_Position(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Constraint_EndPointLocation.newBuilder() to construct. + private Constraint_EndPointLocation(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private GPS_Position() { + private Constraint_EndPointLocation() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new GPS_Position(); + return new Constraint_EndPointLocation(); } @java.lang.Override @@ -52747,7 +63999,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private GPS_Position( + private Constraint_EndPointLocation( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -52765,14 +64017,30 @@ public final class ContextOuterClass { case 0: done = true; break; - case 13: { + case 10: { + context.ContextOuterClass.EndPointId.Builder subBuilder = null; + if (endpointId_ != null) { + subBuilder = endpointId_.toBuilder(); + } + endpointId_ = input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(endpointId_); + endpointId_ = subBuilder.buildPartial(); + } - latitude_ = input.readFloat(); break; } - case 21: { + case 18: { + context.ContextOuterClass.Location.Builder subBuilder = null; + if (location_ != null) { + subBuilder = location_.toBuilder(); + } + location_ = input.readMessage(context.ContextOuterClass.Location.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(location_); + location_ = subBuilder.buildPartial(); + } - longitude_ = input.readFloat(); break; } default: { @@ -52796,37 +64064,67 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_GPS_Position_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_EndPointLocation_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_GPS_Position_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_EndPointLocation_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.GPS_Position.class, context.ContextOuterClass.GPS_Position.Builder.class); + context.ContextOuterClass.Constraint_EndPointLocation.class, context.ContextOuterClass.Constraint_EndPointLocation.Builder.class); } - public static final int LATITUDE_FIELD_NUMBER = 1; - private float latitude_; + public static final int ENDPOINT_ID_FIELD_NUMBER = 1; + private context.ContextOuterClass.EndPointId endpointId_; /** - * <code>float latitude = 1;</code> - * @return The latitude. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ @java.lang.Override - public float getLatitude() { - return latitude_; + public boolean hasEndpointId() { + return endpointId_ != null; + } + /** + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. + */ + @java.lang.Override + public context.ContextOuterClass.EndPointId getEndpointId() { + return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; + } + /** + * <code>.context.EndPointId endpoint_id = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { + return getEndpointId(); } - public static final int LONGITUDE_FIELD_NUMBER = 2; - private float longitude_; + public static final int LOCATION_FIELD_NUMBER = 2; + private context.ContextOuterClass.Location location_; /** - * <code>float longitude = 2;</code> - * @return The longitude. + * <code>.context.Location location = 2;</code> + * @return Whether the location field is set. */ @java.lang.Override - public float getLongitude() { - return longitude_; + public boolean hasLocation() { + return location_ != null; + } + /** + * <code>.context.Location location = 2;</code> + * @return The location. + */ + @java.lang.Override + public context.ContextOuterClass.Location getLocation() { + return location_ == null ? context.ContextOuterClass.Location.getDefaultInstance() : location_; + } + /** + * <code>.context.Location location = 2;</code> + */ + @java.lang.Override + public context.ContextOuterClass.LocationOrBuilder getLocationOrBuilder() { + return getLocation(); } private byte memoizedIsInitialized = -1; @@ -52843,11 +64141,11 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (latitude_ != 0F) { - output.writeFloat(1, latitude_); + if (endpointId_ != null) { + output.writeMessage(1, getEndpointId()); } - if (longitude_ != 0F) { - output.writeFloat(2, longitude_); + if (location_ != null) { + output.writeMessage(2, getLocation()); } unknownFields.writeTo(output); } @@ -52858,13 +64156,13 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (latitude_ != 0F) { + if (endpointId_ != null) { size += com.google.protobuf.CodedOutputStream - .computeFloatSize(1, latitude_); + .computeMessageSize(1, getEndpointId()); } - if (longitude_ != 0F) { + if (location_ != null) { size += com.google.protobuf.CodedOutputStream - .computeFloatSize(2, longitude_); + .computeMessageSize(2, getLocation()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -52876,17 +64174,21 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.GPS_Position)) { + if (!(obj instanceof context.ContextOuterClass.Constraint_EndPointLocation)) { return super.equals(obj); } - context.ContextOuterClass.GPS_Position other = (context.ContextOuterClass.GPS_Position) obj; + context.ContextOuterClass.Constraint_EndPointLocation other = (context.ContextOuterClass.Constraint_EndPointLocation) obj; - if (java.lang.Float.floatToIntBits(getLatitude()) - != java.lang.Float.floatToIntBits( - other.getLatitude())) return false; - if (java.lang.Float.floatToIntBits(getLongitude()) - != java.lang.Float.floatToIntBits( - other.getLongitude())) return false; + if (hasEndpointId() != other.hasEndpointId()) return false; + if (hasEndpointId()) { + if (!getEndpointId() + .equals(other.getEndpointId())) return false; + } + if (hasLocation() != other.hasLocation()) return false; + if (hasLocation()) { + if (!getLocation() + .equals(other.getLocation())) return false; + } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -52898,80 +64200,82 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + LATITUDE_FIELD_NUMBER; - hash = (53 * hash) + java.lang.Float.floatToIntBits( - getLatitude()); - hash = (37 * hash) + LONGITUDE_FIELD_NUMBER; - hash = (53 * hash) + java.lang.Float.floatToIntBits( - getLongitude()); + if (hasEndpointId()) { + hash = (37 * hash) + ENDPOINT_ID_FIELD_NUMBER; + hash = (53 * hash) + getEndpointId().hashCode(); + } + if (hasLocation()) { + hash = (37 * hash) + LOCATION_FIELD_NUMBER; + hash = (53 * hash) + getLocation().hashCode(); + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.GPS_Position parseFrom( + public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.GPS_Position parseFrom( + public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.GPS_Position parseFrom( + public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.GPS_Position parseFrom( + public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.GPS_Position parseFrom(byte[] data) + public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.GPS_Position parseFrom( + public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.GPS_Position parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.GPS_Position parseFrom( + public static context.ContextOuterClass.Constraint_EndPointLocation 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 context.ContextOuterClass.GPS_Position parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_EndPointLocation parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.GPS_Position parseDelimitedFrom( + public static context.ContextOuterClass.Constraint_EndPointLocation 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 context.ContextOuterClass.GPS_Position parseFrom( + public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.GPS_Position parseFrom( + public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -52984,7 +64288,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.GPS_Position prototype) { + public static Builder newBuilder(context.ContextOuterClass.Constraint_EndPointLocation prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -53000,26 +64304,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.GPS_Position} + * Protobuf type {@code context.Constraint_EndPointLocation} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.GPS_Position) - context.ContextOuterClass.GPS_PositionOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Constraint_EndPointLocation) + context.ContextOuterClass.Constraint_EndPointLocationOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_GPS_Position_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_EndPointLocation_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_GPS_Position_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_EndPointLocation_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.GPS_Position.class, context.ContextOuterClass.GPS_Position.Builder.class); + context.ContextOuterClass.Constraint_EndPointLocation.class, context.ContextOuterClass.Constraint_EndPointLocation.Builder.class); } - // Construct using context.ContextOuterClass.GPS_Position.newBuilder() + // Construct using context.ContextOuterClass.Constraint_EndPointLocation.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -53037,27 +64341,35 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - latitude_ = 0F; - - longitude_ = 0F; - + if (endpointIdBuilder_ == null) { + endpointId_ = null; + } else { + endpointId_ = null; + endpointIdBuilder_ = null; + } + if (locationBuilder_ == null) { + location_ = null; + } else { + location_ = null; + locationBuilder_ = null; + } return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_GPS_Position_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_EndPointLocation_descriptor; } @java.lang.Override - public context.ContextOuterClass.GPS_Position getDefaultInstanceForType() { - return context.ContextOuterClass.GPS_Position.getDefaultInstance(); + public context.ContextOuterClass.Constraint_EndPointLocation getDefaultInstanceForType() { + return context.ContextOuterClass.Constraint_EndPointLocation.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.GPS_Position build() { - context.ContextOuterClass.GPS_Position result = buildPartial(); + public context.ContextOuterClass.Constraint_EndPointLocation build() { + context.ContextOuterClass.Constraint_EndPointLocation result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -53065,10 +64377,18 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.GPS_Position buildPartial() { - context.ContextOuterClass.GPS_Position result = new context.ContextOuterClass.GPS_Position(this); - result.latitude_ = latitude_; - result.longitude_ = longitude_; + public context.ContextOuterClass.Constraint_EndPointLocation buildPartial() { + context.ContextOuterClass.Constraint_EndPointLocation result = new context.ContextOuterClass.Constraint_EndPointLocation(this); + if (endpointIdBuilder_ == null) { + result.endpointId_ = endpointId_; + } else { + result.endpointId_ = endpointIdBuilder_.build(); + } + if (locationBuilder_ == null) { + result.location_ = location_; + } else { + result.location_ = locationBuilder_.build(); + } onBuilt(); return result; } @@ -53107,21 +64427,21 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.GPS_Position) { - return mergeFrom((context.ContextOuterClass.GPS_Position)other); + if (other instanceof context.ContextOuterClass.Constraint_EndPointLocation) { + return mergeFrom((context.ContextOuterClass.Constraint_EndPointLocation)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.GPS_Position other) { - if (other == context.ContextOuterClass.GPS_Position.getDefaultInstance()) return this; - if (other.getLatitude() != 0F) { - setLatitude(other.getLatitude()); + public Builder mergeFrom(context.ContextOuterClass.Constraint_EndPointLocation other) { + if (other == context.ContextOuterClass.Constraint_EndPointLocation.getDefaultInstance()) return this; + if (other.hasEndpointId()) { + mergeEndpointId(other.getEndpointId()); } - if (other.getLongitude() != 0F) { - setLongitude(other.getLongitude()); + if (other.hasLocation()) { + mergeLocation(other.getLocation()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -53138,11 +64458,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.GPS_Position parsedMessage = null; + context.ContextOuterClass.Constraint_EndPointLocation parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.GPS_Position) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.Constraint_EndPointLocation) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -53152,66 +64472,242 @@ public final class ContextOuterClass { return this; } - private float latitude_ ; + private context.ContextOuterClass.EndPointId endpointId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> endpointIdBuilder_; /** - * <code>float latitude = 1;</code> - * @return The latitude. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ - @java.lang.Override - public float getLatitude() { - return latitude_; + public boolean hasEndpointId() { + return endpointIdBuilder_ != null || endpointId_ != null; } /** - * <code>float latitude = 1;</code> - * @param value The latitude to set. - * @return This builder for chaining. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. */ - public Builder setLatitude(float value) { - - latitude_ = value; - onChanged(); + public context.ContextOuterClass.EndPointId getEndpointId() { + if (endpointIdBuilder_ == null) { + return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; + } else { + return endpointIdBuilder_.getMessage(); + } + } + /** + * <code>.context.EndPointId endpoint_id = 1;</code> + */ + public Builder setEndpointId(context.ContextOuterClass.EndPointId value) { + if (endpointIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + endpointId_ = value; + onChanged(); + } else { + endpointIdBuilder_.setMessage(value); + } + return this; } /** - * <code>float latitude = 1;</code> - * @return This builder for chaining. + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder clearLatitude() { - - latitude_ = 0F; - onChanged(); + public Builder setEndpointId( + context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (endpointIdBuilder_ == null) { + endpointId_ = builderForValue.build(); + onChanged(); + } else { + endpointIdBuilder_.setMessage(builderForValue.build()); + } + return this; } + /** + * <code>.context.EndPointId endpoint_id = 1;</code> + */ + public Builder mergeEndpointId(context.ContextOuterClass.EndPointId value) { + if (endpointIdBuilder_ == null) { + if (endpointId_ != null) { + endpointId_ = + context.ContextOuterClass.EndPointId.newBuilder(endpointId_).mergeFrom(value).buildPartial(); + } else { + endpointId_ = value; + } + onChanged(); + } else { + endpointIdBuilder_.mergeFrom(value); + } - private float longitude_ ; + return this; + } /** - * <code>float longitude = 2;</code> - * @return The longitude. + * <code>.context.EndPointId endpoint_id = 1;</code> */ - @java.lang.Override - public float getLongitude() { - return longitude_; + public Builder clearEndpointId() { + if (endpointIdBuilder_ == null) { + endpointId_ = null; + onChanged(); + } else { + endpointId_ = null; + endpointIdBuilder_ = null; + } + + return this; } /** - * <code>float longitude = 2;</code> - * @param value The longitude to set. - * @return This builder for chaining. + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder setLongitude(float value) { + public context.ContextOuterClass.EndPointId.Builder getEndpointIdBuilder() { - longitude_ = value; onChanged(); + return getEndpointIdFieldBuilder().getBuilder(); + } + /** + * <code>.context.EndPointId endpoint_id = 1;</code> + */ + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { + if (endpointIdBuilder_ != null) { + return endpointIdBuilder_.getMessageOrBuilder(); + } else { + return endpointId_ == null ? + context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; + } + } + /** + * <code>.context.EndPointId endpoint_id = 1;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> + getEndpointIdFieldBuilder() { + if (endpointIdBuilder_ == null) { + endpointIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( + getEndpointId(), + getParentForChildren(), + isClean()); + endpointId_ = null; + } + return endpointIdBuilder_; + } + + private context.ContextOuterClass.Location location_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Location, context.ContextOuterClass.Location.Builder, context.ContextOuterClass.LocationOrBuilder> locationBuilder_; + /** + * <code>.context.Location location = 2;</code> + * @return Whether the location field is set. + */ + public boolean hasLocation() { + return locationBuilder_ != null || location_ != null; + } + /** + * <code>.context.Location location = 2;</code> + * @return The location. + */ + public context.ContextOuterClass.Location getLocation() { + if (locationBuilder_ == null) { + return location_ == null ? context.ContextOuterClass.Location.getDefaultInstance() : location_; + } else { + return locationBuilder_.getMessage(); + } + } + /** + * <code>.context.Location location = 2;</code> + */ + public Builder setLocation(context.ContextOuterClass.Location value) { + if (locationBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + location_ = value; + onChanged(); + } else { + locationBuilder_.setMessage(value); + } + return this; } /** - * <code>float longitude = 2;</code> - * @return This builder for chaining. + * <code>.context.Location location = 2;</code> */ - public Builder clearLongitude() { + public Builder setLocation( + context.ContextOuterClass.Location.Builder builderForValue) { + if (locationBuilder_ == null) { + location_ = builderForValue.build(); + onChanged(); + } else { + locationBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.Location location = 2;</code> + */ + public Builder mergeLocation(context.ContextOuterClass.Location value) { + if (locationBuilder_ == null) { + if (location_ != null) { + location_ = + context.ContextOuterClass.Location.newBuilder(location_).mergeFrom(value).buildPartial(); + } else { + location_ = value; + } + onChanged(); + } else { + locationBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.context.Location location = 2;</code> + */ + public Builder clearLocation() { + if (locationBuilder_ == null) { + location_ = null; + onChanged(); + } else { + location_ = null; + locationBuilder_ = null; + } + + return this; + } + /** + * <code>.context.Location location = 2;</code> + */ + public context.ContextOuterClass.Location.Builder getLocationBuilder() { - longitude_ = 0F; onChanged(); - return this; + return getLocationFieldBuilder().getBuilder(); + } + /** + * <code>.context.Location location = 2;</code> + */ + public context.ContextOuterClass.LocationOrBuilder getLocationOrBuilder() { + if (locationBuilder_ != null) { + return locationBuilder_.getMessageOrBuilder(); + } else { + return location_ == null ? + context.ContextOuterClass.Location.getDefaultInstance() : location_; + } + } + /** + * <code>.context.Location location = 2;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Location, context.ContextOuterClass.Location.Builder, context.ContextOuterClass.LocationOrBuilder> + getLocationFieldBuilder() { + if (locationBuilder_ == null) { + locationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Location, context.ContextOuterClass.Location.Builder, context.ContextOuterClass.LocationOrBuilder>( + getLocation(), + getParentForChildren(), + isClean()); + location_ = null; + } + return locationBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -53226,104 +64722,91 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.GPS_Position) + // @@protoc_insertion_point(builder_scope:context.Constraint_EndPointLocation) } - // @@protoc_insertion_point(class_scope:context.GPS_Position) - private static final context.ContextOuterClass.GPS_Position DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Constraint_EndPointLocation) + private static final context.ContextOuterClass.Constraint_EndPointLocation DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.GPS_Position(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_EndPointLocation(); } - public static context.ContextOuterClass.GPS_Position getDefaultInstance() { + public static context.ContextOuterClass.Constraint_EndPointLocation getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<GPS_Position> - PARSER = new com.google.protobuf.AbstractParser<GPS_Position>() { + private static final com.google.protobuf.Parser<Constraint_EndPointLocation> + PARSER = new com.google.protobuf.AbstractParser<Constraint_EndPointLocation>() { @java.lang.Override - public GPS_Position parsePartialFrom( + public Constraint_EndPointLocation parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new GPS_Position(input, extensionRegistry); + return new Constraint_EndPointLocation(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<GPS_Position> parser() { + public static com.google.protobuf.Parser<Constraint_EndPointLocation> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<GPS_Position> getParserForType() { + public com.google.protobuf.Parser<Constraint_EndPointLocation> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.GPS_Position getDefaultInstanceForType() { + public context.ContextOuterClass.Constraint_EndPointLocation getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface LocationOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Location) + public interface Constraint_EndPointPriorityOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Constraint_EndPointPriority) com.google.protobuf.MessageOrBuilder { /** - * <code>string region = 1;</code> - * @return Whether the region field is set. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ - boolean hasRegion(); + boolean hasEndpointId(); /** - * <code>string region = 1;</code> - * @return The region. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. */ - java.lang.String getRegion(); + context.ContextOuterClass.EndPointId getEndpointId(); /** - * <code>string region = 1;</code> - * @return The bytes for region. + * <code>.context.EndPointId endpoint_id = 1;</code> */ - com.google.protobuf.ByteString - getRegionBytes(); + context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder(); /** - * <code>.context.GPS_Position gps_position = 2;</code> - * @return Whether the gpsPosition field is set. - */ - boolean hasGpsPosition(); - /** - * <code>.context.GPS_Position gps_position = 2;</code> - * @return The gpsPosition. - */ - context.ContextOuterClass.GPS_Position getGpsPosition(); - /** - * <code>.context.GPS_Position gps_position = 2;</code> + * <code>uint32 priority = 2;</code> + * @return The priority. */ - context.ContextOuterClass.GPS_PositionOrBuilder getGpsPositionOrBuilder(); - - public context.ContextOuterClass.Location.LocationCase getLocationCase(); + int getPriority(); } /** - * Protobuf type {@code context.Location} + * Protobuf type {@code context.Constraint_EndPointPriority} */ - public static final class Location extends + public static final class Constraint_EndPointPriority extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Location) - LocationOrBuilder { + // @@protoc_insertion_point(message_implements:context.Constraint_EndPointPriority) + Constraint_EndPointPriorityOrBuilder { private static final long serialVersionUID = 0L; - // Use Location.newBuilder() to construct. - private Location(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Constraint_EndPointPriority.newBuilder() to construct. + private Constraint_EndPointPriority(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private Location() { + private Constraint_EndPointPriority() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new Location(); + return new Constraint_EndPointPriority(); } @java.lang.Override @@ -53331,7 +64814,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private Location( + private Constraint_EndPointPriority( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -53350,179 +64833,90 @@ public final class ContextOuterClass { done = true; break; case 10: { - java.lang.String s = input.readStringRequireUtf8(); - locationCase_ = 1; - location_ = s; - break; - } - case 18: { - context.ContextOuterClass.GPS_Position.Builder subBuilder = null; - if (locationCase_ == 2) { - subBuilder = ((context.ContextOuterClass.GPS_Position) location_).toBuilder(); + context.ContextOuterClass.EndPointId.Builder subBuilder = null; + if (endpointId_ != null) { + subBuilder = endpointId_.toBuilder(); } - location_ = - input.readMessage(context.ContextOuterClass.GPS_Position.parser(), extensionRegistry); + endpointId_ = input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom((context.ContextOuterClass.GPS_Position) location_); - location_ = subBuilder.buildPartial(); - } - locationCase_ = 2; - 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 { - this.unknownFields = unknownFields.build(); - makeExtensionsImmutable(); - } - } - public static final com.google.protobuf.Descriptors.Descriptor - getDescriptor() { - return context.ContextOuterClass.internal_static_context_Location_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Location_fieldAccessorTable - .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Location.class, context.ContextOuterClass.Location.Builder.class); - } - - private int locationCase_ = 0; - private java.lang.Object location_; - public enum LocationCase - implements com.google.protobuf.Internal.EnumLite, - com.google.protobuf.AbstractMessage.InternalOneOfEnum { - REGION(1), - GPS_POSITION(2), - LOCATION_NOT_SET(0); - private final int value; - private LocationCase(int value) { - this.value = value; - } - /** - * @param value The number of the enum to look for. - * @return The enum associated with the given number. - * @deprecated Use {@link #forNumber(int)} instead. - */ - @java.lang.Deprecated - public static LocationCase valueOf(int value) { - return forNumber(value); - } - - public static LocationCase forNumber(int value) { - switch (value) { - case 1: return REGION; - case 2: return GPS_POSITION; - case 0: return LOCATION_NOT_SET; - default: return null; - } - } - public int getNumber() { - return this.value; - } - }; - - public LocationCase - getLocationCase() { - return LocationCase.forNumber( - locationCase_); - } - - public static final int REGION_FIELD_NUMBER = 1; - /** - * <code>string region = 1;</code> - * @return Whether the region field is set. - */ - public boolean hasRegion() { - return locationCase_ == 1; - } - /** - * <code>string region = 1;</code> - * @return The region. - */ - public java.lang.String getRegion() { - java.lang.Object ref = ""; - if (locationCase_ == 1) { - ref = location_; - } - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - if (locationCase_ == 1) { - location_ = s; + subBuilder.mergeFrom(endpointId_); + endpointId_ = subBuilder.buildPartial(); + } + + break; + } + case 16: { + + priority_ = input.readUInt32(); + break; + } + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } } - return s; + } 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 { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); } } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return context.ContextOuterClass.internal_static_context_Constraint_EndPointPriority_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return context.ContextOuterClass.internal_static_context_Constraint_EndPointPriority_fieldAccessorTable + .ensureFieldAccessorsInitialized( + context.ContextOuterClass.Constraint_EndPointPriority.class, context.ContextOuterClass.Constraint_EndPointPriority.Builder.class); + } + + public static final int ENDPOINT_ID_FIELD_NUMBER = 1; + private context.ContextOuterClass.EndPointId endpointId_; /** - * <code>string region = 1;</code> - * @return The bytes for region. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ - public com.google.protobuf.ByteString - getRegionBytes() { - java.lang.Object ref = ""; - if (locationCase_ == 1) { - ref = location_; - } - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - if (locationCase_ == 1) { - location_ = b; - } - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + @java.lang.Override + public boolean hasEndpointId() { + return endpointId_ != null; } - - public static final int GPS_POSITION_FIELD_NUMBER = 2; /** - * <code>.context.GPS_Position gps_position = 2;</code> - * @return Whether the gpsPosition field is set. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. */ @java.lang.Override - public boolean hasGpsPosition() { - return locationCase_ == 2; + public context.ContextOuterClass.EndPointId getEndpointId() { + return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; } /** - * <code>.context.GPS_Position gps_position = 2;</code> - * @return The gpsPosition. + * <code>.context.EndPointId endpoint_id = 1;</code> */ @java.lang.Override - public context.ContextOuterClass.GPS_Position getGpsPosition() { - if (locationCase_ == 2) { - return (context.ContextOuterClass.GPS_Position) location_; - } - return context.ContextOuterClass.GPS_Position.getDefaultInstance(); + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { + return getEndpointId(); } + + public static final int PRIORITY_FIELD_NUMBER = 2; + private int priority_; /** - * <code>.context.GPS_Position gps_position = 2;</code> + * <code>uint32 priority = 2;</code> + * @return The priority. */ @java.lang.Override - public context.ContextOuterClass.GPS_PositionOrBuilder getGpsPositionOrBuilder() { - if (locationCase_ == 2) { - return (context.ContextOuterClass.GPS_Position) location_; - } - return context.ContextOuterClass.GPS_Position.getDefaultInstance(); + public int getPriority() { + return priority_; } private byte memoizedIsInitialized = -1; @@ -53539,11 +64933,11 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (locationCase_ == 1) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 1, location_); + if (endpointId_ != null) { + output.writeMessage(1, getEndpointId()); } - if (locationCase_ == 2) { - output.writeMessage(2, (context.ContextOuterClass.GPS_Position) location_); + if (priority_ != 0) { + output.writeUInt32(2, priority_); } unknownFields.writeTo(output); } @@ -53554,12 +64948,13 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (locationCase_ == 1) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, location_); + if (endpointId_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getEndpointId()); } - if (locationCase_ == 2) { + if (priority_ != 0) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, (context.ContextOuterClass.GPS_Position) location_); + .computeUInt32Size(2, priority_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -53571,24 +64966,18 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.Location)) { + if (!(obj instanceof context.ContextOuterClass.Constraint_EndPointPriority)) { return super.equals(obj); } - context.ContextOuterClass.Location other = (context.ContextOuterClass.Location) obj; + context.ContextOuterClass.Constraint_EndPointPriority other = (context.ContextOuterClass.Constraint_EndPointPriority) obj; - if (!getLocationCase().equals(other.getLocationCase())) return false; - switch (locationCase_) { - case 1: - if (!getRegion() - .equals(other.getRegion())) return false; - break; - case 2: - if (!getGpsPosition() - .equals(other.getGpsPosition())) return false; - break; - case 0: - default: + if (hasEndpointId() != other.hasEndpointId()) return false; + if (hasEndpointId()) { + if (!getEndpointId() + .equals(other.getEndpointId())) return false; } + if (getPriority() + != other.getPriority()) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -53600,86 +64989,80 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - switch (locationCase_) { - case 1: - hash = (37 * hash) + REGION_FIELD_NUMBER; - hash = (53 * hash) + getRegion().hashCode(); - break; - case 2: - hash = (37 * hash) + GPS_POSITION_FIELD_NUMBER; - hash = (53 * hash) + getGpsPosition().hashCode(); - break; - case 0: - default: + if (hasEndpointId()) { + hash = (37 * hash) + ENDPOINT_ID_FIELD_NUMBER; + hash = (53 * hash) + getEndpointId().hashCode(); } + hash = (37 * hash) + PRIORITY_FIELD_NUMBER; + hash = (53 * hash) + getPriority(); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.Location parseFrom( + public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Location parseFrom( + public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Location parseFrom( + public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Location parseFrom( + public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Location parseFrom(byte[] data) + public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Location parseFrom( + public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Location parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Location parseFrom( + public static context.ContextOuterClass.Constraint_EndPointPriority 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 context.ContextOuterClass.Location parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_EndPointPriority parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.Location parseDelimitedFrom( + public static context.ContextOuterClass.Constraint_EndPointPriority 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 context.ContextOuterClass.Location parseFrom( + public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Location parseFrom( + public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -53692,7 +65075,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.Location prototype) { + public static Builder newBuilder(context.ContextOuterClass.Constraint_EndPointPriority prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -53708,26 +65091,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.Location} + * Protobuf type {@code context.Constraint_EndPointPriority} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Location) - context.ContextOuterClass.LocationOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Constraint_EndPointPriority) + context.ContextOuterClass.Constraint_EndPointPriorityOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Location_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_EndPointPriority_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Location_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_EndPointPriority_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Location.class, context.ContextOuterClass.Location.Builder.class); + context.ContextOuterClass.Constraint_EndPointPriority.class, context.ContextOuterClass.Constraint_EndPointPriority.Builder.class); } - // Construct using context.ContextOuterClass.Location.newBuilder() + // Construct using context.ContextOuterClass.Constraint_EndPointPriority.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -53745,25 +65128,31 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - locationCase_ = 0; - location_ = null; + if (endpointIdBuilder_ == null) { + endpointId_ = null; + } else { + endpointId_ = null; + endpointIdBuilder_ = null; + } + priority_ = 0; + return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Location_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_EndPointPriority_descriptor; } @java.lang.Override - public context.ContextOuterClass.Location getDefaultInstanceForType() { - return context.ContextOuterClass.Location.getDefaultInstance(); + public context.ContextOuterClass.Constraint_EndPointPriority getDefaultInstanceForType() { + return context.ContextOuterClass.Constraint_EndPointPriority.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.Location build() { - context.ContextOuterClass.Location result = buildPartial(); + public context.ContextOuterClass.Constraint_EndPointPriority build() { + context.ContextOuterClass.Constraint_EndPointPriority result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -53771,19 +65160,14 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.Location buildPartial() { - context.ContextOuterClass.Location result = new context.ContextOuterClass.Location(this); - if (locationCase_ == 1) { - result.location_ = location_; - } - if (locationCase_ == 2) { - if (gpsPositionBuilder_ == null) { - result.location_ = location_; - } else { - result.location_ = gpsPositionBuilder_.build(); - } + public context.ContextOuterClass.Constraint_EndPointPriority buildPartial() { + context.ContextOuterClass.Constraint_EndPointPriority result = new context.ContextOuterClass.Constraint_EndPointPriority(this); + if (endpointIdBuilder_ == null) { + result.endpointId_ = endpointId_; + } else { + result.endpointId_ = endpointIdBuilder_.build(); } - result.locationCase_ = locationCase_; + result.priority_ = priority_; onBuilt(); return result; } @@ -53822,30 +65206,21 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.Location) { - return mergeFrom((context.ContextOuterClass.Location)other); + if (other instanceof context.ContextOuterClass.Constraint_EndPointPriority) { + return mergeFrom((context.ContextOuterClass.Constraint_EndPointPriority)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.Location other) { - if (other == context.ContextOuterClass.Location.getDefaultInstance()) return this; - switch (other.getLocationCase()) { - case REGION: { - locationCase_ = 1; - location_ = other.location_; - onChanged(); - break; - } - case GPS_POSITION: { - mergeGpsPosition(other.getGpsPosition()); - break; - } - case LOCATION_NOT_SET: { - break; - } + public Builder mergeFrom(context.ContextOuterClass.Constraint_EndPointPriority other) { + if (other == context.ContextOuterClass.Constraint_EndPointPriority.getDefaultInstance()) return this; + if (other.hasEndpointId()) { + mergeEndpointId(other.getEndpointId()); + } + if (other.getPriority() != 0) { + setPriority(other.getPriority()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -53862,11 +65237,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.Location parsedMessage = null; + context.ContextOuterClass.Constraint_EndPointPriority parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Location) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.Constraint_EndPointPriority) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -53875,258 +65250,155 @@ public final class ContextOuterClass { } return this; } - private int locationCase_ = 0; - private java.lang.Object location_; - public LocationCase - getLocationCase() { - return LocationCase.forNumber( - locationCase_); - } - - public Builder clearLocation() { - locationCase_ = 0; - location_ = null; - onChanged(); - return this; - } - + private context.ContextOuterClass.EndPointId endpointId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> endpointIdBuilder_; /** - * <code>string region = 1;</code> - * @return Whether the region field is set. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return Whether the endpointId field is set. */ - @java.lang.Override - public boolean hasRegion() { - return locationCase_ == 1; + public boolean hasEndpointId() { + return endpointIdBuilder_ != null || endpointId_ != null; } /** - * <code>string region = 1;</code> - * @return The region. + * <code>.context.EndPointId endpoint_id = 1;</code> + * @return The endpointId. */ - @java.lang.Override - public java.lang.String getRegion() { - java.lang.Object ref = ""; - if (locationCase_ == 1) { - ref = location_; - } - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - if (locationCase_ == 1) { - location_ = s; - } - return s; + public context.ContextOuterClass.EndPointId getEndpointId() { + if (endpointIdBuilder_ == null) { + return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; } else { - return (java.lang.String) ref; + return endpointIdBuilder_.getMessage(); } } /** - * <code>string region = 1;</code> - * @return The bytes for region. + * <code>.context.EndPointId endpoint_id = 1;</code> */ - @java.lang.Override - public com.google.protobuf.ByteString - getRegionBytes() { - java.lang.Object ref = ""; - if (locationCase_ == 1) { - ref = location_; - } - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - if (locationCase_ == 1) { - location_ = b; + public Builder setEndpointId(context.ContextOuterClass.EndPointId value) { + if (endpointIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } - return b; + endpointId_ = value; + onChanged(); } else { - return (com.google.protobuf.ByteString) ref; + endpointIdBuilder_.setMessage(value); } - } - /** - * <code>string region = 1;</code> - * @param value The region to set. - * @return This builder for chaining. - */ - public Builder setRegion( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - locationCase_ = 1; - location_ = value; - onChanged(); + return this; } /** - * <code>string region = 1;</code> - * @return This builder for chaining. + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder clearRegion() { - if (locationCase_ == 1) { - locationCase_ = 0; - location_ = null; + public Builder setEndpointId( + context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (endpointIdBuilder_ == null) { + endpointId_ = builderForValue.build(); onChanged(); + } else { + endpointIdBuilder_.setMessage(builderForValue.build()); } - return this; - } - /** - * <code>string region = 1;</code> - * @param value The bytes for region to set. - * @return This builder for chaining. - */ - public Builder setRegionBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - locationCase_ = 1; - location_ = value; - onChanged(); - return this; - } - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.GPS_Position, context.ContextOuterClass.GPS_Position.Builder, context.ContextOuterClass.GPS_PositionOrBuilder> gpsPositionBuilder_; - /** - * <code>.context.GPS_Position gps_position = 2;</code> - * @return Whether the gpsPosition field is set. - */ - @java.lang.Override - public boolean hasGpsPosition() { - return locationCase_ == 2; + return this; } /** - * <code>.context.GPS_Position gps_position = 2;</code> - * @return The gpsPosition. + * <code>.context.EndPointId endpoint_id = 1;</code> */ - @java.lang.Override - public context.ContextOuterClass.GPS_Position getGpsPosition() { - if (gpsPositionBuilder_ == null) { - if (locationCase_ == 2) { - return (context.ContextOuterClass.GPS_Position) location_; + public Builder mergeEndpointId(context.ContextOuterClass.EndPointId value) { + if (endpointIdBuilder_ == null) { + if (endpointId_ != null) { + endpointId_ = + context.ContextOuterClass.EndPointId.newBuilder(endpointId_).mergeFrom(value).buildPartial(); + } else { + endpointId_ = value; } - return context.ContextOuterClass.GPS_Position.getDefaultInstance(); + onChanged(); } else { - if (locationCase_ == 2) { - return gpsPositionBuilder_.getMessage(); - } - return context.ContextOuterClass.GPS_Position.getDefaultInstance(); + endpointIdBuilder_.mergeFrom(value); } + + return this; } /** - * <code>.context.GPS_Position gps_position = 2;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder setGpsPosition(context.ContextOuterClass.GPS_Position value) { - if (gpsPositionBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - location_ = value; + public Builder clearEndpointId() { + if (endpointIdBuilder_ == null) { + endpointId_ = null; onChanged(); } else { - gpsPositionBuilder_.setMessage(value); + endpointId_ = null; + endpointIdBuilder_ = null; } - locationCase_ = 2; + return this; } /** - * <code>.context.GPS_Position gps_position = 2;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder setGpsPosition( - context.ContextOuterClass.GPS_Position.Builder builderForValue) { - if (gpsPositionBuilder_ == null) { - location_ = builderForValue.build(); - onChanged(); - } else { - gpsPositionBuilder_.setMessage(builderForValue.build()); - } - locationCase_ = 2; - return this; + public context.ContextOuterClass.EndPointId.Builder getEndpointIdBuilder() { + + onChanged(); + return getEndpointIdFieldBuilder().getBuilder(); } /** - * <code>.context.GPS_Position gps_position = 2;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder mergeGpsPosition(context.ContextOuterClass.GPS_Position value) { - if (gpsPositionBuilder_ == null) { - if (locationCase_ == 2 && - location_ != context.ContextOuterClass.GPS_Position.getDefaultInstance()) { - location_ = context.ContextOuterClass.GPS_Position.newBuilder((context.ContextOuterClass.GPS_Position) location_) - .mergeFrom(value).buildPartial(); - } else { - location_ = value; - } - onChanged(); + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { + if (endpointIdBuilder_ != null) { + return endpointIdBuilder_.getMessageOrBuilder(); } else { - if (locationCase_ == 2) { - gpsPositionBuilder_.mergeFrom(value); - } - gpsPositionBuilder_.setMessage(value); + return endpointId_ == null ? + context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; } - locationCase_ = 2; - return this; } /** - * <code>.context.GPS_Position gps_position = 2;</code> + * <code>.context.EndPointId endpoint_id = 1;</code> */ - public Builder clearGpsPosition() { - if (gpsPositionBuilder_ == null) { - if (locationCase_ == 2) { - locationCase_ = 0; - location_ = null; - onChanged(); - } - } else { - if (locationCase_ == 2) { - locationCase_ = 0; - location_ = null; - } - gpsPositionBuilder_.clear(); + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> + getEndpointIdFieldBuilder() { + if (endpointIdBuilder_ == null) { + endpointIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( + getEndpointId(), + getParentForChildren(), + isClean()); + endpointId_ = null; } - return this; + return endpointIdBuilder_; } + + private int priority_ ; /** - * <code>.context.GPS_Position gps_position = 2;</code> + * <code>uint32 priority = 2;</code> + * @return The priority. */ - public context.ContextOuterClass.GPS_Position.Builder getGpsPositionBuilder() { - return getGpsPositionFieldBuilder().getBuilder(); + @java.lang.Override + public int getPriority() { + return priority_; } /** - * <code>.context.GPS_Position gps_position = 2;</code> + * <code>uint32 priority = 2;</code> + * @param value The priority to set. + * @return This builder for chaining. */ - @java.lang.Override - public context.ContextOuterClass.GPS_PositionOrBuilder getGpsPositionOrBuilder() { - if ((locationCase_ == 2) && (gpsPositionBuilder_ != null)) { - return gpsPositionBuilder_.getMessageOrBuilder(); - } else { - if (locationCase_ == 2) { - return (context.ContextOuterClass.GPS_Position) location_; - } - return context.ContextOuterClass.GPS_Position.getDefaultInstance(); - } + public Builder setPriority(int value) { + + priority_ = value; + onChanged(); + return this; } /** - * <code>.context.GPS_Position gps_position = 2;</code> + * <code>uint32 priority = 2;</code> + * @return This builder for chaining. */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.GPS_Position, context.ContextOuterClass.GPS_Position.Builder, context.ContextOuterClass.GPS_PositionOrBuilder> - getGpsPositionFieldBuilder() { - if (gpsPositionBuilder_ == null) { - if (!(locationCase_ == 2)) { - location_ = context.ContextOuterClass.GPS_Position.getDefaultInstance(); - } - gpsPositionBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.GPS_Position, context.ContextOuterClass.GPS_Position.Builder, context.ContextOuterClass.GPS_PositionOrBuilder>( - (context.ContextOuterClass.GPS_Position) location_, - getParentForChildren(), - isClean()); - location_ = null; - } - locationCase_ = 2; - onChanged();; - return gpsPositionBuilder_; + public Builder clearPriority() { + + priority_ = 0; + onChanged(); + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -54141,100 +65413,76 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.Location) + // @@protoc_insertion_point(builder_scope:context.Constraint_EndPointPriority) } - // @@protoc_insertion_point(class_scope:context.Location) - private static final context.ContextOuterClass.Location DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Constraint_EndPointPriority) + private static final context.ContextOuterClass.Constraint_EndPointPriority DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Location(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_EndPointPriority(); } - public static context.ContextOuterClass.Location getDefaultInstance() { + public static context.ContextOuterClass.Constraint_EndPointPriority getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<Location> - PARSER = new com.google.protobuf.AbstractParser<Location>() { + private static final com.google.protobuf.Parser<Constraint_EndPointPriority> + PARSER = new com.google.protobuf.AbstractParser<Constraint_EndPointPriority>() { @java.lang.Override - public Location parsePartialFrom( + public Constraint_EndPointPriority parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new Location(input, extensionRegistry); + return new Constraint_EndPointPriority(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<Location> parser() { + public static com.google.protobuf.Parser<Constraint_EndPointPriority> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<Location> getParserForType() { + public com.google.protobuf.Parser<Constraint_EndPointPriority> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.Location getDefaultInstanceForType() { + public context.ContextOuterClass.Constraint_EndPointPriority getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface Constraint_EndPointLocationOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Constraint_EndPointLocation) + public interface Constraint_SLA_LatencyOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Constraint_SLA_Latency) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return Whether the endpointId field is set. - */ - boolean hasEndpointId(); - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return The endpointId. - */ - context.ContextOuterClass.EndPointId getEndpointId(); - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder(); - - /** - * <code>.context.Location location = 2;</code> - * @return Whether the location field is set. - */ - boolean hasLocation(); - /** - * <code>.context.Location location = 2;</code> - * @return The location. - */ - context.ContextOuterClass.Location getLocation(); - /** - * <code>.context.Location location = 2;</code> + * <code>float e2e_latency_ms = 1;</code> + * @return The e2eLatencyMs. */ - context.ContextOuterClass.LocationOrBuilder getLocationOrBuilder(); + float getE2ELatencyMs(); } /** - * Protobuf type {@code context.Constraint_EndPointLocation} + * Protobuf type {@code context.Constraint_SLA_Latency} */ - public static final class Constraint_EndPointLocation extends + public static final class Constraint_SLA_Latency extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Constraint_EndPointLocation) - Constraint_EndPointLocationOrBuilder { + // @@protoc_insertion_point(message_implements:context.Constraint_SLA_Latency) + Constraint_SLA_LatencyOrBuilder { private static final long serialVersionUID = 0L; - // Use Constraint_EndPointLocation.newBuilder() to construct. - private Constraint_EndPointLocation(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Constraint_SLA_Latency.newBuilder() to construct. + private Constraint_SLA_Latency(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private Constraint_EndPointLocation() { + private Constraint_SLA_Latency() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new Constraint_EndPointLocation(); + return new Constraint_SLA_Latency(); } @java.lang.Override @@ -54242,7 +65490,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private Constraint_EndPointLocation( + private Constraint_SLA_Latency( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -54260,30 +65508,9 @@ public final class ContextOuterClass { case 0: done = true; break; - case 10: { - context.ContextOuterClass.EndPointId.Builder subBuilder = null; - if (endpointId_ != null) { - subBuilder = endpointId_.toBuilder(); - } - endpointId_ = input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(endpointId_); - endpointId_ = subBuilder.buildPartial(); - } - - break; - } - case 18: { - context.ContextOuterClass.Location.Builder subBuilder = null; - if (location_ != null) { - subBuilder = location_.toBuilder(); - } - location_ = input.readMessage(context.ContextOuterClass.Location.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(location_); - location_ = subBuilder.buildPartial(); - } + case 13: { + e2ELatencyMs_ = input.readFloat(); break; } default: { @@ -54307,67 +65534,26 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_EndPointLocation_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Latency_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_EndPointLocation_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Latency_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_EndPointLocation.class, context.ContextOuterClass.Constraint_EndPointLocation.Builder.class); - } - - public static final int ENDPOINT_ID_FIELD_NUMBER = 1; - private context.ContextOuterClass.EndPointId endpointId_; - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return Whether the endpointId field is set. - */ - @java.lang.Override - public boolean hasEndpointId() { - return endpointId_ != null; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return The endpointId. - */ - @java.lang.Override - public context.ContextOuterClass.EndPointId getEndpointId() { - return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - @java.lang.Override - public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { - return getEndpointId(); + context.ContextOuterClass.Constraint_SLA_Latency.class, context.ContextOuterClass.Constraint_SLA_Latency.Builder.class); } - public static final int LOCATION_FIELD_NUMBER = 2; - private context.ContextOuterClass.Location location_; - /** - * <code>.context.Location location = 2;</code> - * @return Whether the location field is set. - */ - @java.lang.Override - public boolean hasLocation() { - return location_ != null; - } - /** - * <code>.context.Location location = 2;</code> - * @return The location. - */ - @java.lang.Override - public context.ContextOuterClass.Location getLocation() { - return location_ == null ? context.ContextOuterClass.Location.getDefaultInstance() : location_; - } + public static final int E2E_LATENCY_MS_FIELD_NUMBER = 1; + private float e2ELatencyMs_; /** - * <code>.context.Location location = 2;</code> + * <code>float e2e_latency_ms = 1;</code> + * @return The e2eLatencyMs. */ @java.lang.Override - public context.ContextOuterClass.LocationOrBuilder getLocationOrBuilder() { - return getLocation(); + public float getE2ELatencyMs() { + return e2ELatencyMs_; } private byte memoizedIsInitialized = -1; @@ -54384,11 +65570,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (endpointId_ != null) { - output.writeMessage(1, getEndpointId()); - } - if (location_ != null) { - output.writeMessage(2, getLocation()); + if (e2ELatencyMs_ != 0F) { + output.writeFloat(1, e2ELatencyMs_); } unknownFields.writeTo(output); } @@ -54399,13 +65582,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (endpointId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getEndpointId()); - } - if (location_ != null) { + if (e2ELatencyMs_ != 0F) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, getLocation()); + .computeFloatSize(1, e2ELatencyMs_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -54417,21 +65596,14 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.Constraint_EndPointLocation)) { + if (!(obj instanceof context.ContextOuterClass.Constraint_SLA_Latency)) { return super.equals(obj); } - context.ContextOuterClass.Constraint_EndPointLocation other = (context.ContextOuterClass.Constraint_EndPointLocation) obj; + context.ContextOuterClass.Constraint_SLA_Latency other = (context.ContextOuterClass.Constraint_SLA_Latency) obj; - if (hasEndpointId() != other.hasEndpointId()) return false; - if (hasEndpointId()) { - if (!getEndpointId() - .equals(other.getEndpointId())) return false; - } - if (hasLocation() != other.hasLocation()) return false; - if (hasLocation()) { - if (!getLocation() - .equals(other.getLocation())) return false; - } + if (java.lang.Float.floatToIntBits(getE2ELatencyMs()) + != java.lang.Float.floatToIntBits( + other.getE2ELatencyMs())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -54443,82 +65615,77 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasEndpointId()) { - hash = (37 * hash) + ENDPOINT_ID_FIELD_NUMBER; - hash = (53 * hash) + getEndpointId().hashCode(); - } - if (hasLocation()) { - hash = (37 * hash) + LOCATION_FIELD_NUMBER; - hash = (53 * hash) + getLocation().hashCode(); - } + hash = (37 * hash) + E2E_LATENCY_MS_FIELD_NUMBER; + hash = (53 * hash) + java.lang.Float.floatToIntBits( + getE2ELatencyMs()); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom(byte[] data) + public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Latency 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 context.ContextOuterClass.Constraint_EndPointLocation parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_SLA_Latency parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_EndPointLocation parseDelimitedFrom( + public static context.ContextOuterClass.Constraint_SLA_Latency 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 context.ContextOuterClass.Constraint_EndPointLocation parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_EndPointLocation parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -54531,7 +65698,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.Constraint_EndPointLocation prototype) { + public static Builder newBuilder(context.ContextOuterClass.Constraint_SLA_Latency prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -54547,26 +65714,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.Constraint_EndPointLocation} + * Protobuf type {@code context.Constraint_SLA_Latency} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Constraint_EndPointLocation) - context.ContextOuterClass.Constraint_EndPointLocationOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Constraint_SLA_Latency) + context.ContextOuterClass.Constraint_SLA_LatencyOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_EndPointLocation_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Latency_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_EndPointLocation_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Latency_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_EndPointLocation.class, context.ContextOuterClass.Constraint_EndPointLocation.Builder.class); + context.ContextOuterClass.Constraint_SLA_Latency.class, context.ContextOuterClass.Constraint_SLA_Latency.Builder.class); } - // Construct using context.ContextOuterClass.Constraint_EndPointLocation.newBuilder() + // Construct using context.ContextOuterClass.Constraint_SLA_Latency.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -54584,35 +65751,25 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - if (endpointIdBuilder_ == null) { - endpointId_ = null; - } else { - endpointId_ = null; - endpointIdBuilder_ = null; - } - if (locationBuilder_ == null) { - location_ = null; - } else { - location_ = null; - locationBuilder_ = null; - } + e2ELatencyMs_ = 0F; + return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Constraint_EndPointLocation_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Latency_descriptor; } @java.lang.Override - public context.ContextOuterClass.Constraint_EndPointLocation getDefaultInstanceForType() { - return context.ContextOuterClass.Constraint_EndPointLocation.getDefaultInstance(); + public context.ContextOuterClass.Constraint_SLA_Latency getDefaultInstanceForType() { + return context.ContextOuterClass.Constraint_SLA_Latency.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.Constraint_EndPointLocation build() { - context.ContextOuterClass.Constraint_EndPointLocation result = buildPartial(); + public context.ContextOuterClass.Constraint_SLA_Latency build() { + context.ContextOuterClass.Constraint_SLA_Latency result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -54620,18 +65777,9 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.Constraint_EndPointLocation buildPartial() { - context.ContextOuterClass.Constraint_EndPointLocation result = new context.ContextOuterClass.Constraint_EndPointLocation(this); - if (endpointIdBuilder_ == null) { - result.endpointId_ = endpointId_; - } else { - result.endpointId_ = endpointIdBuilder_.build(); - } - if (locationBuilder_ == null) { - result.location_ = location_; - } else { - result.location_ = locationBuilder_.build(); - } + public context.ContextOuterClass.Constraint_SLA_Latency buildPartial() { + context.ContextOuterClass.Constraint_SLA_Latency result = new context.ContextOuterClass.Constraint_SLA_Latency(this); + result.e2ELatencyMs_ = e2ELatencyMs_; onBuilt(); return result; } @@ -54668,289 +65816,79 @@ public final class ContextOuterClass { java.lang.Object value) { return super.addRepeatedField(field, value); } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.Constraint_EndPointLocation) { - return mergeFrom((context.ContextOuterClass.Constraint_EndPointLocation)other); - } else { - super.mergeFrom(other); - return this; - } - } - - public Builder mergeFrom(context.ContextOuterClass.Constraint_EndPointLocation other) { - if (other == context.ContextOuterClass.Constraint_EndPointLocation.getDefaultInstance()) return this; - if (other.hasEndpointId()) { - mergeEndpointId(other.getEndpointId()); - } - if (other.hasLocation()) { - mergeLocation(other.getLocation()); - } - this.mergeUnknownFields(other.unknownFields); - onChanged(); - return this; - } - - @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 { - context.ContextOuterClass.Constraint_EndPointLocation parsedMessage = null; - try { - parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Constraint_EndPointLocation) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); - } - } - return this; - } - - private context.ContextOuterClass.EndPointId endpointId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> endpointIdBuilder_; - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return Whether the endpointId field is set. - */ - public boolean hasEndpointId() { - return endpointIdBuilder_ != null || endpointId_ != null; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return The endpointId. - */ - public context.ContextOuterClass.EndPointId getEndpointId() { - if (endpointIdBuilder_ == null) { - return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; - } else { - return endpointIdBuilder_.getMessage(); - } - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public Builder setEndpointId(context.ContextOuterClass.EndPointId value) { - if (endpointIdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - endpointId_ = value; - onChanged(); - } else { - endpointIdBuilder_.setMessage(value); - } - - return this; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public Builder setEndpointId( - context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (endpointIdBuilder_ == null) { - endpointId_ = builderForValue.build(); - onChanged(); - } else { - endpointIdBuilder_.setMessage(builderForValue.build()); - } - - return this; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public Builder mergeEndpointId(context.ContextOuterClass.EndPointId value) { - if (endpointIdBuilder_ == null) { - if (endpointId_ != null) { - endpointId_ = - context.ContextOuterClass.EndPointId.newBuilder(endpointId_).mergeFrom(value).buildPartial(); - } else { - endpointId_ = value; - } - onChanged(); - } else { - endpointIdBuilder_.mergeFrom(value); - } - - return this; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public Builder clearEndpointId() { - if (endpointIdBuilder_ == null) { - endpointId_ = null; - onChanged(); - } else { - endpointId_ = null; - endpointIdBuilder_ = null; - } - - return this; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public context.ContextOuterClass.EndPointId.Builder getEndpointIdBuilder() { - - onChanged(); - return getEndpointIdFieldBuilder().getBuilder(); - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { - if (endpointIdBuilder_ != null) { - return endpointIdBuilder_.getMessageOrBuilder(); - } else { - return endpointId_ == null ? - context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; - } - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> - getEndpointIdFieldBuilder() { - if (endpointIdBuilder_ == null) { - endpointIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( - getEndpointId(), - getParentForChildren(), - isClean()); - endpointId_ = null; - } - return endpointIdBuilder_; - } - - private context.ContextOuterClass.Location location_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Location, context.ContextOuterClass.Location.Builder, context.ContextOuterClass.LocationOrBuilder> locationBuilder_; - /** - * <code>.context.Location location = 2;</code> - * @return Whether the location field is set. - */ - public boolean hasLocation() { - return locationBuilder_ != null || location_ != null; - } - /** - * <code>.context.Location location = 2;</code> - * @return The location. - */ - public context.ContextOuterClass.Location getLocation() { - if (locationBuilder_ == null) { - return location_ == null ? context.ContextOuterClass.Location.getDefaultInstance() : location_; - } else { - return locationBuilder_.getMessage(); - } - } - /** - * <code>.context.Location location = 2;</code> - */ - public Builder setLocation(context.ContextOuterClass.Location value) { - if (locationBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - location_ = value; - onChanged(); + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof context.ContextOuterClass.Constraint_SLA_Latency) { + return mergeFrom((context.ContextOuterClass.Constraint_SLA_Latency)other); } else { - locationBuilder_.setMessage(value); + super.mergeFrom(other); + return this; } + } + public Builder mergeFrom(context.ContextOuterClass.Constraint_SLA_Latency other) { + if (other == context.ContextOuterClass.Constraint_SLA_Latency.getDefaultInstance()) return this; + if (other.getE2ELatencyMs() != 0F) { + setE2ELatencyMs(other.getE2ELatencyMs()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); return this; } - /** - * <code>.context.Location location = 2;</code> - */ - public Builder setLocation( - context.ContextOuterClass.Location.Builder builderForValue) { - if (locationBuilder_ == null) { - location_ = builderForValue.build(); - onChanged(); - } else { - locationBuilder_.setMessage(builderForValue.build()); - } - return this; + @java.lang.Override + public final boolean isInitialized() { + return true; } - /** - * <code>.context.Location location = 2;</code> - */ - public Builder mergeLocation(context.ContextOuterClass.Location value) { - if (locationBuilder_ == null) { - if (location_ != null) { - location_ = - context.ContextOuterClass.Location.newBuilder(location_).mergeFrom(value).buildPartial(); - } else { - location_ = value; + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + context.ContextOuterClass.Constraint_SLA_Latency parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (context.ContextOuterClass.Constraint_SLA_Latency) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); } - onChanged(); - } else { - locationBuilder_.mergeFrom(value); } - return this; } + + private float e2ELatencyMs_ ; /** - * <code>.context.Location location = 2;</code> + * <code>float e2e_latency_ms = 1;</code> + * @return The e2eLatencyMs. */ - public Builder clearLocation() { - if (locationBuilder_ == null) { - location_ = null; - onChanged(); - } else { - location_ = null; - locationBuilder_ = null; - } - - return this; + @java.lang.Override + public float getE2ELatencyMs() { + return e2ELatencyMs_; } /** - * <code>.context.Location location = 2;</code> + * <code>float e2e_latency_ms = 1;</code> + * @param value The e2eLatencyMs to set. + * @return This builder for chaining. */ - public context.ContextOuterClass.Location.Builder getLocationBuilder() { + public Builder setE2ELatencyMs(float value) { + e2ELatencyMs_ = value; onChanged(); - return getLocationFieldBuilder().getBuilder(); - } - /** - * <code>.context.Location location = 2;</code> - */ - public context.ContextOuterClass.LocationOrBuilder getLocationOrBuilder() { - if (locationBuilder_ != null) { - return locationBuilder_.getMessageOrBuilder(); - } else { - return location_ == null ? - context.ContextOuterClass.Location.getDefaultInstance() : location_; - } + return this; } /** - * <code>.context.Location location = 2;</code> + * <code>float e2e_latency_ms = 1;</code> + * @return This builder for chaining. */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Location, context.ContextOuterClass.Location.Builder, context.ContextOuterClass.LocationOrBuilder> - getLocationFieldBuilder() { - if (locationBuilder_ == null) { - locationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Location, context.ContextOuterClass.Location.Builder, context.ContextOuterClass.LocationOrBuilder>( - getLocation(), - getParentForChildren(), - isClean()); - location_ = null; - } - return locationBuilder_; + public Builder clearE2ELatencyMs() { + + e2ELatencyMs_ = 0F; + onChanged(); + return this; } @java.lang.Override public final Builder setUnknownFields( @@ -54965,91 +65903,76 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.Constraint_EndPointLocation) + // @@protoc_insertion_point(builder_scope:context.Constraint_SLA_Latency) } - // @@protoc_insertion_point(class_scope:context.Constraint_EndPointLocation) - private static final context.ContextOuterClass.Constraint_EndPointLocation DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Constraint_SLA_Latency) + private static final context.ContextOuterClass.Constraint_SLA_Latency DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_EndPointLocation(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_SLA_Latency(); } - public static context.ContextOuterClass.Constraint_EndPointLocation getDefaultInstance() { + public static context.ContextOuterClass.Constraint_SLA_Latency getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<Constraint_EndPointLocation> - PARSER = new com.google.protobuf.AbstractParser<Constraint_EndPointLocation>() { + private static final com.google.protobuf.Parser<Constraint_SLA_Latency> + PARSER = new com.google.protobuf.AbstractParser<Constraint_SLA_Latency>() { @java.lang.Override - public Constraint_EndPointLocation parsePartialFrom( + public Constraint_SLA_Latency parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new Constraint_EndPointLocation(input, extensionRegistry); + return new Constraint_SLA_Latency(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<Constraint_EndPointLocation> parser() { + public static com.google.protobuf.Parser<Constraint_SLA_Latency> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<Constraint_EndPointLocation> getParserForType() { + public com.google.protobuf.Parser<Constraint_SLA_Latency> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.Constraint_EndPointLocation getDefaultInstanceForType() { + public context.ContextOuterClass.Constraint_SLA_Latency getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface Constraint_EndPointPriorityOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Constraint_EndPointPriority) + public interface Constraint_SLA_CapacityOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Constraint_SLA_Capacity) com.google.protobuf.MessageOrBuilder { /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return Whether the endpointId field is set. - */ - boolean hasEndpointId(); - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return The endpointId. - */ - context.ContextOuterClass.EndPointId getEndpointId(); - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder(); - - /** - * <code>uint32 priority = 2;</code> - * @return The priority. + * <code>float capacity_gbps = 1;</code> + * @return The capacityGbps. */ - int getPriority(); + float getCapacityGbps(); } /** - * Protobuf type {@code context.Constraint_EndPointPriority} + * Protobuf type {@code context.Constraint_SLA_Capacity} */ - public static final class Constraint_EndPointPriority extends + public static final class Constraint_SLA_Capacity extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Constraint_EndPointPriority) - Constraint_EndPointPriorityOrBuilder { + // @@protoc_insertion_point(message_implements:context.Constraint_SLA_Capacity) + Constraint_SLA_CapacityOrBuilder { private static final long serialVersionUID = 0L; - // Use Constraint_EndPointPriority.newBuilder() to construct. - private Constraint_EndPointPriority(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Constraint_SLA_Capacity.newBuilder() to construct. + private Constraint_SLA_Capacity(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private Constraint_EndPointPriority() { + private Constraint_SLA_Capacity() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new Constraint_EndPointPriority(); + return new Constraint_SLA_Capacity(); } @java.lang.Override @@ -55057,7 +65980,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private Constraint_EndPointPriority( + private Constraint_SLA_Capacity( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -55075,22 +65998,9 @@ public final class ContextOuterClass { case 0: done = true; break; - case 10: { - context.ContextOuterClass.EndPointId.Builder subBuilder = null; - if (endpointId_ != null) { - subBuilder = endpointId_.toBuilder(); - } - endpointId_ = input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(endpointId_); - endpointId_ = subBuilder.buildPartial(); - } - - break; - } - case 16: { + case 13: { - priority_ = input.readUInt32(); + capacityGbps_ = input.readFloat(); break; } default: { @@ -55114,52 +66024,26 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_EndPointPriority_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Capacity_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_EndPointPriority_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Capacity_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_EndPointPriority.class, context.ContextOuterClass.Constraint_EndPointPriority.Builder.class); - } - - public static final int ENDPOINT_ID_FIELD_NUMBER = 1; - private context.ContextOuterClass.EndPointId endpointId_; - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return Whether the endpointId field is set. - */ - @java.lang.Override - public boolean hasEndpointId() { - return endpointId_ != null; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return The endpointId. - */ - @java.lang.Override - public context.ContextOuterClass.EndPointId getEndpointId() { - return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - @java.lang.Override - public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { - return getEndpointId(); + context.ContextOuterClass.Constraint_SLA_Capacity.class, context.ContextOuterClass.Constraint_SLA_Capacity.Builder.class); } - public static final int PRIORITY_FIELD_NUMBER = 2; - private int priority_; + public static final int CAPACITY_GBPS_FIELD_NUMBER = 1; + private float capacityGbps_; /** - * <code>uint32 priority = 2;</code> - * @return The priority. + * <code>float capacity_gbps = 1;</code> + * @return The capacityGbps. */ @java.lang.Override - public int getPriority() { - return priority_; + public float getCapacityGbps() { + return capacityGbps_; } private byte memoizedIsInitialized = -1; @@ -55176,11 +66060,8 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (endpointId_ != null) { - output.writeMessage(1, getEndpointId()); - } - if (priority_ != 0) { - output.writeUInt32(2, priority_); + if (capacityGbps_ != 0F) { + output.writeFloat(1, capacityGbps_); } unknownFields.writeTo(output); } @@ -55191,13 +66072,9 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (endpointId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getEndpointId()); - } - if (priority_ != 0) { + if (capacityGbps_ != 0F) { size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(2, priority_); + .computeFloatSize(1, capacityGbps_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -55209,18 +66086,14 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.Constraint_EndPointPriority)) { + if (!(obj instanceof context.ContextOuterClass.Constraint_SLA_Capacity)) { return super.equals(obj); } - context.ContextOuterClass.Constraint_EndPointPriority other = (context.ContextOuterClass.Constraint_EndPointPriority) obj; + context.ContextOuterClass.Constraint_SLA_Capacity other = (context.ContextOuterClass.Constraint_SLA_Capacity) obj; - if (hasEndpointId() != other.hasEndpointId()) return false; - if (hasEndpointId()) { - if (!getEndpointId() - .equals(other.getEndpointId())) return false; - } - if (getPriority() - != other.getPriority()) return false; + if (java.lang.Float.floatToIntBits(getCapacityGbps()) + != java.lang.Float.floatToIntBits( + other.getCapacityGbps())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -55232,80 +66105,77 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasEndpointId()) { - hash = (37 * hash) + ENDPOINT_ID_FIELD_NUMBER; - hash = (53 * hash) + getEndpointId().hashCode(); - } - hash = (37 * hash) + PRIORITY_FIELD_NUMBER; - hash = (53 * hash) + getPriority(); + hash = (37 * hash) + CAPACITY_GBPS_FIELD_NUMBER; + hash = (53 * hash) + java.lang.Float.floatToIntBits( + getCapacityGbps()); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom(byte[] data) + public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Capacity 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 context.ContextOuterClass.Constraint_EndPointPriority parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_SLA_Capacity parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_EndPointPriority parseDelimitedFrom( + public static context.ContextOuterClass.Constraint_SLA_Capacity 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 context.ContextOuterClass.Constraint_EndPointPriority parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_EndPointPriority parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -55318,7 +66188,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.Constraint_EndPointPriority prototype) { + public static Builder newBuilder(context.ContextOuterClass.Constraint_SLA_Capacity prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -55334,26 +66204,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.Constraint_EndPointPriority} + * Protobuf type {@code context.Constraint_SLA_Capacity} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Constraint_EndPointPriority) - context.ContextOuterClass.Constraint_EndPointPriorityOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Constraint_SLA_Capacity) + context.ContextOuterClass.Constraint_SLA_CapacityOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_EndPointPriority_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Capacity_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_EndPointPriority_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Capacity_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_EndPointPriority.class, context.ContextOuterClass.Constraint_EndPointPriority.Builder.class); + context.ContextOuterClass.Constraint_SLA_Capacity.class, context.ContextOuterClass.Constraint_SLA_Capacity.Builder.class); } - // Construct using context.ContextOuterClass.Constraint_EndPointPriority.newBuilder() + // Construct using context.ContextOuterClass.Constraint_SLA_Capacity.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -55371,13 +66241,7 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - if (endpointIdBuilder_ == null) { - endpointId_ = null; - } else { - endpointId_ = null; - endpointIdBuilder_ = null; - } - priority_ = 0; + capacityGbps_ = 0F; return this; } @@ -55385,17 +66249,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Constraint_EndPointPriority_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Capacity_descriptor; } @java.lang.Override - public context.ContextOuterClass.Constraint_EndPointPriority getDefaultInstanceForType() { - return context.ContextOuterClass.Constraint_EndPointPriority.getDefaultInstance(); + public context.ContextOuterClass.Constraint_SLA_Capacity getDefaultInstanceForType() { + return context.ContextOuterClass.Constraint_SLA_Capacity.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.Constraint_EndPointPriority build() { - context.ContextOuterClass.Constraint_EndPointPriority result = buildPartial(); + public context.ContextOuterClass.Constraint_SLA_Capacity build() { + context.ContextOuterClass.Constraint_SLA_Capacity result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -55403,14 +66267,9 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.Constraint_EndPointPriority buildPartial() { - context.ContextOuterClass.Constraint_EndPointPriority result = new context.ContextOuterClass.Constraint_EndPointPriority(this); - if (endpointIdBuilder_ == null) { - result.endpointId_ = endpointId_; - } else { - result.endpointId_ = endpointIdBuilder_.build(); - } - result.priority_ = priority_; + public context.ContextOuterClass.Constraint_SLA_Capacity buildPartial() { + context.ContextOuterClass.Constraint_SLA_Capacity result = new context.ContextOuterClass.Constraint_SLA_Capacity(this); + result.capacityGbps_ = capacityGbps_; onBuilt(); return result; } @@ -55449,21 +66308,18 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.Constraint_EndPointPriority) { - return mergeFrom((context.ContextOuterClass.Constraint_EndPointPriority)other); + if (other instanceof context.ContextOuterClass.Constraint_SLA_Capacity) { + return mergeFrom((context.ContextOuterClass.Constraint_SLA_Capacity)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.Constraint_EndPointPriority other) { - if (other == context.ContextOuterClass.Constraint_EndPointPriority.getDefaultInstance()) return this; - if (other.hasEndpointId()) { - mergeEndpointId(other.getEndpointId()); - } - if (other.getPriority() != 0) { - setPriority(other.getPriority()); + public Builder mergeFrom(context.ContextOuterClass.Constraint_SLA_Capacity other) { + if (other == context.ContextOuterClass.Constraint_SLA_Capacity.getDefaultInstance()) return this; + if (other.getCapacityGbps() != 0F) { + setCapacityGbps(other.getCapacityGbps()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -55480,11 +66336,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.Constraint_EndPointPriority parsedMessage = null; + context.ContextOuterClass.Constraint_SLA_Capacity parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Constraint_EndPointPriority) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.Constraint_SLA_Capacity) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -55494,152 +66350,33 @@ public final class ContextOuterClass { return this; } - private context.ContextOuterClass.EndPointId endpointId_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> endpointIdBuilder_; - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return Whether the endpointId field is set. - */ - public boolean hasEndpointId() { - return endpointIdBuilder_ != null || endpointId_ != null; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - * @return The endpointId. - */ - public context.ContextOuterClass.EndPointId getEndpointId() { - if (endpointIdBuilder_ == null) { - return endpointId_ == null ? context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; - } else { - return endpointIdBuilder_.getMessage(); - } - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public Builder setEndpointId(context.ContextOuterClass.EndPointId value) { - if (endpointIdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - endpointId_ = value; - onChanged(); - } else { - endpointIdBuilder_.setMessage(value); - } - - return this; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public Builder setEndpointId( - context.ContextOuterClass.EndPointId.Builder builderForValue) { - if (endpointIdBuilder_ == null) { - endpointId_ = builderForValue.build(); - onChanged(); - } else { - endpointIdBuilder_.setMessage(builderForValue.build()); - } - - return this; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public Builder mergeEndpointId(context.ContextOuterClass.EndPointId value) { - if (endpointIdBuilder_ == null) { - if (endpointId_ != null) { - endpointId_ = - context.ContextOuterClass.EndPointId.newBuilder(endpointId_).mergeFrom(value).buildPartial(); - } else { - endpointId_ = value; - } - onChanged(); - } else { - endpointIdBuilder_.mergeFrom(value); - } - - return this; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public Builder clearEndpointId() { - if (endpointIdBuilder_ == null) { - endpointId_ = null; - onChanged(); - } else { - endpointId_ = null; - endpointIdBuilder_ = null; - } - - return this; - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public context.ContextOuterClass.EndPointId.Builder getEndpointIdBuilder() { - - onChanged(); - return getEndpointIdFieldBuilder().getBuilder(); - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdOrBuilder() { - if (endpointIdBuilder_ != null) { - return endpointIdBuilder_.getMessageOrBuilder(); - } else { - return endpointId_ == null ? - context.ContextOuterClass.EndPointId.getDefaultInstance() : endpointId_; - } - } - /** - * <code>.context.EndPointId endpoint_id = 1;</code> - */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> - getEndpointIdFieldBuilder() { - if (endpointIdBuilder_ == null) { - endpointIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( - getEndpointId(), - getParentForChildren(), - isClean()); - endpointId_ = null; - } - return endpointIdBuilder_; - } - - private int priority_ ; + private float capacityGbps_ ; /** - * <code>uint32 priority = 2;</code> - * @return The priority. + * <code>float capacity_gbps = 1;</code> + * @return The capacityGbps. */ @java.lang.Override - public int getPriority() { - return priority_; + public float getCapacityGbps() { + return capacityGbps_; } /** - * <code>uint32 priority = 2;</code> - * @param value The priority to set. + * <code>float capacity_gbps = 1;</code> + * @param value The capacityGbps to set. * @return This builder for chaining. */ - public Builder setPriority(int value) { + public Builder setCapacityGbps(float value) { - priority_ = value; + capacityGbps_ = value; onChanged(); return this; } /** - * <code>uint32 priority = 2;</code> + * <code>float capacity_gbps = 1;</code> * @return This builder for chaining. */ - public Builder clearPriority() { + public Builder clearCapacityGbps() { - priority_ = 0; + capacityGbps_ = 0F; onChanged(); return this; } @@ -55656,76 +66393,92 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.Constraint_EndPointPriority) + // @@protoc_insertion_point(builder_scope:context.Constraint_SLA_Capacity) } - // @@protoc_insertion_point(class_scope:context.Constraint_EndPointPriority) - private static final context.ContextOuterClass.Constraint_EndPointPriority DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Constraint_SLA_Capacity) + private static final context.ContextOuterClass.Constraint_SLA_Capacity DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_EndPointPriority(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_SLA_Capacity(); } - public static context.ContextOuterClass.Constraint_EndPointPriority getDefaultInstance() { + public static context.ContextOuterClass.Constraint_SLA_Capacity getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<Constraint_EndPointPriority> - PARSER = new com.google.protobuf.AbstractParser<Constraint_EndPointPriority>() { + private static final com.google.protobuf.Parser<Constraint_SLA_Capacity> + PARSER = new com.google.protobuf.AbstractParser<Constraint_SLA_Capacity>() { @java.lang.Override - public Constraint_EndPointPriority parsePartialFrom( + public Constraint_SLA_Capacity parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new Constraint_EndPointPriority(input, extensionRegistry); + return new Constraint_SLA_Capacity(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<Constraint_EndPointPriority> parser() { + public static com.google.protobuf.Parser<Constraint_SLA_Capacity> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<Constraint_EndPointPriority> getParserForType() { + public com.google.protobuf.Parser<Constraint_SLA_Capacity> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.Constraint_EndPointPriority getDefaultInstanceForType() { + public context.ContextOuterClass.Constraint_SLA_Capacity getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface Constraint_SLA_LatencyOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Constraint_SLA_Latency) + public interface Constraint_SLA_AvailabilityOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Constraint_SLA_Availability) com.google.protobuf.MessageOrBuilder { /** - * <code>float e2e_latency_ms = 1;</code> - * @return The e2eLatencyMs. + * <code>uint32 num_disjoint_paths = 1;</code> + * @return The numDisjointPaths. */ - float getE2ELatencyMs(); + int getNumDisjointPaths(); + + /** + * <code>bool all_active = 2;</code> + * @return The allActive. + */ + boolean getAllActive(); + + /** + * <pre> + * 0.0 .. 100.0 percentage of availability + * </pre> + * + * <code>float availability = 3;</code> + * @return The availability. + */ + float getAvailability(); } /** - * Protobuf type {@code context.Constraint_SLA_Latency} + * Protobuf type {@code context.Constraint_SLA_Availability} */ - public static final class Constraint_SLA_Latency extends + public static final class Constraint_SLA_Availability extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Constraint_SLA_Latency) - Constraint_SLA_LatencyOrBuilder { + // @@protoc_insertion_point(message_implements:context.Constraint_SLA_Availability) + Constraint_SLA_AvailabilityOrBuilder { private static final long serialVersionUID = 0L; - // Use Constraint_SLA_Latency.newBuilder() to construct. - private Constraint_SLA_Latency(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Constraint_SLA_Availability.newBuilder() to construct. + private Constraint_SLA_Availability(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private Constraint_SLA_Latency() { + private Constraint_SLA_Availability() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new Constraint_SLA_Latency(); + return new Constraint_SLA_Availability(); } @java.lang.Override @@ -55733,7 +66486,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private Constraint_SLA_Latency( + private Constraint_SLA_Availability( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -55751,9 +66504,19 @@ public final class ContextOuterClass { case 0: done = true; break; - case 13: { + case 8: { - e2ELatencyMs_ = input.readFloat(); + numDisjointPaths_ = input.readUInt32(); + break; + } + case 16: { + + allActive_ = input.readBool(); + break; + } + case 29: { + + availability_ = input.readFloat(); break; } default: { @@ -55777,26 +66540,52 @@ public final class ContextOuterClass { } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Latency_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Availability_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Latency_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Availability_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_SLA_Latency.class, context.ContextOuterClass.Constraint_SLA_Latency.Builder.class); + context.ContextOuterClass.Constraint_SLA_Availability.class, context.ContextOuterClass.Constraint_SLA_Availability.Builder.class); } - public static final int E2E_LATENCY_MS_FIELD_NUMBER = 1; - private float e2ELatencyMs_; + public static final int NUM_DISJOINT_PATHS_FIELD_NUMBER = 1; + private int numDisjointPaths_; /** - * <code>float e2e_latency_ms = 1;</code> - * @return The e2eLatencyMs. + * <code>uint32 num_disjoint_paths = 1;</code> + * @return The numDisjointPaths. */ @java.lang.Override - public float getE2ELatencyMs() { - return e2ELatencyMs_; + public int getNumDisjointPaths() { + return numDisjointPaths_; + } + + public static final int ALL_ACTIVE_FIELD_NUMBER = 2; + private boolean allActive_; + /** + * <code>bool all_active = 2;</code> + * @return The allActive. + */ + @java.lang.Override + public boolean getAllActive() { + return allActive_; + } + + public static final int AVAILABILITY_FIELD_NUMBER = 3; + private float availability_; + /** + * <pre> + * 0.0 .. 100.0 percentage of availability + * </pre> + * + * <code>float availability = 3;</code> + * @return The availability. + */ + @java.lang.Override + public float getAvailability() { + return availability_; } private byte memoizedIsInitialized = -1; @@ -55813,8 +66602,14 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (e2ELatencyMs_ != 0F) { - output.writeFloat(1, e2ELatencyMs_); + if (numDisjointPaths_ != 0) { + output.writeUInt32(1, numDisjointPaths_); + } + if (allActive_ != false) { + output.writeBool(2, allActive_); + } + if (availability_ != 0F) { + output.writeFloat(3, availability_); } unknownFields.writeTo(output); } @@ -55825,9 +66620,17 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (e2ELatencyMs_ != 0F) { + if (numDisjointPaths_ != 0) { size += com.google.protobuf.CodedOutputStream - .computeFloatSize(1, e2ELatencyMs_); + .computeUInt32Size(1, numDisjointPaths_); + } + if (allActive_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(2, allActive_); + } + if (availability_ != 0F) { + size += com.google.protobuf.CodedOutputStream + .computeFloatSize(3, availability_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -55839,14 +66642,18 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.Constraint_SLA_Latency)) { + if (!(obj instanceof context.ContextOuterClass.Constraint_SLA_Availability)) { return super.equals(obj); } - context.ContextOuterClass.Constraint_SLA_Latency other = (context.ContextOuterClass.Constraint_SLA_Latency) obj; + context.ContextOuterClass.Constraint_SLA_Availability other = (context.ContextOuterClass.Constraint_SLA_Availability) obj; - if (java.lang.Float.floatToIntBits(getE2ELatencyMs()) + if (getNumDisjointPaths() + != other.getNumDisjointPaths()) return false; + if (getAllActive() + != other.getAllActive()) return false; + if (java.lang.Float.floatToIntBits(getAvailability()) != java.lang.Float.floatToIntBits( - other.getE2ELatencyMs())) return false; + other.getAvailability())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -55858,77 +66665,82 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + E2E_LATENCY_MS_FIELD_NUMBER; + hash = (37 * hash) + NUM_DISJOINT_PATHS_FIELD_NUMBER; + hash = (53 * hash) + getNumDisjointPaths(); + hash = (37 * hash) + ALL_ACTIVE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getAllActive()); + hash = (37 * hash) + AVAILABILITY_FIELD_NUMBER; hash = (53 * hash) + java.lang.Float.floatToIntBits( - getE2ELatencyMs()); + getAvailability()); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom(byte[] data) + public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Availability 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 context.ContextOuterClass.Constraint_SLA_Latency parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_SLA_Availability parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_SLA_Latency parseDelimitedFrom( + public static context.ContextOuterClass.Constraint_SLA_Availability 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 context.ContextOuterClass.Constraint_SLA_Latency parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_SLA_Latency parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -55941,7 +66753,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.Constraint_SLA_Latency prototype) { + public static Builder newBuilder(context.ContextOuterClass.Constraint_SLA_Availability prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -55957,26 +66769,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.Constraint_SLA_Latency} + * Protobuf type {@code context.Constraint_SLA_Availability} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Constraint_SLA_Latency) - context.ContextOuterClass.Constraint_SLA_LatencyOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Constraint_SLA_Availability) + context.ContextOuterClass.Constraint_SLA_AvailabilityOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Latency_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Availability_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Latency_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Availability_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_SLA_Latency.class, context.ContextOuterClass.Constraint_SLA_Latency.Builder.class); + context.ContextOuterClass.Constraint_SLA_Availability.class, context.ContextOuterClass.Constraint_SLA_Availability.Builder.class); } - // Construct using context.ContextOuterClass.Constraint_SLA_Latency.newBuilder() + // Construct using context.ContextOuterClass.Constraint_SLA_Availability.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -55994,7 +66806,11 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - e2ELatencyMs_ = 0F; + numDisjointPaths_ = 0; + + allActive_ = false; + + availability_ = 0F; return this; } @@ -56002,17 +66818,17 @@ public final class ContextOuterClass { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Latency_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Availability_descriptor; } @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Latency getDefaultInstanceForType() { - return context.ContextOuterClass.Constraint_SLA_Latency.getDefaultInstance(); + public context.ContextOuterClass.Constraint_SLA_Availability getDefaultInstanceForType() { + return context.ContextOuterClass.Constraint_SLA_Availability.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Latency build() { - context.ContextOuterClass.Constraint_SLA_Latency result = buildPartial(); + public context.ContextOuterClass.Constraint_SLA_Availability build() { + context.ContextOuterClass.Constraint_SLA_Availability result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -56020,9 +66836,11 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Latency buildPartial() { - context.ContextOuterClass.Constraint_SLA_Latency result = new context.ContextOuterClass.Constraint_SLA_Latency(this); - result.e2ELatencyMs_ = e2ELatencyMs_; + public context.ContextOuterClass.Constraint_SLA_Availability buildPartial() { + context.ContextOuterClass.Constraint_SLA_Availability result = new context.ContextOuterClass.Constraint_SLA_Availability(this); + result.numDisjointPaths_ = numDisjointPaths_; + result.allActive_ = allActive_; + result.availability_ = availability_; onBuilt(); return result; } @@ -56061,18 +66879,24 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.Constraint_SLA_Latency) { - return mergeFrom((context.ContextOuterClass.Constraint_SLA_Latency)other); + if (other instanceof context.ContextOuterClass.Constraint_SLA_Availability) { + return mergeFrom((context.ContextOuterClass.Constraint_SLA_Availability)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.Constraint_SLA_Latency other) { - if (other == context.ContextOuterClass.Constraint_SLA_Latency.getDefaultInstance()) return this; - if (other.getE2ELatencyMs() != 0F) { - setE2ELatencyMs(other.getE2ELatencyMs()); + public Builder mergeFrom(context.ContextOuterClass.Constraint_SLA_Availability other) { + if (other == context.ContextOuterClass.Constraint_SLA_Availability.getDefaultInstance()) return this; + if (other.getNumDisjointPaths() != 0) { + setNumDisjointPaths(other.getNumDisjointPaths()); + } + if (other.getAllActive() != false) { + setAllActive(other.getAllActive()); + } + if (other.getAvailability() != 0F) { + setAvailability(other.getAvailability()); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -56089,11 +66913,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.Constraint_SLA_Latency parsedMessage = null; + context.ContextOuterClass.Constraint_SLA_Availability parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Constraint_SLA_Latency) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.Constraint_SLA_Availability) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -56103,33 +66927,107 @@ public final class ContextOuterClass { return this; } - private float e2ELatencyMs_ ; + private int numDisjointPaths_ ; /** - * <code>float e2e_latency_ms = 1;</code> - * @return The e2eLatencyMs. + * <code>uint32 num_disjoint_paths = 1;</code> + * @return The numDisjointPaths. */ @java.lang.Override - public float getE2ELatencyMs() { - return e2ELatencyMs_; + public int getNumDisjointPaths() { + return numDisjointPaths_; } /** - * <code>float e2e_latency_ms = 1;</code> - * @param value The e2eLatencyMs to set. + * <code>uint32 num_disjoint_paths = 1;</code> + * @param value The numDisjointPaths to set. * @return This builder for chaining. */ - public Builder setE2ELatencyMs(float value) { + public Builder setNumDisjointPaths(int value) { - e2ELatencyMs_ = value; + numDisjointPaths_ = value; onChanged(); return this; } /** - * <code>float e2e_latency_ms = 1;</code> + * <code>uint32 num_disjoint_paths = 1;</code> * @return This builder for chaining. */ - public Builder clearE2ELatencyMs() { + public Builder clearNumDisjointPaths() { - e2ELatencyMs_ = 0F; + numDisjointPaths_ = 0; + onChanged(); + return this; + } + + private boolean allActive_ ; + /** + * <code>bool all_active = 2;</code> + * @return The allActive. + */ + @java.lang.Override + public boolean getAllActive() { + return allActive_; + } + /** + * <code>bool all_active = 2;</code> + * @param value The allActive to set. + * @return This builder for chaining. + */ + public Builder setAllActive(boolean value) { + + allActive_ = value; + onChanged(); + return this; + } + /** + * <code>bool all_active = 2;</code> + * @return This builder for chaining. + */ + public Builder clearAllActive() { + + allActive_ = false; + onChanged(); + return this; + } + + private float availability_ ; + /** + * <pre> + * 0.0 .. 100.0 percentage of availability + * </pre> + * + * <code>float availability = 3;</code> + * @return The availability. + */ + @java.lang.Override + public float getAvailability() { + return availability_; + } + /** + * <pre> + * 0.0 .. 100.0 percentage of availability + * </pre> + * + * <code>float availability = 3;</code> + * @param value The availability to set. + * @return This builder for chaining. + */ + public Builder setAvailability(float value) { + + availability_ = value; + onChanged(); + return this; + } + /** + * <pre> + * 0.0 .. 100.0 percentage of availability + * </pre> + * + * <code>float availability = 3;</code> + * @return This builder for chaining. + */ + public Builder clearAvailability() { + + availability_ = 0F; onChanged(); return this; } @@ -56146,76 +67044,100 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.Constraint_SLA_Latency) + // @@protoc_insertion_point(builder_scope:context.Constraint_SLA_Availability) } - // @@protoc_insertion_point(class_scope:context.Constraint_SLA_Latency) - private static final context.ContextOuterClass.Constraint_SLA_Latency DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Constraint_SLA_Availability) + private static final context.ContextOuterClass.Constraint_SLA_Availability DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_SLA_Latency(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_SLA_Availability(); } - public static context.ContextOuterClass.Constraint_SLA_Latency getDefaultInstance() { + public static context.ContextOuterClass.Constraint_SLA_Availability getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<Constraint_SLA_Latency> - PARSER = new com.google.protobuf.AbstractParser<Constraint_SLA_Latency>() { + private static final com.google.protobuf.Parser<Constraint_SLA_Availability> + PARSER = new com.google.protobuf.AbstractParser<Constraint_SLA_Availability>() { @java.lang.Override - public Constraint_SLA_Latency parsePartialFrom( + public Constraint_SLA_Availability parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new Constraint_SLA_Latency(input, extensionRegistry); + return new Constraint_SLA_Availability(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<Constraint_SLA_Latency> parser() { + public static com.google.protobuf.Parser<Constraint_SLA_Availability> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<Constraint_SLA_Latency> getParserForType() { + public com.google.protobuf.Parser<Constraint_SLA_Availability> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Latency getDefaultInstanceForType() { + public context.ContextOuterClass.Constraint_SLA_Availability getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface Constraint_SLA_CapacityOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Constraint_SLA_Capacity) + public interface Constraint_SLA_Isolation_levelOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Constraint_SLA_Isolation_level) com.google.protobuf.MessageOrBuilder { /** - * <code>float capacity_gbps = 1;</code> - * @return The capacityGbps. + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @return A list containing the isolationLevel. */ - float getCapacityGbps(); + java.util.List<context.ContextOuterClass.IsolationLevelEnum> getIsolationLevelList(); + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @return The count of isolationLevel. + */ + int getIsolationLevelCount(); + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @param index The index of the element to return. + * @return The isolationLevel at the given index. + */ + context.ContextOuterClass.IsolationLevelEnum getIsolationLevel(int index); + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @return A list containing the enum numeric values on the wire for isolationLevel. + */ + java.util.List<java.lang.Integer> + getIsolationLevelValueList(); + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @param index The index of the value to return. + * @return The enum numeric value on the wire of isolationLevel at the given index. + */ + int getIsolationLevelValue(int index); } /** - * Protobuf type {@code context.Constraint_SLA_Capacity} + * Protobuf type {@code context.Constraint_SLA_Isolation_level} */ - public static final class Constraint_SLA_Capacity extends + public static final class Constraint_SLA_Isolation_level extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Constraint_SLA_Capacity) - Constraint_SLA_CapacityOrBuilder { + // @@protoc_insertion_point(message_implements:context.Constraint_SLA_Isolation_level) + Constraint_SLA_Isolation_levelOrBuilder { private static final long serialVersionUID = 0L; - // Use Constraint_SLA_Capacity.newBuilder() to construct. - private Constraint_SLA_Capacity(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Constraint_SLA_Isolation_level.newBuilder() to construct. + private Constraint_SLA_Isolation_level(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private Constraint_SLA_Capacity() { + private Constraint_SLA_Isolation_level() { + isolationLevel_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new Constraint_SLA_Capacity(); + return new Constraint_SLA_Isolation_level(); } @java.lang.Override @@ -56223,7 +67145,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private Constraint_SLA_Capacity( + private Constraint_SLA_Isolation_level( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -56231,6 +67153,7 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } + int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -56241,9 +67164,27 @@ public final class ContextOuterClass { case 0: done = true; break; - case 13: { - - capacityGbps_ = input.readFloat(); + case 8: { + int rawValue = input.readEnum(); + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + isolationLevel_ = new java.util.ArrayList<java.lang.Integer>(); + mutable_bitField0_ |= 0x00000001; + } + isolationLevel_.add(rawValue); + break; + } + case 10: { + int length = input.readRawVarint32(); + int oldLimit = input.pushLimit(length); + while(input.getBytesUntilLimit() > 0) { + int rawValue = input.readEnum(); + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + isolationLevel_ = new java.util.ArrayList<java.lang.Integer>(); + mutable_bitField0_ |= 0x00000001; + } + isolationLevel_.add(rawValue); + } + input.popLimit(oldLimit); break; } default: { @@ -56261,33 +67202,83 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { + if (((mutable_bitField0_ & 0x00000001) != 0)) { + isolationLevel_ = java.util.Collections.unmodifiableList(isolationLevel_); + } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Capacity_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Isolation_level_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Capacity_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Isolation_level_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_SLA_Capacity.class, context.ContextOuterClass.Constraint_SLA_Capacity.Builder.class); + context.ContextOuterClass.Constraint_SLA_Isolation_level.class, context.ContextOuterClass.Constraint_SLA_Isolation_level.Builder.class); } - public static final int CAPACITY_GBPS_FIELD_NUMBER = 1; - private float capacityGbps_; + public static final int ISOLATION_LEVEL_FIELD_NUMBER = 1; + private java.util.List<java.lang.Integer> isolationLevel_; + private static final com.google.protobuf.Internal.ListAdapter.Converter< + java.lang.Integer, context.ContextOuterClass.IsolationLevelEnum> isolationLevel_converter_ = + new com.google.protobuf.Internal.ListAdapter.Converter< + java.lang.Integer, context.ContextOuterClass.IsolationLevelEnum>() { + public context.ContextOuterClass.IsolationLevelEnum convert(java.lang.Integer from) { + @SuppressWarnings("deprecation") + context.ContextOuterClass.IsolationLevelEnum result = context.ContextOuterClass.IsolationLevelEnum.valueOf(from); + return result == null ? context.ContextOuterClass.IsolationLevelEnum.UNRECOGNIZED : result; + } + }; /** - * <code>float capacity_gbps = 1;</code> - * @return The capacityGbps. + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @return A list containing the isolationLevel. */ @java.lang.Override - public float getCapacityGbps() { - return capacityGbps_; + public java.util.List<context.ContextOuterClass.IsolationLevelEnum> getIsolationLevelList() { + return new com.google.protobuf.Internal.ListAdapter< + java.lang.Integer, context.ContextOuterClass.IsolationLevelEnum>(isolationLevel_, isolationLevel_converter_); + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @return The count of isolationLevel. + */ + @java.lang.Override + public int getIsolationLevelCount() { + return isolationLevel_.size(); + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @param index The index of the element to return. + * @return The isolationLevel at the given index. + */ + @java.lang.Override + public context.ContextOuterClass.IsolationLevelEnum getIsolationLevel(int index) { + return isolationLevel_converter_.convert(isolationLevel_.get(index)); + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @return A list containing the enum numeric values on the wire for isolationLevel. + */ + @java.lang.Override + public java.util.List<java.lang.Integer> + getIsolationLevelValueList() { + return isolationLevel_; + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @param index The index of the value to return. + * @return The enum numeric value on the wire of isolationLevel at the given index. + */ + @java.lang.Override + public int getIsolationLevelValue(int index) { + return isolationLevel_.get(index); } + private int isolationLevelMemoizedSerializedSize; private byte memoizedIsInitialized = -1; @java.lang.Override @@ -56303,8 +67294,13 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (capacityGbps_ != 0F) { - output.writeFloat(1, capacityGbps_); + getSerializedSize(); + if (getIsolationLevelList().size() > 0) { + output.writeUInt32NoTag(10); + output.writeUInt32NoTag(isolationLevelMemoizedSerializedSize); + } + for (int i = 0; i < isolationLevel_.size(); i++) { + output.writeEnumNoTag(isolationLevel_.get(i)); } unknownFields.writeTo(output); } @@ -56315,9 +67311,17 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (capacityGbps_ != 0F) { - size += com.google.protobuf.CodedOutputStream - .computeFloatSize(1, capacityGbps_); + { + int dataSize = 0; + for (int i = 0; i < isolationLevel_.size(); i++) { + dataSize += com.google.protobuf.CodedOutputStream + .computeEnumSizeNoTag(isolationLevel_.get(i)); + } + size += dataSize; + if (!getIsolationLevelList().isEmpty()) { size += 1; + size += com.google.protobuf.CodedOutputStream + .computeUInt32SizeNoTag(dataSize); + }isolationLevelMemoizedSerializedSize = dataSize; } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -56329,14 +67333,12 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.Constraint_SLA_Capacity)) { + if (!(obj instanceof context.ContextOuterClass.Constraint_SLA_Isolation_level)) { return super.equals(obj); } - context.ContextOuterClass.Constraint_SLA_Capacity other = (context.ContextOuterClass.Constraint_SLA_Capacity) obj; + context.ContextOuterClass.Constraint_SLA_Isolation_level other = (context.ContextOuterClass.Constraint_SLA_Isolation_level) obj; - if (java.lang.Float.floatToIntBits(getCapacityGbps()) - != java.lang.Float.floatToIntBits( - other.getCapacityGbps())) return false; + if (!isolationLevel_.equals(other.isolationLevel_)) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -56348,77 +67350,78 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + CAPACITY_GBPS_FIELD_NUMBER; - hash = (53 * hash) + java.lang.Float.floatToIntBits( - getCapacityGbps()); + if (getIsolationLevelCount() > 0) { + hash = (37 * hash) + ISOLATION_LEVEL_FIELD_NUMBER; + hash = (53 * hash) + isolationLevel_.hashCode(); + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom(byte[] data) + public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Isolation_level 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 context.ContextOuterClass.Constraint_SLA_Capacity parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_SLA_Capacity parseDelimitedFrom( + public static context.ContextOuterClass.Constraint_SLA_Isolation_level 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 context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_SLA_Capacity parseFrom( + public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -56431,7 +67434,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.Constraint_SLA_Capacity prototype) { + public static Builder newBuilder(context.ContextOuterClass.Constraint_SLA_Isolation_level prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -56447,26 +67450,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.Constraint_SLA_Capacity} + * Protobuf type {@code context.Constraint_SLA_Isolation_level} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Constraint_SLA_Capacity) - context.ContextOuterClass.Constraint_SLA_CapacityOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Constraint_SLA_Isolation_level) + context.ContextOuterClass.Constraint_SLA_Isolation_levelOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Capacity_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Isolation_level_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Capacity_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Isolation_level_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_SLA_Capacity.class, context.ContextOuterClass.Constraint_SLA_Capacity.Builder.class); + context.ContextOuterClass.Constraint_SLA_Isolation_level.class, context.ContextOuterClass.Constraint_SLA_Isolation_level.Builder.class); } - // Construct using context.ContextOuterClass.Constraint_SLA_Capacity.newBuilder() + // Construct using context.ContextOuterClass.Constraint_SLA_Isolation_level.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -56484,25 +67487,25 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); - capacityGbps_ = 0F; - + isolationLevel_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Capacity_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_SLA_Isolation_level_descriptor; } @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Capacity getDefaultInstanceForType() { - return context.ContextOuterClass.Constraint_SLA_Capacity.getDefaultInstance(); + public context.ContextOuterClass.Constraint_SLA_Isolation_level getDefaultInstanceForType() { + return context.ContextOuterClass.Constraint_SLA_Isolation_level.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Capacity build() { - context.ContextOuterClass.Constraint_SLA_Capacity result = buildPartial(); + public context.ContextOuterClass.Constraint_SLA_Isolation_level build() { + context.ContextOuterClass.Constraint_SLA_Isolation_level result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -56510,9 +67513,14 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Capacity buildPartial() { - context.ContextOuterClass.Constraint_SLA_Capacity result = new context.ContextOuterClass.Constraint_SLA_Capacity(this); - result.capacityGbps_ = capacityGbps_; + public context.ContextOuterClass.Constraint_SLA_Isolation_level buildPartial() { + context.ContextOuterClass.Constraint_SLA_Isolation_level result = new context.ContextOuterClass.Constraint_SLA_Isolation_level(this); + int from_bitField0_ = bitField0_; + if (((bitField0_ & 0x00000001) != 0)) { + isolationLevel_ = java.util.Collections.unmodifiableList(isolationLevel_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.isolationLevel_ = isolationLevel_; onBuilt(); return result; } @@ -56551,18 +67559,25 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.Constraint_SLA_Capacity) { - return mergeFrom((context.ContextOuterClass.Constraint_SLA_Capacity)other); + if (other instanceof context.ContextOuterClass.Constraint_SLA_Isolation_level) { + return mergeFrom((context.ContextOuterClass.Constraint_SLA_Isolation_level)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.Constraint_SLA_Capacity other) { - if (other == context.ContextOuterClass.Constraint_SLA_Capacity.getDefaultInstance()) return this; - if (other.getCapacityGbps() != 0F) { - setCapacityGbps(other.getCapacityGbps()); + public Builder mergeFrom(context.ContextOuterClass.Constraint_SLA_Isolation_level other) { + if (other == context.ContextOuterClass.Constraint_SLA_Isolation_level.getDefaultInstance()) return this; + if (!other.isolationLevel_.isEmpty()) { + if (isolationLevel_.isEmpty()) { + isolationLevel_ = other.isolationLevel_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureIsolationLevelIsMutable(); + isolationLevel_.addAll(other.isolationLevel_); + } + onChanged(); } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -56579,11 +67594,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.Constraint_SLA_Capacity parsedMessage = null; + context.ContextOuterClass.Constraint_SLA_Isolation_level parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Constraint_SLA_Capacity) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.Constraint_SLA_Isolation_level) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -56592,34 +67607,144 @@ public final class ContextOuterClass { } return this; } + private int bitField0_; - private float capacityGbps_ ; + private java.util.List<java.lang.Integer> isolationLevel_ = + java.util.Collections.emptyList(); + private void ensureIsolationLevelIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + isolationLevel_ = new java.util.ArrayList<java.lang.Integer>(isolationLevel_); + bitField0_ |= 0x00000001; + } + } /** - * <code>float capacity_gbps = 1;</code> - * @return The capacityGbps. + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @return A list containing the isolationLevel. */ - @java.lang.Override - public float getCapacityGbps() { - return capacityGbps_; + public java.util.List<context.ContextOuterClass.IsolationLevelEnum> getIsolationLevelList() { + return new com.google.protobuf.Internal.ListAdapter< + java.lang.Integer, context.ContextOuterClass.IsolationLevelEnum>(isolationLevel_, isolationLevel_converter_); } /** - * <code>float capacity_gbps = 1;</code> - * @param value The capacityGbps to set. + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @return The count of isolationLevel. + */ + public int getIsolationLevelCount() { + return isolationLevel_.size(); + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @param index The index of the element to return. + * @return The isolationLevel at the given index. + */ + public context.ContextOuterClass.IsolationLevelEnum getIsolationLevel(int index) { + return isolationLevel_converter_.convert(isolationLevel_.get(index)); + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @param index The index to set the value at. + * @param value The isolationLevel to set. * @return This builder for chaining. */ - public Builder setCapacityGbps(float value) { - - capacityGbps_ = value; + public Builder setIsolationLevel( + int index, context.ContextOuterClass.IsolationLevelEnum value) { + if (value == null) { + throw new NullPointerException(); + } + ensureIsolationLevelIsMutable(); + isolationLevel_.set(index, value.getNumber()); onChanged(); return this; } /** - * <code>float capacity_gbps = 1;</code> + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @param value The isolationLevel to add. * @return This builder for chaining. */ - public Builder clearCapacityGbps() { - - capacityGbps_ = 0F; + public Builder addIsolationLevel(context.ContextOuterClass.IsolationLevelEnum value) { + if (value == null) { + throw new NullPointerException(); + } + ensureIsolationLevelIsMutable(); + isolationLevel_.add(value.getNumber()); + onChanged(); + return this; + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @param values The isolationLevel to add. + * @return This builder for chaining. + */ + public Builder addAllIsolationLevel( + java.lang.Iterable<? extends context.ContextOuterClass.IsolationLevelEnum> values) { + ensureIsolationLevelIsMutable(); + for (context.ContextOuterClass.IsolationLevelEnum value : values) { + isolationLevel_.add(value.getNumber()); + } + onChanged(); + return this; + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @return This builder for chaining. + */ + public Builder clearIsolationLevel() { + isolationLevel_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @return A list containing the enum numeric values on the wire for isolationLevel. + */ + public java.util.List<java.lang.Integer> + getIsolationLevelValueList() { + return java.util.Collections.unmodifiableList(isolationLevel_); + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @param index The index of the value to return. + * @return The enum numeric value on the wire of isolationLevel at the given index. + */ + public int getIsolationLevelValue(int index) { + return isolationLevel_.get(index); + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @param index The index of the value to return. + * @return The enum numeric value on the wire of isolationLevel at the given index. + * @return This builder for chaining. + */ + public Builder setIsolationLevelValue( + int index, int value) { + ensureIsolationLevelIsMutable(); + isolationLevel_.set(index, value); + onChanged(); + return this; + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @param value The enum numeric value on the wire for isolationLevel to add. + * @return This builder for chaining. + */ + public Builder addIsolationLevelValue(int value) { + ensureIsolationLevelIsMutable(); + isolationLevel_.add(value); + onChanged(); + return this; + } + /** + * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> + * @param values The enum numeric values on the wire for isolationLevel to add. + * @return This builder for chaining. + */ + public Builder addAllIsolationLevelValue( + java.lang.Iterable<java.lang.Integer> values) { + ensureIsolationLevelIsMutable(); + for (int value : values) { + isolationLevel_.add(value); + } onChanged(); return this; } @@ -56636,82 +67761,151 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.Constraint_SLA_Capacity) + // @@protoc_insertion_point(builder_scope:context.Constraint_SLA_Isolation_level) } - // @@protoc_insertion_point(class_scope:context.Constraint_SLA_Capacity) - private static final context.ContextOuterClass.Constraint_SLA_Capacity DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Constraint_SLA_Isolation_level) + private static final context.ContextOuterClass.Constraint_SLA_Isolation_level DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_SLA_Capacity(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_SLA_Isolation_level(); } - public static context.ContextOuterClass.Constraint_SLA_Capacity getDefaultInstance() { + public static context.ContextOuterClass.Constraint_SLA_Isolation_level getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<Constraint_SLA_Capacity> - PARSER = new com.google.protobuf.AbstractParser<Constraint_SLA_Capacity>() { + private static final com.google.protobuf.Parser<Constraint_SLA_Isolation_level> + PARSER = new com.google.protobuf.AbstractParser<Constraint_SLA_Isolation_level>() { @java.lang.Override - public Constraint_SLA_Capacity parsePartialFrom( + public Constraint_SLA_Isolation_level parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new Constraint_SLA_Capacity(input, extensionRegistry); + return new Constraint_SLA_Isolation_level(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<Constraint_SLA_Capacity> parser() { + public static com.google.protobuf.Parser<Constraint_SLA_Isolation_level> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<Constraint_SLA_Capacity> getParserForType() { + public com.google.protobuf.Parser<Constraint_SLA_Isolation_level> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Capacity getDefaultInstanceForType() { + public context.ContextOuterClass.Constraint_SLA_Isolation_level getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface Constraint_SLA_AvailabilityOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Constraint_SLA_Availability) + public interface Constraint_ExclusionsOrBuilder extends + // @@protoc_insertion_point(interface_extends:context.Constraint_Exclusions) com.google.protobuf.MessageOrBuilder { /** - * <code>uint32 num_disjoint_paths = 1;</code> - * @return The numDisjointPaths. + * <code>bool is_permanent = 1;</code> + * @return The isPermanent. */ - int getNumDisjointPaths(); + boolean getIsPermanent(); /** - * <code>bool all_active = 2;</code> - * @return The allActive. + * <code>repeated .context.DeviceId device_ids = 2;</code> */ - boolean getAllActive(); + java.util.List<context.ContextOuterClass.DeviceId> + getDeviceIdsList(); + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + context.ContextOuterClass.DeviceId getDeviceIds(int index); + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + int getDeviceIdsCount(); + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> + getDeviceIdsOrBuilderList(); + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdsOrBuilder( + int index); + + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + java.util.List<context.ContextOuterClass.EndPointId> + getEndpointIdsList(); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + context.ContextOuterClass.EndPointId getEndpointIds(int index); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + int getEndpointIdsCount(); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getEndpointIdsOrBuilderList(); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdsOrBuilder( + int index); + + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + java.util.List<context.ContextOuterClass.LinkId> + getLinkIdsList(); + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + context.ContextOuterClass.LinkId getLinkIds(int index); + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + int getLinkIdsCount(); + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> + getLinkIdsOrBuilderList(); + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder( + int index); } /** - * Protobuf type {@code context.Constraint_SLA_Availability} + * Protobuf type {@code context.Constraint_Exclusions} */ - public static final class Constraint_SLA_Availability extends + public static final class Constraint_Exclusions extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Constraint_SLA_Availability) - Constraint_SLA_AvailabilityOrBuilder { + // @@protoc_insertion_point(message_implements:context.Constraint_Exclusions) + Constraint_ExclusionsOrBuilder { private static final long serialVersionUID = 0L; - // Use Constraint_SLA_Availability.newBuilder() to construct. - private Constraint_SLA_Availability(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + // Use Constraint_Exclusions.newBuilder() to construct. + private Constraint_Exclusions(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { super(builder); } - private Constraint_SLA_Availability() { + private Constraint_Exclusions() { + deviceIds_ = java.util.Collections.emptyList(); + endpointIds_ = java.util.Collections.emptyList(); + linkIds_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { - return new Constraint_SLA_Availability(); + return new Constraint_Exclusions(); } @java.lang.Override @@ -56719,7 +67913,7 @@ public final class ContextOuterClass { getUnknownFields() { return this.unknownFields; } - private Constraint_SLA_Availability( + private Constraint_Exclusions( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -56727,6 +67921,7 @@ public final class ContextOuterClass { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } + int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -56739,12 +67934,34 @@ public final class ContextOuterClass { break; case 8: { - numDisjointPaths_ = input.readUInt32(); + isPermanent_ = input.readBool(); break; } - case 16: { - - allActive_ = input.readBool(); + case 18: { + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + deviceIds_ = new java.util.ArrayList<context.ContextOuterClass.DeviceId>(); + mutable_bitField0_ |= 0x00000001; + } + deviceIds_.add( + input.readMessage(context.ContextOuterClass.DeviceId.parser(), extensionRegistry)); + break; + } + case 26: { + if (!((mutable_bitField0_ & 0x00000002) != 0)) { + endpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(); + mutable_bitField0_ |= 0x00000002; + } + endpointIds_.add( + input.readMessage(context.ContextOuterClass.EndPointId.parser(), extensionRegistry)); + break; + } + case 34: { + if (!((mutable_bitField0_ & 0x00000004) != 0)) { + linkIds_ = new java.util.ArrayList<context.ContextOuterClass.LinkId>(); + mutable_bitField0_ |= 0x00000004; + } + linkIds_.add( + input.readMessage(context.ContextOuterClass.LinkId.parser(), extensionRegistry)); break; } default: { @@ -56762,43 +67979,161 @@ public final class ContextOuterClass { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { + if (((mutable_bitField0_ & 0x00000001) != 0)) { + deviceIds_ = java.util.Collections.unmodifiableList(deviceIds_); + } + if (((mutable_bitField0_ & 0x00000002) != 0)) { + endpointIds_ = java.util.Collections.unmodifiableList(endpointIds_); + } + if (((mutable_bitField0_ & 0x00000004) != 0)) { + linkIds_ = java.util.Collections.unmodifiableList(linkIds_); + } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Availability_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_Exclusions_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Availability_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_Exclusions_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_SLA_Availability.class, context.ContextOuterClass.Constraint_SLA_Availability.Builder.class); + context.ContextOuterClass.Constraint_Exclusions.class, context.ContextOuterClass.Constraint_Exclusions.Builder.class); } - public static final int NUM_DISJOINT_PATHS_FIELD_NUMBER = 1; - private int numDisjointPaths_; + public static final int IS_PERMANENT_FIELD_NUMBER = 1; + private boolean isPermanent_; /** - * <code>uint32 num_disjoint_paths = 1;</code> - * @return The numDisjointPaths. + * <code>bool is_permanent = 1;</code> + * @return The isPermanent. */ @java.lang.Override - public int getNumDisjointPaths() { - return numDisjointPaths_; + public boolean getIsPermanent() { + return isPermanent_; } - public static final int ALL_ACTIVE_FIELD_NUMBER = 2; - private boolean allActive_; + public static final int DEVICE_IDS_FIELD_NUMBER = 2; + private java.util.List<context.ContextOuterClass.DeviceId> deviceIds_; /** - * <code>bool all_active = 2;</code> - * @return The allActive. + * <code>repeated .context.DeviceId device_ids = 2;</code> */ @java.lang.Override - public boolean getAllActive() { - return allActive_; + public java.util.List<context.ContextOuterClass.DeviceId> getDeviceIdsList() { + return deviceIds_; + } + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> + getDeviceIdsOrBuilderList() { + return deviceIds_; + } + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + @java.lang.Override + public int getDeviceIdsCount() { + return deviceIds_.size(); + } + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + @java.lang.Override + public context.ContextOuterClass.DeviceId getDeviceIds(int index) { + return deviceIds_.get(index); + } + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + @java.lang.Override + public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdsOrBuilder( + int index) { + return deviceIds_.get(index); + } + + public static final int ENDPOINT_IDS_FIELD_NUMBER = 3; + private java.util.List<context.ContextOuterClass.EndPointId> endpointIds_; + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + @java.lang.Override + public java.util.List<context.ContextOuterClass.EndPointId> getEndpointIdsList() { + return endpointIds_; + } + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getEndpointIdsOrBuilderList() { + return endpointIds_; + } + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + @java.lang.Override + public int getEndpointIdsCount() { + return endpointIds_.size(); + } + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + @java.lang.Override + public context.ContextOuterClass.EndPointId getEndpointIds(int index) { + return endpointIds_.get(index); + } + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + @java.lang.Override + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdsOrBuilder( + int index) { + return endpointIds_.get(index); + } + + public static final int LINK_IDS_FIELD_NUMBER = 4; + private java.util.List<context.ContextOuterClass.LinkId> linkIds_; + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + @java.lang.Override + public java.util.List<context.ContextOuterClass.LinkId> getLinkIdsList() { + return linkIds_; + } + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + @java.lang.Override + public java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> + getLinkIdsOrBuilderList() { + return linkIds_; + } + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + @java.lang.Override + public int getLinkIdsCount() { + return linkIds_.size(); + } + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + @java.lang.Override + public context.ContextOuterClass.LinkId getLinkIds(int index) { + return linkIds_.get(index); + } + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + @java.lang.Override + public context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder( + int index) { + return linkIds_.get(index); } private byte memoizedIsInitialized = -1; @@ -56815,11 +68150,17 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (numDisjointPaths_ != 0) { - output.writeUInt32(1, numDisjointPaths_); + if (isPermanent_ != false) { + output.writeBool(1, isPermanent_); } - if (allActive_ != false) { - output.writeBool(2, allActive_); + for (int i = 0; i < deviceIds_.size(); i++) { + output.writeMessage(2, deviceIds_.get(i)); + } + for (int i = 0; i < endpointIds_.size(); i++) { + output.writeMessage(3, endpointIds_.get(i)); + } + for (int i = 0; i < linkIds_.size(); i++) { + output.writeMessage(4, linkIds_.get(i)); } unknownFields.writeTo(output); } @@ -56830,13 +68171,21 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (numDisjointPaths_ != 0) { + if (isPermanent_ != false) { size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(1, numDisjointPaths_); + .computeBoolSize(1, isPermanent_); } - if (allActive_ != false) { + for (int i = 0; i < deviceIds_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeBoolSize(2, allActive_); + .computeMessageSize(2, deviceIds_.get(i)); + } + for (int i = 0; i < endpointIds_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(3, endpointIds_.get(i)); + } + for (int i = 0; i < linkIds_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(4, linkIds_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -56848,15 +68197,19 @@ public final class ContextOuterClass { if (obj == this) { return true; } - if (!(obj instanceof context.ContextOuterClass.Constraint_SLA_Availability)) { + if (!(obj instanceof context.ContextOuterClass.Constraint_Exclusions)) { return super.equals(obj); } - context.ContextOuterClass.Constraint_SLA_Availability other = (context.ContextOuterClass.Constraint_SLA_Availability) obj; + context.ContextOuterClass.Constraint_Exclusions other = (context.ContextOuterClass.Constraint_Exclusions) obj; - if (getNumDisjointPaths() - != other.getNumDisjointPaths()) return false; - if (getAllActive() - != other.getAllActive()) return false; + if (getIsPermanent() + != other.getIsPermanent()) return false; + if (!getDeviceIdsList() + .equals(other.getDeviceIdsList())) return false; + if (!getEndpointIdsList() + .equals(other.getEndpointIdsList())) return false; + if (!getLinkIdsList() + .equals(other.getLinkIdsList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -56868,79 +68221,89 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + NUM_DISJOINT_PATHS_FIELD_NUMBER; - hash = (53 * hash) + getNumDisjointPaths(); - hash = (37 * hash) + ALL_ACTIVE_FIELD_NUMBER; + hash = (37 * hash) + IS_PERMANENT_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( - getAllActive()); + getIsPermanent()); + if (getDeviceIdsCount() > 0) { + hash = (37 * hash) + DEVICE_IDS_FIELD_NUMBER; + hash = (53 * hash) + getDeviceIdsList().hashCode(); + } + if (getEndpointIdsCount() > 0) { + hash = (37 * hash) + ENDPOINT_IDS_FIELD_NUMBER; + hash = (53 * hash) + getEndpointIdsList().hashCode(); + } + if (getLinkIdsCount() > 0) { + hash = (37 * hash) + LINK_IDS_FIELD_NUMBER; + hash = (53 * hash) + getLinkIdsList().hashCode(); + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( + public static context.ContextOuterClass.Constraint_Exclusions parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( + public static context.ContextOuterClass.Constraint_Exclusions parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( + public static context.ContextOuterClass.Constraint_Exclusions parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( + public static context.ContextOuterClass.Constraint_Exclusions parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom(byte[] data) + public static context.ContextOuterClass.Constraint_Exclusions parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( + public static context.ContextOuterClass.Constraint_Exclusions parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_Exclusions parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( + public static context.ContextOuterClass.Constraint_Exclusions 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 context.ContextOuterClass.Constraint_SLA_Availability parseDelimitedFrom(java.io.InputStream input) + public static context.ContextOuterClass.Constraint_Exclusions parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_SLA_Availability parseDelimitedFrom( + public static context.ContextOuterClass.Constraint_Exclusions 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 context.ContextOuterClass.Constraint_SLA_Availability parseFrom( + public static context.ContextOuterClass.Constraint_Exclusions parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static context.ContextOuterClass.Constraint_SLA_Availability parseFrom( + public static context.ContextOuterClass.Constraint_Exclusions parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -56953,7 +68316,7 @@ public final class ContextOuterClass { public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(context.ContextOuterClass.Constraint_SLA_Availability prototype) { + public static Builder newBuilder(context.ContextOuterClass.Constraint_Exclusions prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -56969,26 +68332,26 @@ public final class ContextOuterClass { return builder; } /** - * Protobuf type {@code context.Constraint_SLA_Availability} + * Protobuf type {@code context.Constraint_Exclusions} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Constraint_SLA_Availability) - context.ContextOuterClass.Constraint_SLA_AvailabilityOrBuilder { + // @@protoc_insertion_point(builder_implements:context.Constraint_Exclusions) + context.ContextOuterClass.Constraint_ExclusionsOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Availability_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_Exclusions_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Availability_fieldAccessorTable + return context.ContextOuterClass.internal_static_context_Constraint_Exclusions_fieldAccessorTable .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_SLA_Availability.class, context.ContextOuterClass.Constraint_SLA_Availability.Builder.class); + context.ContextOuterClass.Constraint_Exclusions.class, context.ContextOuterClass.Constraint_Exclusions.Builder.class); } - // Construct using context.ContextOuterClass.Constraint_SLA_Availability.newBuilder() + // Construct using context.ContextOuterClass.Constraint_Exclusions.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -57001,32 +68364,51 @@ public final class ContextOuterClass { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { + getDeviceIdsFieldBuilder(); + getEndpointIdsFieldBuilder(); + getLinkIdsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - numDisjointPaths_ = 0; - - allActive_ = false; + isPermanent_ = false; + if (deviceIdsBuilder_ == null) { + deviceIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + } else { + deviceIdsBuilder_.clear(); + } + if (endpointIdsBuilder_ == null) { + endpointIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + } else { + endpointIdsBuilder_.clear(); + } + if (linkIdsBuilder_ == null) { + linkIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + } else { + linkIdsBuilder_.clear(); + } return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Availability_descriptor; + return context.ContextOuterClass.internal_static_context_Constraint_Exclusions_descriptor; } @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Availability getDefaultInstanceForType() { - return context.ContextOuterClass.Constraint_SLA_Availability.getDefaultInstance(); + public context.ContextOuterClass.Constraint_Exclusions getDefaultInstanceForType() { + return context.ContextOuterClass.Constraint_Exclusions.getDefaultInstance(); } @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Availability build() { - context.ContextOuterClass.Constraint_SLA_Availability result = buildPartial(); + public context.ContextOuterClass.Constraint_Exclusions build() { + context.ContextOuterClass.Constraint_Exclusions result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -57034,10 +68416,37 @@ public final class ContextOuterClass { } @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Availability buildPartial() { - context.ContextOuterClass.Constraint_SLA_Availability result = new context.ContextOuterClass.Constraint_SLA_Availability(this); - result.numDisjointPaths_ = numDisjointPaths_; - result.allActive_ = allActive_; + public context.ContextOuterClass.Constraint_Exclusions buildPartial() { + context.ContextOuterClass.Constraint_Exclusions result = new context.ContextOuterClass.Constraint_Exclusions(this); + int from_bitField0_ = bitField0_; + result.isPermanent_ = isPermanent_; + if (deviceIdsBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + deviceIds_ = java.util.Collections.unmodifiableList(deviceIds_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.deviceIds_ = deviceIds_; + } else { + result.deviceIds_ = deviceIdsBuilder_.build(); + } + if (endpointIdsBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0)) { + endpointIds_ = java.util.Collections.unmodifiableList(endpointIds_); + bitField0_ = (bitField0_ & ~0x00000002); + } + result.endpointIds_ = endpointIds_; + } else { + result.endpointIds_ = endpointIdsBuilder_.build(); + } + if (linkIdsBuilder_ == null) { + if (((bitField0_ & 0x00000004) != 0)) { + linkIds_ = java.util.Collections.unmodifiableList(linkIds_); + bitField0_ = (bitField0_ & ~0x00000004); + } + result.linkIds_ = linkIds_; + } else { + result.linkIds_ = linkIdsBuilder_.build(); + } onBuilt(); return result; } @@ -57076,21 +68485,96 @@ public final class ContextOuterClass { } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.Constraint_SLA_Availability) { - return mergeFrom((context.ContextOuterClass.Constraint_SLA_Availability)other); + if (other instanceof context.ContextOuterClass.Constraint_Exclusions) { + return mergeFrom((context.ContextOuterClass.Constraint_Exclusions)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(context.ContextOuterClass.Constraint_SLA_Availability other) { - if (other == context.ContextOuterClass.Constraint_SLA_Availability.getDefaultInstance()) return this; - if (other.getNumDisjointPaths() != 0) { - setNumDisjointPaths(other.getNumDisjointPaths()); + public Builder mergeFrom(context.ContextOuterClass.Constraint_Exclusions other) { + if (other == context.ContextOuterClass.Constraint_Exclusions.getDefaultInstance()) return this; + if (other.getIsPermanent() != false) { + setIsPermanent(other.getIsPermanent()); } - if (other.getAllActive() != false) { - setAllActive(other.getAllActive()); + if (deviceIdsBuilder_ == null) { + if (!other.deviceIds_.isEmpty()) { + if (deviceIds_.isEmpty()) { + deviceIds_ = other.deviceIds_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureDeviceIdsIsMutable(); + deviceIds_.addAll(other.deviceIds_); + } + onChanged(); + } + } else { + if (!other.deviceIds_.isEmpty()) { + if (deviceIdsBuilder_.isEmpty()) { + deviceIdsBuilder_.dispose(); + deviceIdsBuilder_ = null; + deviceIds_ = other.deviceIds_; + bitField0_ = (bitField0_ & ~0x00000001); + deviceIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getDeviceIdsFieldBuilder() : null; + } else { + deviceIdsBuilder_.addAllMessages(other.deviceIds_); + } + } + } + if (endpointIdsBuilder_ == null) { + if (!other.endpointIds_.isEmpty()) { + if (endpointIds_.isEmpty()) { + endpointIds_ = other.endpointIds_; + bitField0_ = (bitField0_ & ~0x00000002); + } else { + ensureEndpointIdsIsMutable(); + endpointIds_.addAll(other.endpointIds_); + } + onChanged(); + } + } else { + if (!other.endpointIds_.isEmpty()) { + if (endpointIdsBuilder_.isEmpty()) { + endpointIdsBuilder_.dispose(); + endpointIdsBuilder_ = null; + endpointIds_ = other.endpointIds_; + bitField0_ = (bitField0_ & ~0x00000002); + endpointIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getEndpointIdsFieldBuilder() : null; + } else { + endpointIdsBuilder_.addAllMessages(other.endpointIds_); + } + } + } + if (linkIdsBuilder_ == null) { + if (!other.linkIds_.isEmpty()) { + if (linkIds_.isEmpty()) { + linkIds_ = other.linkIds_; + bitField0_ = (bitField0_ & ~0x00000004); + } else { + ensureLinkIdsIsMutable(); + linkIds_.addAll(other.linkIds_); + } + onChanged(); + } + } else { + if (!other.linkIds_.isEmpty()) { + if (linkIdsBuilder_.isEmpty()) { + linkIdsBuilder_.dispose(); + linkIdsBuilder_ = null; + linkIds_ = other.linkIds_; + bitField0_ = (bitField0_ & ~0x00000004); + linkIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getLinkIdsFieldBuilder() : null; + } else { + linkIdsBuilder_.addAllMessages(other.linkIds_); + } + } } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -57107,11 +68591,11 @@ public final class ContextOuterClass { com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - context.ContextOuterClass.Constraint_SLA_Availability parsedMessage = null; + context.ContextOuterClass.Constraint_Exclusions parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Constraint_SLA_Availability) e.getUnfinishedMessage(); + parsedMessage = (context.ContextOuterClass.Constraint_Exclusions) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -57120,784 +68604,757 @@ public final class ContextOuterClass { } return this; } + private int bitField0_; - private int numDisjointPaths_ ; + private boolean isPermanent_ ; /** - * <code>uint32 num_disjoint_paths = 1;</code> - * @return The numDisjointPaths. + * <code>bool is_permanent = 1;</code> + * @return The isPermanent. */ @java.lang.Override - public int getNumDisjointPaths() { - return numDisjointPaths_; + public boolean getIsPermanent() { + return isPermanent_; } /** - * <code>uint32 num_disjoint_paths = 1;</code> - * @param value The numDisjointPaths to set. + * <code>bool is_permanent = 1;</code> + * @param value The isPermanent to set. * @return This builder for chaining. */ - public Builder setNumDisjointPaths(int value) { + public Builder setIsPermanent(boolean value) { - numDisjointPaths_ = value; + isPermanent_ = value; onChanged(); return this; } /** - * <code>uint32 num_disjoint_paths = 1;</code> + * <code>bool is_permanent = 1;</code> * @return This builder for chaining. */ - public Builder clearNumDisjointPaths() { + public Builder clearIsPermanent() { - numDisjointPaths_ = 0; + isPermanent_ = false; onChanged(); return this; } - private boolean allActive_ ; + private java.util.List<context.ContextOuterClass.DeviceId> deviceIds_ = + java.util.Collections.emptyList(); + private void ensureDeviceIdsIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + deviceIds_ = new java.util.ArrayList<context.ContextOuterClass.DeviceId>(deviceIds_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> deviceIdsBuilder_; + /** - * <code>bool all_active = 2;</code> - * @return The allActive. + * <code>repeated .context.DeviceId device_ids = 2;</code> */ - @java.lang.Override - public boolean getAllActive() { - return allActive_; + public java.util.List<context.ContextOuterClass.DeviceId> getDeviceIdsList() { + if (deviceIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(deviceIds_); + } else { + return deviceIdsBuilder_.getMessageList(); + } } /** - * <code>bool all_active = 2;</code> - * @param value The allActive to set. - * @return This builder for chaining. + * <code>repeated .context.DeviceId device_ids = 2;</code> */ - public Builder setAllActive(boolean value) { - - allActive_ = value; - onChanged(); + public int getDeviceIdsCount() { + if (deviceIdsBuilder_ == null) { + return deviceIds_.size(); + } else { + return deviceIdsBuilder_.getCount(); + } + } + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public context.ContextOuterClass.DeviceId getDeviceIds(int index) { + if (deviceIdsBuilder_ == null) { + return deviceIds_.get(index); + } else { + return deviceIdsBuilder_.getMessage(index); + } + } + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public Builder setDeviceIds( + int index, context.ContextOuterClass.DeviceId value) { + if (deviceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDeviceIdsIsMutable(); + deviceIds_.set(index, value); + onChanged(); + } else { + deviceIdsBuilder_.setMessage(index, value); + } return this; } /** - * <code>bool all_active = 2;</code> - * @return This builder for chaining. + * <code>repeated .context.DeviceId device_ids = 2;</code> */ - public Builder clearAllActive() { - - allActive_ = false; - onChanged(); + public Builder setDeviceIds( + int index, context.ContextOuterClass.DeviceId.Builder builderForValue) { + if (deviceIdsBuilder_ == null) { + ensureDeviceIdsIsMutable(); + deviceIds_.set(index, builderForValue.build()); + onChanged(); + } else { + deviceIdsBuilder_.setMessage(index, builderForValue.build()); + } return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public Builder addDeviceIds(context.ContextOuterClass.DeviceId value) { + if (deviceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDeviceIdsIsMutable(); + deviceIds_.add(value); + onChanged(); + } else { + deviceIdsBuilder_.addMessage(value); + } + return this; } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public Builder addDeviceIds( + int index, context.ContextOuterClass.DeviceId value) { + if (deviceIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDeviceIdsIsMutable(); + deviceIds_.add(index, value); + onChanged(); + } else { + deviceIdsBuilder_.addMessage(index, value); + } + return this; } - - - // @@protoc_insertion_point(builder_scope:context.Constraint_SLA_Availability) - } - - // @@protoc_insertion_point(class_scope:context.Constraint_SLA_Availability) - private static final context.ContextOuterClass.Constraint_SLA_Availability DEFAULT_INSTANCE; - static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_SLA_Availability(); - } - - public static context.ContextOuterClass.Constraint_SLA_Availability getDefaultInstance() { - return DEFAULT_INSTANCE; - } - - private static final com.google.protobuf.Parser<Constraint_SLA_Availability> - PARSER = new com.google.protobuf.AbstractParser<Constraint_SLA_Availability>() { - @java.lang.Override - public Constraint_SLA_Availability parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return new Constraint_SLA_Availability(input, extensionRegistry); + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public Builder addDeviceIds( + context.ContextOuterClass.DeviceId.Builder builderForValue) { + if (deviceIdsBuilder_ == null) { + ensureDeviceIdsIsMutable(); + deviceIds_.add(builderForValue.build()); + onChanged(); + } else { + deviceIdsBuilder_.addMessage(builderForValue.build()); + } + return this; } - }; - - public static com.google.protobuf.Parser<Constraint_SLA_Availability> parser() { - return PARSER; - } - - @java.lang.Override - public com.google.protobuf.Parser<Constraint_SLA_Availability> getParserForType() { - return PARSER; - } - - @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Availability getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - - } - - public interface Constraint_SLA_Isolation_levelOrBuilder extends - // @@protoc_insertion_point(interface_extends:context.Constraint_SLA_Isolation_level) - com.google.protobuf.MessageOrBuilder { - - /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @return A list containing the isolationLevel. - */ - java.util.List<context.ContextOuterClass.IsolationLevelEnum> getIsolationLevelList(); - /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @return The count of isolationLevel. - */ - int getIsolationLevelCount(); - /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @param index The index of the element to return. - * @return The isolationLevel at the given index. - */ - context.ContextOuterClass.IsolationLevelEnum getIsolationLevel(int index); - /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @return A list containing the enum numeric values on the wire for isolationLevel. - */ - java.util.List<java.lang.Integer> - getIsolationLevelValueList(); - /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @param index The index of the value to return. - * @return The enum numeric value on the wire of isolationLevel at the given index. - */ - int getIsolationLevelValue(int index); - } - /** - * Protobuf type {@code context.Constraint_SLA_Isolation_level} - */ - public static final class Constraint_SLA_Isolation_level extends - com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:context.Constraint_SLA_Isolation_level) - Constraint_SLA_Isolation_levelOrBuilder { - private static final long serialVersionUID = 0L; - // Use Constraint_SLA_Isolation_level.newBuilder() to construct. - private Constraint_SLA_Isolation_level(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { - super(builder); - } - private Constraint_SLA_Isolation_level() { - isolationLevel_ = java.util.Collections.emptyList(); - } - - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new Constraint_SLA_Isolation_level(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } - private Constraint_SLA_Isolation_level( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - this(); - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public Builder addDeviceIds( + int index, context.ContextOuterClass.DeviceId.Builder builderForValue) { + if (deviceIdsBuilder_ == null) { + ensureDeviceIdsIsMutable(); + deviceIds_.add(index, builderForValue.build()); + onChanged(); + } else { + deviceIdsBuilder_.addMessage(index, builderForValue.build()); + } + return this; } - 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 8: { - int rawValue = input.readEnum(); - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - isolationLevel_ = new java.util.ArrayList<java.lang.Integer>(); - mutable_bitField0_ |= 0x00000001; - } - isolationLevel_.add(rawValue); - break; - } - case 10: { - int length = input.readRawVarint32(); - int oldLimit = input.pushLimit(length); - while(input.getBytesUntilLimit() > 0) { - int rawValue = input.readEnum(); - if (!((mutable_bitField0_ & 0x00000001) != 0)) { - isolationLevel_ = new java.util.ArrayList<java.lang.Integer>(); - mutable_bitField0_ |= 0x00000001; - } - isolationLevel_.add(rawValue); - } - input.popLimit(oldLimit); - break; - } - default: { - if (!parseUnknownField( - input, unknownFields, extensionRegistry, tag)) { - done = true; - } - break; - } - } + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public Builder addAllDeviceIds( + java.lang.Iterable<? extends context.ContextOuterClass.DeviceId> values) { + if (deviceIdsBuilder_ == null) { + ensureDeviceIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, deviceIds_); + onChanged(); + } else { + deviceIdsBuilder_.addAllMessages(values); } - } 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)) { - isolationLevel_ = java.util.Collections.unmodifiableList(isolationLevel_); + return this; + } + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public Builder clearDeviceIds() { + if (deviceIdsBuilder_ == null) { + deviceIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + deviceIdsBuilder_.clear(); + } + return this; + } + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public Builder removeDeviceIds(int index) { + if (deviceIdsBuilder_ == null) { + ensureDeviceIdsIsMutable(); + deviceIds_.remove(index); + onChanged(); + } else { + deviceIdsBuilder_.remove(index); } - this.unknownFields = unknownFields.build(); - makeExtensionsImmutable(); + return this; } - } - public static final com.google.protobuf.Descriptors.Descriptor - getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Isolation_level_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Isolation_level_fieldAccessorTable - .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_SLA_Isolation_level.class, context.ContextOuterClass.Constraint_SLA_Isolation_level.Builder.class); - } - - public static final int ISOLATION_LEVEL_FIELD_NUMBER = 1; - private java.util.List<java.lang.Integer> isolationLevel_; - private static final com.google.protobuf.Internal.ListAdapter.Converter< - java.lang.Integer, context.ContextOuterClass.IsolationLevelEnum> isolationLevel_converter_ = - new com.google.protobuf.Internal.ListAdapter.Converter< - java.lang.Integer, context.ContextOuterClass.IsolationLevelEnum>() { - public context.ContextOuterClass.IsolationLevelEnum convert(java.lang.Integer from) { - @SuppressWarnings("deprecation") - context.ContextOuterClass.IsolationLevelEnum result = context.ContextOuterClass.IsolationLevelEnum.valueOf(from); - return result == null ? context.ContextOuterClass.IsolationLevelEnum.UNRECOGNIZED : result; - } - }; - /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @return A list containing the isolationLevel. - */ - @java.lang.Override - public java.util.List<context.ContextOuterClass.IsolationLevelEnum> getIsolationLevelList() { - return new com.google.protobuf.Internal.ListAdapter< - java.lang.Integer, context.ContextOuterClass.IsolationLevelEnum>(isolationLevel_, isolationLevel_converter_); - } - /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @return The count of isolationLevel. - */ - @java.lang.Override - public int getIsolationLevelCount() { - return isolationLevel_.size(); - } - /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @param index The index of the element to return. - * @return The isolationLevel at the given index. - */ - @java.lang.Override - public context.ContextOuterClass.IsolationLevelEnum getIsolationLevel(int index) { - return isolationLevel_converter_.convert(isolationLevel_.get(index)); - } - /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @return A list containing the enum numeric values on the wire for isolationLevel. - */ - @java.lang.Override - public java.util.List<java.lang.Integer> - getIsolationLevelValueList() { - return isolationLevel_; - } - /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @param index The index of the value to return. - * @return The enum numeric value on the wire of isolationLevel at the given index. - */ - @java.lang.Override - public int getIsolationLevelValue(int index) { - return isolationLevel_.get(index); - } - private int isolationLevelMemoizedSerializedSize; - - 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 { - getSerializedSize(); - if (getIsolationLevelList().size() > 0) { - output.writeUInt32NoTag(10); - output.writeUInt32NoTag(isolationLevelMemoizedSerializedSize); + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public context.ContextOuterClass.DeviceId.Builder getDeviceIdsBuilder( + int index) { + return getDeviceIdsFieldBuilder().getBuilder(index); } - for (int i = 0; i < isolationLevel_.size(); i++) { - output.writeEnumNoTag(isolationLevel_.get(i)); + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public context.ContextOuterClass.DeviceIdOrBuilder getDeviceIdsOrBuilder( + int index) { + if (deviceIdsBuilder_ == null) { + return deviceIds_.get(index); } else { + return deviceIdsBuilder_.getMessageOrBuilder(index); + } } - unknownFields.writeTo(output); - } - - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; - - size = 0; - { - int dataSize = 0; - for (int i = 0; i < isolationLevel_.size(); i++) { - dataSize += com.google.protobuf.CodedOutputStream - .computeEnumSizeNoTag(isolationLevel_.get(i)); + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public java.util.List<? extends context.ContextOuterClass.DeviceIdOrBuilder> + getDeviceIdsOrBuilderList() { + if (deviceIdsBuilder_ != null) { + return deviceIdsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(deviceIds_); } - size += dataSize; - if (!getIsolationLevelList().isEmpty()) { size += 1; - size += com.google.protobuf.CodedOutputStream - .computeUInt32SizeNoTag(dataSize); - }isolationLevelMemoizedSerializedSize = dataSize; } - size += unknownFields.getSerializedSize(); - memoizedSize = size; - return size; - } - - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public context.ContextOuterClass.DeviceId.Builder addDeviceIdsBuilder() { + return getDeviceIdsFieldBuilder().addBuilder( + context.ContextOuterClass.DeviceId.getDefaultInstance()); } - if (!(obj instanceof context.ContextOuterClass.Constraint_SLA_Isolation_level)) { - return super.equals(obj); + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public context.ContextOuterClass.DeviceId.Builder addDeviceIdsBuilder( + int index) { + return getDeviceIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.DeviceId.getDefaultInstance()); } - context.ContextOuterClass.Constraint_SLA_Isolation_level other = (context.ContextOuterClass.Constraint_SLA_Isolation_level) obj; - - if (!isolationLevel_.equals(other.isolationLevel_)) return false; - if (!unknownFields.equals(other.unknownFields)) return false; - return true; - } - - @java.lang.Override - public int hashCode() { - if (memoizedHashCode != 0) { - return memoizedHashCode; + /** + * <code>repeated .context.DeviceId device_ids = 2;</code> + */ + public java.util.List<context.ContextOuterClass.DeviceId.Builder> + getDeviceIdsBuilderList() { + return getDeviceIdsFieldBuilder().getBuilderList(); } - int hash = 41; - hash = (19 * hash) + getDescriptor().hashCode(); - if (getIsolationLevelCount() > 0) { - hash = (37 * hash) + ISOLATION_LEVEL_FIELD_NUMBER; - hash = (53 * hash) + isolationLevel_.hashCode(); + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder> + getDeviceIdsFieldBuilder() { + if (deviceIdsBuilder_ == null) { + deviceIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.DeviceId, context.ContextOuterClass.DeviceId.Builder, context.ContextOuterClass.DeviceIdOrBuilder>( + deviceIds_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + deviceIds_ = null; + } + return deviceIdsBuilder_; } - hash = (29 * hash) + unknownFields.hashCode(); - memoizedHashCode = hash; - return hash; - } - public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( - java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( - java.nio.ByteBuffer data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( - byte[] data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseWithIOException(PARSER, input); - } - public static context.ContextOuterClass.Constraint_SLA_Isolation_level 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 context.ContextOuterClass.Constraint_SLA_Isolation_level parseDelimitedFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseDelimitedWithIOException(PARSER, input); - } - public static context.ContextOuterClass.Constraint_SLA_Isolation_level 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 context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( - com.google.protobuf.CodedInputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseWithIOException(PARSER, input); - } - public static context.ContextOuterClass.Constraint_SLA_Isolation_level parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseWithIOException(PARSER, input, extensionRegistry); - } + private java.util.List<context.ContextOuterClass.EndPointId> endpointIds_ = + java.util.Collections.emptyList(); + private void ensureEndpointIdsIsMutable() { + if (!((bitField0_ & 0x00000002) != 0)) { + endpointIds_ = new java.util.ArrayList<context.ContextOuterClass.EndPointId>(endpointIds_); + bitField0_ |= 0x00000002; + } + } - @java.lang.Override - public Builder newBuilderForType() { return newBuilder(); } - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); - } - public static Builder newBuilder(context.ContextOuterClass.Constraint_SLA_Isolation_level prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); - } - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE - ? new Builder() : new Builder().mergeFrom(this); - } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> endpointIdsBuilder_; - @java.lang.Override - protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; - } - /** - * Protobuf type {@code context.Constraint_SLA_Isolation_level} - */ - public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements - // @@protoc_insertion_point(builder_implements:context.Constraint_SLA_Isolation_level) - context.ContextOuterClass.Constraint_SLA_Isolation_levelOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor - getDescriptor() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Isolation_level_descriptor; + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public java.util.List<context.ContextOuterClass.EndPointId> getEndpointIdsList() { + if (endpointIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(endpointIds_); + } else { + return endpointIdsBuilder_.getMessageList(); + } } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Isolation_level_fieldAccessorTable - .ensureFieldAccessorsInitialized( - context.ContextOuterClass.Constraint_SLA_Isolation_level.class, context.ContextOuterClass.Constraint_SLA_Isolation_level.Builder.class); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public int getEndpointIdsCount() { + if (endpointIdsBuilder_ == null) { + return endpointIds_.size(); + } else { + return endpointIdsBuilder_.getCount(); + } } - - // Construct using context.ContextOuterClass.Constraint_SLA_Isolation_level.newBuilder() - private Builder() { - maybeForceBuilderInitialization(); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointId getEndpointIds(int index) { + if (endpointIdsBuilder_ == null) { + return endpointIds_.get(index); + } else { + return endpointIdsBuilder_.getMessage(index); + } } - - private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - super(parent); - maybeForceBuilderInitialization(); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public Builder setEndpointIds( + int index, context.ContextOuterClass.EndPointId value) { + if (endpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureEndpointIdsIsMutable(); + endpointIds_.set(index, value); + onChanged(); + } else { + endpointIdsBuilder_.setMessage(index, value); + } + return this; } - private void maybeForceBuilderInitialization() { - if (com.google.protobuf.GeneratedMessageV3 - .alwaysUseFieldBuilders) { + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public Builder setEndpointIds( + int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (endpointIdsBuilder_ == null) { + ensureEndpointIdsIsMutable(); + endpointIds_.set(index, builderForValue.build()); + onChanged(); + } else { + endpointIdsBuilder_.setMessage(index, builderForValue.build()); } + return this; } - @java.lang.Override - public Builder clear() { - super.clear(); - isolationLevel_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public Builder addEndpointIds(context.ContextOuterClass.EndPointId value) { + if (endpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureEndpointIdsIsMutable(); + endpointIds_.add(value); + onChanged(); + } else { + endpointIdsBuilder_.addMessage(value); + } return this; } - - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor - getDescriptorForType() { - return context.ContextOuterClass.internal_static_context_Constraint_SLA_Isolation_level_descriptor; + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public Builder addEndpointIds( + int index, context.ContextOuterClass.EndPointId value) { + if (endpointIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureEndpointIdsIsMutable(); + endpointIds_.add(index, value); + onChanged(); + } else { + endpointIdsBuilder_.addMessage(index, value); + } + return this; } - - @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Isolation_level getDefaultInstanceForType() { - return context.ContextOuterClass.Constraint_SLA_Isolation_level.getDefaultInstance(); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public Builder addEndpointIds( + context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (endpointIdsBuilder_ == null) { + ensureEndpointIdsIsMutable(); + endpointIds_.add(builderForValue.build()); + onChanged(); + } else { + endpointIdsBuilder_.addMessage(builderForValue.build()); + } + return this; } - - @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Isolation_level build() { - context.ContextOuterClass.Constraint_SLA_Isolation_level result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public Builder addEndpointIds( + int index, context.ContextOuterClass.EndPointId.Builder builderForValue) { + if (endpointIdsBuilder_ == null) { + ensureEndpointIdsIsMutable(); + endpointIds_.add(index, builderForValue.build()); + onChanged(); + } else { + endpointIdsBuilder_.addMessage(index, builderForValue.build()); } - return result; + return this; } - - @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Isolation_level buildPartial() { - context.ContextOuterClass.Constraint_SLA_Isolation_level result = new context.ContextOuterClass.Constraint_SLA_Isolation_level(this); - int from_bitField0_ = bitField0_; - if (((bitField0_ & 0x00000001) != 0)) { - isolationLevel_ = java.util.Collections.unmodifiableList(isolationLevel_); - bitField0_ = (bitField0_ & ~0x00000001); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public Builder addAllEndpointIds( + java.lang.Iterable<? extends context.ContextOuterClass.EndPointId> values) { + if (endpointIdsBuilder_ == null) { + ensureEndpointIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, endpointIds_); + onChanged(); + } else { + endpointIdsBuilder_.addAllMessages(values); } - result.isolationLevel_ = isolationLevel_; - onBuilt(); - return result; + return this; } - - @java.lang.Override - public Builder clone() { - return super.clone(); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public Builder clearEndpointIds() { + if (endpointIdsBuilder_ == null) { + endpointIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + } else { + endpointIdsBuilder_.clear(); + } + return this; } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public Builder removeEndpointIds(int index) { + if (endpointIdsBuilder_ == null) { + ensureEndpointIdsIsMutable(); + endpointIds_.remove(index); + onChanged(); + } else { + endpointIdsBuilder_.remove(index); + } + return this; } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointId.Builder getEndpointIdsBuilder( + int index) { + return getEndpointIdsFieldBuilder().getBuilder(index); } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointIdOrBuilder getEndpointIdsOrBuilder( + int index) { + if (endpointIdsBuilder_ == null) { + return endpointIds_.get(index); } else { + return endpointIdsBuilder_.getMessageOrBuilder(index); + } } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public java.util.List<? extends context.ContextOuterClass.EndPointIdOrBuilder> + getEndpointIdsOrBuilderList() { + if (endpointIdsBuilder_ != null) { + return endpointIdsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(endpointIds_); + } + } + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointId.Builder addEndpointIdsBuilder() { + return getEndpointIdsFieldBuilder().addBuilder( + context.ContextOuterClass.EndPointId.getDefaultInstance()); + } + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public context.ContextOuterClass.EndPointId.Builder addEndpointIdsBuilder( + int index) { + return getEndpointIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.EndPointId.getDefaultInstance()); + } + /** + * <code>repeated .context.EndPointId endpoint_ids = 3;</code> + */ + public java.util.List<context.ContextOuterClass.EndPointId.Builder> + getEndpointIdsBuilderList() { + return getEndpointIdsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder> + getEndpointIdsFieldBuilder() { + if (endpointIdsBuilder_ == null) { + endpointIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.EndPointId, context.ContextOuterClass.EndPointId.Builder, context.ContextOuterClass.EndPointIdOrBuilder>( + endpointIds_, + ((bitField0_ & 0x00000002) != 0), + getParentForChildren(), + isClean()); + endpointIds_ = null; + } + return endpointIdsBuilder_; + } + + private java.util.List<context.ContextOuterClass.LinkId> linkIds_ = + java.util.Collections.emptyList(); + private void ensureLinkIdsIsMutable() { + if (!((bitField0_ & 0x00000004) != 0)) { + linkIds_ = new java.util.ArrayList<context.ContextOuterClass.LinkId>(linkIds_); + bitField0_ |= 0x00000004; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> linkIdsBuilder_; + + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + public java.util.List<context.ContextOuterClass.LinkId> getLinkIdsList() { + if (linkIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(linkIds_); + } else { + return linkIdsBuilder_.getMessageList(); + } } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + public int getLinkIdsCount() { + if (linkIdsBuilder_ == null) { + return linkIds_.size(); + } else { + return linkIdsBuilder_.getCount(); + } } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof context.ContextOuterClass.Constraint_SLA_Isolation_level) { - return mergeFrom((context.ContextOuterClass.Constraint_SLA_Isolation_level)other); + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + public context.ContextOuterClass.LinkId getLinkIds(int index) { + if (linkIdsBuilder_ == null) { + return linkIds_.get(index); } else { - super.mergeFrom(other); - return this; + return linkIdsBuilder_.getMessage(index); } } - - public Builder mergeFrom(context.ContextOuterClass.Constraint_SLA_Isolation_level other) { - if (other == context.ContextOuterClass.Constraint_SLA_Isolation_level.getDefaultInstance()) return this; - if (!other.isolationLevel_.isEmpty()) { - if (isolationLevel_.isEmpty()) { - isolationLevel_ = other.isolationLevel_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureIsolationLevelIsMutable(); - isolationLevel_.addAll(other.isolationLevel_); + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + public Builder setLinkIds( + int index, context.ContextOuterClass.LinkId value) { + if (linkIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + ensureLinkIdsIsMutable(); + linkIds_.set(index, value); onChanged(); + } else { + linkIdsBuilder_.setMessage(index, value); } - this.mergeUnknownFields(other.unknownFields); - onChanged(); return this; } - - @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 { - context.ContextOuterClass.Constraint_SLA_Isolation_level parsedMessage = null; - try { - parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (context.ContextOuterClass.Constraint_SLA_Isolation_level) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); - } + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + public Builder setLinkIds( + int index, context.ContextOuterClass.LinkId.Builder builderForValue) { + if (linkIdsBuilder_ == null) { + ensureLinkIdsIsMutable(); + linkIds_.set(index, builderForValue.build()); + onChanged(); + } else { + linkIdsBuilder_.setMessage(index, builderForValue.build()); } return this; } - private int bitField0_; - - private java.util.List<java.lang.Integer> isolationLevel_ = - java.util.Collections.emptyList(); - private void ensureIsolationLevelIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - isolationLevel_ = new java.util.ArrayList<java.lang.Integer>(isolationLevel_); - bitField0_ |= 0x00000001; + /** + * <code>repeated .context.LinkId link_ids = 4;</code> + */ + public Builder addLinkIds(context.ContextOuterClass.LinkId value) { + if (linkIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLinkIdsIsMutable(); + linkIds_.add(value); + onChanged(); + } else { + linkIdsBuilder_.addMessage(value); } + return this; } /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @return A list containing the isolationLevel. + * <code>repeated .context.LinkId link_ids = 4;</code> */ - public java.util.List<context.ContextOuterClass.IsolationLevelEnum> getIsolationLevelList() { - return new com.google.protobuf.Internal.ListAdapter< - java.lang.Integer, context.ContextOuterClass.IsolationLevelEnum>(isolationLevel_, isolationLevel_converter_); + public Builder addLinkIds( + int index, context.ContextOuterClass.LinkId value) { + if (linkIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLinkIdsIsMutable(); + linkIds_.add(index, value); + onChanged(); + } else { + linkIdsBuilder_.addMessage(index, value); + } + return this; } /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @return The count of isolationLevel. + * <code>repeated .context.LinkId link_ids = 4;</code> */ - public int getIsolationLevelCount() { - return isolationLevel_.size(); + public Builder addLinkIds( + context.ContextOuterClass.LinkId.Builder builderForValue) { + if (linkIdsBuilder_ == null) { + ensureLinkIdsIsMutable(); + linkIds_.add(builderForValue.build()); + onChanged(); + } else { + linkIdsBuilder_.addMessage(builderForValue.build()); + } + return this; } /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @param index The index of the element to return. - * @return The isolationLevel at the given index. + * <code>repeated .context.LinkId link_ids = 4;</code> */ - public context.ContextOuterClass.IsolationLevelEnum getIsolationLevel(int index) { - return isolationLevel_converter_.convert(isolationLevel_.get(index)); + public Builder addLinkIds( + int index, context.ContextOuterClass.LinkId.Builder builderForValue) { + if (linkIdsBuilder_ == null) { + ensureLinkIdsIsMutable(); + linkIds_.add(index, builderForValue.build()); + onChanged(); + } else { + linkIdsBuilder_.addMessage(index, builderForValue.build()); + } + return this; } /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @param index The index to set the value at. - * @param value The isolationLevel to set. - * @return This builder for chaining. + * <code>repeated .context.LinkId link_ids = 4;</code> */ - public Builder setIsolationLevel( - int index, context.ContextOuterClass.IsolationLevelEnum value) { - if (value == null) { - throw new NullPointerException(); + public Builder addAllLinkIds( + java.lang.Iterable<? extends context.ContextOuterClass.LinkId> values) { + if (linkIdsBuilder_ == null) { + ensureLinkIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, linkIds_); + onChanged(); + } else { + linkIdsBuilder_.addAllMessages(values); } - ensureIsolationLevelIsMutable(); - isolationLevel_.set(index, value.getNumber()); - onChanged(); return this; } /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @param value The isolationLevel to add. - * @return This builder for chaining. + * <code>repeated .context.LinkId link_ids = 4;</code> */ - public Builder addIsolationLevel(context.ContextOuterClass.IsolationLevelEnum value) { - if (value == null) { - throw new NullPointerException(); + public Builder clearLinkIds() { + if (linkIdsBuilder_ == null) { + linkIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + } else { + linkIdsBuilder_.clear(); } - ensureIsolationLevelIsMutable(); - isolationLevel_.add(value.getNumber()); - onChanged(); return this; } /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @param values The isolationLevel to add. - * @return This builder for chaining. + * <code>repeated .context.LinkId link_ids = 4;</code> */ - public Builder addAllIsolationLevel( - java.lang.Iterable<? extends context.ContextOuterClass.IsolationLevelEnum> values) { - ensureIsolationLevelIsMutable(); - for (context.ContextOuterClass.IsolationLevelEnum value : values) { - isolationLevel_.add(value.getNumber()); + public Builder removeLinkIds(int index) { + if (linkIdsBuilder_ == null) { + ensureLinkIdsIsMutable(); + linkIds_.remove(index); + onChanged(); + } else { + linkIdsBuilder_.remove(index); } - onChanged(); return this; } /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @return This builder for chaining. + * <code>repeated .context.LinkId link_ids = 4;</code> */ - public Builder clearIsolationLevel() { - isolationLevel_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - return this; + public context.ContextOuterClass.LinkId.Builder getLinkIdsBuilder( + int index) { + return getLinkIdsFieldBuilder().getBuilder(index); } /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @return A list containing the enum numeric values on the wire for isolationLevel. + * <code>repeated .context.LinkId link_ids = 4;</code> */ - public java.util.List<java.lang.Integer> - getIsolationLevelValueList() { - return java.util.Collections.unmodifiableList(isolationLevel_); + public context.ContextOuterClass.LinkIdOrBuilder getLinkIdsOrBuilder( + int index) { + if (linkIdsBuilder_ == null) { + return linkIds_.get(index); } else { + return linkIdsBuilder_.getMessageOrBuilder(index); + } } /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @param index The index of the value to return. - * @return The enum numeric value on the wire of isolationLevel at the given index. + * <code>repeated .context.LinkId link_ids = 4;</code> */ - public int getIsolationLevelValue(int index) { - return isolationLevel_.get(index); + public java.util.List<? extends context.ContextOuterClass.LinkIdOrBuilder> + getLinkIdsOrBuilderList() { + if (linkIdsBuilder_ != null) { + return linkIdsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(linkIds_); + } } /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @param index The index of the value to return. - * @return The enum numeric value on the wire of isolationLevel at the given index. - * @return This builder for chaining. + * <code>repeated .context.LinkId link_ids = 4;</code> */ - public Builder setIsolationLevelValue( - int index, int value) { - ensureIsolationLevelIsMutable(); - isolationLevel_.set(index, value); - onChanged(); - return this; + public context.ContextOuterClass.LinkId.Builder addLinkIdsBuilder() { + return getLinkIdsFieldBuilder().addBuilder( + context.ContextOuterClass.LinkId.getDefaultInstance()); } /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @param value The enum numeric value on the wire for isolationLevel to add. - * @return This builder for chaining. + * <code>repeated .context.LinkId link_ids = 4;</code> */ - public Builder addIsolationLevelValue(int value) { - ensureIsolationLevelIsMutable(); - isolationLevel_.add(value); - onChanged(); - return this; + public context.ContextOuterClass.LinkId.Builder addLinkIdsBuilder( + int index) { + return getLinkIdsFieldBuilder().addBuilder( + index, context.ContextOuterClass.LinkId.getDefaultInstance()); } /** - * <code>repeated .context.IsolationLevelEnum isolation_level = 1;</code> - * @param values The enum numeric values on the wire for isolationLevel to add. - * @return This builder for chaining. + * <code>repeated .context.LinkId link_ids = 4;</code> */ - public Builder addAllIsolationLevelValue( - java.lang.Iterable<java.lang.Integer> values) { - ensureIsolationLevelIsMutable(); - for (int value : values) { - isolationLevel_.add(value); + public java.util.List<context.ContextOuterClass.LinkId.Builder> + getLinkIdsBuilderList() { + return getLinkIdsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder> + getLinkIdsFieldBuilder() { + if (linkIdsBuilder_ == null) { + linkIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + context.ContextOuterClass.LinkId, context.ContextOuterClass.LinkId.Builder, context.ContextOuterClass.LinkIdOrBuilder>( + linkIds_, + ((bitField0_ & 0x00000004) != 0), + getParentForChildren(), + isClean()); + linkIds_ = null; } - onChanged(); - return this; + return linkIdsBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -57912,41 +69369,41 @@ public final class ContextOuterClass { } - // @@protoc_insertion_point(builder_scope:context.Constraint_SLA_Isolation_level) + // @@protoc_insertion_point(builder_scope:context.Constraint_Exclusions) } - // @@protoc_insertion_point(class_scope:context.Constraint_SLA_Isolation_level) - private static final context.ContextOuterClass.Constraint_SLA_Isolation_level DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:context.Constraint_Exclusions) + private static final context.ContextOuterClass.Constraint_Exclusions DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_SLA_Isolation_level(); + DEFAULT_INSTANCE = new context.ContextOuterClass.Constraint_Exclusions(); } - public static context.ContextOuterClass.Constraint_SLA_Isolation_level getDefaultInstance() { + public static context.ContextOuterClass.Constraint_Exclusions getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<Constraint_SLA_Isolation_level> - PARSER = new com.google.protobuf.AbstractParser<Constraint_SLA_Isolation_level>() { + private static final com.google.protobuf.Parser<Constraint_Exclusions> + PARSER = new com.google.protobuf.AbstractParser<Constraint_Exclusions>() { @java.lang.Override - public Constraint_SLA_Isolation_level parsePartialFrom( + public Constraint_Exclusions parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new Constraint_SLA_Isolation_level(input, extensionRegistry); + return new Constraint_Exclusions(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<Constraint_SLA_Isolation_level> parser() { + public static com.google.protobuf.Parser<Constraint_Exclusions> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<Constraint_SLA_Isolation_level> getParserForType() { + public com.google.protobuf.Parser<Constraint_Exclusions> getParserForType() { return PARSER; } @java.lang.Override - public context.ContextOuterClass.Constraint_SLA_Isolation_level getDefaultInstanceForType() { + public context.ContextOuterClass.Constraint_Exclusions getDefaultInstanceForType() { return DEFAULT_INSTANCE; } @@ -57957,125 +69414,151 @@ public final class ContextOuterClass { com.google.protobuf.MessageOrBuilder { /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.ConstraintActionEnum action = 1;</code> + * @return The enum numeric value on the wire for action. + */ + int getActionValue(); + /** + * <code>.context.ConstraintActionEnum action = 1;</code> + * @return The action. + */ + context.ContextOuterClass.ConstraintActionEnum getAction(); + + /** + * <code>.context.Constraint_Custom custom = 2;</code> * @return Whether the custom field is set. */ boolean hasCustom(); /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> * @return The custom. */ context.ContextOuterClass.Constraint_Custom getCustom(); /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> */ context.ContextOuterClass.Constraint_CustomOrBuilder getCustomOrBuilder(); /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> * @return Whether the schedule field is set. */ boolean hasSchedule(); /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> * @return The schedule. */ context.ContextOuterClass.Constraint_Schedule getSchedule(); /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> */ context.ContextOuterClass.Constraint_ScheduleOrBuilder getScheduleOrBuilder(); /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> * @return Whether the endpointLocation field is set. */ boolean hasEndpointLocation(); /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> * @return The endpointLocation. */ context.ContextOuterClass.Constraint_EndPointLocation getEndpointLocation(); /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> */ context.ContextOuterClass.Constraint_EndPointLocationOrBuilder getEndpointLocationOrBuilder(); /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> * @return Whether the endpointPriority field is set. */ boolean hasEndpointPriority(); /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> * @return The endpointPriority. */ context.ContextOuterClass.Constraint_EndPointPriority getEndpointPriority(); /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> */ context.ContextOuterClass.Constraint_EndPointPriorityOrBuilder getEndpointPriorityOrBuilder(); /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> * @return Whether the slaCapacity field is set. */ boolean hasSlaCapacity(); /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> * @return The slaCapacity. */ context.ContextOuterClass.Constraint_SLA_Capacity getSlaCapacity(); /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> */ context.ContextOuterClass.Constraint_SLA_CapacityOrBuilder getSlaCapacityOrBuilder(); /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> * @return Whether the slaLatency field is set. */ boolean hasSlaLatency(); /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> * @return The slaLatency. */ context.ContextOuterClass.Constraint_SLA_Latency getSlaLatency(); /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> */ context.ContextOuterClass.Constraint_SLA_LatencyOrBuilder getSlaLatencyOrBuilder(); /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> * @return Whether the slaAvailability field is set. */ boolean hasSlaAvailability(); /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> * @return The slaAvailability. */ context.ContextOuterClass.Constraint_SLA_Availability getSlaAvailability(); /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> */ context.ContextOuterClass.Constraint_SLA_AvailabilityOrBuilder getSlaAvailabilityOrBuilder(); /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> * @return Whether the slaIsolation field is set. */ boolean hasSlaIsolation(); /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> * @return The slaIsolation. */ context.ContextOuterClass.Constraint_SLA_Isolation_level getSlaIsolation(); /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> */ context.ContextOuterClass.Constraint_SLA_Isolation_levelOrBuilder getSlaIsolationOrBuilder(); + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + * @return Whether the exclusions field is set. + */ + boolean hasExclusions(); + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + * @return The exclusions. + */ + context.ContextOuterClass.Constraint_Exclusions getExclusions(); + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + */ + context.ContextOuterClass.Constraint_ExclusionsOrBuilder getExclusionsOrBuilder(); + public context.ContextOuterClass.Constraint.ConstraintCase getConstraintCase(); } /** @@ -58091,6 +69574,7 @@ public final class ContextOuterClass { super(builder); } private Constraint() { + action_ = 0; } @java.lang.Override @@ -58123,9 +69607,15 @@ public final class ContextOuterClass { case 0: done = true; break; - case 10: { + case 8: { + int rawValue = input.readEnum(); + + action_ = rawValue; + break; + } + case 18: { context.ContextOuterClass.Constraint_Custom.Builder subBuilder = null; - if (constraintCase_ == 1) { + if (constraintCase_ == 2) { subBuilder = ((context.ContextOuterClass.Constraint_Custom) constraint_).toBuilder(); } constraint_ = @@ -58134,12 +69624,12 @@ public final class ContextOuterClass { subBuilder.mergeFrom((context.ContextOuterClass.Constraint_Custom) constraint_); constraint_ = subBuilder.buildPartial(); } - constraintCase_ = 1; + constraintCase_ = 2; break; } - case 18: { + case 26: { context.ContextOuterClass.Constraint_Schedule.Builder subBuilder = null; - if (constraintCase_ == 2) { + if (constraintCase_ == 3) { subBuilder = ((context.ContextOuterClass.Constraint_Schedule) constraint_).toBuilder(); } constraint_ = @@ -58148,12 +69638,12 @@ public final class ContextOuterClass { subBuilder.mergeFrom((context.ContextOuterClass.Constraint_Schedule) constraint_); constraint_ = subBuilder.buildPartial(); } - constraintCase_ = 2; + constraintCase_ = 3; break; } - case 26: { + case 34: { context.ContextOuterClass.Constraint_EndPointLocation.Builder subBuilder = null; - if (constraintCase_ == 3) { + if (constraintCase_ == 4) { subBuilder = ((context.ContextOuterClass.Constraint_EndPointLocation) constraint_).toBuilder(); } constraint_ = @@ -58162,12 +69652,12 @@ public final class ContextOuterClass { subBuilder.mergeFrom((context.ContextOuterClass.Constraint_EndPointLocation) constraint_); constraint_ = subBuilder.buildPartial(); } - constraintCase_ = 3; + constraintCase_ = 4; break; } - case 34: { + case 42: { context.ContextOuterClass.Constraint_EndPointPriority.Builder subBuilder = null; - if (constraintCase_ == 4) { + if (constraintCase_ == 5) { subBuilder = ((context.ContextOuterClass.Constraint_EndPointPriority) constraint_).toBuilder(); } constraint_ = @@ -58176,12 +69666,12 @@ public final class ContextOuterClass { subBuilder.mergeFrom((context.ContextOuterClass.Constraint_EndPointPriority) constraint_); constraint_ = subBuilder.buildPartial(); } - constraintCase_ = 4; + constraintCase_ = 5; break; } - case 42: { + case 50: { context.ContextOuterClass.Constraint_SLA_Capacity.Builder subBuilder = null; - if (constraintCase_ == 5) { + if (constraintCase_ == 6) { subBuilder = ((context.ContextOuterClass.Constraint_SLA_Capacity) constraint_).toBuilder(); } constraint_ = @@ -58190,12 +69680,12 @@ public final class ContextOuterClass { subBuilder.mergeFrom((context.ContextOuterClass.Constraint_SLA_Capacity) constraint_); constraint_ = subBuilder.buildPartial(); } - constraintCase_ = 5; + constraintCase_ = 6; break; } - case 50: { + case 58: { context.ContextOuterClass.Constraint_SLA_Latency.Builder subBuilder = null; - if (constraintCase_ == 6) { + if (constraintCase_ == 7) { subBuilder = ((context.ContextOuterClass.Constraint_SLA_Latency) constraint_).toBuilder(); } constraint_ = @@ -58204,12 +69694,12 @@ public final class ContextOuterClass { subBuilder.mergeFrom((context.ContextOuterClass.Constraint_SLA_Latency) constraint_); constraint_ = subBuilder.buildPartial(); } - constraintCase_ = 6; + constraintCase_ = 7; break; } - case 58: { + case 66: { context.ContextOuterClass.Constraint_SLA_Availability.Builder subBuilder = null; - if (constraintCase_ == 7) { + if (constraintCase_ == 8) { subBuilder = ((context.ContextOuterClass.Constraint_SLA_Availability) constraint_).toBuilder(); } constraint_ = @@ -58218,12 +69708,12 @@ public final class ContextOuterClass { subBuilder.mergeFrom((context.ContextOuterClass.Constraint_SLA_Availability) constraint_); constraint_ = subBuilder.buildPartial(); } - constraintCase_ = 7; + constraintCase_ = 8; break; } - case 66: { + case 74: { context.ContextOuterClass.Constraint_SLA_Isolation_level.Builder subBuilder = null; - if (constraintCase_ == 8) { + if (constraintCase_ == 9) { subBuilder = ((context.ContextOuterClass.Constraint_SLA_Isolation_level) constraint_).toBuilder(); } constraint_ = @@ -58232,7 +69722,21 @@ public final class ContextOuterClass { subBuilder.mergeFrom((context.ContextOuterClass.Constraint_SLA_Isolation_level) constraint_); constraint_ = subBuilder.buildPartial(); } - constraintCase_ = 8; + constraintCase_ = 9; + break; + } + case 82: { + context.ContextOuterClass.Constraint_Exclusions.Builder subBuilder = null; + if (constraintCase_ == 10) { + subBuilder = ((context.ContextOuterClass.Constraint_Exclusions) constraint_).toBuilder(); + } + constraint_ = + input.readMessage(context.ContextOuterClass.Constraint_Exclusions.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom((context.ContextOuterClass.Constraint_Exclusions) constraint_); + constraint_ = subBuilder.buildPartial(); + } + constraintCase_ = 10; break; } default: { @@ -58272,14 +69776,15 @@ public final class ContextOuterClass { public enum ConstraintCase implements com.google.protobuf.Internal.EnumLite, com.google.protobuf.AbstractMessage.InternalOneOfEnum { - CUSTOM(1), - SCHEDULE(2), - ENDPOINT_LOCATION(3), - ENDPOINT_PRIORITY(4), - SLA_CAPACITY(5), - SLA_LATENCY(6), - SLA_AVAILABILITY(7), - SLA_ISOLATION(8), + CUSTOM(2), + SCHEDULE(3), + ENDPOINT_LOCATION(4), + ENDPOINT_PRIORITY(5), + SLA_CAPACITY(6), + SLA_LATENCY(7), + SLA_AVAILABILITY(8), + SLA_ISOLATION(9), + EXCLUSIONS(10), CONSTRAINT_NOT_SET(0); private final int value; private ConstraintCase(int value) { @@ -58297,14 +69802,15 @@ public final class ContextOuterClass { public static ConstraintCase forNumber(int value) { switch (value) { - case 1: return CUSTOM; - case 2: return SCHEDULE; - case 3: return ENDPOINT_LOCATION; - case 4: return ENDPOINT_PRIORITY; - case 5: return SLA_CAPACITY; - case 6: return SLA_LATENCY; - case 7: return SLA_AVAILABILITY; - case 8: return SLA_ISOLATION; + case 2: return CUSTOM; + case 3: return SCHEDULE; + case 4: return ENDPOINT_LOCATION; + case 5: return ENDPOINT_PRIORITY; + case 6: return SLA_CAPACITY; + case 7: return SLA_LATENCY; + case 8: return SLA_AVAILABILITY; + case 9: return SLA_ISOLATION; + case 10: return EXCLUSIONS; case 0: return CONSTRAINT_NOT_SET; default: return null; } @@ -58320,254 +69826,304 @@ public final class ContextOuterClass { constraintCase_); } - public static final int CUSTOM_FIELD_NUMBER = 1; + public static final int ACTION_FIELD_NUMBER = 1; + private int action_; + /** + * <code>.context.ConstraintActionEnum action = 1;</code> + * @return The enum numeric value on the wire for action. + */ + @java.lang.Override public int getActionValue() { + return action_; + } + /** + * <code>.context.ConstraintActionEnum action = 1;</code> + * @return The action. + */ + @java.lang.Override public context.ContextOuterClass.ConstraintActionEnum getAction() { + @SuppressWarnings("deprecation") + context.ContextOuterClass.ConstraintActionEnum result = context.ContextOuterClass.ConstraintActionEnum.valueOf(action_); + return result == null ? context.ContextOuterClass.ConstraintActionEnum.UNRECOGNIZED : result; + } + + public static final int CUSTOM_FIELD_NUMBER = 2; /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> * @return Whether the custom field is set. */ @java.lang.Override public boolean hasCustom() { - return constraintCase_ == 1; + return constraintCase_ == 2; } /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> * @return The custom. */ @java.lang.Override public context.ContextOuterClass.Constraint_Custom getCustom() { - if (constraintCase_ == 1) { + if (constraintCase_ == 2) { return (context.ContextOuterClass.Constraint_Custom) constraint_; } return context.ContextOuterClass.Constraint_Custom.getDefaultInstance(); } /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_CustomOrBuilder getCustomOrBuilder() { - if (constraintCase_ == 1) { + if (constraintCase_ == 2) { return (context.ContextOuterClass.Constraint_Custom) constraint_; } return context.ContextOuterClass.Constraint_Custom.getDefaultInstance(); } - public static final int SCHEDULE_FIELD_NUMBER = 2; + public static final int SCHEDULE_FIELD_NUMBER = 3; /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> * @return Whether the schedule field is set. */ @java.lang.Override public boolean hasSchedule() { - return constraintCase_ == 2; + return constraintCase_ == 3; } /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> * @return The schedule. */ @java.lang.Override public context.ContextOuterClass.Constraint_Schedule getSchedule() { - if (constraintCase_ == 2) { + if (constraintCase_ == 3) { return (context.ContextOuterClass.Constraint_Schedule) constraint_; } return context.ContextOuterClass.Constraint_Schedule.getDefaultInstance(); } /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_ScheduleOrBuilder getScheduleOrBuilder() { - if (constraintCase_ == 2) { + if (constraintCase_ == 3) { return (context.ContextOuterClass.Constraint_Schedule) constraint_; } return context.ContextOuterClass.Constraint_Schedule.getDefaultInstance(); } - public static final int ENDPOINT_LOCATION_FIELD_NUMBER = 3; + public static final int ENDPOINT_LOCATION_FIELD_NUMBER = 4; /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> * @return Whether the endpointLocation field is set. */ @java.lang.Override public boolean hasEndpointLocation() { - return constraintCase_ == 3; + return constraintCase_ == 4; } /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> * @return The endpointLocation. */ @java.lang.Override public context.ContextOuterClass.Constraint_EndPointLocation getEndpointLocation() { - if (constraintCase_ == 3) { + if (constraintCase_ == 4) { return (context.ContextOuterClass.Constraint_EndPointLocation) constraint_; } return context.ContextOuterClass.Constraint_EndPointLocation.getDefaultInstance(); } /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_EndPointLocationOrBuilder getEndpointLocationOrBuilder() { - if (constraintCase_ == 3) { + if (constraintCase_ == 4) { return (context.ContextOuterClass.Constraint_EndPointLocation) constraint_; } return context.ContextOuterClass.Constraint_EndPointLocation.getDefaultInstance(); } - public static final int ENDPOINT_PRIORITY_FIELD_NUMBER = 4; + public static final int ENDPOINT_PRIORITY_FIELD_NUMBER = 5; /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> * @return Whether the endpointPriority field is set. */ @java.lang.Override public boolean hasEndpointPriority() { - return constraintCase_ == 4; + return constraintCase_ == 5; } /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> * @return The endpointPriority. */ @java.lang.Override public context.ContextOuterClass.Constraint_EndPointPriority getEndpointPriority() { - if (constraintCase_ == 4) { + if (constraintCase_ == 5) { return (context.ContextOuterClass.Constraint_EndPointPriority) constraint_; } return context.ContextOuterClass.Constraint_EndPointPriority.getDefaultInstance(); } /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_EndPointPriorityOrBuilder getEndpointPriorityOrBuilder() { - if (constraintCase_ == 4) { + if (constraintCase_ == 5) { return (context.ContextOuterClass.Constraint_EndPointPriority) constraint_; } return context.ContextOuterClass.Constraint_EndPointPriority.getDefaultInstance(); } - public static final int SLA_CAPACITY_FIELD_NUMBER = 5; + public static final int SLA_CAPACITY_FIELD_NUMBER = 6; /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> * @return Whether the slaCapacity field is set. */ @java.lang.Override public boolean hasSlaCapacity() { - return constraintCase_ == 5; + return constraintCase_ == 6; } /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> * @return The slaCapacity. */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_Capacity getSlaCapacity() { - if (constraintCase_ == 5) { + if (constraintCase_ == 6) { return (context.ContextOuterClass.Constraint_SLA_Capacity) constraint_; } return context.ContextOuterClass.Constraint_SLA_Capacity.getDefaultInstance(); } /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_CapacityOrBuilder getSlaCapacityOrBuilder() { - if (constraintCase_ == 5) { + if (constraintCase_ == 6) { return (context.ContextOuterClass.Constraint_SLA_Capacity) constraint_; } return context.ContextOuterClass.Constraint_SLA_Capacity.getDefaultInstance(); } - public static final int SLA_LATENCY_FIELD_NUMBER = 6; + public static final int SLA_LATENCY_FIELD_NUMBER = 7; /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> * @return Whether the slaLatency field is set. */ @java.lang.Override public boolean hasSlaLatency() { - return constraintCase_ == 6; + return constraintCase_ == 7; } /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> * @return The slaLatency. */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_Latency getSlaLatency() { - if (constraintCase_ == 6) { + if (constraintCase_ == 7) { return (context.ContextOuterClass.Constraint_SLA_Latency) constraint_; } return context.ContextOuterClass.Constraint_SLA_Latency.getDefaultInstance(); } /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_LatencyOrBuilder getSlaLatencyOrBuilder() { - if (constraintCase_ == 6) { + if (constraintCase_ == 7) { return (context.ContextOuterClass.Constraint_SLA_Latency) constraint_; } return context.ContextOuterClass.Constraint_SLA_Latency.getDefaultInstance(); } - public static final int SLA_AVAILABILITY_FIELD_NUMBER = 7; + public static final int SLA_AVAILABILITY_FIELD_NUMBER = 8; /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> * @return Whether the slaAvailability field is set. */ @java.lang.Override public boolean hasSlaAvailability() { - return constraintCase_ == 7; + return constraintCase_ == 8; } /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> * @return The slaAvailability. */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_Availability getSlaAvailability() { - if (constraintCase_ == 7) { + if (constraintCase_ == 8) { return (context.ContextOuterClass.Constraint_SLA_Availability) constraint_; } return context.ContextOuterClass.Constraint_SLA_Availability.getDefaultInstance(); } /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_AvailabilityOrBuilder getSlaAvailabilityOrBuilder() { - if (constraintCase_ == 7) { + if (constraintCase_ == 8) { return (context.ContextOuterClass.Constraint_SLA_Availability) constraint_; } return context.ContextOuterClass.Constraint_SLA_Availability.getDefaultInstance(); } - public static final int SLA_ISOLATION_FIELD_NUMBER = 8; + public static final int SLA_ISOLATION_FIELD_NUMBER = 9; /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> * @return Whether the slaIsolation field is set. */ @java.lang.Override public boolean hasSlaIsolation() { - return constraintCase_ == 8; + return constraintCase_ == 9; } /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> * @return The slaIsolation. */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_Isolation_level getSlaIsolation() { - if (constraintCase_ == 8) { + if (constraintCase_ == 9) { return (context.ContextOuterClass.Constraint_SLA_Isolation_level) constraint_; } return context.ContextOuterClass.Constraint_SLA_Isolation_level.getDefaultInstance(); } /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_Isolation_levelOrBuilder getSlaIsolationOrBuilder() { - if (constraintCase_ == 8) { + if (constraintCase_ == 9) { return (context.ContextOuterClass.Constraint_SLA_Isolation_level) constraint_; } return context.ContextOuterClass.Constraint_SLA_Isolation_level.getDefaultInstance(); } + public static final int EXCLUSIONS_FIELD_NUMBER = 10; + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + * @return Whether the exclusions field is set. + */ + @java.lang.Override + public boolean hasExclusions() { + return constraintCase_ == 10; + } + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + * @return The exclusions. + */ + @java.lang.Override + public context.ContextOuterClass.Constraint_Exclusions getExclusions() { + if (constraintCase_ == 10) { + return (context.ContextOuterClass.Constraint_Exclusions) constraint_; + } + return context.ContextOuterClass.Constraint_Exclusions.getDefaultInstance(); + } + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + */ + @java.lang.Override + public context.ContextOuterClass.Constraint_ExclusionsOrBuilder getExclusionsOrBuilder() { + if (constraintCase_ == 10) { + return (context.ContextOuterClass.Constraint_Exclusions) constraint_; + } + return context.ContextOuterClass.Constraint_Exclusions.getDefaultInstance(); + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -58582,29 +70138,35 @@ public final class ContextOuterClass { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (constraintCase_ == 1) { - output.writeMessage(1, (context.ContextOuterClass.Constraint_Custom) constraint_); + if (action_ != context.ContextOuterClass.ConstraintActionEnum.CONSTRAINTACTION_UNDEFINED.getNumber()) { + output.writeEnum(1, action_); } if (constraintCase_ == 2) { - output.writeMessage(2, (context.ContextOuterClass.Constraint_Schedule) constraint_); + output.writeMessage(2, (context.ContextOuterClass.Constraint_Custom) constraint_); } if (constraintCase_ == 3) { - output.writeMessage(3, (context.ContextOuterClass.Constraint_EndPointLocation) constraint_); + output.writeMessage(3, (context.ContextOuterClass.Constraint_Schedule) constraint_); } if (constraintCase_ == 4) { - output.writeMessage(4, (context.ContextOuterClass.Constraint_EndPointPriority) constraint_); + output.writeMessage(4, (context.ContextOuterClass.Constraint_EndPointLocation) constraint_); } if (constraintCase_ == 5) { - output.writeMessage(5, (context.ContextOuterClass.Constraint_SLA_Capacity) constraint_); + output.writeMessage(5, (context.ContextOuterClass.Constraint_EndPointPriority) constraint_); } if (constraintCase_ == 6) { - output.writeMessage(6, (context.ContextOuterClass.Constraint_SLA_Latency) constraint_); + output.writeMessage(6, (context.ContextOuterClass.Constraint_SLA_Capacity) constraint_); } if (constraintCase_ == 7) { - output.writeMessage(7, (context.ContextOuterClass.Constraint_SLA_Availability) constraint_); + output.writeMessage(7, (context.ContextOuterClass.Constraint_SLA_Latency) constraint_); } if (constraintCase_ == 8) { - output.writeMessage(8, (context.ContextOuterClass.Constraint_SLA_Isolation_level) constraint_); + output.writeMessage(8, (context.ContextOuterClass.Constraint_SLA_Availability) constraint_); + } + if (constraintCase_ == 9) { + output.writeMessage(9, (context.ContextOuterClass.Constraint_SLA_Isolation_level) constraint_); + } + if (constraintCase_ == 10) { + output.writeMessage(10, (context.ContextOuterClass.Constraint_Exclusions) constraint_); } unknownFields.writeTo(output); } @@ -58615,37 +70177,45 @@ public final class ContextOuterClass { if (size != -1) return size; size = 0; - if (constraintCase_ == 1) { + if (action_ != context.ContextOuterClass.ConstraintActionEnum.CONSTRAINTACTION_UNDEFINED.getNumber()) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, (context.ContextOuterClass.Constraint_Custom) constraint_); + .computeEnumSize(1, action_); } if (constraintCase_ == 2) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, (context.ContextOuterClass.Constraint_Schedule) constraint_); + .computeMessageSize(2, (context.ContextOuterClass.Constraint_Custom) constraint_); } if (constraintCase_ == 3) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(3, (context.ContextOuterClass.Constraint_EndPointLocation) constraint_); + .computeMessageSize(3, (context.ContextOuterClass.Constraint_Schedule) constraint_); } if (constraintCase_ == 4) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(4, (context.ContextOuterClass.Constraint_EndPointPriority) constraint_); + .computeMessageSize(4, (context.ContextOuterClass.Constraint_EndPointLocation) constraint_); } if (constraintCase_ == 5) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(5, (context.ContextOuterClass.Constraint_SLA_Capacity) constraint_); + .computeMessageSize(5, (context.ContextOuterClass.Constraint_EndPointPriority) constraint_); } if (constraintCase_ == 6) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(6, (context.ContextOuterClass.Constraint_SLA_Latency) constraint_); + .computeMessageSize(6, (context.ContextOuterClass.Constraint_SLA_Capacity) constraint_); } if (constraintCase_ == 7) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(7, (context.ContextOuterClass.Constraint_SLA_Availability) constraint_); + .computeMessageSize(7, (context.ContextOuterClass.Constraint_SLA_Latency) constraint_); } if (constraintCase_ == 8) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(8, (context.ContextOuterClass.Constraint_SLA_Isolation_level) constraint_); + .computeMessageSize(8, (context.ContextOuterClass.Constraint_SLA_Availability) constraint_); + } + if (constraintCase_ == 9) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(9, (context.ContextOuterClass.Constraint_SLA_Isolation_level) constraint_); + } + if (constraintCase_ == 10) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(10, (context.ContextOuterClass.Constraint_Exclusions) constraint_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -58662,40 +70232,45 @@ public final class ContextOuterClass { } context.ContextOuterClass.Constraint other = (context.ContextOuterClass.Constraint) obj; + if (action_ != other.action_) return false; if (!getConstraintCase().equals(other.getConstraintCase())) return false; switch (constraintCase_) { - case 1: + case 2: if (!getCustom() .equals(other.getCustom())) return false; break; - case 2: + case 3: if (!getSchedule() .equals(other.getSchedule())) return false; break; - case 3: + case 4: if (!getEndpointLocation() .equals(other.getEndpointLocation())) return false; break; - case 4: + case 5: if (!getEndpointPriority() .equals(other.getEndpointPriority())) return false; break; - case 5: + case 6: if (!getSlaCapacity() .equals(other.getSlaCapacity())) return false; break; - case 6: + case 7: if (!getSlaLatency() .equals(other.getSlaLatency())) return false; break; - case 7: + case 8: if (!getSlaAvailability() .equals(other.getSlaAvailability())) return false; break; - case 8: + case 9: if (!getSlaIsolation() .equals(other.getSlaIsolation())) return false; break; + case 10: + if (!getExclusions() + .equals(other.getExclusions())) return false; + break; case 0: default: } @@ -58710,39 +70285,45 @@ public final class ContextOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + ACTION_FIELD_NUMBER; + hash = (53 * hash) + action_; switch (constraintCase_) { - case 1: + case 2: hash = (37 * hash) + CUSTOM_FIELD_NUMBER; hash = (53 * hash) + getCustom().hashCode(); break; - case 2: + case 3: hash = (37 * hash) + SCHEDULE_FIELD_NUMBER; hash = (53 * hash) + getSchedule().hashCode(); break; - case 3: + case 4: hash = (37 * hash) + ENDPOINT_LOCATION_FIELD_NUMBER; hash = (53 * hash) + getEndpointLocation().hashCode(); break; - case 4: + case 5: hash = (37 * hash) + ENDPOINT_PRIORITY_FIELD_NUMBER; hash = (53 * hash) + getEndpointPriority().hashCode(); break; - case 5: + case 6: hash = (37 * hash) + SLA_CAPACITY_FIELD_NUMBER; hash = (53 * hash) + getSlaCapacity().hashCode(); break; - case 6: + case 7: hash = (37 * hash) + SLA_LATENCY_FIELD_NUMBER; hash = (53 * hash) + getSlaLatency().hashCode(); break; - case 7: + case 8: hash = (37 * hash) + SLA_AVAILABILITY_FIELD_NUMBER; hash = (53 * hash) + getSlaAvailability().hashCode(); break; - case 8: + case 9: hash = (37 * hash) + SLA_ISOLATION_FIELD_NUMBER; hash = (53 * hash) + getSlaIsolation().hashCode(); break; + case 10: + hash = (37 * hash) + EXCLUSIONS_FIELD_NUMBER; + hash = (53 * hash) + getExclusions().hashCode(); + break; case 0: default: } @@ -58879,6 +70460,8 @@ public final class ContextOuterClass { @java.lang.Override public Builder clear() { super.clear(); + action_ = 0; + constraintCase_ = 0; constraint_ = null; return this; @@ -58907,62 +70490,70 @@ public final class ContextOuterClass { @java.lang.Override public context.ContextOuterClass.Constraint buildPartial() { context.ContextOuterClass.Constraint result = new context.ContextOuterClass.Constraint(this); - if (constraintCase_ == 1) { + result.action_ = action_; + if (constraintCase_ == 2) { if (customBuilder_ == null) { result.constraint_ = constraint_; } else { result.constraint_ = customBuilder_.build(); } } - if (constraintCase_ == 2) { + if (constraintCase_ == 3) { if (scheduleBuilder_ == null) { result.constraint_ = constraint_; } else { result.constraint_ = scheduleBuilder_.build(); } } - if (constraintCase_ == 3) { + if (constraintCase_ == 4) { if (endpointLocationBuilder_ == null) { result.constraint_ = constraint_; } else { result.constraint_ = endpointLocationBuilder_.build(); } } - if (constraintCase_ == 4) { + if (constraintCase_ == 5) { if (endpointPriorityBuilder_ == null) { result.constraint_ = constraint_; } else { result.constraint_ = endpointPriorityBuilder_.build(); } } - if (constraintCase_ == 5) { + if (constraintCase_ == 6) { if (slaCapacityBuilder_ == null) { result.constraint_ = constraint_; } else { result.constraint_ = slaCapacityBuilder_.build(); } } - if (constraintCase_ == 6) { + if (constraintCase_ == 7) { if (slaLatencyBuilder_ == null) { result.constraint_ = constraint_; } else { result.constraint_ = slaLatencyBuilder_.build(); } } - if (constraintCase_ == 7) { + if (constraintCase_ == 8) { if (slaAvailabilityBuilder_ == null) { result.constraint_ = constraint_; } else { result.constraint_ = slaAvailabilityBuilder_.build(); } } - if (constraintCase_ == 8) { + if (constraintCase_ == 9) { if (slaIsolationBuilder_ == null) { result.constraint_ = constraint_; } else { result.constraint_ = slaIsolationBuilder_.build(); } } + if (constraintCase_ == 10) { + if (exclusionsBuilder_ == null) { + result.constraint_ = constraint_; + } else { + result.constraint_ = exclusionsBuilder_.build(); + } + } result.constraintCase_ = constraintCase_; onBuilt(); return result; @@ -59012,6 +70603,9 @@ public final class ContextOuterClass { public Builder mergeFrom(context.ContextOuterClass.Constraint other) { if (other == context.ContextOuterClass.Constraint.getDefaultInstance()) return this; + if (other.action_ != 0) { + setActionValue(other.getActionValue()); + } switch (other.getConstraintCase()) { case CUSTOM: { mergeCustom(other.getCustom()); @@ -59045,6 +70639,10 @@ public final class ContextOuterClass { mergeSlaIsolation(other.getSlaIsolation()); break; } + case EXCLUSIONS: { + mergeExclusions(other.getExclusions()); + break; + } case CONSTRAINT_NOT_SET: { break; } @@ -59093,36 +70691,90 @@ public final class ContextOuterClass { } + private int action_ = 0; + /** + * <code>.context.ConstraintActionEnum action = 1;</code> + * @return The enum numeric value on the wire for action. + */ + @java.lang.Override public int getActionValue() { + return action_; + } + /** + * <code>.context.ConstraintActionEnum action = 1;</code> + * @param value The enum numeric value on the wire for action to set. + * @return This builder for chaining. + */ + public Builder setActionValue(int value) { + + action_ = value; + onChanged(); + return this; + } + /** + * <code>.context.ConstraintActionEnum action = 1;</code> + * @return The action. + */ + @java.lang.Override + public context.ContextOuterClass.ConstraintActionEnum getAction() { + @SuppressWarnings("deprecation") + context.ContextOuterClass.ConstraintActionEnum result = context.ContextOuterClass.ConstraintActionEnum.valueOf(action_); + return result == null ? context.ContextOuterClass.ConstraintActionEnum.UNRECOGNIZED : result; + } + /** + * <code>.context.ConstraintActionEnum action = 1;</code> + * @param value The action to set. + * @return This builder for chaining. + */ + public Builder setAction(context.ContextOuterClass.ConstraintActionEnum value) { + if (value == null) { + throw new NullPointerException(); + } + + action_ = value.getNumber(); + onChanged(); + return this; + } + /** + * <code>.context.ConstraintActionEnum action = 1;</code> + * @return This builder for chaining. + */ + public Builder clearAction() { + + action_ = 0; + onChanged(); + return this; + } + private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_Custom, context.ContextOuterClass.Constraint_Custom.Builder, context.ContextOuterClass.Constraint_CustomOrBuilder> customBuilder_; /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> * @return Whether the custom field is set. */ @java.lang.Override public boolean hasCustom() { - return constraintCase_ == 1; + return constraintCase_ == 2; } /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> * @return The custom. */ @java.lang.Override public context.ContextOuterClass.Constraint_Custom getCustom() { if (customBuilder_ == null) { - if (constraintCase_ == 1) { + if (constraintCase_ == 2) { return (context.ContextOuterClass.Constraint_Custom) constraint_; } return context.ContextOuterClass.Constraint_Custom.getDefaultInstance(); } else { - if (constraintCase_ == 1) { + if (constraintCase_ == 2) { return customBuilder_.getMessage(); } return context.ContextOuterClass.Constraint_Custom.getDefaultInstance(); } } /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> */ public Builder setCustom(context.ContextOuterClass.Constraint_Custom value) { if (customBuilder_ == null) { @@ -59134,11 +70786,11 @@ public final class ContextOuterClass { } else { customBuilder_.setMessage(value); } - constraintCase_ = 1; + constraintCase_ = 2; return this; } /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> */ public Builder setCustom( context.ContextOuterClass.Constraint_Custom.Builder builderForValue) { @@ -59148,15 +70800,15 @@ public final class ContextOuterClass { } else { customBuilder_.setMessage(builderForValue.build()); } - constraintCase_ = 1; + constraintCase_ = 2; return this; } /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> */ public Builder mergeCustom(context.ContextOuterClass.Constraint_Custom value) { if (customBuilder_ == null) { - if (constraintCase_ == 1 && + if (constraintCase_ == 2 && constraint_ != context.ContextOuterClass.Constraint_Custom.getDefaultInstance()) { constraint_ = context.ContextOuterClass.Constraint_Custom.newBuilder((context.ContextOuterClass.Constraint_Custom) constraint_) .mergeFrom(value).buildPartial(); @@ -59165,26 +70817,26 @@ public final class ContextOuterClass { } onChanged(); } else { - if (constraintCase_ == 1) { + if (constraintCase_ == 2) { customBuilder_.mergeFrom(value); } customBuilder_.setMessage(value); } - constraintCase_ = 1; + constraintCase_ = 2; return this; } /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> */ public Builder clearCustom() { if (customBuilder_ == null) { - if (constraintCase_ == 1) { + if (constraintCase_ == 2) { constraintCase_ = 0; constraint_ = null; onChanged(); } } else { - if (constraintCase_ == 1) { + if (constraintCase_ == 2) { constraintCase_ = 0; constraint_ = null; } @@ -59193,33 +70845,33 @@ public final class ContextOuterClass { return this; } /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> */ public context.ContextOuterClass.Constraint_Custom.Builder getCustomBuilder() { return getCustomFieldBuilder().getBuilder(); } /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_CustomOrBuilder getCustomOrBuilder() { - if ((constraintCase_ == 1) && (customBuilder_ != null)) { + if ((constraintCase_ == 2) && (customBuilder_ != null)) { return customBuilder_.getMessageOrBuilder(); } else { - if (constraintCase_ == 1) { + if (constraintCase_ == 2) { return (context.ContextOuterClass.Constraint_Custom) constraint_; } return context.ContextOuterClass.Constraint_Custom.getDefaultInstance(); } } /** - * <code>.context.Constraint_Custom custom = 1;</code> + * <code>.context.Constraint_Custom custom = 2;</code> */ private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_Custom, context.ContextOuterClass.Constraint_Custom.Builder, context.ContextOuterClass.Constraint_CustomOrBuilder> getCustomFieldBuilder() { if (customBuilder_ == null) { - if (!(constraintCase_ == 1)) { + if (!(constraintCase_ == 2)) { constraint_ = context.ContextOuterClass.Constraint_Custom.getDefaultInstance(); } customBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< @@ -59229,7 +70881,7 @@ public final class ContextOuterClass { isClean()); constraint_ = null; } - constraintCase_ = 1; + constraintCase_ = 2; onChanged();; return customBuilder_; } @@ -59237,33 +70889,33 @@ public final class ContextOuterClass { private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_Schedule, context.ContextOuterClass.Constraint_Schedule.Builder, context.ContextOuterClass.Constraint_ScheduleOrBuilder> scheduleBuilder_; /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> * @return Whether the schedule field is set. */ @java.lang.Override public boolean hasSchedule() { - return constraintCase_ == 2; + return constraintCase_ == 3; } /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> * @return The schedule. */ @java.lang.Override public context.ContextOuterClass.Constraint_Schedule getSchedule() { if (scheduleBuilder_ == null) { - if (constraintCase_ == 2) { + if (constraintCase_ == 3) { return (context.ContextOuterClass.Constraint_Schedule) constraint_; } return context.ContextOuterClass.Constraint_Schedule.getDefaultInstance(); } else { - if (constraintCase_ == 2) { + if (constraintCase_ == 3) { return scheduleBuilder_.getMessage(); } return context.ContextOuterClass.Constraint_Schedule.getDefaultInstance(); } } /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> */ public Builder setSchedule(context.ContextOuterClass.Constraint_Schedule value) { if (scheduleBuilder_ == null) { @@ -59275,11 +70927,11 @@ public final class ContextOuterClass { } else { scheduleBuilder_.setMessage(value); } - constraintCase_ = 2; + constraintCase_ = 3; return this; } /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> */ public Builder setSchedule( context.ContextOuterClass.Constraint_Schedule.Builder builderForValue) { @@ -59289,15 +70941,15 @@ public final class ContextOuterClass { } else { scheduleBuilder_.setMessage(builderForValue.build()); } - constraintCase_ = 2; + constraintCase_ = 3; return this; } /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> */ public Builder mergeSchedule(context.ContextOuterClass.Constraint_Schedule value) { if (scheduleBuilder_ == null) { - if (constraintCase_ == 2 && + if (constraintCase_ == 3 && constraint_ != context.ContextOuterClass.Constraint_Schedule.getDefaultInstance()) { constraint_ = context.ContextOuterClass.Constraint_Schedule.newBuilder((context.ContextOuterClass.Constraint_Schedule) constraint_) .mergeFrom(value).buildPartial(); @@ -59306,26 +70958,26 @@ public final class ContextOuterClass { } onChanged(); } else { - if (constraintCase_ == 2) { + if (constraintCase_ == 3) { scheduleBuilder_.mergeFrom(value); } scheduleBuilder_.setMessage(value); } - constraintCase_ = 2; + constraintCase_ = 3; return this; } /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> */ public Builder clearSchedule() { if (scheduleBuilder_ == null) { - if (constraintCase_ == 2) { + if (constraintCase_ == 3) { constraintCase_ = 0; constraint_ = null; onChanged(); } } else { - if (constraintCase_ == 2) { + if (constraintCase_ == 3) { constraintCase_ = 0; constraint_ = null; } @@ -59334,33 +70986,33 @@ public final class ContextOuterClass { return this; } /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> */ public context.ContextOuterClass.Constraint_Schedule.Builder getScheduleBuilder() { return getScheduleFieldBuilder().getBuilder(); } /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_ScheduleOrBuilder getScheduleOrBuilder() { - if ((constraintCase_ == 2) && (scheduleBuilder_ != null)) { + if ((constraintCase_ == 3) && (scheduleBuilder_ != null)) { return scheduleBuilder_.getMessageOrBuilder(); } else { - if (constraintCase_ == 2) { + if (constraintCase_ == 3) { return (context.ContextOuterClass.Constraint_Schedule) constraint_; } return context.ContextOuterClass.Constraint_Schedule.getDefaultInstance(); } } /** - * <code>.context.Constraint_Schedule schedule = 2;</code> + * <code>.context.Constraint_Schedule schedule = 3;</code> */ private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_Schedule, context.ContextOuterClass.Constraint_Schedule.Builder, context.ContextOuterClass.Constraint_ScheduleOrBuilder> getScheduleFieldBuilder() { if (scheduleBuilder_ == null) { - if (!(constraintCase_ == 2)) { + if (!(constraintCase_ == 3)) { constraint_ = context.ContextOuterClass.Constraint_Schedule.getDefaultInstance(); } scheduleBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< @@ -59370,7 +71022,7 @@ public final class ContextOuterClass { isClean()); constraint_ = null; } - constraintCase_ = 2; + constraintCase_ = 3; onChanged();; return scheduleBuilder_; } @@ -59378,33 +71030,33 @@ public final class ContextOuterClass { private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_EndPointLocation, context.ContextOuterClass.Constraint_EndPointLocation.Builder, context.ContextOuterClass.Constraint_EndPointLocationOrBuilder> endpointLocationBuilder_; /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> * @return Whether the endpointLocation field is set. */ @java.lang.Override public boolean hasEndpointLocation() { - return constraintCase_ == 3; + return constraintCase_ == 4; } /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> * @return The endpointLocation. */ @java.lang.Override public context.ContextOuterClass.Constraint_EndPointLocation getEndpointLocation() { if (endpointLocationBuilder_ == null) { - if (constraintCase_ == 3) { + if (constraintCase_ == 4) { return (context.ContextOuterClass.Constraint_EndPointLocation) constraint_; } return context.ContextOuterClass.Constraint_EndPointLocation.getDefaultInstance(); } else { - if (constraintCase_ == 3) { + if (constraintCase_ == 4) { return endpointLocationBuilder_.getMessage(); } return context.ContextOuterClass.Constraint_EndPointLocation.getDefaultInstance(); } } /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> */ public Builder setEndpointLocation(context.ContextOuterClass.Constraint_EndPointLocation value) { if (endpointLocationBuilder_ == null) { @@ -59416,11 +71068,11 @@ public final class ContextOuterClass { } else { endpointLocationBuilder_.setMessage(value); } - constraintCase_ = 3; + constraintCase_ = 4; return this; } /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> */ public Builder setEndpointLocation( context.ContextOuterClass.Constraint_EndPointLocation.Builder builderForValue) { @@ -59430,15 +71082,15 @@ public final class ContextOuterClass { } else { endpointLocationBuilder_.setMessage(builderForValue.build()); } - constraintCase_ = 3; + constraintCase_ = 4; return this; } /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> */ public Builder mergeEndpointLocation(context.ContextOuterClass.Constraint_EndPointLocation value) { if (endpointLocationBuilder_ == null) { - if (constraintCase_ == 3 && + if (constraintCase_ == 4 && constraint_ != context.ContextOuterClass.Constraint_EndPointLocation.getDefaultInstance()) { constraint_ = context.ContextOuterClass.Constraint_EndPointLocation.newBuilder((context.ContextOuterClass.Constraint_EndPointLocation) constraint_) .mergeFrom(value).buildPartial(); @@ -59447,26 +71099,26 @@ public final class ContextOuterClass { } onChanged(); } else { - if (constraintCase_ == 3) { + if (constraintCase_ == 4) { endpointLocationBuilder_.mergeFrom(value); } endpointLocationBuilder_.setMessage(value); } - constraintCase_ = 3; + constraintCase_ = 4; return this; } /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> */ public Builder clearEndpointLocation() { if (endpointLocationBuilder_ == null) { - if (constraintCase_ == 3) { + if (constraintCase_ == 4) { constraintCase_ = 0; constraint_ = null; onChanged(); } } else { - if (constraintCase_ == 3) { + if (constraintCase_ == 4) { constraintCase_ = 0; constraint_ = null; } @@ -59475,33 +71127,33 @@ public final class ContextOuterClass { return this; } /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> */ public context.ContextOuterClass.Constraint_EndPointLocation.Builder getEndpointLocationBuilder() { return getEndpointLocationFieldBuilder().getBuilder(); } /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_EndPointLocationOrBuilder getEndpointLocationOrBuilder() { - if ((constraintCase_ == 3) && (endpointLocationBuilder_ != null)) { + if ((constraintCase_ == 4) && (endpointLocationBuilder_ != null)) { return endpointLocationBuilder_.getMessageOrBuilder(); } else { - if (constraintCase_ == 3) { + if (constraintCase_ == 4) { return (context.ContextOuterClass.Constraint_EndPointLocation) constraint_; } return context.ContextOuterClass.Constraint_EndPointLocation.getDefaultInstance(); } } /** - * <code>.context.Constraint_EndPointLocation endpoint_location = 3;</code> + * <code>.context.Constraint_EndPointLocation endpoint_location = 4;</code> */ private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_EndPointLocation, context.ContextOuterClass.Constraint_EndPointLocation.Builder, context.ContextOuterClass.Constraint_EndPointLocationOrBuilder> getEndpointLocationFieldBuilder() { if (endpointLocationBuilder_ == null) { - if (!(constraintCase_ == 3)) { + if (!(constraintCase_ == 4)) { constraint_ = context.ContextOuterClass.Constraint_EndPointLocation.getDefaultInstance(); } endpointLocationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< @@ -59511,7 +71163,7 @@ public final class ContextOuterClass { isClean()); constraint_ = null; } - constraintCase_ = 3; + constraintCase_ = 4; onChanged();; return endpointLocationBuilder_; } @@ -59519,33 +71171,33 @@ public final class ContextOuterClass { private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_EndPointPriority, context.ContextOuterClass.Constraint_EndPointPriority.Builder, context.ContextOuterClass.Constraint_EndPointPriorityOrBuilder> endpointPriorityBuilder_; /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> * @return Whether the endpointPriority field is set. */ @java.lang.Override public boolean hasEndpointPriority() { - return constraintCase_ == 4; + return constraintCase_ == 5; } /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> * @return The endpointPriority. */ @java.lang.Override public context.ContextOuterClass.Constraint_EndPointPriority getEndpointPriority() { if (endpointPriorityBuilder_ == null) { - if (constraintCase_ == 4) { + if (constraintCase_ == 5) { return (context.ContextOuterClass.Constraint_EndPointPriority) constraint_; } return context.ContextOuterClass.Constraint_EndPointPriority.getDefaultInstance(); } else { - if (constraintCase_ == 4) { + if (constraintCase_ == 5) { return endpointPriorityBuilder_.getMessage(); } return context.ContextOuterClass.Constraint_EndPointPriority.getDefaultInstance(); } } /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> */ public Builder setEndpointPriority(context.ContextOuterClass.Constraint_EndPointPriority value) { if (endpointPriorityBuilder_ == null) { @@ -59557,11 +71209,11 @@ public final class ContextOuterClass { } else { endpointPriorityBuilder_.setMessage(value); } - constraintCase_ = 4; + constraintCase_ = 5; return this; } /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> */ public Builder setEndpointPriority( context.ContextOuterClass.Constraint_EndPointPriority.Builder builderForValue) { @@ -59571,15 +71223,15 @@ public final class ContextOuterClass { } else { endpointPriorityBuilder_.setMessage(builderForValue.build()); } - constraintCase_ = 4; + constraintCase_ = 5; return this; } /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> */ public Builder mergeEndpointPriority(context.ContextOuterClass.Constraint_EndPointPriority value) { if (endpointPriorityBuilder_ == null) { - if (constraintCase_ == 4 && + if (constraintCase_ == 5 && constraint_ != context.ContextOuterClass.Constraint_EndPointPriority.getDefaultInstance()) { constraint_ = context.ContextOuterClass.Constraint_EndPointPriority.newBuilder((context.ContextOuterClass.Constraint_EndPointPriority) constraint_) .mergeFrom(value).buildPartial(); @@ -59588,26 +71240,26 @@ public final class ContextOuterClass { } onChanged(); } else { - if (constraintCase_ == 4) { + if (constraintCase_ == 5) { endpointPriorityBuilder_.mergeFrom(value); } endpointPriorityBuilder_.setMessage(value); } - constraintCase_ = 4; + constraintCase_ = 5; return this; } /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> */ public Builder clearEndpointPriority() { if (endpointPriorityBuilder_ == null) { - if (constraintCase_ == 4) { + if (constraintCase_ == 5) { constraintCase_ = 0; constraint_ = null; onChanged(); } } else { - if (constraintCase_ == 4) { + if (constraintCase_ == 5) { constraintCase_ = 0; constraint_ = null; } @@ -59616,33 +71268,33 @@ public final class ContextOuterClass { return this; } /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> */ public context.ContextOuterClass.Constraint_EndPointPriority.Builder getEndpointPriorityBuilder() { return getEndpointPriorityFieldBuilder().getBuilder(); } /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_EndPointPriorityOrBuilder getEndpointPriorityOrBuilder() { - if ((constraintCase_ == 4) && (endpointPriorityBuilder_ != null)) { + if ((constraintCase_ == 5) && (endpointPriorityBuilder_ != null)) { return endpointPriorityBuilder_.getMessageOrBuilder(); } else { - if (constraintCase_ == 4) { + if (constraintCase_ == 5) { return (context.ContextOuterClass.Constraint_EndPointPriority) constraint_; } return context.ContextOuterClass.Constraint_EndPointPriority.getDefaultInstance(); } } /** - * <code>.context.Constraint_EndPointPriority endpoint_priority = 4;</code> + * <code>.context.Constraint_EndPointPriority endpoint_priority = 5;</code> */ private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_EndPointPriority, context.ContextOuterClass.Constraint_EndPointPriority.Builder, context.ContextOuterClass.Constraint_EndPointPriorityOrBuilder> getEndpointPriorityFieldBuilder() { if (endpointPriorityBuilder_ == null) { - if (!(constraintCase_ == 4)) { + if (!(constraintCase_ == 5)) { constraint_ = context.ContextOuterClass.Constraint_EndPointPriority.getDefaultInstance(); } endpointPriorityBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< @@ -59652,7 +71304,7 @@ public final class ContextOuterClass { isClean()); constraint_ = null; } - constraintCase_ = 4; + constraintCase_ = 5; onChanged();; return endpointPriorityBuilder_; } @@ -59660,33 +71312,33 @@ public final class ContextOuterClass { private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_SLA_Capacity, context.ContextOuterClass.Constraint_SLA_Capacity.Builder, context.ContextOuterClass.Constraint_SLA_CapacityOrBuilder> slaCapacityBuilder_; /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> * @return Whether the slaCapacity field is set. */ @java.lang.Override public boolean hasSlaCapacity() { - return constraintCase_ == 5; + return constraintCase_ == 6; } /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> * @return The slaCapacity. */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_Capacity getSlaCapacity() { if (slaCapacityBuilder_ == null) { - if (constraintCase_ == 5) { + if (constraintCase_ == 6) { return (context.ContextOuterClass.Constraint_SLA_Capacity) constraint_; } return context.ContextOuterClass.Constraint_SLA_Capacity.getDefaultInstance(); } else { - if (constraintCase_ == 5) { + if (constraintCase_ == 6) { return slaCapacityBuilder_.getMessage(); } return context.ContextOuterClass.Constraint_SLA_Capacity.getDefaultInstance(); } } /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> */ public Builder setSlaCapacity(context.ContextOuterClass.Constraint_SLA_Capacity value) { if (slaCapacityBuilder_ == null) { @@ -59698,11 +71350,11 @@ public final class ContextOuterClass { } else { slaCapacityBuilder_.setMessage(value); } - constraintCase_ = 5; + constraintCase_ = 6; return this; } /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> */ public Builder setSlaCapacity( context.ContextOuterClass.Constraint_SLA_Capacity.Builder builderForValue) { @@ -59712,15 +71364,15 @@ public final class ContextOuterClass { } else { slaCapacityBuilder_.setMessage(builderForValue.build()); } - constraintCase_ = 5; + constraintCase_ = 6; return this; } /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> */ public Builder mergeSlaCapacity(context.ContextOuterClass.Constraint_SLA_Capacity value) { if (slaCapacityBuilder_ == null) { - if (constraintCase_ == 5 && + if (constraintCase_ == 6 && constraint_ != context.ContextOuterClass.Constraint_SLA_Capacity.getDefaultInstance()) { constraint_ = context.ContextOuterClass.Constraint_SLA_Capacity.newBuilder((context.ContextOuterClass.Constraint_SLA_Capacity) constraint_) .mergeFrom(value).buildPartial(); @@ -59729,26 +71381,26 @@ public final class ContextOuterClass { } onChanged(); } else { - if (constraintCase_ == 5) { + if (constraintCase_ == 6) { slaCapacityBuilder_.mergeFrom(value); } slaCapacityBuilder_.setMessage(value); } - constraintCase_ = 5; + constraintCase_ = 6; return this; } /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> */ public Builder clearSlaCapacity() { if (slaCapacityBuilder_ == null) { - if (constraintCase_ == 5) { + if (constraintCase_ == 6) { constraintCase_ = 0; constraint_ = null; onChanged(); } } else { - if (constraintCase_ == 5) { + if (constraintCase_ == 6) { constraintCase_ = 0; constraint_ = null; } @@ -59757,33 +71409,33 @@ public final class ContextOuterClass { return this; } /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> */ public context.ContextOuterClass.Constraint_SLA_Capacity.Builder getSlaCapacityBuilder() { return getSlaCapacityFieldBuilder().getBuilder(); } /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_CapacityOrBuilder getSlaCapacityOrBuilder() { - if ((constraintCase_ == 5) && (slaCapacityBuilder_ != null)) { + if ((constraintCase_ == 6) && (slaCapacityBuilder_ != null)) { return slaCapacityBuilder_.getMessageOrBuilder(); } else { - if (constraintCase_ == 5) { + if (constraintCase_ == 6) { return (context.ContextOuterClass.Constraint_SLA_Capacity) constraint_; } return context.ContextOuterClass.Constraint_SLA_Capacity.getDefaultInstance(); } } /** - * <code>.context.Constraint_SLA_Capacity sla_capacity = 5;</code> + * <code>.context.Constraint_SLA_Capacity sla_capacity = 6;</code> */ private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_SLA_Capacity, context.ContextOuterClass.Constraint_SLA_Capacity.Builder, context.ContextOuterClass.Constraint_SLA_CapacityOrBuilder> getSlaCapacityFieldBuilder() { if (slaCapacityBuilder_ == null) { - if (!(constraintCase_ == 5)) { + if (!(constraintCase_ == 6)) { constraint_ = context.ContextOuterClass.Constraint_SLA_Capacity.getDefaultInstance(); } slaCapacityBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< @@ -59793,7 +71445,7 @@ public final class ContextOuterClass { isClean()); constraint_ = null; } - constraintCase_ = 5; + constraintCase_ = 6; onChanged();; return slaCapacityBuilder_; } @@ -59801,33 +71453,33 @@ public final class ContextOuterClass { private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_SLA_Latency, context.ContextOuterClass.Constraint_SLA_Latency.Builder, context.ContextOuterClass.Constraint_SLA_LatencyOrBuilder> slaLatencyBuilder_; /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> * @return Whether the slaLatency field is set. */ @java.lang.Override public boolean hasSlaLatency() { - return constraintCase_ == 6; + return constraintCase_ == 7; } /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> * @return The slaLatency. */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_Latency getSlaLatency() { if (slaLatencyBuilder_ == null) { - if (constraintCase_ == 6) { + if (constraintCase_ == 7) { return (context.ContextOuterClass.Constraint_SLA_Latency) constraint_; } return context.ContextOuterClass.Constraint_SLA_Latency.getDefaultInstance(); } else { - if (constraintCase_ == 6) { + if (constraintCase_ == 7) { return slaLatencyBuilder_.getMessage(); } return context.ContextOuterClass.Constraint_SLA_Latency.getDefaultInstance(); } } /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> */ public Builder setSlaLatency(context.ContextOuterClass.Constraint_SLA_Latency value) { if (slaLatencyBuilder_ == null) { @@ -59839,11 +71491,11 @@ public final class ContextOuterClass { } else { slaLatencyBuilder_.setMessage(value); } - constraintCase_ = 6; + constraintCase_ = 7; return this; } /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> */ public Builder setSlaLatency( context.ContextOuterClass.Constraint_SLA_Latency.Builder builderForValue) { @@ -59853,15 +71505,15 @@ public final class ContextOuterClass { } else { slaLatencyBuilder_.setMessage(builderForValue.build()); } - constraintCase_ = 6; + constraintCase_ = 7; return this; } /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> */ public Builder mergeSlaLatency(context.ContextOuterClass.Constraint_SLA_Latency value) { if (slaLatencyBuilder_ == null) { - if (constraintCase_ == 6 && + if (constraintCase_ == 7 && constraint_ != context.ContextOuterClass.Constraint_SLA_Latency.getDefaultInstance()) { constraint_ = context.ContextOuterClass.Constraint_SLA_Latency.newBuilder((context.ContextOuterClass.Constraint_SLA_Latency) constraint_) .mergeFrom(value).buildPartial(); @@ -59870,26 +71522,26 @@ public final class ContextOuterClass { } onChanged(); } else { - if (constraintCase_ == 6) { + if (constraintCase_ == 7) { slaLatencyBuilder_.mergeFrom(value); } slaLatencyBuilder_.setMessage(value); } - constraintCase_ = 6; + constraintCase_ = 7; return this; } /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> */ public Builder clearSlaLatency() { if (slaLatencyBuilder_ == null) { - if (constraintCase_ == 6) { + if (constraintCase_ == 7) { constraintCase_ = 0; constraint_ = null; onChanged(); } } else { - if (constraintCase_ == 6) { + if (constraintCase_ == 7) { constraintCase_ = 0; constraint_ = null; } @@ -59898,33 +71550,33 @@ public final class ContextOuterClass { return this; } /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> */ public context.ContextOuterClass.Constraint_SLA_Latency.Builder getSlaLatencyBuilder() { return getSlaLatencyFieldBuilder().getBuilder(); } /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_LatencyOrBuilder getSlaLatencyOrBuilder() { - if ((constraintCase_ == 6) && (slaLatencyBuilder_ != null)) { + if ((constraintCase_ == 7) && (slaLatencyBuilder_ != null)) { return slaLatencyBuilder_.getMessageOrBuilder(); } else { - if (constraintCase_ == 6) { + if (constraintCase_ == 7) { return (context.ContextOuterClass.Constraint_SLA_Latency) constraint_; } return context.ContextOuterClass.Constraint_SLA_Latency.getDefaultInstance(); } } /** - * <code>.context.Constraint_SLA_Latency sla_latency = 6;</code> + * <code>.context.Constraint_SLA_Latency sla_latency = 7;</code> */ private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_SLA_Latency, context.ContextOuterClass.Constraint_SLA_Latency.Builder, context.ContextOuterClass.Constraint_SLA_LatencyOrBuilder> getSlaLatencyFieldBuilder() { if (slaLatencyBuilder_ == null) { - if (!(constraintCase_ == 6)) { + if (!(constraintCase_ == 7)) { constraint_ = context.ContextOuterClass.Constraint_SLA_Latency.getDefaultInstance(); } slaLatencyBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< @@ -59934,7 +71586,7 @@ public final class ContextOuterClass { isClean()); constraint_ = null; } - constraintCase_ = 6; + constraintCase_ = 7; onChanged();; return slaLatencyBuilder_; } @@ -59942,33 +71594,33 @@ public final class ContextOuterClass { private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_SLA_Availability, context.ContextOuterClass.Constraint_SLA_Availability.Builder, context.ContextOuterClass.Constraint_SLA_AvailabilityOrBuilder> slaAvailabilityBuilder_; /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> * @return Whether the slaAvailability field is set. */ @java.lang.Override public boolean hasSlaAvailability() { - return constraintCase_ == 7; + return constraintCase_ == 8; } /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> * @return The slaAvailability. */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_Availability getSlaAvailability() { if (slaAvailabilityBuilder_ == null) { - if (constraintCase_ == 7) { + if (constraintCase_ == 8) { return (context.ContextOuterClass.Constraint_SLA_Availability) constraint_; } return context.ContextOuterClass.Constraint_SLA_Availability.getDefaultInstance(); } else { - if (constraintCase_ == 7) { + if (constraintCase_ == 8) { return slaAvailabilityBuilder_.getMessage(); } return context.ContextOuterClass.Constraint_SLA_Availability.getDefaultInstance(); } } /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> */ public Builder setSlaAvailability(context.ContextOuterClass.Constraint_SLA_Availability value) { if (slaAvailabilityBuilder_ == null) { @@ -59980,11 +71632,11 @@ public final class ContextOuterClass { } else { slaAvailabilityBuilder_.setMessage(value); } - constraintCase_ = 7; + constraintCase_ = 8; return this; } /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> */ public Builder setSlaAvailability( context.ContextOuterClass.Constraint_SLA_Availability.Builder builderForValue) { @@ -59994,15 +71646,15 @@ public final class ContextOuterClass { } else { slaAvailabilityBuilder_.setMessage(builderForValue.build()); } - constraintCase_ = 7; + constraintCase_ = 8; return this; } /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> */ public Builder mergeSlaAvailability(context.ContextOuterClass.Constraint_SLA_Availability value) { if (slaAvailabilityBuilder_ == null) { - if (constraintCase_ == 7 && + if (constraintCase_ == 8 && constraint_ != context.ContextOuterClass.Constraint_SLA_Availability.getDefaultInstance()) { constraint_ = context.ContextOuterClass.Constraint_SLA_Availability.newBuilder((context.ContextOuterClass.Constraint_SLA_Availability) constraint_) .mergeFrom(value).buildPartial(); @@ -60011,26 +71663,26 @@ public final class ContextOuterClass { } onChanged(); } else { - if (constraintCase_ == 7) { + if (constraintCase_ == 8) { slaAvailabilityBuilder_.mergeFrom(value); } slaAvailabilityBuilder_.setMessage(value); } - constraintCase_ = 7; + constraintCase_ = 8; return this; } /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> */ public Builder clearSlaAvailability() { if (slaAvailabilityBuilder_ == null) { - if (constraintCase_ == 7) { + if (constraintCase_ == 8) { constraintCase_ = 0; constraint_ = null; onChanged(); } } else { - if (constraintCase_ == 7) { + if (constraintCase_ == 8) { constraintCase_ = 0; constraint_ = null; } @@ -60039,33 +71691,33 @@ public final class ContextOuterClass { return this; } /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> */ public context.ContextOuterClass.Constraint_SLA_Availability.Builder getSlaAvailabilityBuilder() { return getSlaAvailabilityFieldBuilder().getBuilder(); } /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_AvailabilityOrBuilder getSlaAvailabilityOrBuilder() { - if ((constraintCase_ == 7) && (slaAvailabilityBuilder_ != null)) { + if ((constraintCase_ == 8) && (slaAvailabilityBuilder_ != null)) { return slaAvailabilityBuilder_.getMessageOrBuilder(); } else { - if (constraintCase_ == 7) { + if (constraintCase_ == 8) { return (context.ContextOuterClass.Constraint_SLA_Availability) constraint_; } return context.ContextOuterClass.Constraint_SLA_Availability.getDefaultInstance(); } } /** - * <code>.context.Constraint_SLA_Availability sla_availability = 7;</code> + * <code>.context.Constraint_SLA_Availability sla_availability = 8;</code> */ private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_SLA_Availability, context.ContextOuterClass.Constraint_SLA_Availability.Builder, context.ContextOuterClass.Constraint_SLA_AvailabilityOrBuilder> getSlaAvailabilityFieldBuilder() { if (slaAvailabilityBuilder_ == null) { - if (!(constraintCase_ == 7)) { + if (!(constraintCase_ == 8)) { constraint_ = context.ContextOuterClass.Constraint_SLA_Availability.getDefaultInstance(); } slaAvailabilityBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< @@ -60075,7 +71727,7 @@ public final class ContextOuterClass { isClean()); constraint_ = null; } - constraintCase_ = 7; + constraintCase_ = 8; onChanged();; return slaAvailabilityBuilder_; } @@ -60083,33 +71735,33 @@ public final class ContextOuterClass { private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_SLA_Isolation_level, context.ContextOuterClass.Constraint_SLA_Isolation_level.Builder, context.ContextOuterClass.Constraint_SLA_Isolation_levelOrBuilder> slaIsolationBuilder_; /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> * @return Whether the slaIsolation field is set. */ @java.lang.Override public boolean hasSlaIsolation() { - return constraintCase_ == 8; + return constraintCase_ == 9; } /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> * @return The slaIsolation. */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_Isolation_level getSlaIsolation() { if (slaIsolationBuilder_ == null) { - if (constraintCase_ == 8) { + if (constraintCase_ == 9) { return (context.ContextOuterClass.Constraint_SLA_Isolation_level) constraint_; } return context.ContextOuterClass.Constraint_SLA_Isolation_level.getDefaultInstance(); } else { - if (constraintCase_ == 8) { + if (constraintCase_ == 9) { return slaIsolationBuilder_.getMessage(); } return context.ContextOuterClass.Constraint_SLA_Isolation_level.getDefaultInstance(); } } /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> */ public Builder setSlaIsolation(context.ContextOuterClass.Constraint_SLA_Isolation_level value) { if (slaIsolationBuilder_ == null) { @@ -60121,11 +71773,11 @@ public final class ContextOuterClass { } else { slaIsolationBuilder_.setMessage(value); } - constraintCase_ = 8; + constraintCase_ = 9; return this; } /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> */ public Builder setSlaIsolation( context.ContextOuterClass.Constraint_SLA_Isolation_level.Builder builderForValue) { @@ -60135,15 +71787,15 @@ public final class ContextOuterClass { } else { slaIsolationBuilder_.setMessage(builderForValue.build()); } - constraintCase_ = 8; + constraintCase_ = 9; return this; } /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> */ public Builder mergeSlaIsolation(context.ContextOuterClass.Constraint_SLA_Isolation_level value) { if (slaIsolationBuilder_ == null) { - if (constraintCase_ == 8 && + if (constraintCase_ == 9 && constraint_ != context.ContextOuterClass.Constraint_SLA_Isolation_level.getDefaultInstance()) { constraint_ = context.ContextOuterClass.Constraint_SLA_Isolation_level.newBuilder((context.ContextOuterClass.Constraint_SLA_Isolation_level) constraint_) .mergeFrom(value).buildPartial(); @@ -60152,26 +71804,26 @@ public final class ContextOuterClass { } onChanged(); } else { - if (constraintCase_ == 8) { + if (constraintCase_ == 9) { slaIsolationBuilder_.mergeFrom(value); } slaIsolationBuilder_.setMessage(value); } - constraintCase_ = 8; + constraintCase_ = 9; return this; } /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> */ public Builder clearSlaIsolation() { if (slaIsolationBuilder_ == null) { - if (constraintCase_ == 8) { + if (constraintCase_ == 9) { constraintCase_ = 0; constraint_ = null; onChanged(); } } else { - if (constraintCase_ == 8) { + if (constraintCase_ == 9) { constraintCase_ = 0; constraint_ = null; } @@ -60180,33 +71832,33 @@ public final class ContextOuterClass { return this; } /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> */ public context.ContextOuterClass.Constraint_SLA_Isolation_level.Builder getSlaIsolationBuilder() { return getSlaIsolationFieldBuilder().getBuilder(); } /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> */ @java.lang.Override public context.ContextOuterClass.Constraint_SLA_Isolation_levelOrBuilder getSlaIsolationOrBuilder() { - if ((constraintCase_ == 8) && (slaIsolationBuilder_ != null)) { + if ((constraintCase_ == 9) && (slaIsolationBuilder_ != null)) { return slaIsolationBuilder_.getMessageOrBuilder(); } else { - if (constraintCase_ == 8) { + if (constraintCase_ == 9) { return (context.ContextOuterClass.Constraint_SLA_Isolation_level) constraint_; } return context.ContextOuterClass.Constraint_SLA_Isolation_level.getDefaultInstance(); } } /** - * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 8;</code> + * <code>.context.Constraint_SLA_Isolation_level sla_isolation = 9;</code> */ private com.google.protobuf.SingleFieldBuilderV3< context.ContextOuterClass.Constraint_SLA_Isolation_level, context.ContextOuterClass.Constraint_SLA_Isolation_level.Builder, context.ContextOuterClass.Constraint_SLA_Isolation_levelOrBuilder> getSlaIsolationFieldBuilder() { if (slaIsolationBuilder_ == null) { - if (!(constraintCase_ == 8)) { + if (!(constraintCase_ == 9)) { constraint_ = context.ContextOuterClass.Constraint_SLA_Isolation_level.getDefaultInstance(); } slaIsolationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< @@ -60216,10 +71868,151 @@ public final class ContextOuterClass { isClean()); constraint_ = null; } - constraintCase_ = 8; + constraintCase_ = 9; onChanged();; return slaIsolationBuilder_; } + + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Constraint_Exclusions, context.ContextOuterClass.Constraint_Exclusions.Builder, context.ContextOuterClass.Constraint_ExclusionsOrBuilder> exclusionsBuilder_; + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + * @return Whether the exclusions field is set. + */ + @java.lang.Override + public boolean hasExclusions() { + return constraintCase_ == 10; + } + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + * @return The exclusions. + */ + @java.lang.Override + public context.ContextOuterClass.Constraint_Exclusions getExclusions() { + if (exclusionsBuilder_ == null) { + if (constraintCase_ == 10) { + return (context.ContextOuterClass.Constraint_Exclusions) constraint_; + } + return context.ContextOuterClass.Constraint_Exclusions.getDefaultInstance(); + } else { + if (constraintCase_ == 10) { + return exclusionsBuilder_.getMessage(); + } + return context.ContextOuterClass.Constraint_Exclusions.getDefaultInstance(); + } + } + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + */ + public Builder setExclusions(context.ContextOuterClass.Constraint_Exclusions value) { + if (exclusionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + constraint_ = value; + onChanged(); + } else { + exclusionsBuilder_.setMessage(value); + } + constraintCase_ = 10; + return this; + } + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + */ + public Builder setExclusions( + context.ContextOuterClass.Constraint_Exclusions.Builder builderForValue) { + if (exclusionsBuilder_ == null) { + constraint_ = builderForValue.build(); + onChanged(); + } else { + exclusionsBuilder_.setMessage(builderForValue.build()); + } + constraintCase_ = 10; + return this; + } + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + */ + public Builder mergeExclusions(context.ContextOuterClass.Constraint_Exclusions value) { + if (exclusionsBuilder_ == null) { + if (constraintCase_ == 10 && + constraint_ != context.ContextOuterClass.Constraint_Exclusions.getDefaultInstance()) { + constraint_ = context.ContextOuterClass.Constraint_Exclusions.newBuilder((context.ContextOuterClass.Constraint_Exclusions) constraint_) + .mergeFrom(value).buildPartial(); + } else { + constraint_ = value; + } + onChanged(); + } else { + if (constraintCase_ == 10) { + exclusionsBuilder_.mergeFrom(value); + } + exclusionsBuilder_.setMessage(value); + } + constraintCase_ = 10; + return this; + } + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + */ + public Builder clearExclusions() { + if (exclusionsBuilder_ == null) { + if (constraintCase_ == 10) { + constraintCase_ = 0; + constraint_ = null; + onChanged(); + } + } else { + if (constraintCase_ == 10) { + constraintCase_ = 0; + constraint_ = null; + } + exclusionsBuilder_.clear(); + } + return this; + } + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + */ + public context.ContextOuterClass.Constraint_Exclusions.Builder getExclusionsBuilder() { + return getExclusionsFieldBuilder().getBuilder(); + } + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + */ + @java.lang.Override + public context.ContextOuterClass.Constraint_ExclusionsOrBuilder getExclusionsOrBuilder() { + if ((constraintCase_ == 10) && (exclusionsBuilder_ != null)) { + return exclusionsBuilder_.getMessageOrBuilder(); + } else { + if (constraintCase_ == 10) { + return (context.ContextOuterClass.Constraint_Exclusions) constraint_; + } + return context.ContextOuterClass.Constraint_Exclusions.getDefaultInstance(); + } + } + /** + * <code>.context.Constraint_Exclusions exclusions = 10;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Constraint_Exclusions, context.ContextOuterClass.Constraint_Exclusions.Builder, context.ContextOuterClass.Constraint_ExclusionsOrBuilder> + getExclusionsFieldBuilder() { + if (exclusionsBuilder_ == null) { + if (!(constraintCase_ == 10)) { + constraint_ = context.ContextOuterClass.Constraint_Exclusions.getDefaultInstance(); + } + exclusionsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Constraint_Exclusions, context.ContextOuterClass.Constraint_Exclusions.Builder, context.ContextOuterClass.Constraint_ExclusionsOrBuilder>( + (context.ContextOuterClass.Constraint_Exclusions) constraint_, + getParentForChildren(), + isClean()); + constraint_ = null; + } + constraintCase_ = 10; + onChanged();; + return exclusionsBuilder_; + } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { @@ -61869,6 +73662,11 @@ public final class ContextOuterClass { private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_context_Topology_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_context_TopologyDetails_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_context_TopologyDetails_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_context_TopologyIdList_descriptor; private static final @@ -61894,6 +73692,11 @@ public final class ContextOuterClass { private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_context_Device_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_context_Component_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_context_Component_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_context_DeviceConfig_descriptor; private static final @@ -61909,6 +73712,11 @@ public final class ContextOuterClass { private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_context_DeviceList_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_context_DeviceFilter_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_context_DeviceFilter_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_context_DeviceEvent_descriptor; private static final @@ -61969,6 +73777,11 @@ public final class ContextOuterClass { private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_context_ServiceList_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_context_ServiceFilter_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_context_ServiceFilter_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_context_ServiceEvent_descriptor; private static final @@ -62009,6 +73822,11 @@ public final class ContextOuterClass { private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_context_SliceList_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_context_SliceFilter_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_context_SliceFilter_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_context_SliceEvent_descriptor; private static final @@ -62074,6 +73892,21 @@ public final class ContextOuterClass { private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_context_EndPoint_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_context_EndPointName_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_context_EndPointName_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_context_EndPointIdList_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_context_EndPointIdList_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_context_EndPointNameList_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_context_EndPointNameList_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_context_ConfigRule_Custom_descriptor; private static final @@ -62139,6 +73972,11 @@ public final class ContextOuterClass { private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_context_Constraint_SLA_Isolation_level_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_context_Constraint_Exclusions_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_context_Constraint_Exclusions_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_context_Constraint_descriptor; private static final @@ -62169,267 +74007,317 @@ public final class ContextOuterClass { "(\001\"Z\n\005Event\022%\n\ttimestamp\030\001 \001(\0132\022.context" + ".Timestamp\022*\n\nevent_type\030\002 \001(\0162\026.context" + ".EventTypeEnum\"0\n\tContextId\022#\n\014context_u" + - "uid\030\001 \001(\0132\r.context.Uuid\"\266\001\n\007Context\022&\n\n" + - "context_id\030\001 \001(\0132\022.context.ContextId\022)\n\014" + - "topology_ids\030\002 \003(\0132\023.context.TopologyId\022" + - "\'\n\013service_ids\030\003 \003(\0132\022.context.ServiceId" + - "\022/\n\ncontroller\030\004 \001(\0132\033.context.TeraFlowC" + - "ontroller\"8\n\rContextIdList\022\'\n\013context_id" + - "s\030\001 \003(\0132\022.context.ContextId\"1\n\013ContextLi" + - "st\022\"\n\010contexts\030\001 \003(\0132\020.context.Context\"U" + - "\n\014ContextEvent\022\035\n\005event\030\001 \001(\0132\016.context." + - "Event\022&\n\ncontext_id\030\002 \001(\0132\022.context.Cont" + - "extId\"Z\n\nTopologyId\022&\n\ncontext_id\030\001 \001(\0132" + - "\022.context.ContextId\022$\n\rtopology_uuid\030\002 \001" + - "(\0132\r.context.Uuid\"~\n\010Topology\022(\n\013topolog" + - "y_id\030\001 \001(\0132\023.context.TopologyId\022%\n\ndevic" + - "e_ids\030\002 \003(\0132\021.context.DeviceId\022!\n\010link_i" + - "ds\030\003 \003(\0132\017.context.LinkId\";\n\016TopologyIdL" + - "ist\022)\n\014topology_ids\030\001 \003(\0132\023.context.Topo" + - "logyId\"5\n\014TopologyList\022%\n\ntopologies\030\001 \003" + - "(\0132\021.context.Topology\"X\n\rTopologyEvent\022\035" + - "\n\005event\030\001 \001(\0132\016.context.Event\022(\n\013topolog" + - "y_id\030\002 \001(\0132\023.context.TopologyId\".\n\010Devic" + - "eId\022\"\n\013device_uuid\030\001 \001(\0132\r.context.Uuid\"" + - "\232\002\n\006Device\022$\n\tdevice_id\030\001 \001(\0132\021.context." + - "DeviceId\022\023\n\013device_type\030\002 \001(\t\022,\n\rdevice_" + - "config\030\003 \001(\0132\025.context.DeviceConfig\022G\n\031d" + - "evice_operational_status\030\004 \001(\0162$.context" + - ".DeviceOperationalStatusEnum\0221\n\016device_d" + - "rivers\030\005 \003(\0162\031.context.DeviceDriverEnum\022" + - "+\n\020device_endpoints\030\006 \003(\0132\021.context.EndP" + - "oint\"9\n\014DeviceConfig\022)\n\014config_rules\030\001 \003" + - "(\0132\023.context.ConfigRule\"5\n\014DeviceIdList\022" + - "%\n\ndevice_ids\030\001 \003(\0132\021.context.DeviceId\"." + - "\n\nDeviceList\022 \n\007devices\030\001 \003(\0132\017.context." + - "Device\"\200\001\n\013DeviceEvent\022\035\n\005event\030\001 \001(\0132\016." + + "uid\030\001 \001(\0132\r.context.Uuid\"\351\001\n\007Context\022&\n\n" + + "context_id\030\001 \001(\0132\022.context.ContextId\022\014\n\004" + + "name\030\002 \001(\t\022)\n\014topology_ids\030\003 \003(\0132\023.conte" + + "xt.TopologyId\022\'\n\013service_ids\030\004 \003(\0132\022.con" + + "text.ServiceId\022#\n\tslice_ids\030\005 \003(\0132\020.cont" + + "ext.SliceId\022/\n\ncontroller\030\006 \001(\0132\033.contex" + + "t.TeraFlowController\"8\n\rContextIdList\022\'\n" + + "\013context_ids\030\001 \003(\0132\022.context.ContextId\"1" + + "\n\013ContextList\022\"\n\010contexts\030\001 \003(\0132\020.contex" + + "t.Context\"U\n\014ContextEvent\022\035\n\005event\030\001 \001(\013" + + "2\016.context.Event\022&\n\ncontext_id\030\002 \001(\0132\022.c" + + "ontext.ContextId\"Z\n\nTopologyId\022&\n\ncontex" + + "t_id\030\001 \001(\0132\022.context.ContextId\022$\n\rtopolo" + + "gy_uuid\030\002 \001(\0132\r.context.Uuid\"\214\001\n\010Topolog" + + "y\022(\n\013topology_id\030\001 \001(\0132\023.context.Topolog" + + "yId\022\014\n\004name\030\002 \001(\t\022%\n\ndevice_ids\030\003 \003(\0132\021." + + "context.DeviceId\022!\n\010link_ids\030\004 \003(\0132\017.con" + + "text.LinkId\"\211\001\n\017TopologyDetails\022(\n\013topol" + + "ogy_id\030\001 \001(\0132\023.context.TopologyId\022\014\n\004nam" + + "e\030\002 \001(\t\022 \n\007devices\030\003 \003(\0132\017.context.Devic" + + "e\022\034\n\005links\030\004 \003(\0132\r.context.Link\";\n\016Topol" + + "ogyIdList\022)\n\014topology_ids\030\001 \003(\0132\023.contex" + + "t.TopologyId\"5\n\014TopologyList\022%\n\ntopologi" + + "es\030\001 \003(\0132\021.context.Topology\"X\n\rTopologyE" + + "vent\022\035\n\005event\030\001 \001(\0132\016.context.Event\022(\n\013t" + + "opology_id\030\002 \001(\0132\023.context.TopologyId\".\n" + + "\010DeviceId\022\"\n\013device_uuid\030\001 \001(\0132\r.context" + + ".Uuid\"\371\002\n\006Device\022$\n\tdevice_id\030\001 \001(\0132\021.co" + + "ntext.DeviceId\022\014\n\004name\030\002 \001(\t\022\023\n\013device_t" + + "ype\030\003 \001(\t\022,\n\rdevice_config\030\004 \001(\0132\025.conte" + + "xt.DeviceConfig\022G\n\031device_operational_st" + + "atus\030\005 \001(\0162$.context.DeviceOperationalSt" + + "atusEnum\0221\n\016device_drivers\030\006 \003(\0162\031.conte" + + "xt.DeviceDriverEnum\022+\n\020device_endpoints\030" + + "\007 \003(\0132\021.context.EndPoint\022%\n\tcomponent\030\010 " + + "\003(\0132\022.context.Component\022(\n\rcontroller_id" + + "\030\t \001(\0132\021.context.DeviceId\" \n\tComponent\022\023" + + "\n\013comp_string\030\001 \003(\t\"9\n\014DeviceConfig\022)\n\014c" + + "onfig_rules\030\001 \003(\0132\023.context.ConfigRule\"5" + + "\n\014DeviceIdList\022%\n\ndevice_ids\030\001 \003(\0132\021.con" + + "text.DeviceId\".\n\nDeviceList\022 \n\007devices\030\001" + + " \003(\0132\017.context.Device\"\216\001\n\014DeviceFilter\022)" + + "\n\ndevice_ids\030\001 \001(\0132\025.context.DeviceIdLis" + + "t\022\031\n\021include_endpoints\030\002 \001(\010\022\034\n\024include_" + + "config_rules\030\003 \001(\010\022\032\n\022include_components" + + "\030\004 \001(\010\"\200\001\n\013DeviceEvent\022\035\n\005event\030\001 \001(\0132\016." + "context.Event\022$\n\tdevice_id\030\002 \001(\0132\021.conte" + "xt.DeviceId\022,\n\rdevice_config\030\003 \001(\0132\025.con" + "text.DeviceConfig\"*\n\006LinkId\022 \n\tlink_uuid" + - "\030\001 \001(\0132\r.context.Uuid\"X\n\004Link\022 \n\007link_id" + - "\030\001 \001(\0132\017.context.LinkId\022.\n\021link_endpoint" + - "_ids\030\002 \003(\0132\023.context.EndPointId\"/\n\nLinkI" + - "dList\022!\n\010link_ids\030\001 \003(\0132\017.context.LinkId" + - "\"(\n\010LinkList\022\034\n\005links\030\001 \003(\0132\r.context.Li" + - "nk\"L\n\tLinkEvent\022\035\n\005event\030\001 \001(\0132\016.context" + - ".Event\022 \n\007link_id\030\002 \001(\0132\017.context.LinkId" + - "\"X\n\tServiceId\022&\n\ncontext_id\030\001 \001(\0132\022.cont" + - "ext.ContextId\022#\n\014service_uuid\030\002 \001(\0132\r.co" + - "ntext.Uuid\"\315\002\n\007Service\022&\n\nservice_id\030\001 \001" + - "(\0132\022.context.ServiceId\022.\n\014service_type\030\002" + - " \001(\0162\030.context.ServiceTypeEnum\0221\n\024servic" + - "e_endpoint_ids\030\003 \003(\0132\023.context.EndPointI" + - "d\0220\n\023service_constraints\030\004 \003(\0132\023.context" + - ".Constraint\022.\n\016service_status\030\005 \001(\0132\026.co" + - "ntext.ServiceStatus\022.\n\016service_config\030\006 " + - "\001(\0132\026.context.ServiceConfig\022%\n\ttimestamp" + - "\030\007 \001(\0132\022.context.Timestamp\"C\n\rServiceSta" + - "tus\0222\n\016service_status\030\001 \001(\0162\032.context.Se" + - "rviceStatusEnum\":\n\rServiceConfig\022)\n\014conf" + - "ig_rules\030\001 \003(\0132\023.context.ConfigRule\"8\n\rS" + - "erviceIdList\022\'\n\013service_ids\030\001 \003(\0132\022.cont" + - "ext.ServiceId\"1\n\013ServiceList\022\"\n\010services" + - "\030\001 \003(\0132\020.context.Service\"U\n\014ServiceEvent" + - "\022\035\n\005event\030\001 \001(\0132\016.context.Event\022&\n\nservi" + - "ce_id\030\002 \001(\0132\022.context.ServiceId\"T\n\007Slice" + - "Id\022&\n\ncontext_id\030\001 \001(\0132\022.context.Context" + - "Id\022!\n\nslice_uuid\030\002 \001(\0132\r.context.Uuid\"\222\003" + - "\n\005Slice\022\"\n\010slice_id\030\001 \001(\0132\020.context.Slic" + - "eId\022/\n\022slice_endpoint_ids\030\002 \003(\0132\023.contex" + - "t.EndPointId\022.\n\021slice_constraints\030\003 \003(\0132" + - "\023.context.Constraint\022-\n\021slice_service_id" + - "s\030\004 \003(\0132\022.context.ServiceId\022,\n\022slice_sub" + - "slice_ids\030\005 \003(\0132\020.context.SliceId\022*\n\014sli" + - "ce_status\030\006 \001(\0132\024.context.SliceStatus\022*\n" + - "\014slice_config\030\007 \001(\0132\024.context.SliceConfi" + - "g\022(\n\013slice_owner\030\010 \001(\0132\023.context.SliceOw" + - "ner\022%\n\ttimestamp\030\t \001(\0132\022.context.Timesta" + - "mp\"E\n\nSliceOwner\022!\n\nowner_uuid\030\001 \001(\0132\r.c" + - "ontext.Uuid\022\024\n\014owner_string\030\002 \001(\t\"=\n\013Sli" + - "ceStatus\022.\n\014slice_status\030\001 \001(\0162\030.context" + - ".SliceStatusEnum\"8\n\013SliceConfig\022)\n\014confi" + - "g_rules\030\001 \003(\0132\023.context.ConfigRule\"2\n\013Sl" + - "iceIdList\022#\n\tslice_ids\030\001 \003(\0132\020.context.S" + - "liceId\"+\n\tSliceList\022\036\n\006slices\030\001 \003(\0132\016.co" + - "ntext.Slice\"O\n\nSliceEvent\022\035\n\005event\030\001 \001(\013" + - "2\016.context.Event\022\"\n\010slice_id\030\002 \001(\0132\020.con" + - "text.SliceId\"6\n\014ConnectionId\022&\n\017connecti" + - "on_uuid\030\001 \001(\0132\r.context.Uuid\"2\n\025Connecti" + - "onSettings_L0\022\031\n\021lsp_symbolic_name\030\001 \001(\t" + - "\"\236\001\n\025ConnectionSettings_L2\022\027\n\017src_mac_ad" + - "dress\030\001 \001(\t\022\027\n\017dst_mac_address\030\002 \001(\t\022\022\n\n" + - "ether_type\030\003 \001(\r\022\017\n\007vlan_id\030\004 \001(\r\022\022\n\nmpl" + - "s_label\030\005 \001(\r\022\032\n\022mpls_traffic_class\030\006 \001(" + - "\r\"t\n\025ConnectionSettings_L3\022\026\n\016src_ip_add" + - "ress\030\001 \001(\t\022\026\n\016dst_ip_address\030\002 \001(\t\022\014\n\004ds" + - "cp\030\003 \001(\r\022\020\n\010protocol\030\004 \001(\r\022\013\n\003ttl\030\005 \001(\r\"" + - "[\n\025ConnectionSettings_L4\022\020\n\010src_port\030\001 \001" + - "(\r\022\020\n\010dst_port\030\002 \001(\r\022\021\n\ttcp_flags\030\003 \001(\r\022" + - "\013\n\003ttl\030\004 \001(\r\"\304\001\n\022ConnectionSettings\022*\n\002l" + - "0\030\001 \001(\0132\036.context.ConnectionSettings_L0\022" + - "*\n\002l2\030\002 \001(\0132\036.context.ConnectionSettings" + - "_L2\022*\n\002l3\030\003 \001(\0132\036.context.ConnectionSett" + - "ings_L3\022*\n\002l4\030\004 \001(\0132\036.context.Connection" + - "Settings_L4\"\363\001\n\nConnection\022,\n\rconnection" + - "_id\030\001 \001(\0132\025.context.ConnectionId\022&\n\nserv" + - "ice_id\030\002 \001(\0132\022.context.ServiceId\0223\n\026path" + - "_hops_endpoint_ids\030\003 \003(\0132\023.context.EndPo" + - "intId\022+\n\017sub_service_ids\030\004 \003(\0132\022.context" + - ".ServiceId\022-\n\010settings\030\005 \001(\0132\033.context.C" + - "onnectionSettings\"A\n\020ConnectionIdList\022-\n" + - "\016connection_ids\030\001 \003(\0132\025.context.Connecti" + - "onId\":\n\016ConnectionList\022(\n\013connections\030\001 " + - "\003(\0132\023.context.Connection\"^\n\017ConnectionEv" + - "ent\022\035\n\005event\030\001 \001(\0132\016.context.Event\022,\n\rco" + - "nnection_id\030\002 \001(\0132\025.context.ConnectionId" + - "\"\202\001\n\nEndPointId\022(\n\013topology_id\030\001 \001(\0132\023.c" + - "ontext.TopologyId\022$\n\tdevice_id\030\002 \001(\0132\021.c" + - "ontext.DeviceId\022$\n\rendpoint_uuid\030\003 \001(\0132\r" + - ".context.Uuid\"\264\001\n\010EndPoint\022(\n\013endpoint_i" + - "d\030\001 \001(\0132\023.context.EndPointId\022\025\n\rendpoint" + - "_type\030\002 \001(\t\0229\n\020kpi_sample_types\030\003 \003(\0162\037." + - "kpi_sample_types.KpiSampleType\022,\n\021endpoi" + - "nt_location\030\004 \001(\0132\021.context.Location\"A\n\021" + - "ConfigRule_Custom\022\024\n\014resource_key\030\001 \001(\t\022" + - "\026\n\016resource_value\030\002 \001(\t\"]\n\016ConfigRule_AC" + - "L\022(\n\013endpoint_id\030\001 \001(\0132\023.context.EndPoin" + - "tId\022!\n\010rule_set\030\002 \001(\0132\017.acl.AclRuleSet\"\234" + - "\001\n\nConfigRule\022)\n\006action\030\001 \001(\0162\031.context." + - "ConfigActionEnum\022,\n\006custom\030\002 \001(\0132\032.conte" + - "xt.ConfigRule_CustomH\000\022&\n\003acl\030\003 \001(\0132\027.co" + - "ntext.ConfigRule_ACLH\000B\r\n\013config_rule\"F\n" + - "\021Constraint_Custom\022\027\n\017constraint_type\030\001 " + - "\001(\t\022\030\n\020constraint_value\030\002 \001(\t\"E\n\023Constra" + - "int_Schedule\022\027\n\017start_timestamp\030\001 \001(\002\022\025\n" + - "\rduration_days\030\002 \001(\002\"3\n\014GPS_Position\022\020\n\010" + - "latitude\030\001 \001(\002\022\021\n\tlongitude\030\002 \001(\002\"W\n\010Loc" + - "ation\022\020\n\006region\030\001 \001(\tH\000\022-\n\014gps_position\030" + - "\002 \001(\0132\025.context.GPS_PositionH\000B\n\n\010locati" + - "on\"l\n\033Constraint_EndPointLocation\022(\n\013end" + - "point_id\030\001 \001(\0132\023.context.EndPointId\022#\n\010l" + - "ocation\030\002 \001(\0132\021.context.Location\"Y\n\033Cons" + - "traint_EndPointPriority\022(\n\013endpoint_id\030\001" + - " \001(\0132\023.context.EndPointId\022\020\n\010priority\030\002 " + - "\001(\r\"0\n\026Constraint_SLA_Latency\022\026\n\016e2e_lat" + - "ency_ms\030\001 \001(\002\"0\n\027Constraint_SLA_Capacity" + - "\022\025\n\rcapacity_gbps\030\001 \001(\002\"M\n\033Constraint_SL" + - "A_Availability\022\032\n\022num_disjoint_paths\030\001 \001" + - "(\r\022\022\n\nall_active\030\002 \001(\010\"V\n\036Constraint_SLA" + - "_Isolation_level\0224\n\017isolation_level\030\001 \003(" + - "\0162\033.context.IsolationLevelEnum\"\366\003\n\nConst" + - "raint\022,\n\006custom\030\001 \001(\0132\032.context.Constrai" + - "nt_CustomH\000\0220\n\010schedule\030\002 \001(\0132\034.context." + - "Constraint_ScheduleH\000\022A\n\021endpoint_locati" + - "on\030\003 \001(\0132$.context.Constraint_EndPointLo" + - "cationH\000\022A\n\021endpoint_priority\030\004 \001(\0132$.co" + - "ntext.Constraint_EndPointPriorityH\000\0228\n\014s" + - "la_capacity\030\005 \001(\0132 .context.Constraint_S" + - "LA_CapacityH\000\0226\n\013sla_latency\030\006 \001(\0132\037.con" + - "text.Constraint_SLA_LatencyH\000\022@\n\020sla_ava" + - "ilability\030\007 \001(\0132$.context.Constraint_SLA" + - "_AvailabilityH\000\022@\n\rsla_isolation\030\010 \001(\0132\'" + - ".context.Constraint_SLA_Isolation_levelH" + - "\000B\014\n\nconstraint\"^\n\022TeraFlowController\022&\n" + - "\ncontext_id\030\001 \001(\0132\022.context.ContextId\022\022\n" + - "\nip_address\030\002 \001(\t\022\014\n\004port\030\003 \001(\r\"U\n\024Authe" + - "nticationResult\022&\n\ncontext_id\030\001 \001(\0132\022.co" + - "ntext.ContextId\022\025\n\rauthenticated\030\002 \001(\010*j" + - "\n\rEventTypeEnum\022\027\n\023EVENTTYPE_UNDEFINED\020\000" + - "\022\024\n\020EVENTTYPE_CREATE\020\001\022\024\n\020EVENTTYPE_UPDA" + - "TE\020\002\022\024\n\020EVENTTYPE_REMOVE\020\003*\332\001\n\020DeviceDri" + - "verEnum\022\032\n\026DEVICEDRIVER_UNDEFINED\020\000\022\033\n\027D" + - "EVICEDRIVER_OPENCONFIG\020\001\022\036\n\032DEVICEDRIVER" + - "_TRANSPORT_API\020\002\022\023\n\017DEVICEDRIVER_P4\020\003\022&\n" + - "\"DEVICEDRIVER_IETF_NETWORK_TOPOLOGY\020\004\022\033\n" + - "\027DEVICEDRIVER_ONF_TR_352\020\005\022\023\n\017DEVICEDRIV" + - "ER_XR\020\006*\217\001\n\033DeviceOperationalStatusEnum\022" + - "%\n!DEVICEOPERATIONALSTATUS_UNDEFINED\020\000\022$" + - "\n DEVICEOPERATIONALSTATUS_DISABLED\020\001\022#\n\037" + - "DEVICEOPERATIONALSTATUS_ENABLED\020\002*\201\001\n\017Se" + - "rviceTypeEnum\022\027\n\023SERVICETYPE_UNKNOWN\020\000\022\024" + - "\n\020SERVICETYPE_L3NM\020\001\022\024\n\020SERVICETYPE_L2NM" + - "\020\002\022)\n%SERVICETYPE_TAPI_CONNECTIVITY_SERV" + - "ICE\020\003*\250\001\n\021ServiceStatusEnum\022\033\n\027SERVICEST" + - "ATUS_UNDEFINED\020\000\022\031\n\025SERVICESTATUS_PLANNE" + - "D\020\001\022\030\n\024SERVICESTATUS_ACTIVE\020\002\022!\n\035SERVICE" + - "STATUS_PENDING_REMOVAL\020\003\022\036\n\032SERVICESTATU" + - "S_SLA_VIOLATED\020\004*\251\001\n\017SliceStatusEnum\022\031\n\025" + - "SLICESTATUS_UNDEFINED\020\000\022\027\n\023SLICESTATUS_P" + - "LANNED\020\001\022\024\n\020SLICESTATUS_INIT\020\002\022\026\n\022SLICES" + - "TATUS_ACTIVE\020\003\022\026\n\022SLICESTATUS_DEINIT\020\004\022\034" + - "\n\030SLICESTATUS_SLA_VIOLATED\020\005*]\n\020ConfigAc" + - "tionEnum\022\032\n\026CONFIGACTION_UNDEFINED\020\000\022\024\n\020" + - "CONFIGACTION_SET\020\001\022\027\n\023CONFIGACTION_DELET" + - "E\020\002*\203\002\n\022IsolationLevelEnum\022\020\n\014NO_ISOLATI" + - "ON\020\000\022\026\n\022PHYSICAL_ISOLATION\020\001\022\025\n\021LOGICAL_" + - "ISOLATION\020\002\022\025\n\021PROCESS_ISOLATION\020\003\022\035\n\031PH" + - "YSICAL_MEMORY_ISOLATION\020\004\022\036\n\032PHYSICAL_NE" + - "TWORK_ISOLATION\020\005\022\036\n\032VIRTUAL_RESOURCE_IS" + - "OLATION\020\006\022\037\n\033NETWORK_FUNCTIONS_ISOLATION" + - "\020\007\022\025\n\021SERVICE_ISOLATION\020\0102\331\023\n\016ContextSer" + - "vice\022:\n\016ListContextIds\022\016.context.Empty\032\026" + - ".context.ContextIdList\"\000\0226\n\014ListContexts" + - "\022\016.context.Empty\032\024.context.ContextList\"\000" + - "\0224\n\nGetContext\022\022.context.ContextId\032\020.con" + - "text.Context\"\000\0224\n\nSetContext\022\020.context.C" + - "ontext\032\022.context.ContextId\"\000\0225\n\rRemoveCo" + - "ntext\022\022.context.ContextId\032\016.context.Empt" + - "y\"\000\022=\n\020GetContextEvents\022\016.context.Empty\032" + - "\025.context.ContextEvent\"\0000\001\022@\n\017ListTopolo" + - "gyIds\022\022.context.ContextId\032\027.context.Topo" + - "logyIdList\"\000\022=\n\016ListTopologies\022\022.context" + - ".ContextId\032\025.context.TopologyList\"\000\0227\n\013G" + - "etTopology\022\023.context.TopologyId\032\021.contex" + - "t.Topology\"\000\0227\n\013SetTopology\022\021.context.To" + - "pology\032\023.context.TopologyId\"\000\0227\n\016RemoveT" + - "opology\022\023.context.TopologyId\032\016.context.E" + - "mpty\"\000\022?\n\021GetTopologyEvents\022\016.context.Em" + - "pty\032\026.context.TopologyEvent\"\0000\001\0228\n\rListD" + - "eviceIds\022\016.context.Empty\032\025.context.Devic" + - "eIdList\"\000\0224\n\013ListDevices\022\016.context.Empty" + - "\032\023.context.DeviceList\"\000\0221\n\tGetDevice\022\021.c" + - "ontext.DeviceId\032\017.context.Device\"\000\0221\n\tSe" + - "tDevice\022\017.context.Device\032\021.context.Devic" + - "eId\"\000\0223\n\014RemoveDevice\022\021.context.DeviceId" + - "\032\016.context.Empty\"\000\022;\n\017GetDeviceEvents\022\016." + - "context.Empty\032\024.context.DeviceEvent\"\0000\001\022" + - "4\n\013ListLinkIds\022\016.context.Empty\032\023.context" + - ".LinkIdList\"\000\0220\n\tListLinks\022\016.context.Emp" + - "ty\032\021.context.LinkList\"\000\022+\n\007GetLink\022\017.con" + - "text.LinkId\032\r.context.Link\"\000\022+\n\007SetLink\022" + - "\r.context.Link\032\017.context.LinkId\"\000\022/\n\nRem" + - "oveLink\022\017.context.LinkId\032\016.context.Empty" + - "\"\000\0227\n\rGetLinkEvents\022\016.context.Empty\032\022.co" + - "ntext.LinkEvent\"\0000\001\022>\n\016ListServiceIds\022\022." + - "context.ContextId\032\026.context.ServiceIdLis" + - "t\"\000\022:\n\014ListServices\022\022.context.ContextId\032" + - "\024.context.ServiceList\"\000\0224\n\nGetService\022\022." + - "context.ServiceId\032\020.context.Service\"\000\0224\n" + - "\nSetService\022\020.context.Service\032\022.context." + - "ServiceId\"\000\0226\n\014UnsetService\022\020.context.Se" + - "rvice\032\022.context.ServiceId\"\000\0225\n\rRemoveSer" + - "vice\022\022.context.ServiceId\032\016.context.Empty" + - "\"\000\022=\n\020GetServiceEvents\022\016.context.Empty\032\025" + - ".context.ServiceEvent\"\0000\001\022:\n\014ListSliceId" + - "s\022\022.context.ContextId\032\024.context.SliceIdL" + - "ist\"\000\0226\n\nListSlices\022\022.context.ContextId\032" + - "\022.context.SliceList\"\000\022.\n\010GetSlice\022\020.cont" + - "ext.SliceId\032\016.context.Slice\"\000\022.\n\010SetSlic" + - "e\022\016.context.Slice\032\020.context.SliceId\"\000\0220\n" + - "\nUnsetSlice\022\016.context.Slice\032\020.context.Sl" + - "iceId\"\000\0221\n\013RemoveSlice\022\020.context.SliceId" + - "\032\016.context.Empty\"\000\0229\n\016GetSliceEvents\022\016.c" + - "ontext.Empty\032\023.context.SliceEvent\"\0000\001\022D\n" + - "\021ListConnectionIds\022\022.context.ServiceId\032\031" + - ".context.ConnectionIdList\"\000\022@\n\017ListConne" + - "ctions\022\022.context.ServiceId\032\027.context.Con" + - "nectionList\"\000\022=\n\rGetConnection\022\025.context" + - ".ConnectionId\032\023.context.Connection\"\000\022=\n\r" + - "SetConnection\022\023.context.Connection\032\025.con" + - "text.ConnectionId\"\000\022;\n\020RemoveConnection\022" + - "\025.context.ConnectionId\032\016.context.Empty\"\000" + - "\022C\n\023GetConnectionEvents\022\016.context.Empty\032" + - "\030.context.ConnectionEvent\"\0000\001b\006proto3" + "\030\001 \001(\0132\r.context.Uuid\"f\n\004Link\022 \n\007link_id" + + "\030\001 \001(\0132\017.context.LinkId\022\014\n\004name\030\002 \001(\t\022.\n" + + "\021link_endpoint_ids\030\003 \003(\0132\023.context.EndPo" + + "intId\"/\n\nLinkIdList\022!\n\010link_ids\030\001 \003(\0132\017." + + "context.LinkId\"(\n\010LinkList\022\034\n\005links\030\001 \003(" + + "\0132\r.context.Link\"L\n\tLinkEvent\022\035\n\005event\030\001" + + " \001(\0132\016.context.Event\022 \n\007link_id\030\002 \001(\0132\017." + + "context.LinkId\"X\n\tServiceId\022&\n\ncontext_i" + + "d\030\001 \001(\0132\022.context.ContextId\022#\n\014service_u" + + "uid\030\002 \001(\0132\r.context.Uuid\"\333\002\n\007Service\022&\n\n" + + "service_id\030\001 \001(\0132\022.context.ServiceId\022\014\n\004" + + "name\030\002 \001(\t\022.\n\014service_type\030\003 \001(\0162\030.conte" + + "xt.ServiceTypeEnum\0221\n\024service_endpoint_i" + + "ds\030\004 \003(\0132\023.context.EndPointId\0220\n\023service" + + "_constraints\030\005 \003(\0132\023.context.Constraint\022" + + ".\n\016service_status\030\006 \001(\0132\026.context.Servic" + + "eStatus\022.\n\016service_config\030\007 \001(\0132\026.contex" + + "t.ServiceConfig\022%\n\ttimestamp\030\010 \001(\0132\022.con" + + "text.Timestamp\"C\n\rServiceStatus\0222\n\016servi" + + "ce_status\030\001 \001(\0162\032.context.ServiceStatusE" + + "num\":\n\rServiceConfig\022)\n\014config_rules\030\001 \003" + + "(\0132\023.context.ConfigRule\"8\n\rServiceIdList" + + "\022\'\n\013service_ids\030\001 \003(\0132\022.context.ServiceI" + + "d\"1\n\013ServiceList\022\"\n\010services\030\001 \003(\0132\020.con" + + "text.Service\"\225\001\n\rServiceFilter\022+\n\013servic" + + "e_ids\030\001 \001(\0132\026.context.ServiceIdList\022\034\n\024i" + + "nclude_endpoint_ids\030\002 \001(\010\022\033\n\023include_con" + + "straints\030\003 \001(\010\022\034\n\024include_config_rules\030\004" + + " \001(\010\"U\n\014ServiceEvent\022\035\n\005event\030\001 \001(\0132\016.co" + + "ntext.Event\022&\n\nservice_id\030\002 \001(\0132\022.contex" + + "t.ServiceId\"T\n\007SliceId\022&\n\ncontext_id\030\001 \001" + + "(\0132\022.context.ContextId\022!\n\nslice_uuid\030\002 \001" + + "(\0132\r.context.Uuid\"\240\003\n\005Slice\022\"\n\010slice_id\030" + + "\001 \001(\0132\020.context.SliceId\022\014\n\004name\030\002 \001(\t\022/\n" + + "\022slice_endpoint_ids\030\003 \003(\0132\023.context.EndP" + + "ointId\022.\n\021slice_constraints\030\004 \003(\0132\023.cont" + + "ext.Constraint\022-\n\021slice_service_ids\030\005 \003(" + + "\0132\022.context.ServiceId\022,\n\022slice_subslice_" + + "ids\030\006 \003(\0132\020.context.SliceId\022*\n\014slice_sta" + + "tus\030\007 \001(\0132\024.context.SliceStatus\022*\n\014slice" + + "_config\030\010 \001(\0132\024.context.SliceConfig\022(\n\013s" + + "lice_owner\030\t \001(\0132\023.context.SliceOwner\022%\n" + + "\ttimestamp\030\n \001(\0132\022.context.Timestamp\"E\n\n" + + "SliceOwner\022!\n\nowner_uuid\030\001 \001(\0132\r.context" + + ".Uuid\022\024\n\014owner_string\030\002 \001(\t\"=\n\013SliceStat" + + "us\022.\n\014slice_status\030\001 \001(\0162\030.context.Slice" + + "StatusEnum\"8\n\013SliceConfig\022)\n\014config_rule" + + "s\030\001 \003(\0132\023.context.ConfigRule\"2\n\013SliceIdL" + + "ist\022#\n\tslice_ids\030\001 \003(\0132\020.context.SliceId" + + "\"+\n\tSliceList\022\036\n\006slices\030\001 \003(\0132\016.context." + + "Slice\"\312\001\n\013SliceFilter\022\'\n\tslice_ids\030\001 \001(\013" + + "2\024.context.SliceIdList\022\034\n\024include_endpoi" + + "nt_ids\030\002 \001(\010\022\033\n\023include_constraints\030\003 \001(" + + "\010\022\033\n\023include_service_ids\030\004 \001(\010\022\034\n\024includ" + + "e_subslice_ids\030\005 \001(\010\022\034\n\024include_config_r" + + "ules\030\006 \001(\010\"O\n\nSliceEvent\022\035\n\005event\030\001 \001(\0132" + + "\016.context.Event\022\"\n\010slice_id\030\002 \001(\0132\020.cont" + + "ext.SliceId\"6\n\014ConnectionId\022&\n\017connectio" + + "n_uuid\030\001 \001(\0132\r.context.Uuid\"2\n\025Connectio" + + "nSettings_L0\022\031\n\021lsp_symbolic_name\030\001 \001(\t\"" + + "\236\001\n\025ConnectionSettings_L2\022\027\n\017src_mac_add" + + "ress\030\001 \001(\t\022\027\n\017dst_mac_address\030\002 \001(\t\022\022\n\ne" + + "ther_type\030\003 \001(\r\022\017\n\007vlan_id\030\004 \001(\r\022\022\n\nmpls" + + "_label\030\005 \001(\r\022\032\n\022mpls_traffic_class\030\006 \001(\r" + + "\"t\n\025ConnectionSettings_L3\022\026\n\016src_ip_addr" + + "ess\030\001 \001(\t\022\026\n\016dst_ip_address\030\002 \001(\t\022\014\n\004dsc" + + "p\030\003 \001(\r\022\020\n\010protocol\030\004 \001(\r\022\013\n\003ttl\030\005 \001(\r\"[" + + "\n\025ConnectionSettings_L4\022\020\n\010src_port\030\001 \001(" + + "\r\022\020\n\010dst_port\030\002 \001(\r\022\021\n\ttcp_flags\030\003 \001(\r\022\013" + + "\n\003ttl\030\004 \001(\r\"\304\001\n\022ConnectionSettings\022*\n\002l0" + + "\030\001 \001(\0132\036.context.ConnectionSettings_L0\022*" + + "\n\002l2\030\002 \001(\0132\036.context.ConnectionSettings_" + + "L2\022*\n\002l3\030\003 \001(\0132\036.context.ConnectionSetti" + + "ngs_L3\022*\n\002l4\030\004 \001(\0132\036.context.ConnectionS" + + "ettings_L4\"\363\001\n\nConnection\022,\n\rconnection_" + + "id\030\001 \001(\0132\025.context.ConnectionId\022&\n\nservi" + + "ce_id\030\002 \001(\0132\022.context.ServiceId\0223\n\026path_" + + "hops_endpoint_ids\030\003 \003(\0132\023.context.EndPoi" + + "ntId\022+\n\017sub_service_ids\030\004 \003(\0132\022.context." + + "ServiceId\022-\n\010settings\030\005 \001(\0132\033.context.Co" + + "nnectionSettings\"A\n\020ConnectionIdList\022-\n\016" + + "connection_ids\030\001 \003(\0132\025.context.Connectio" + + "nId\":\n\016ConnectionList\022(\n\013connections\030\001 \003" + + "(\0132\023.context.Connection\"^\n\017ConnectionEve" + + "nt\022\035\n\005event\030\001 \001(\0132\016.context.Event\022,\n\rcon" + + "nection_id\030\002 \001(\0132\025.context.ConnectionId\"" + + "\202\001\n\nEndPointId\022(\n\013topology_id\030\001 \001(\0132\023.co" + + "ntext.TopologyId\022$\n\tdevice_id\030\002 \001(\0132\021.co" + + "ntext.DeviceId\022$\n\rendpoint_uuid\030\003 \001(\0132\r." + + "context.Uuid\"\302\001\n\010EndPoint\022(\n\013endpoint_id" + + "\030\001 \001(\0132\023.context.EndPointId\022\014\n\004name\030\002 \001(" + + "\t\022\025\n\rendpoint_type\030\003 \001(\t\0229\n\020kpi_sample_t" + + "ypes\030\004 \003(\0162\037.kpi_sample_types.KpiSampleT" + + "ype\022,\n\021endpoint_location\030\005 \001(\0132\021.context" + + ".Location\"{\n\014EndPointName\022(\n\013endpoint_id" + + "\030\001 \001(\0132\023.context.EndPointId\022\023\n\013device_na" + + "me\030\002 \001(\t\022\025\n\rendpoint_name\030\003 \001(\t\022\025\n\rendpo" + + "int_type\030\004 \001(\t\";\n\016EndPointIdList\022)\n\014endp" + + "oint_ids\030\001 \003(\0132\023.context.EndPointId\"A\n\020E" + + "ndPointNameList\022-\n\016endpoint_names\030\001 \003(\0132" + + "\025.context.EndPointName\"A\n\021ConfigRule_Cus" + + "tom\022\024\n\014resource_key\030\001 \001(\t\022\026\n\016resource_va" + + "lue\030\002 \001(\t\"]\n\016ConfigRule_ACL\022(\n\013endpoint_" + + "id\030\001 \001(\0132\023.context.EndPointId\022!\n\010rule_se" + + "t\030\002 \001(\0132\017.acl.AclRuleSet\"\234\001\n\nConfigRule\022" + + ")\n\006action\030\001 \001(\0162\031.context.ConfigActionEn" + + "um\022,\n\006custom\030\002 \001(\0132\032.context.ConfigRule_" + + "CustomH\000\022&\n\003acl\030\003 \001(\0132\027.context.ConfigRu" + + "le_ACLH\000B\r\n\013config_rule\"F\n\021Constraint_Cu" + + "stom\022\027\n\017constraint_type\030\001 \001(\t\022\030\n\020constra" + + "int_value\030\002 \001(\t\"E\n\023Constraint_Schedule\022\027" + + "\n\017start_timestamp\030\001 \001(\002\022\025\n\rduration_days" + + "\030\002 \001(\002\"3\n\014GPS_Position\022\020\n\010latitude\030\001 \001(\002" + + "\022\021\n\tlongitude\030\002 \001(\002\"W\n\010Location\022\020\n\006regio" + + "n\030\001 \001(\tH\000\022-\n\014gps_position\030\002 \001(\0132\025.contex" + + "t.GPS_PositionH\000B\n\n\010location\"l\n\033Constrai" + + "nt_EndPointLocation\022(\n\013endpoint_id\030\001 \001(\013" + + "2\023.context.EndPointId\022#\n\010location\030\002 \001(\0132" + + "\021.context.Location\"Y\n\033Constraint_EndPoin" + + "tPriority\022(\n\013endpoint_id\030\001 \001(\0132\023.context" + + ".EndPointId\022\020\n\010priority\030\002 \001(\r\"0\n\026Constra" + + "int_SLA_Latency\022\026\n\016e2e_latency_ms\030\001 \001(\002\"" + + "0\n\027Constraint_SLA_Capacity\022\025\n\rcapacity_g" + + "bps\030\001 \001(\002\"c\n\033Constraint_SLA_Availability" + + "\022\032\n\022num_disjoint_paths\030\001 \001(\r\022\022\n\nall_acti" + + "ve\030\002 \001(\010\022\024\n\014availability\030\003 \001(\002\"V\n\036Constr" + + "aint_SLA_Isolation_level\0224\n\017isolation_le" + + "vel\030\001 \003(\0162\033.context.IsolationLevelEnum\"\242" + + "\001\n\025Constraint_Exclusions\022\024\n\014is_permanent" + + "\030\001 \001(\010\022%\n\ndevice_ids\030\002 \003(\0132\021.context.Dev" + + "iceId\022)\n\014endpoint_ids\030\003 \003(\0132\023.context.En" + + "dPointId\022!\n\010link_ids\030\004 \003(\0132\017.context.Lin" + + "kId\"\333\004\n\nConstraint\022-\n\006action\030\001 \001(\0162\035.con" + + "text.ConstraintActionEnum\022,\n\006custom\030\002 \001(" + + "\0132\032.context.Constraint_CustomH\000\0220\n\010sched" + + "ule\030\003 \001(\0132\034.context.Constraint_ScheduleH" + + "\000\022A\n\021endpoint_location\030\004 \001(\0132$.context.C" + + "onstraint_EndPointLocationH\000\022A\n\021endpoint" + + "_priority\030\005 \001(\0132$.context.Constraint_End" + + "PointPriorityH\000\0228\n\014sla_capacity\030\006 \001(\0132 ." + + "context.Constraint_SLA_CapacityH\000\0226\n\013sla" + + "_latency\030\007 \001(\0132\037.context.Constraint_SLA_" + + "LatencyH\000\022@\n\020sla_availability\030\010 \001(\0132$.co" + + "ntext.Constraint_SLA_AvailabilityH\000\022@\n\rs" + + "la_isolation\030\t \001(\0132\'.context.Constraint_" + + "SLA_Isolation_levelH\000\0224\n\nexclusions\030\n \001(" + + "\0132\036.context.Constraint_ExclusionsH\000B\014\n\nc" + + "onstraint\"^\n\022TeraFlowController\022&\n\nconte" + + "xt_id\030\001 \001(\0132\022.context.ContextId\022\022\n\nip_ad" + + "dress\030\002 \001(\t\022\014\n\004port\030\003 \001(\r\"U\n\024Authenticat" + + "ionResult\022&\n\ncontext_id\030\001 \001(\0132\022.context." + + "ContextId\022\025\n\rauthenticated\030\002 \001(\010*j\n\rEven" + + "tTypeEnum\022\027\n\023EVENTTYPE_UNDEFINED\020\000\022\024\n\020EV" + + "ENTTYPE_CREATE\020\001\022\024\n\020EVENTTYPE_UPDATE\020\002\022\024" + + "\n\020EVENTTYPE_REMOVE\020\003*\231\002\n\020DeviceDriverEnu" + + "m\022\032\n\026DEVICEDRIVER_UNDEFINED\020\000\022\033\n\027DEVICED" + + "RIVER_OPENCONFIG\020\001\022\036\n\032DEVICEDRIVER_TRANS" + + "PORT_API\020\002\022\023\n\017DEVICEDRIVER_P4\020\003\022&\n\"DEVIC" + + "EDRIVER_IETF_NETWORK_TOPOLOGY\020\004\022\033\n\027DEVIC" + + "EDRIVER_ONF_TR_352\020\005\022\023\n\017DEVICEDRIVER_XR\020" + + "\006\022\033\n\027DEVICEDRIVER_IETF_L2VPN\020\007\022 \n\034DEVICE" + + "DRIVER_GNMI_OPENCONFIG\020\010*\217\001\n\033DeviceOpera" + + "tionalStatusEnum\022%\n!DEVICEOPERATIONALSTA" + + "TUS_UNDEFINED\020\000\022$\n DEVICEOPERATIONALSTAT" + + "US_DISABLED\020\001\022#\n\037DEVICEOPERATIONALSTATUS" + + "_ENABLED\020\002*\201\001\n\017ServiceTypeEnum\022\027\n\023SERVIC" + + "ETYPE_UNKNOWN\020\000\022\024\n\020SERVICETYPE_L3NM\020\001\022\024\n" + + "\020SERVICETYPE_L2NM\020\002\022)\n%SERVICETYPE_TAPI_" + + "CONNECTIVITY_SERVICE\020\003*\304\001\n\021ServiceStatus" + + "Enum\022\033\n\027SERVICESTATUS_UNDEFINED\020\000\022\031\n\025SER" + + "VICESTATUS_PLANNED\020\001\022\030\n\024SERVICESTATUS_AC" + + "TIVE\020\002\022\032\n\026SERVICESTATUS_UPDATING\020\003\022!\n\035SE" + + "RVICESTATUS_PENDING_REMOVAL\020\004\022\036\n\032SERVICE" + + "STATUS_SLA_VIOLATED\020\005*\251\001\n\017SliceStatusEnu" + + "m\022\031\n\025SLICESTATUS_UNDEFINED\020\000\022\027\n\023SLICESTA" + + "TUS_PLANNED\020\001\022\024\n\020SLICESTATUS_INIT\020\002\022\026\n\022S" + + "LICESTATUS_ACTIVE\020\003\022\026\n\022SLICESTATUS_DEINI" + + "T\020\004\022\034\n\030SLICESTATUS_SLA_VIOLATED\020\005*]\n\020Con" + + "figActionEnum\022\032\n\026CONFIGACTION_UNDEFINED\020" + + "\000\022\024\n\020CONFIGACTION_SET\020\001\022\027\n\023CONFIGACTION_" + + "DELETE\020\002*m\n\024ConstraintActionEnum\022\036\n\032CONS" + + "TRAINTACTION_UNDEFINED\020\000\022\030\n\024CONSTRAINTAC" + + "TION_SET\020\001\022\033\n\027CONSTRAINTACTION_DELETE\020\002*" + + "\203\002\n\022IsolationLevelEnum\022\020\n\014NO_ISOLATION\020\000" + + "\022\026\n\022PHYSICAL_ISOLATION\020\001\022\025\n\021LOGICAL_ISOL" + + "ATION\020\002\022\025\n\021PROCESS_ISOLATION\020\003\022\035\n\031PHYSIC" + + "AL_MEMORY_ISOLATION\020\004\022\036\n\032PHYSICAL_NETWOR" + + "K_ISOLATION\020\005\022\036\n\032VIRTUAL_RESOURCE_ISOLAT" + + "ION\020\006\022\037\n\033NETWORK_FUNCTIONS_ISOLATION\020\007\022\025" + + "\n\021SERVICE_ISOLATION\020\0102\245\026\n\016ContextService" + + "\022:\n\016ListContextIds\022\016.context.Empty\032\026.con" + + "text.ContextIdList\"\000\0226\n\014ListContexts\022\016.c" + + "ontext.Empty\032\024.context.ContextList\"\000\0224\n\n" + + "GetContext\022\022.context.ContextId\032\020.context" + + ".Context\"\000\0224\n\nSetContext\022\020.context.Conte" + + "xt\032\022.context.ContextId\"\000\0225\n\rRemoveContex" + + "t\022\022.context.ContextId\032\016.context.Empty\"\000\022" + + "=\n\020GetContextEvents\022\016.context.Empty\032\025.co" + + "ntext.ContextEvent\"\0000\001\022@\n\017ListTopologyId" + + "s\022\022.context.ContextId\032\027.context.Topology" + + "IdList\"\000\022=\n\016ListTopologies\022\022.context.Con" + + "textId\032\025.context.TopologyList\"\000\0227\n\013GetTo" + + "pology\022\023.context.TopologyId\032\021.context.To" + + "pology\"\000\022E\n\022GetTopologyDetails\022\023.context" + + ".TopologyId\032\030.context.TopologyDetails\"\000\022" + + "7\n\013SetTopology\022\021.context.Topology\032\023.cont" + + "ext.TopologyId\"\000\0227\n\016RemoveTopology\022\023.con" + + "text.TopologyId\032\016.context.Empty\"\000\022?\n\021Get" + + "TopologyEvents\022\016.context.Empty\032\026.context" + + ".TopologyEvent\"\0000\001\0228\n\rListDeviceIds\022\016.co" + + "ntext.Empty\032\025.context.DeviceIdList\"\000\0224\n\013" + + "ListDevices\022\016.context.Empty\032\023.context.De" + + "viceList\"\000\0221\n\tGetDevice\022\021.context.Device" + + "Id\032\017.context.Device\"\000\0221\n\tSetDevice\022\017.con" + + "text.Device\032\021.context.DeviceId\"\000\0223\n\014Remo" + + "veDevice\022\021.context.DeviceId\032\016.context.Em" + + "pty\"\000\022;\n\017GetDeviceEvents\022\016.context.Empty" + + "\032\024.context.DeviceEvent\"\0000\001\022<\n\014SelectDevi" + + "ce\022\025.context.DeviceFilter\032\023.context.Devi" + + "ceList\"\000\022I\n\021ListEndPointNames\022\027.context." + + "EndPointIdList\032\031.context.EndPointNameLis" + + "t\"\000\0224\n\013ListLinkIds\022\016.context.Empty\032\023.con" + + "text.LinkIdList\"\000\0220\n\tListLinks\022\016.context" + + ".Empty\032\021.context.LinkList\"\000\022+\n\007GetLink\022\017" + + ".context.LinkId\032\r.context.Link\"\000\022+\n\007SetL" + + "ink\022\r.context.Link\032\017.context.LinkId\"\000\022/\n" + + "\nRemoveLink\022\017.context.LinkId\032\016.context.E" + + "mpty\"\000\0227\n\rGetLinkEvents\022\016.context.Empty\032" + + "\022.context.LinkEvent\"\0000\001\022>\n\016ListServiceId" + + "s\022\022.context.ContextId\032\026.context.ServiceI" + + "dList\"\000\022:\n\014ListServices\022\022.context.Contex" + + "tId\032\024.context.ServiceList\"\000\0224\n\nGetServic" + + "e\022\022.context.ServiceId\032\020.context.Service\"" + + "\000\0224\n\nSetService\022\020.context.Service\032\022.cont" + + "ext.ServiceId\"\000\0226\n\014UnsetService\022\020.contex" + + "t.Service\032\022.context.ServiceId\"\000\0225\n\rRemov" + + "eService\022\022.context.ServiceId\032\016.context.E" + + "mpty\"\000\022=\n\020GetServiceEvents\022\016.context.Emp" + + "ty\032\025.context.ServiceEvent\"\0000\001\022?\n\rSelectS" + + "ervice\022\026.context.ServiceFilter\032\024.context" + + ".ServiceList\"\000\022:\n\014ListSliceIds\022\022.context" + + ".ContextId\032\024.context.SliceIdList\"\000\0226\n\nLi" + + "stSlices\022\022.context.ContextId\032\022.context.S" + + "liceList\"\000\022.\n\010GetSlice\022\020.context.SliceId" + + "\032\016.context.Slice\"\000\022.\n\010SetSlice\022\016.context" + + ".Slice\032\020.context.SliceId\"\000\0220\n\nUnsetSlice" + + "\022\016.context.Slice\032\020.context.SliceId\"\000\0221\n\013" + + "RemoveSlice\022\020.context.SliceId\032\016.context." + + "Empty\"\000\0229\n\016GetSliceEvents\022\016.context.Empt" + + "y\032\023.context.SliceEvent\"\0000\001\0229\n\013SelectSlic" + + "e\022\024.context.SliceFilter\032\022.context.SliceL" + + "ist\"\000\022D\n\021ListConnectionIds\022\022.context.Ser" + + "viceId\032\031.context.ConnectionIdList\"\000\022@\n\017L" + + "istConnections\022\022.context.ServiceId\032\027.con" + + "text.ConnectionList\"\000\022=\n\rGetConnection\022\025" + + ".context.ConnectionId\032\023.context.Connecti" + + "on\"\000\022=\n\rSetConnection\022\023.context.Connecti" + + "on\032\025.context.ConnectionId\"\000\022;\n\020RemoveCon" + + "nection\022\025.context.ConnectionId\032\016.context" + + ".Empty\"\000\022C\n\023GetConnectionEvents\022\016.contex" + + "t.Empty\032\030.context.ConnectionEvent\"\0000\001b\006p" + + "roto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, @@ -62472,7 +74360,7 @@ public final class ContextOuterClass { internal_static_context_Context_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Context_descriptor, - new java.lang.String[] { "ContextId", "TopologyIds", "ServiceIds", "Controller", }); + new java.lang.String[] { "ContextId", "Name", "TopologyIds", "ServiceIds", "SliceIds", "Controller", }); internal_static_context_ContextIdList_descriptor = getDescriptor().getMessageTypes().get(6); internal_static_context_ContextIdList_fieldAccessorTable = new @@ -62502,345 +74390,399 @@ public final class ContextOuterClass { internal_static_context_Topology_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Topology_descriptor, - new java.lang.String[] { "TopologyId", "DeviceIds", "LinkIds", }); - internal_static_context_TopologyIdList_descriptor = + new java.lang.String[] { "TopologyId", "Name", "DeviceIds", "LinkIds", }); + internal_static_context_TopologyDetails_descriptor = getDescriptor().getMessageTypes().get(11); + internal_static_context_TopologyDetails_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_context_TopologyDetails_descriptor, + new java.lang.String[] { "TopologyId", "Name", "Devices", "Links", }); + internal_static_context_TopologyIdList_descriptor = + getDescriptor().getMessageTypes().get(12); internal_static_context_TopologyIdList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_TopologyIdList_descriptor, new java.lang.String[] { "TopologyIds", }); internal_static_context_TopologyList_descriptor = - getDescriptor().getMessageTypes().get(12); + getDescriptor().getMessageTypes().get(13); internal_static_context_TopologyList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_TopologyList_descriptor, new java.lang.String[] { "Topologies", }); internal_static_context_TopologyEvent_descriptor = - getDescriptor().getMessageTypes().get(13); + getDescriptor().getMessageTypes().get(14); internal_static_context_TopologyEvent_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_TopologyEvent_descriptor, new java.lang.String[] { "Event", "TopologyId", }); internal_static_context_DeviceId_descriptor = - getDescriptor().getMessageTypes().get(14); + getDescriptor().getMessageTypes().get(15); internal_static_context_DeviceId_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_DeviceId_descriptor, new java.lang.String[] { "DeviceUuid", }); internal_static_context_Device_descriptor = - getDescriptor().getMessageTypes().get(15); + getDescriptor().getMessageTypes().get(16); internal_static_context_Device_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Device_descriptor, - new java.lang.String[] { "DeviceId", "DeviceType", "DeviceConfig", "DeviceOperationalStatus", "DeviceDrivers", "DeviceEndpoints", }); + new java.lang.String[] { "DeviceId", "Name", "DeviceType", "DeviceConfig", "DeviceOperationalStatus", "DeviceDrivers", "DeviceEndpoints", "Component", "ControllerId", }); + internal_static_context_Component_descriptor = + getDescriptor().getMessageTypes().get(17); + internal_static_context_Component_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_context_Component_descriptor, + new java.lang.String[] { "CompString", }); internal_static_context_DeviceConfig_descriptor = - getDescriptor().getMessageTypes().get(16); + getDescriptor().getMessageTypes().get(18); internal_static_context_DeviceConfig_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_DeviceConfig_descriptor, new java.lang.String[] { "ConfigRules", }); internal_static_context_DeviceIdList_descriptor = - getDescriptor().getMessageTypes().get(17); + getDescriptor().getMessageTypes().get(19); internal_static_context_DeviceIdList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_DeviceIdList_descriptor, new java.lang.String[] { "DeviceIds", }); internal_static_context_DeviceList_descriptor = - getDescriptor().getMessageTypes().get(18); + getDescriptor().getMessageTypes().get(20); internal_static_context_DeviceList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_DeviceList_descriptor, new java.lang.String[] { "Devices", }); + internal_static_context_DeviceFilter_descriptor = + getDescriptor().getMessageTypes().get(21); + internal_static_context_DeviceFilter_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_context_DeviceFilter_descriptor, + new java.lang.String[] { "DeviceIds", "IncludeEndpoints", "IncludeConfigRules", "IncludeComponents", }); internal_static_context_DeviceEvent_descriptor = - getDescriptor().getMessageTypes().get(19); + getDescriptor().getMessageTypes().get(22); internal_static_context_DeviceEvent_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_DeviceEvent_descriptor, new java.lang.String[] { "Event", "DeviceId", "DeviceConfig", }); internal_static_context_LinkId_descriptor = - getDescriptor().getMessageTypes().get(20); + getDescriptor().getMessageTypes().get(23); internal_static_context_LinkId_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_LinkId_descriptor, new java.lang.String[] { "LinkUuid", }); internal_static_context_Link_descriptor = - getDescriptor().getMessageTypes().get(21); + getDescriptor().getMessageTypes().get(24); internal_static_context_Link_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Link_descriptor, - new java.lang.String[] { "LinkId", "LinkEndpointIds", }); + new java.lang.String[] { "LinkId", "Name", "LinkEndpointIds", }); internal_static_context_LinkIdList_descriptor = - getDescriptor().getMessageTypes().get(22); + getDescriptor().getMessageTypes().get(25); internal_static_context_LinkIdList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_LinkIdList_descriptor, new java.lang.String[] { "LinkIds", }); internal_static_context_LinkList_descriptor = - getDescriptor().getMessageTypes().get(23); + getDescriptor().getMessageTypes().get(26); internal_static_context_LinkList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_LinkList_descriptor, new java.lang.String[] { "Links", }); internal_static_context_LinkEvent_descriptor = - getDescriptor().getMessageTypes().get(24); + getDescriptor().getMessageTypes().get(27); internal_static_context_LinkEvent_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_LinkEvent_descriptor, new java.lang.String[] { "Event", "LinkId", }); internal_static_context_ServiceId_descriptor = - getDescriptor().getMessageTypes().get(25); + getDescriptor().getMessageTypes().get(28); internal_static_context_ServiceId_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ServiceId_descriptor, new java.lang.String[] { "ContextId", "ServiceUuid", }); internal_static_context_Service_descriptor = - getDescriptor().getMessageTypes().get(26); + getDescriptor().getMessageTypes().get(29); internal_static_context_Service_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Service_descriptor, - new java.lang.String[] { "ServiceId", "ServiceType", "ServiceEndpointIds", "ServiceConstraints", "ServiceStatus", "ServiceConfig", "Timestamp", }); + new java.lang.String[] { "ServiceId", "Name", "ServiceType", "ServiceEndpointIds", "ServiceConstraints", "ServiceStatus", "ServiceConfig", "Timestamp", }); internal_static_context_ServiceStatus_descriptor = - getDescriptor().getMessageTypes().get(27); + getDescriptor().getMessageTypes().get(30); internal_static_context_ServiceStatus_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ServiceStatus_descriptor, new java.lang.String[] { "ServiceStatus", }); internal_static_context_ServiceConfig_descriptor = - getDescriptor().getMessageTypes().get(28); + getDescriptor().getMessageTypes().get(31); internal_static_context_ServiceConfig_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ServiceConfig_descriptor, new java.lang.String[] { "ConfigRules", }); internal_static_context_ServiceIdList_descriptor = - getDescriptor().getMessageTypes().get(29); + getDescriptor().getMessageTypes().get(32); internal_static_context_ServiceIdList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ServiceIdList_descriptor, new java.lang.String[] { "ServiceIds", }); internal_static_context_ServiceList_descriptor = - getDescriptor().getMessageTypes().get(30); + getDescriptor().getMessageTypes().get(33); internal_static_context_ServiceList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ServiceList_descriptor, new java.lang.String[] { "Services", }); + internal_static_context_ServiceFilter_descriptor = + getDescriptor().getMessageTypes().get(34); + internal_static_context_ServiceFilter_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_context_ServiceFilter_descriptor, + new java.lang.String[] { "ServiceIds", "IncludeEndpointIds", "IncludeConstraints", "IncludeConfigRules", }); internal_static_context_ServiceEvent_descriptor = - getDescriptor().getMessageTypes().get(31); + getDescriptor().getMessageTypes().get(35); internal_static_context_ServiceEvent_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ServiceEvent_descriptor, new java.lang.String[] { "Event", "ServiceId", }); internal_static_context_SliceId_descriptor = - getDescriptor().getMessageTypes().get(32); + getDescriptor().getMessageTypes().get(36); internal_static_context_SliceId_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_SliceId_descriptor, new java.lang.String[] { "ContextId", "SliceUuid", }); internal_static_context_Slice_descriptor = - getDescriptor().getMessageTypes().get(33); + getDescriptor().getMessageTypes().get(37); internal_static_context_Slice_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Slice_descriptor, - new java.lang.String[] { "SliceId", "SliceEndpointIds", "SliceConstraints", "SliceServiceIds", "SliceSubsliceIds", "SliceStatus", "SliceConfig", "SliceOwner", "Timestamp", }); + new java.lang.String[] { "SliceId", "Name", "SliceEndpointIds", "SliceConstraints", "SliceServiceIds", "SliceSubsliceIds", "SliceStatus", "SliceConfig", "SliceOwner", "Timestamp", }); internal_static_context_SliceOwner_descriptor = - getDescriptor().getMessageTypes().get(34); + getDescriptor().getMessageTypes().get(38); internal_static_context_SliceOwner_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_SliceOwner_descriptor, new java.lang.String[] { "OwnerUuid", "OwnerString", }); internal_static_context_SliceStatus_descriptor = - getDescriptor().getMessageTypes().get(35); + getDescriptor().getMessageTypes().get(39); internal_static_context_SliceStatus_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_SliceStatus_descriptor, new java.lang.String[] { "SliceStatus", }); internal_static_context_SliceConfig_descriptor = - getDescriptor().getMessageTypes().get(36); + getDescriptor().getMessageTypes().get(40); internal_static_context_SliceConfig_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_SliceConfig_descriptor, new java.lang.String[] { "ConfigRules", }); internal_static_context_SliceIdList_descriptor = - getDescriptor().getMessageTypes().get(37); + getDescriptor().getMessageTypes().get(41); internal_static_context_SliceIdList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_SliceIdList_descriptor, new java.lang.String[] { "SliceIds", }); internal_static_context_SliceList_descriptor = - getDescriptor().getMessageTypes().get(38); + getDescriptor().getMessageTypes().get(42); internal_static_context_SliceList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_SliceList_descriptor, new java.lang.String[] { "Slices", }); + internal_static_context_SliceFilter_descriptor = + getDescriptor().getMessageTypes().get(43); + internal_static_context_SliceFilter_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_context_SliceFilter_descriptor, + new java.lang.String[] { "SliceIds", "IncludeEndpointIds", "IncludeConstraints", "IncludeServiceIds", "IncludeSubsliceIds", "IncludeConfigRules", }); internal_static_context_SliceEvent_descriptor = - getDescriptor().getMessageTypes().get(39); + getDescriptor().getMessageTypes().get(44); internal_static_context_SliceEvent_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_SliceEvent_descriptor, new java.lang.String[] { "Event", "SliceId", }); internal_static_context_ConnectionId_descriptor = - getDescriptor().getMessageTypes().get(40); + getDescriptor().getMessageTypes().get(45); internal_static_context_ConnectionId_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ConnectionId_descriptor, new java.lang.String[] { "ConnectionUuid", }); internal_static_context_ConnectionSettings_L0_descriptor = - getDescriptor().getMessageTypes().get(41); + getDescriptor().getMessageTypes().get(46); internal_static_context_ConnectionSettings_L0_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ConnectionSettings_L0_descriptor, new java.lang.String[] { "LspSymbolicName", }); internal_static_context_ConnectionSettings_L2_descriptor = - getDescriptor().getMessageTypes().get(42); + getDescriptor().getMessageTypes().get(47); internal_static_context_ConnectionSettings_L2_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ConnectionSettings_L2_descriptor, new java.lang.String[] { "SrcMacAddress", "DstMacAddress", "EtherType", "VlanId", "MplsLabel", "MplsTrafficClass", }); internal_static_context_ConnectionSettings_L3_descriptor = - getDescriptor().getMessageTypes().get(43); + getDescriptor().getMessageTypes().get(48); internal_static_context_ConnectionSettings_L3_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ConnectionSettings_L3_descriptor, new java.lang.String[] { "SrcIpAddress", "DstIpAddress", "Dscp", "Protocol", "Ttl", }); internal_static_context_ConnectionSettings_L4_descriptor = - getDescriptor().getMessageTypes().get(44); + getDescriptor().getMessageTypes().get(49); internal_static_context_ConnectionSettings_L4_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ConnectionSettings_L4_descriptor, new java.lang.String[] { "SrcPort", "DstPort", "TcpFlags", "Ttl", }); internal_static_context_ConnectionSettings_descriptor = - getDescriptor().getMessageTypes().get(45); + getDescriptor().getMessageTypes().get(50); internal_static_context_ConnectionSettings_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ConnectionSettings_descriptor, new java.lang.String[] { "L0", "L2", "L3", "L4", }); internal_static_context_Connection_descriptor = - getDescriptor().getMessageTypes().get(46); + getDescriptor().getMessageTypes().get(51); internal_static_context_Connection_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Connection_descriptor, new java.lang.String[] { "ConnectionId", "ServiceId", "PathHopsEndpointIds", "SubServiceIds", "Settings", }); internal_static_context_ConnectionIdList_descriptor = - getDescriptor().getMessageTypes().get(47); + getDescriptor().getMessageTypes().get(52); internal_static_context_ConnectionIdList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ConnectionIdList_descriptor, new java.lang.String[] { "ConnectionIds", }); internal_static_context_ConnectionList_descriptor = - getDescriptor().getMessageTypes().get(48); + getDescriptor().getMessageTypes().get(53); internal_static_context_ConnectionList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ConnectionList_descriptor, new java.lang.String[] { "Connections", }); internal_static_context_ConnectionEvent_descriptor = - getDescriptor().getMessageTypes().get(49); + getDescriptor().getMessageTypes().get(54); internal_static_context_ConnectionEvent_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ConnectionEvent_descriptor, new java.lang.String[] { "Event", "ConnectionId", }); internal_static_context_EndPointId_descriptor = - getDescriptor().getMessageTypes().get(50); + getDescriptor().getMessageTypes().get(55); internal_static_context_EndPointId_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_EndPointId_descriptor, new java.lang.String[] { "TopologyId", "DeviceId", "EndpointUuid", }); internal_static_context_EndPoint_descriptor = - getDescriptor().getMessageTypes().get(51); + getDescriptor().getMessageTypes().get(56); internal_static_context_EndPoint_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_EndPoint_descriptor, - new java.lang.String[] { "EndpointId", "EndpointType", "KpiSampleTypes", "EndpointLocation", }); + new java.lang.String[] { "EndpointId", "Name", "EndpointType", "KpiSampleTypes", "EndpointLocation", }); + internal_static_context_EndPointName_descriptor = + getDescriptor().getMessageTypes().get(57); + internal_static_context_EndPointName_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_context_EndPointName_descriptor, + new java.lang.String[] { "EndpointId", "DeviceName", "EndpointName", "EndpointType", }); + internal_static_context_EndPointIdList_descriptor = + getDescriptor().getMessageTypes().get(58); + internal_static_context_EndPointIdList_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_context_EndPointIdList_descriptor, + new java.lang.String[] { "EndpointIds", }); + internal_static_context_EndPointNameList_descriptor = + getDescriptor().getMessageTypes().get(59); + internal_static_context_EndPointNameList_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_context_EndPointNameList_descriptor, + new java.lang.String[] { "EndpointNames", }); internal_static_context_ConfigRule_Custom_descriptor = - getDescriptor().getMessageTypes().get(52); + getDescriptor().getMessageTypes().get(60); internal_static_context_ConfigRule_Custom_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ConfigRule_Custom_descriptor, new java.lang.String[] { "ResourceKey", "ResourceValue", }); internal_static_context_ConfigRule_ACL_descriptor = - getDescriptor().getMessageTypes().get(53); + getDescriptor().getMessageTypes().get(61); internal_static_context_ConfigRule_ACL_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ConfigRule_ACL_descriptor, new java.lang.String[] { "EndpointId", "RuleSet", }); internal_static_context_ConfigRule_descriptor = - getDescriptor().getMessageTypes().get(54); + getDescriptor().getMessageTypes().get(62); internal_static_context_ConfigRule_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_ConfigRule_descriptor, new java.lang.String[] { "Action", "Custom", "Acl", "ConfigRule", }); internal_static_context_Constraint_Custom_descriptor = - getDescriptor().getMessageTypes().get(55); + getDescriptor().getMessageTypes().get(63); internal_static_context_Constraint_Custom_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Constraint_Custom_descriptor, new java.lang.String[] { "ConstraintType", "ConstraintValue", }); internal_static_context_Constraint_Schedule_descriptor = - getDescriptor().getMessageTypes().get(56); + getDescriptor().getMessageTypes().get(64); internal_static_context_Constraint_Schedule_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Constraint_Schedule_descriptor, new java.lang.String[] { "StartTimestamp", "DurationDays", }); internal_static_context_GPS_Position_descriptor = - getDescriptor().getMessageTypes().get(57); + getDescriptor().getMessageTypes().get(65); internal_static_context_GPS_Position_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_GPS_Position_descriptor, new java.lang.String[] { "Latitude", "Longitude", }); internal_static_context_Location_descriptor = - getDescriptor().getMessageTypes().get(58); + getDescriptor().getMessageTypes().get(66); internal_static_context_Location_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Location_descriptor, new java.lang.String[] { "Region", "GpsPosition", "Location", }); internal_static_context_Constraint_EndPointLocation_descriptor = - getDescriptor().getMessageTypes().get(59); + getDescriptor().getMessageTypes().get(67); internal_static_context_Constraint_EndPointLocation_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Constraint_EndPointLocation_descriptor, new java.lang.String[] { "EndpointId", "Location", }); internal_static_context_Constraint_EndPointPriority_descriptor = - getDescriptor().getMessageTypes().get(60); + getDescriptor().getMessageTypes().get(68); internal_static_context_Constraint_EndPointPriority_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Constraint_EndPointPriority_descriptor, new java.lang.String[] { "EndpointId", "Priority", }); internal_static_context_Constraint_SLA_Latency_descriptor = - getDescriptor().getMessageTypes().get(61); + getDescriptor().getMessageTypes().get(69); internal_static_context_Constraint_SLA_Latency_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Constraint_SLA_Latency_descriptor, new java.lang.String[] { "E2ELatencyMs", }); internal_static_context_Constraint_SLA_Capacity_descriptor = - getDescriptor().getMessageTypes().get(62); + getDescriptor().getMessageTypes().get(70); internal_static_context_Constraint_SLA_Capacity_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Constraint_SLA_Capacity_descriptor, new java.lang.String[] { "CapacityGbps", }); internal_static_context_Constraint_SLA_Availability_descriptor = - getDescriptor().getMessageTypes().get(63); + getDescriptor().getMessageTypes().get(71); internal_static_context_Constraint_SLA_Availability_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Constraint_SLA_Availability_descriptor, - new java.lang.String[] { "NumDisjointPaths", "AllActive", }); + new java.lang.String[] { "NumDisjointPaths", "AllActive", "Availability", }); internal_static_context_Constraint_SLA_Isolation_level_descriptor = - getDescriptor().getMessageTypes().get(64); + getDescriptor().getMessageTypes().get(72); internal_static_context_Constraint_SLA_Isolation_level_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Constraint_SLA_Isolation_level_descriptor, new java.lang.String[] { "IsolationLevel", }); + internal_static_context_Constraint_Exclusions_descriptor = + getDescriptor().getMessageTypes().get(73); + internal_static_context_Constraint_Exclusions_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_context_Constraint_Exclusions_descriptor, + new java.lang.String[] { "IsPermanent", "DeviceIds", "EndpointIds", "LinkIds", }); internal_static_context_Constraint_descriptor = - getDescriptor().getMessageTypes().get(65); + getDescriptor().getMessageTypes().get(74); internal_static_context_Constraint_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_Constraint_descriptor, - new java.lang.String[] { "Custom", "Schedule", "EndpointLocation", "EndpointPriority", "SlaCapacity", "SlaLatency", "SlaAvailability", "SlaIsolation", "Constraint", }); + new java.lang.String[] { "Action", "Custom", "Schedule", "EndpointLocation", "EndpointPriority", "SlaCapacity", "SlaLatency", "SlaAvailability", "SlaIsolation", "Exclusions", "Constraint", }); internal_static_context_TeraFlowController_descriptor = - getDescriptor().getMessageTypes().get(66); + getDescriptor().getMessageTypes().get(75); internal_static_context_TeraFlowController_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_TeraFlowController_descriptor, new java.lang.String[] { "ContextId", "IpAddress", "Port", }); internal_static_context_AuthenticationResult_descriptor = - getDescriptor().getMessageTypes().get(67); + getDescriptor().getMessageTypes().get(76); internal_static_context_AuthenticationResult_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_context_AuthenticationResult_descriptor, diff --git a/src/policy/target/generated-sources/grpc/context/ContextService.java b/src/policy/target/generated-sources/grpc/context/ContextService.java index 814ea98b65370f8fd3ffd752c77bec04997a5dd6..b356bac75e24f5f412c51de5450d284ea340ce12 100644 --- a/src/policy/target/generated-sources/grpc/context/ContextService.java +++ b/src/policy/target/generated-sources/grpc/context/ContextService.java @@ -24,6 +24,8 @@ public interface ContextService extends MutinyService { io.smallrye.mutiny.Uni<context.ContextOuterClass.Topology> getTopology(context.ContextOuterClass.TopologyId request); + io.smallrye.mutiny.Uni<context.ContextOuterClass.TopologyDetails> getTopologyDetails(context.ContextOuterClass.TopologyId request); + io.smallrye.mutiny.Uni<context.ContextOuterClass.TopologyId> setTopology(context.ContextOuterClass.Topology request); io.smallrye.mutiny.Uni<context.ContextOuterClass.Empty> removeTopology(context.ContextOuterClass.TopologyId request); @@ -38,6 +40,10 @@ public interface ContextService extends MutinyService { io.smallrye.mutiny.Uni<context.ContextOuterClass.Empty> removeDevice(context.ContextOuterClass.DeviceId request); + io.smallrye.mutiny.Uni<context.ContextOuterClass.DeviceList> selectDevice(context.ContextOuterClass.DeviceFilter request); + + io.smallrye.mutiny.Uni<context.ContextOuterClass.EndPointNameList> listEndPointNames(context.ContextOuterClass.EndPointIdList request); + io.smallrye.mutiny.Uni<context.ContextOuterClass.LinkIdList> listLinkIds(context.ContextOuterClass.Empty request); io.smallrye.mutiny.Uni<context.ContextOuterClass.LinkList> listLinks(context.ContextOuterClass.Empty request); @@ -60,6 +66,8 @@ public interface ContextService extends MutinyService { io.smallrye.mutiny.Uni<context.ContextOuterClass.Empty> removeService(context.ContextOuterClass.ServiceId request); + io.smallrye.mutiny.Uni<context.ContextOuterClass.ServiceList> selectService(context.ContextOuterClass.ServiceFilter request); + io.smallrye.mutiny.Uni<context.ContextOuterClass.SliceIdList> listSliceIds(context.ContextOuterClass.ContextId request); io.smallrye.mutiny.Uni<context.ContextOuterClass.SliceList> listSlices(context.ContextOuterClass.ContextId request); @@ -72,6 +80,8 @@ public interface ContextService extends MutinyService { io.smallrye.mutiny.Uni<context.ContextOuterClass.Empty> removeSlice(context.ContextOuterClass.SliceId request); + io.smallrye.mutiny.Uni<context.ContextOuterClass.SliceList> selectSlice(context.ContextOuterClass.SliceFilter request); + io.smallrye.mutiny.Uni<context.ContextOuterClass.ConnectionIdList> listConnectionIds(context.ContextOuterClass.ServiceId request); io.smallrye.mutiny.Uni<context.ContextOuterClass.ConnectionList> listConnections(context.ContextOuterClass.ServiceId request); diff --git a/src/policy/target/generated-sources/grpc/context/ContextServiceBean.java b/src/policy/target/generated-sources/grpc/context/ContextServiceBean.java index 2b0099f106265e34d1f60bb3e0ecdc35f81895ee..45a7959c4425a981fcbdaba6b06c22cd2fe769ac 100644 --- a/src/policy/target/generated-sources/grpc/context/ContextServiceBean.java +++ b/src/policy/target/generated-sources/grpc/context/ContextServiceBean.java @@ -80,6 +80,14 @@ public class ContextServiceBean extends MutinyContextServiceGrpc.ContextServiceI } } @Override + public io.smallrye.mutiny.Uni<context.ContextOuterClass.TopologyDetails> getTopologyDetails(context.ContextOuterClass.TopologyId request) { + try { + return delegate.getTopologyDetails(request); + } catch (UnsupportedOperationException e) { + throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); + } + } + @Override public io.smallrye.mutiny.Uni<context.ContextOuterClass.TopologyId> setTopology(context.ContextOuterClass.Topology request) { try { return delegate.setTopology(request); @@ -136,6 +144,22 @@ public class ContextServiceBean extends MutinyContextServiceGrpc.ContextServiceI } } @Override + public io.smallrye.mutiny.Uni<context.ContextOuterClass.DeviceList> selectDevice(context.ContextOuterClass.DeviceFilter request) { + try { + return delegate.selectDevice(request); + } catch (UnsupportedOperationException e) { + throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); + } + } + @Override + public io.smallrye.mutiny.Uni<context.ContextOuterClass.EndPointNameList> listEndPointNames(context.ContextOuterClass.EndPointIdList request) { + try { + return delegate.listEndPointNames(request); + } catch (UnsupportedOperationException e) { + throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); + } + } + @Override public io.smallrye.mutiny.Uni<context.ContextOuterClass.LinkIdList> listLinkIds(context.ContextOuterClass.Empty request) { try { return delegate.listLinkIds(request); @@ -224,6 +248,14 @@ public class ContextServiceBean extends MutinyContextServiceGrpc.ContextServiceI } } @Override + public io.smallrye.mutiny.Uni<context.ContextOuterClass.ServiceList> selectService(context.ContextOuterClass.ServiceFilter request) { + try { + return delegate.selectService(request); + } catch (UnsupportedOperationException e) { + throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); + } + } + @Override public io.smallrye.mutiny.Uni<context.ContextOuterClass.SliceIdList> listSliceIds(context.ContextOuterClass.ContextId request) { try { return delegate.listSliceIds(request); @@ -272,6 +304,14 @@ public class ContextServiceBean extends MutinyContextServiceGrpc.ContextServiceI } } @Override + public io.smallrye.mutiny.Uni<context.ContextOuterClass.SliceList> selectSlice(context.ContextOuterClass.SliceFilter request) { + try { + return delegate.selectSlice(request); + } catch (UnsupportedOperationException e) { + throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); + } + } + @Override public io.smallrye.mutiny.Uni<context.ContextOuterClass.ConnectionIdList> listConnectionIds(context.ContextOuterClass.ServiceId request) { try { return delegate.listConnectionIds(request); diff --git a/src/policy/target/generated-sources/grpc/context/ContextServiceClient.java b/src/policy/target/generated-sources/grpc/context/ContextServiceClient.java index c518a0b4622522728e0eb22fdbeb80442b10f7ef..0b0e9f83f74d1ce33ba6d609544dabb590024758 100644 --- a/src/policy/target/generated-sources/grpc/context/ContextServiceClient.java +++ b/src/policy/target/generated-sources/grpc/context/ContextServiceClient.java @@ -53,6 +53,10 @@ public class ContextServiceClient implements ContextService, MutinyClient<Mutiny return stub.getTopology(request); } @Override + public io.smallrye.mutiny.Uni<context.ContextOuterClass.TopologyDetails> getTopologyDetails(context.ContextOuterClass.TopologyId request) { + return stub.getTopologyDetails(request); + } + @Override public io.smallrye.mutiny.Uni<context.ContextOuterClass.TopologyId> setTopology(context.ContextOuterClass.Topology request) { return stub.setTopology(request); } @@ -81,6 +85,14 @@ public class ContextServiceClient implements ContextService, MutinyClient<Mutiny return stub.removeDevice(request); } @Override + public io.smallrye.mutiny.Uni<context.ContextOuterClass.DeviceList> selectDevice(context.ContextOuterClass.DeviceFilter request) { + return stub.selectDevice(request); + } + @Override + public io.smallrye.mutiny.Uni<context.ContextOuterClass.EndPointNameList> listEndPointNames(context.ContextOuterClass.EndPointIdList request) { + return stub.listEndPointNames(request); + } + @Override public io.smallrye.mutiny.Uni<context.ContextOuterClass.LinkIdList> listLinkIds(context.ContextOuterClass.Empty request) { return stub.listLinkIds(request); } @@ -125,6 +137,10 @@ public class ContextServiceClient implements ContextService, MutinyClient<Mutiny return stub.removeService(request); } @Override + public io.smallrye.mutiny.Uni<context.ContextOuterClass.ServiceList> selectService(context.ContextOuterClass.ServiceFilter request) { + return stub.selectService(request); + } + @Override public io.smallrye.mutiny.Uni<context.ContextOuterClass.SliceIdList> listSliceIds(context.ContextOuterClass.ContextId request) { return stub.listSliceIds(request); } @@ -149,6 +165,10 @@ public class ContextServiceClient implements ContextService, MutinyClient<Mutiny return stub.removeSlice(request); } @Override + public io.smallrye.mutiny.Uni<context.ContextOuterClass.SliceList> selectSlice(context.ContextOuterClass.SliceFilter request) { + return stub.selectSlice(request); + } + @Override public io.smallrye.mutiny.Uni<context.ContextOuterClass.ConnectionIdList> listConnectionIds(context.ContextOuterClass.ServiceId request) { return stub.listConnectionIds(request); } diff --git a/src/policy/target/generated-sources/grpc/context/ContextServiceGrpc.java b/src/policy/target/generated-sources/grpc/context/ContextServiceGrpc.java index f59378086c84d0776cc25fb7aa9640403b072c0f..27c73f5424bcf2d6739b5884f4946ced1515398c 100644 --- a/src/policy/target/generated-sources/grpc/context/ContextServiceGrpc.java +++ b/src/policy/target/generated-sources/grpc/context/ContextServiceGrpc.java @@ -293,6 +293,37 @@ public final class ContextServiceGrpc { return getGetTopologyMethod; } + private static volatile io.grpc.MethodDescriptor<context.ContextOuterClass.TopologyId, + context.ContextOuterClass.TopologyDetails> getGetTopologyDetailsMethod; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "GetTopologyDetails", + requestType = context.ContextOuterClass.TopologyId.class, + responseType = context.ContextOuterClass.TopologyDetails.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor<context.ContextOuterClass.TopologyId, + context.ContextOuterClass.TopologyDetails> getGetTopologyDetailsMethod() { + io.grpc.MethodDescriptor<context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyDetails> getGetTopologyDetailsMethod; + if ((getGetTopologyDetailsMethod = ContextServiceGrpc.getGetTopologyDetailsMethod) == null) { + synchronized (ContextServiceGrpc.class) { + if ((getGetTopologyDetailsMethod = ContextServiceGrpc.getGetTopologyDetailsMethod) == null) { + ContextServiceGrpc.getGetTopologyDetailsMethod = getGetTopologyDetailsMethod = + io.grpc.MethodDescriptor.<context.ContextOuterClass.TopologyId, context.ContextOuterClass.TopologyDetails>newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "GetTopologyDetails")) + .setSampledToLocalTracing(true) + .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + context.ContextOuterClass.TopologyId.getDefaultInstance())) + .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + context.ContextOuterClass.TopologyDetails.getDefaultInstance())) + .setSchemaDescriptor(new ContextServiceMethodDescriptorSupplier("GetTopologyDetails")) + .build(); + } + } + } + return getGetTopologyDetailsMethod; + } + private static volatile io.grpc.MethodDescriptor<context.ContextOuterClass.Topology, context.ContextOuterClass.TopologyId> getSetTopologyMethod; @@ -572,6 +603,68 @@ public final class ContextServiceGrpc { return getGetDeviceEventsMethod; } + private static volatile io.grpc.MethodDescriptor<context.ContextOuterClass.DeviceFilter, + context.ContextOuterClass.DeviceList> getSelectDeviceMethod; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "SelectDevice", + requestType = context.ContextOuterClass.DeviceFilter.class, + responseType = context.ContextOuterClass.DeviceList.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor<context.ContextOuterClass.DeviceFilter, + context.ContextOuterClass.DeviceList> getSelectDeviceMethod() { + io.grpc.MethodDescriptor<context.ContextOuterClass.DeviceFilter, context.ContextOuterClass.DeviceList> getSelectDeviceMethod; + if ((getSelectDeviceMethod = ContextServiceGrpc.getSelectDeviceMethod) == null) { + synchronized (ContextServiceGrpc.class) { + if ((getSelectDeviceMethod = ContextServiceGrpc.getSelectDeviceMethod) == null) { + ContextServiceGrpc.getSelectDeviceMethod = getSelectDeviceMethod = + io.grpc.MethodDescriptor.<context.ContextOuterClass.DeviceFilter, context.ContextOuterClass.DeviceList>newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "SelectDevice")) + .setSampledToLocalTracing(true) + .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + context.ContextOuterClass.DeviceFilter.getDefaultInstance())) + .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + context.ContextOuterClass.DeviceList.getDefaultInstance())) + .setSchemaDescriptor(new ContextServiceMethodDescriptorSupplier("SelectDevice")) + .build(); + } + } + } + return getSelectDeviceMethod; + } + + private static volatile io.grpc.MethodDescriptor<context.ContextOuterClass.EndPointIdList, + context.ContextOuterClass.EndPointNameList> getListEndPointNamesMethod; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "ListEndPointNames", + requestType = context.ContextOuterClass.EndPointIdList.class, + responseType = context.ContextOuterClass.EndPointNameList.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor<context.ContextOuterClass.EndPointIdList, + context.ContextOuterClass.EndPointNameList> getListEndPointNamesMethod() { + io.grpc.MethodDescriptor<context.ContextOuterClass.EndPointIdList, context.ContextOuterClass.EndPointNameList> getListEndPointNamesMethod; + if ((getListEndPointNamesMethod = ContextServiceGrpc.getListEndPointNamesMethod) == null) { + synchronized (ContextServiceGrpc.class) { + if ((getListEndPointNamesMethod = ContextServiceGrpc.getListEndPointNamesMethod) == null) { + ContextServiceGrpc.getListEndPointNamesMethod = getListEndPointNamesMethod = + io.grpc.MethodDescriptor.<context.ContextOuterClass.EndPointIdList, context.ContextOuterClass.EndPointNameList>newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "ListEndPointNames")) + .setSampledToLocalTracing(true) + .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + context.ContextOuterClass.EndPointIdList.getDefaultInstance())) + .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + context.ContextOuterClass.EndPointNameList.getDefaultInstance())) + .setSchemaDescriptor(new ContextServiceMethodDescriptorSupplier("ListEndPointNames")) + .build(); + } + } + } + return getListEndPointNamesMethod; + } + private static volatile io.grpc.MethodDescriptor<context.ContextOuterClass.Empty, context.ContextOuterClass.LinkIdList> getListLinkIdsMethod; @@ -975,6 +1068,37 @@ public final class ContextServiceGrpc { return getGetServiceEventsMethod; } + private static volatile io.grpc.MethodDescriptor<context.ContextOuterClass.ServiceFilter, + context.ContextOuterClass.ServiceList> getSelectServiceMethod; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "SelectService", + requestType = context.ContextOuterClass.ServiceFilter.class, + responseType = context.ContextOuterClass.ServiceList.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor<context.ContextOuterClass.ServiceFilter, + context.ContextOuterClass.ServiceList> getSelectServiceMethod() { + io.grpc.MethodDescriptor<context.ContextOuterClass.ServiceFilter, context.ContextOuterClass.ServiceList> getSelectServiceMethod; + if ((getSelectServiceMethod = ContextServiceGrpc.getSelectServiceMethod) == null) { + synchronized (ContextServiceGrpc.class) { + if ((getSelectServiceMethod = ContextServiceGrpc.getSelectServiceMethod) == null) { + ContextServiceGrpc.getSelectServiceMethod = getSelectServiceMethod = + io.grpc.MethodDescriptor.<context.ContextOuterClass.ServiceFilter, context.ContextOuterClass.ServiceList>newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "SelectService")) + .setSampledToLocalTracing(true) + .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + context.ContextOuterClass.ServiceFilter.getDefaultInstance())) + .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + context.ContextOuterClass.ServiceList.getDefaultInstance())) + .setSchemaDescriptor(new ContextServiceMethodDescriptorSupplier("SelectService")) + .build(); + } + } + } + return getSelectServiceMethod; + } + private static volatile io.grpc.MethodDescriptor<context.ContextOuterClass.ContextId, context.ContextOuterClass.SliceIdList> getListSliceIdsMethod; @@ -1192,6 +1316,37 @@ public final class ContextServiceGrpc { return getGetSliceEventsMethod; } + private static volatile io.grpc.MethodDescriptor<context.ContextOuterClass.SliceFilter, + context.ContextOuterClass.SliceList> getSelectSliceMethod; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "SelectSlice", + requestType = context.ContextOuterClass.SliceFilter.class, + responseType = context.ContextOuterClass.SliceList.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor<context.ContextOuterClass.SliceFilter, + context.ContextOuterClass.SliceList> getSelectSliceMethod() { + io.grpc.MethodDescriptor<context.ContextOuterClass.SliceFilter, context.ContextOuterClass.SliceList> getSelectSliceMethod; + if ((getSelectSliceMethod = ContextServiceGrpc.getSelectSliceMethod) == null) { + synchronized (ContextServiceGrpc.class) { + if ((getSelectSliceMethod = ContextServiceGrpc.getSelectSliceMethod) == null) { + ContextServiceGrpc.getSelectSliceMethod = getSelectSliceMethod = + io.grpc.MethodDescriptor.<context.ContextOuterClass.SliceFilter, context.ContextOuterClass.SliceList>newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "SelectSlice")) + .setSampledToLocalTracing(true) + .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + context.ContextOuterClass.SliceFilter.getDefaultInstance())) + .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + context.ContextOuterClass.SliceList.getDefaultInstance())) + .setSchemaDescriptor(new ContextServiceMethodDescriptorSupplier("SelectSlice")) + .build(); + } + } + } + return getSelectSliceMethod; + } + private static volatile io.grpc.MethodDescriptor<context.ContextOuterClass.ServiceId, context.ContextOuterClass.ConnectionIdList> getListConnectionIdsMethod; @@ -1489,6 +1644,13 @@ public final class ContextServiceGrpc { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetTopologyMethod(), responseObserver); } + /** + */ + public void getTopologyDetails(context.ContextOuterClass.TopologyId request, + io.grpc.stub.StreamObserver<context.ContextOuterClass.TopologyDetails> responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetTopologyDetailsMethod(), responseObserver); + } + /** */ public void setTopology(context.ContextOuterClass.Topology request, @@ -1552,6 +1714,20 @@ public final class ContextServiceGrpc { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetDeviceEventsMethod(), responseObserver); } + /** + */ + public void selectDevice(context.ContextOuterClass.DeviceFilter request, + io.grpc.stub.StreamObserver<context.ContextOuterClass.DeviceList> responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getSelectDeviceMethod(), responseObserver); + } + + /** + */ + public void listEndPointNames(context.ContextOuterClass.EndPointIdList request, + io.grpc.stub.StreamObserver<context.ContextOuterClass.EndPointNameList> responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getListEndPointNamesMethod(), responseObserver); + } + /** */ public void listLinkIds(context.ContextOuterClass.Empty request, @@ -1643,6 +1819,13 @@ public final class ContextServiceGrpc { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetServiceEventsMethod(), responseObserver); } + /** + */ + public void selectService(context.ContextOuterClass.ServiceFilter request, + io.grpc.stub.StreamObserver<context.ContextOuterClass.ServiceList> responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getSelectServiceMethod(), responseObserver); + } + /** */ public void listSliceIds(context.ContextOuterClass.ContextId request, @@ -1692,6 +1875,13 @@ public final class ContextServiceGrpc { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetSliceEventsMethod(), responseObserver); } + /** + */ + public void selectSlice(context.ContextOuterClass.SliceFilter request, + io.grpc.stub.StreamObserver<context.ContextOuterClass.SliceList> responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getSelectSliceMethod(), responseObserver); + } + /** */ public void listConnectionIds(context.ContextOuterClass.ServiceId request, @@ -1799,6 +1989,13 @@ public final class ContextServiceGrpc { context.ContextOuterClass.TopologyId, context.ContextOuterClass.Topology>( this, METHODID_GET_TOPOLOGY))) + .addMethod( + getGetTopologyDetailsMethod(), + io.grpc.stub.ServerCalls.asyncUnaryCall( + new MethodHandlers< + context.ContextOuterClass.TopologyId, + context.ContextOuterClass.TopologyDetails>( + this, METHODID_GET_TOPOLOGY_DETAILS))) .addMethod( getSetTopologyMethod(), io.grpc.stub.ServerCalls.asyncUnaryCall( @@ -1862,6 +2059,20 @@ public final class ContextServiceGrpc { context.ContextOuterClass.Empty, context.ContextOuterClass.DeviceEvent>( this, METHODID_GET_DEVICE_EVENTS))) + .addMethod( + getSelectDeviceMethod(), + io.grpc.stub.ServerCalls.asyncUnaryCall( + new MethodHandlers< + context.ContextOuterClass.DeviceFilter, + context.ContextOuterClass.DeviceList>( + this, METHODID_SELECT_DEVICE))) + .addMethod( + getListEndPointNamesMethod(), + io.grpc.stub.ServerCalls.asyncUnaryCall( + new MethodHandlers< + context.ContextOuterClass.EndPointIdList, + context.ContextOuterClass.EndPointNameList>( + this, METHODID_LIST_END_POINT_NAMES))) .addMethod( getListLinkIdsMethod(), io.grpc.stub.ServerCalls.asyncUnaryCall( @@ -1953,6 +2164,13 @@ public final class ContextServiceGrpc { context.ContextOuterClass.Empty, context.ContextOuterClass.ServiceEvent>( this, METHODID_GET_SERVICE_EVENTS))) + .addMethod( + getSelectServiceMethod(), + io.grpc.stub.ServerCalls.asyncUnaryCall( + new MethodHandlers< + context.ContextOuterClass.ServiceFilter, + context.ContextOuterClass.ServiceList>( + this, METHODID_SELECT_SERVICE))) .addMethod( getListSliceIdsMethod(), io.grpc.stub.ServerCalls.asyncUnaryCall( @@ -2002,6 +2220,13 @@ public final class ContextServiceGrpc { context.ContextOuterClass.Empty, context.ContextOuterClass.SliceEvent>( this, METHODID_GET_SLICE_EVENTS))) + .addMethod( + getSelectSliceMethod(), + io.grpc.stub.ServerCalls.asyncUnaryCall( + new MethodHandlers< + context.ContextOuterClass.SliceFilter, + context.ContextOuterClass.SliceList>( + this, METHODID_SELECT_SLICE))) .addMethod( getListConnectionIdsMethod(), io.grpc.stub.ServerCalls.asyncUnaryCall( @@ -2134,6 +2359,14 @@ public final class ContextServiceGrpc { getChannel().newCall(getGetTopologyMethod(), getCallOptions()), request, responseObserver); } + /** + */ + public void getTopologyDetails(context.ContextOuterClass.TopologyId request, + io.grpc.stub.StreamObserver<context.ContextOuterClass.TopologyDetails> responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getGetTopologyDetailsMethod(), getCallOptions()), request, responseObserver); + } + /** */ public void setTopology(context.ContextOuterClass.Topology request, @@ -2206,6 +2439,22 @@ public final class ContextServiceGrpc { getChannel().newCall(getGetDeviceEventsMethod(), getCallOptions()), request, responseObserver); } + /** + */ + public void selectDevice(context.ContextOuterClass.DeviceFilter request, + io.grpc.stub.StreamObserver<context.ContextOuterClass.DeviceList> responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getSelectDeviceMethod(), getCallOptions()), request, responseObserver); + } + + /** + */ + public void listEndPointNames(context.ContextOuterClass.EndPointIdList request, + io.grpc.stub.StreamObserver<context.ContextOuterClass.EndPointNameList> responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getListEndPointNamesMethod(), getCallOptions()), request, responseObserver); + } + /** */ public void listLinkIds(context.ContextOuterClass.Empty request, @@ -2310,6 +2559,14 @@ public final class ContextServiceGrpc { getChannel().newCall(getGetServiceEventsMethod(), getCallOptions()), request, responseObserver); } + /** + */ + public void selectService(context.ContextOuterClass.ServiceFilter request, + io.grpc.stub.StreamObserver<context.ContextOuterClass.ServiceList> responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getSelectServiceMethod(), getCallOptions()), request, responseObserver); + } + /** */ public void listSliceIds(context.ContextOuterClass.ContextId request, @@ -2366,6 +2623,14 @@ public final class ContextServiceGrpc { getChannel().newCall(getGetSliceEventsMethod(), getCallOptions()), request, responseObserver); } + /** + */ + public void selectSlice(context.ContextOuterClass.SliceFilter request, + io.grpc.stub.StreamObserver<context.ContextOuterClass.SliceList> responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getSelectSliceMethod(), getCallOptions()), request, responseObserver); + } + /** */ public void listConnectionIds(context.ContextOuterClass.ServiceId request, @@ -2493,6 +2758,13 @@ public final class ContextServiceGrpc { getChannel(), getGetTopologyMethod(), getCallOptions(), request); } + /** + */ + public context.ContextOuterClass.TopologyDetails getTopologyDetails(context.ContextOuterClass.TopologyId request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getGetTopologyDetailsMethod(), getCallOptions(), request); + } + /** */ public context.ContextOuterClass.TopologyId setTopology(context.ContextOuterClass.Topology request) { @@ -2558,6 +2830,20 @@ public final class ContextServiceGrpc { getChannel(), getGetDeviceEventsMethod(), getCallOptions(), request); } + /** + */ + public context.ContextOuterClass.DeviceList selectDevice(context.ContextOuterClass.DeviceFilter request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getSelectDeviceMethod(), getCallOptions(), request); + } + + /** + */ + public context.ContextOuterClass.EndPointNameList listEndPointNames(context.ContextOuterClass.EndPointIdList request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getListEndPointNamesMethod(), getCallOptions(), request); + } + /** */ public context.ContextOuterClass.LinkIdList listLinkIds(context.ContextOuterClass.Empty request) { @@ -2651,6 +2937,13 @@ public final class ContextServiceGrpc { getChannel(), getGetServiceEventsMethod(), getCallOptions(), request); } + /** + */ + public context.ContextOuterClass.ServiceList selectService(context.ContextOuterClass.ServiceFilter request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getSelectServiceMethod(), getCallOptions(), request); + } + /** */ public context.ContextOuterClass.SliceIdList listSliceIds(context.ContextOuterClass.ContextId request) { @@ -2701,6 +2994,13 @@ public final class ContextServiceGrpc { getChannel(), getGetSliceEventsMethod(), getCallOptions(), request); } + /** + */ + public context.ContextOuterClass.SliceList selectSlice(context.ContextOuterClass.SliceFilter request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getSelectSliceMethod(), getCallOptions(), request); + } + /** */ public context.ContextOuterClass.ConnectionIdList listConnectionIds(context.ContextOuterClass.ServiceId request) { @@ -2823,6 +3123,14 @@ public final class ContextServiceGrpc { getChannel().newCall(getGetTopologyMethod(), getCallOptions()), request); } + /** + */ + public com.google.common.util.concurrent.ListenableFuture<context.ContextOuterClass.TopologyDetails> getTopologyDetails( + context.ContextOuterClass.TopologyId request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getGetTopologyDetailsMethod(), getCallOptions()), request); + } + /** */ public com.google.common.util.concurrent.ListenableFuture<context.ContextOuterClass.TopologyId> setTopology( @@ -2879,6 +3187,22 @@ public final class ContextServiceGrpc { getChannel().newCall(getRemoveDeviceMethod(), getCallOptions()), request); } + /** + */ + public com.google.common.util.concurrent.ListenableFuture<context.ContextOuterClass.DeviceList> selectDevice( + context.ContextOuterClass.DeviceFilter request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getSelectDeviceMethod(), getCallOptions()), request); + } + + /** + */ + public com.google.common.util.concurrent.ListenableFuture<context.ContextOuterClass.EndPointNameList> listEndPointNames( + context.ContextOuterClass.EndPointIdList request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getListEndPointNamesMethod(), getCallOptions()), request); + } + /** */ public com.google.common.util.concurrent.ListenableFuture<context.ContextOuterClass.LinkIdList> listLinkIds( @@ -2967,6 +3291,14 @@ public final class ContextServiceGrpc { getChannel().newCall(getRemoveServiceMethod(), getCallOptions()), request); } + /** + */ + public com.google.common.util.concurrent.ListenableFuture<context.ContextOuterClass.ServiceList> selectService( + context.ContextOuterClass.ServiceFilter request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getSelectServiceMethod(), getCallOptions()), request); + } + /** */ public com.google.common.util.concurrent.ListenableFuture<context.ContextOuterClass.SliceIdList> listSliceIds( @@ -3015,6 +3347,14 @@ public final class ContextServiceGrpc { getChannel().newCall(getRemoveSliceMethod(), getCallOptions()), request); } + /** + */ + public com.google.common.util.concurrent.ListenableFuture<context.ContextOuterClass.SliceList> selectSlice( + context.ContextOuterClass.SliceFilter request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getSelectSliceMethod(), getCallOptions()), request); + } + /** */ public com.google.common.util.concurrent.ListenableFuture<context.ContextOuterClass.ConnectionIdList> listConnectionIds( @@ -3065,41 +3405,46 @@ public final class ContextServiceGrpc { private static final int METHODID_LIST_TOPOLOGY_IDS = 6; private static final int METHODID_LIST_TOPOLOGIES = 7; private static final int METHODID_GET_TOPOLOGY = 8; - private static final int METHODID_SET_TOPOLOGY = 9; - private static final int METHODID_REMOVE_TOPOLOGY = 10; - private static final int METHODID_GET_TOPOLOGY_EVENTS = 11; - private static final int METHODID_LIST_DEVICE_IDS = 12; - private static final int METHODID_LIST_DEVICES = 13; - private static final int METHODID_GET_DEVICE = 14; - private static final int METHODID_SET_DEVICE = 15; - private static final int METHODID_REMOVE_DEVICE = 16; - private static final int METHODID_GET_DEVICE_EVENTS = 17; - private static final int METHODID_LIST_LINK_IDS = 18; - private static final int METHODID_LIST_LINKS = 19; - private static final int METHODID_GET_LINK = 20; - private static final int METHODID_SET_LINK = 21; - private static final int METHODID_REMOVE_LINK = 22; - private static final int METHODID_GET_LINK_EVENTS = 23; - private static final int METHODID_LIST_SERVICE_IDS = 24; - private static final int METHODID_LIST_SERVICES = 25; - private static final int METHODID_GET_SERVICE = 26; - private static final int METHODID_SET_SERVICE = 27; - private static final int METHODID_UNSET_SERVICE = 28; - private static final int METHODID_REMOVE_SERVICE = 29; - private static final int METHODID_GET_SERVICE_EVENTS = 30; - private static final int METHODID_LIST_SLICE_IDS = 31; - private static final int METHODID_LIST_SLICES = 32; - private static final int METHODID_GET_SLICE = 33; - private static final int METHODID_SET_SLICE = 34; - private static final int METHODID_UNSET_SLICE = 35; - private static final int METHODID_REMOVE_SLICE = 36; - private static final int METHODID_GET_SLICE_EVENTS = 37; - private static final int METHODID_LIST_CONNECTION_IDS = 38; - private static final int METHODID_LIST_CONNECTIONS = 39; - private static final int METHODID_GET_CONNECTION = 40; - private static final int METHODID_SET_CONNECTION = 41; - private static final int METHODID_REMOVE_CONNECTION = 42; - private static final int METHODID_GET_CONNECTION_EVENTS = 43; + private static final int METHODID_GET_TOPOLOGY_DETAILS = 9; + private static final int METHODID_SET_TOPOLOGY = 10; + private static final int METHODID_REMOVE_TOPOLOGY = 11; + private static final int METHODID_GET_TOPOLOGY_EVENTS = 12; + private static final int METHODID_LIST_DEVICE_IDS = 13; + private static final int METHODID_LIST_DEVICES = 14; + private static final int METHODID_GET_DEVICE = 15; + private static final int METHODID_SET_DEVICE = 16; + private static final int METHODID_REMOVE_DEVICE = 17; + private static final int METHODID_GET_DEVICE_EVENTS = 18; + private static final int METHODID_SELECT_DEVICE = 19; + private static final int METHODID_LIST_END_POINT_NAMES = 20; + private static final int METHODID_LIST_LINK_IDS = 21; + private static final int METHODID_LIST_LINKS = 22; + private static final int METHODID_GET_LINK = 23; + private static final int METHODID_SET_LINK = 24; + private static final int METHODID_REMOVE_LINK = 25; + private static final int METHODID_GET_LINK_EVENTS = 26; + private static final int METHODID_LIST_SERVICE_IDS = 27; + private static final int METHODID_LIST_SERVICES = 28; + private static final int METHODID_GET_SERVICE = 29; + private static final int METHODID_SET_SERVICE = 30; + private static final int METHODID_UNSET_SERVICE = 31; + private static final int METHODID_REMOVE_SERVICE = 32; + private static final int METHODID_GET_SERVICE_EVENTS = 33; + private static final int METHODID_SELECT_SERVICE = 34; + private static final int METHODID_LIST_SLICE_IDS = 35; + private static final int METHODID_LIST_SLICES = 36; + private static final int METHODID_GET_SLICE = 37; + private static final int METHODID_SET_SLICE = 38; + private static final int METHODID_UNSET_SLICE = 39; + private static final int METHODID_REMOVE_SLICE = 40; + private static final int METHODID_GET_SLICE_EVENTS = 41; + private static final int METHODID_SELECT_SLICE = 42; + private static final int METHODID_LIST_CONNECTION_IDS = 43; + private static final int METHODID_LIST_CONNECTIONS = 44; + private static final int METHODID_GET_CONNECTION = 45; + private static final int METHODID_SET_CONNECTION = 46; + private static final int METHODID_REMOVE_CONNECTION = 47; + private static final int METHODID_GET_CONNECTION_EVENTS = 48; private static final class MethodHandlers<Req, Resp> implements io.grpc.stub.ServerCalls.UnaryMethod<Req, Resp>, @@ -3154,6 +3499,10 @@ public final class ContextServiceGrpc { serviceImpl.getTopology((context.ContextOuterClass.TopologyId) request, (io.grpc.stub.StreamObserver<context.ContextOuterClass.Topology>) responseObserver); break; + case METHODID_GET_TOPOLOGY_DETAILS: + serviceImpl.getTopologyDetails((context.ContextOuterClass.TopologyId) request, + (io.grpc.stub.StreamObserver<context.ContextOuterClass.TopologyDetails>) responseObserver); + break; case METHODID_SET_TOPOLOGY: serviceImpl.setTopology((context.ContextOuterClass.Topology) request, (io.grpc.stub.StreamObserver<context.ContextOuterClass.TopologyId>) responseObserver); @@ -3190,6 +3539,14 @@ public final class ContextServiceGrpc { serviceImpl.getDeviceEvents((context.ContextOuterClass.Empty) request, (io.grpc.stub.StreamObserver<context.ContextOuterClass.DeviceEvent>) responseObserver); break; + case METHODID_SELECT_DEVICE: + serviceImpl.selectDevice((context.ContextOuterClass.DeviceFilter) request, + (io.grpc.stub.StreamObserver<context.ContextOuterClass.DeviceList>) responseObserver); + break; + case METHODID_LIST_END_POINT_NAMES: + serviceImpl.listEndPointNames((context.ContextOuterClass.EndPointIdList) request, + (io.grpc.stub.StreamObserver<context.ContextOuterClass.EndPointNameList>) responseObserver); + break; case METHODID_LIST_LINK_IDS: serviceImpl.listLinkIds((context.ContextOuterClass.Empty) request, (io.grpc.stub.StreamObserver<context.ContextOuterClass.LinkIdList>) responseObserver); @@ -3242,6 +3599,10 @@ public final class ContextServiceGrpc { serviceImpl.getServiceEvents((context.ContextOuterClass.Empty) request, (io.grpc.stub.StreamObserver<context.ContextOuterClass.ServiceEvent>) responseObserver); break; + case METHODID_SELECT_SERVICE: + serviceImpl.selectService((context.ContextOuterClass.ServiceFilter) request, + (io.grpc.stub.StreamObserver<context.ContextOuterClass.ServiceList>) responseObserver); + break; case METHODID_LIST_SLICE_IDS: serviceImpl.listSliceIds((context.ContextOuterClass.ContextId) request, (io.grpc.stub.StreamObserver<context.ContextOuterClass.SliceIdList>) responseObserver); @@ -3270,6 +3631,10 @@ public final class ContextServiceGrpc { serviceImpl.getSliceEvents((context.ContextOuterClass.Empty) request, (io.grpc.stub.StreamObserver<context.ContextOuterClass.SliceEvent>) responseObserver); break; + case METHODID_SELECT_SLICE: + serviceImpl.selectSlice((context.ContextOuterClass.SliceFilter) request, + (io.grpc.stub.StreamObserver<context.ContextOuterClass.SliceList>) responseObserver); + break; case METHODID_LIST_CONNECTION_IDS: serviceImpl.listConnectionIds((context.ContextOuterClass.ServiceId) request, (io.grpc.stub.StreamObserver<context.ContextOuterClass.ConnectionIdList>) responseObserver); @@ -3364,6 +3729,7 @@ public final class ContextServiceGrpc { .addMethod(getListTopologyIdsMethod()) .addMethod(getListTopologiesMethod()) .addMethod(getGetTopologyMethod()) + .addMethod(getGetTopologyDetailsMethod()) .addMethod(getSetTopologyMethod()) .addMethod(getRemoveTopologyMethod()) .addMethod(getGetTopologyEventsMethod()) @@ -3373,6 +3739,8 @@ public final class ContextServiceGrpc { .addMethod(getSetDeviceMethod()) .addMethod(getRemoveDeviceMethod()) .addMethod(getGetDeviceEventsMethod()) + .addMethod(getSelectDeviceMethod()) + .addMethod(getListEndPointNamesMethod()) .addMethod(getListLinkIdsMethod()) .addMethod(getListLinksMethod()) .addMethod(getGetLinkMethod()) @@ -3386,6 +3754,7 @@ public final class ContextServiceGrpc { .addMethod(getUnsetServiceMethod()) .addMethod(getRemoveServiceMethod()) .addMethod(getGetServiceEventsMethod()) + .addMethod(getSelectServiceMethod()) .addMethod(getListSliceIdsMethod()) .addMethod(getListSlicesMethod()) .addMethod(getGetSliceMethod()) @@ -3393,6 +3762,7 @@ public final class ContextServiceGrpc { .addMethod(getUnsetSliceMethod()) .addMethod(getRemoveSliceMethod()) .addMethod(getGetSliceEventsMethod()) + .addMethod(getSelectSliceMethod()) .addMethod(getListConnectionIdsMethod()) .addMethod(getListConnectionsMethod()) .addMethod(getGetConnectionMethod()) diff --git a/src/policy/target/generated-sources/grpc/context/MutinyContextServiceGrpc.java b/src/policy/target/generated-sources/grpc/context/MutinyContextServiceGrpc.java index f7d2cb94e339366b54355c7e11b3ee72fa1e415c..45d853aa7771c71679f1b7a67051a478b3f73be8 100644 --- a/src/policy/target/generated-sources/grpc/context/MutinyContextServiceGrpc.java +++ b/src/policy/target/generated-sources/grpc/context/MutinyContextServiceGrpc.java @@ -76,6 +76,11 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M } + public io.smallrye.mutiny.Uni<context.ContextOuterClass.TopologyDetails> getTopologyDetails(context.ContextOuterClass.TopologyId request) { + return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::getTopologyDetails); + } + + public io.smallrye.mutiny.Uni<context.ContextOuterClass.TopologyId> setTopology(context.ContextOuterClass.Topology request) { return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::setTopology); } @@ -111,6 +116,16 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M } + public io.smallrye.mutiny.Uni<context.ContextOuterClass.DeviceList> selectDevice(context.ContextOuterClass.DeviceFilter request) { + return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::selectDevice); + } + + + public io.smallrye.mutiny.Uni<context.ContextOuterClass.EndPointNameList> listEndPointNames(context.ContextOuterClass.EndPointIdList request) { + return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::listEndPointNames); + } + + public io.smallrye.mutiny.Uni<context.ContextOuterClass.LinkIdList> listLinkIds(context.ContextOuterClass.Empty request) { return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::listLinkIds); } @@ -166,6 +181,11 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M } + public io.smallrye.mutiny.Uni<context.ContextOuterClass.ServiceList> selectService(context.ContextOuterClass.ServiceFilter request) { + return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::selectService); + } + + public io.smallrye.mutiny.Uni<context.ContextOuterClass.SliceIdList> listSliceIds(context.ContextOuterClass.ContextId request) { return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::listSliceIds); } @@ -196,6 +216,11 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M } + public io.smallrye.mutiny.Uni<context.ContextOuterClass.SliceList> selectSlice(context.ContextOuterClass.SliceFilter request) { + return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::selectSlice); + } + + public io.smallrye.mutiny.Uni<context.ContextOuterClass.ConnectionIdList> listConnectionIds(context.ContextOuterClass.ServiceId request) { return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::listConnectionIds); } @@ -313,6 +338,11 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M } + public io.smallrye.mutiny.Uni<context.ContextOuterClass.TopologyDetails> getTopologyDetails(context.ContextOuterClass.TopologyId request) { + throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); + } + + public io.smallrye.mutiny.Uni<context.ContextOuterClass.TopologyId> setTopology(context.ContextOuterClass.Topology request) { throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); } @@ -348,6 +378,16 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M } + public io.smallrye.mutiny.Uni<context.ContextOuterClass.DeviceList> selectDevice(context.ContextOuterClass.DeviceFilter request) { + throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); + } + + + public io.smallrye.mutiny.Uni<context.ContextOuterClass.EndPointNameList> listEndPointNames(context.ContextOuterClass.EndPointIdList request) { + throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); + } + + public io.smallrye.mutiny.Uni<context.ContextOuterClass.LinkIdList> listLinkIds(context.ContextOuterClass.Empty request) { throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); } @@ -403,6 +443,11 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M } + public io.smallrye.mutiny.Uni<context.ContextOuterClass.ServiceList> selectService(context.ContextOuterClass.ServiceFilter request) { + throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); + } + + public io.smallrye.mutiny.Uni<context.ContextOuterClass.SliceIdList> listSliceIds(context.ContextOuterClass.ContextId request) { throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); } @@ -433,6 +478,11 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M } + public io.smallrye.mutiny.Uni<context.ContextOuterClass.SliceList> selectSlice(context.ContextOuterClass.SliceFilter request) { + throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); + } + + public io.smallrye.mutiny.Uni<context.ContextOuterClass.ConnectionIdList> listConnectionIds(context.ContextOuterClass.ServiceId request) { throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); } @@ -557,6 +607,13 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M context.ContextOuterClass.TopologyId, context.ContextOuterClass.Topology>( this, METHODID_GET_TOPOLOGY, compression))) + .addMethod( + context.ContextServiceGrpc.getGetTopologyDetailsMethod(), + asyncUnaryCall( + new MethodHandlers< + context.ContextOuterClass.TopologyId, + context.ContextOuterClass.TopologyDetails>( + this, METHODID_GET_TOPOLOGY_DETAILS, compression))) .addMethod( context.ContextServiceGrpc.getSetTopologyMethod(), asyncUnaryCall( @@ -620,6 +677,20 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M context.ContextOuterClass.Empty, context.ContextOuterClass.DeviceEvent>( this, METHODID_GET_DEVICE_EVENTS, compression))) + .addMethod( + context.ContextServiceGrpc.getSelectDeviceMethod(), + asyncUnaryCall( + new MethodHandlers< + context.ContextOuterClass.DeviceFilter, + context.ContextOuterClass.DeviceList>( + this, METHODID_SELECT_DEVICE, compression))) + .addMethod( + context.ContextServiceGrpc.getListEndPointNamesMethod(), + asyncUnaryCall( + new MethodHandlers< + context.ContextOuterClass.EndPointIdList, + context.ContextOuterClass.EndPointNameList>( + this, METHODID_LIST_END_POINT_NAMES, compression))) .addMethod( context.ContextServiceGrpc.getListLinkIdsMethod(), asyncUnaryCall( @@ -711,6 +782,13 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M context.ContextOuterClass.Empty, context.ContextOuterClass.ServiceEvent>( this, METHODID_GET_SERVICE_EVENTS, compression))) + .addMethod( + context.ContextServiceGrpc.getSelectServiceMethod(), + asyncUnaryCall( + new MethodHandlers< + context.ContextOuterClass.ServiceFilter, + context.ContextOuterClass.ServiceList>( + this, METHODID_SELECT_SERVICE, compression))) .addMethod( context.ContextServiceGrpc.getListSliceIdsMethod(), asyncUnaryCall( @@ -760,6 +838,13 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M context.ContextOuterClass.Empty, context.ContextOuterClass.SliceEvent>( this, METHODID_GET_SLICE_EVENTS, compression))) + .addMethod( + context.ContextServiceGrpc.getSelectSliceMethod(), + asyncUnaryCall( + new MethodHandlers< + context.ContextOuterClass.SliceFilter, + context.ContextOuterClass.SliceList>( + this, METHODID_SELECT_SLICE, compression))) .addMethod( context.ContextServiceGrpc.getListConnectionIdsMethod(), asyncUnaryCall( @@ -815,41 +900,46 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M private static final int METHODID_LIST_TOPOLOGY_IDS = 6; private static final int METHODID_LIST_TOPOLOGIES = 7; private static final int METHODID_GET_TOPOLOGY = 8; - private static final int METHODID_SET_TOPOLOGY = 9; - private static final int METHODID_REMOVE_TOPOLOGY = 10; - private static final int METHODID_GET_TOPOLOGY_EVENTS = 11; - private static final int METHODID_LIST_DEVICE_IDS = 12; - private static final int METHODID_LIST_DEVICES = 13; - private static final int METHODID_GET_DEVICE = 14; - private static final int METHODID_SET_DEVICE = 15; - private static final int METHODID_REMOVE_DEVICE = 16; - private static final int METHODID_GET_DEVICE_EVENTS = 17; - private static final int METHODID_LIST_LINK_IDS = 18; - private static final int METHODID_LIST_LINKS = 19; - private static final int METHODID_GET_LINK = 20; - private static final int METHODID_SET_LINK = 21; - private static final int METHODID_REMOVE_LINK = 22; - private static final int METHODID_GET_LINK_EVENTS = 23; - private static final int METHODID_LIST_SERVICE_IDS = 24; - private static final int METHODID_LIST_SERVICES = 25; - private static final int METHODID_GET_SERVICE = 26; - private static final int METHODID_SET_SERVICE = 27; - private static final int METHODID_UNSET_SERVICE = 28; - private static final int METHODID_REMOVE_SERVICE = 29; - private static final int METHODID_GET_SERVICE_EVENTS = 30; - private static final int METHODID_LIST_SLICE_IDS = 31; - private static final int METHODID_LIST_SLICES = 32; - private static final int METHODID_GET_SLICE = 33; - private static final int METHODID_SET_SLICE = 34; - private static final int METHODID_UNSET_SLICE = 35; - private static final int METHODID_REMOVE_SLICE = 36; - private static final int METHODID_GET_SLICE_EVENTS = 37; - private static final int METHODID_LIST_CONNECTION_IDS = 38; - private static final int METHODID_LIST_CONNECTIONS = 39; - private static final int METHODID_GET_CONNECTION = 40; - private static final int METHODID_SET_CONNECTION = 41; - private static final int METHODID_REMOVE_CONNECTION = 42; - private static final int METHODID_GET_CONNECTION_EVENTS = 43; + private static final int METHODID_GET_TOPOLOGY_DETAILS = 9; + private static final int METHODID_SET_TOPOLOGY = 10; + private static final int METHODID_REMOVE_TOPOLOGY = 11; + private static final int METHODID_GET_TOPOLOGY_EVENTS = 12; + private static final int METHODID_LIST_DEVICE_IDS = 13; + private static final int METHODID_LIST_DEVICES = 14; + private static final int METHODID_GET_DEVICE = 15; + private static final int METHODID_SET_DEVICE = 16; + private static final int METHODID_REMOVE_DEVICE = 17; + private static final int METHODID_GET_DEVICE_EVENTS = 18; + private static final int METHODID_SELECT_DEVICE = 19; + private static final int METHODID_LIST_END_POINT_NAMES = 20; + private static final int METHODID_LIST_LINK_IDS = 21; + private static final int METHODID_LIST_LINKS = 22; + private static final int METHODID_GET_LINK = 23; + private static final int METHODID_SET_LINK = 24; + private static final int METHODID_REMOVE_LINK = 25; + private static final int METHODID_GET_LINK_EVENTS = 26; + private static final int METHODID_LIST_SERVICE_IDS = 27; + private static final int METHODID_LIST_SERVICES = 28; + private static final int METHODID_GET_SERVICE = 29; + private static final int METHODID_SET_SERVICE = 30; + private static final int METHODID_UNSET_SERVICE = 31; + private static final int METHODID_REMOVE_SERVICE = 32; + private static final int METHODID_GET_SERVICE_EVENTS = 33; + private static final int METHODID_SELECT_SERVICE = 34; + private static final int METHODID_LIST_SLICE_IDS = 35; + private static final int METHODID_LIST_SLICES = 36; + private static final int METHODID_GET_SLICE = 37; + private static final int METHODID_SET_SLICE = 38; + private static final int METHODID_UNSET_SLICE = 39; + private static final int METHODID_REMOVE_SLICE = 40; + private static final int METHODID_GET_SLICE_EVENTS = 41; + private static final int METHODID_SELECT_SLICE = 42; + private static final int METHODID_LIST_CONNECTION_IDS = 43; + private static final int METHODID_LIST_CONNECTIONS = 44; + private static final int METHODID_GET_CONNECTION = 45; + private static final int METHODID_SET_CONNECTION = 46; + private static final int METHODID_REMOVE_CONNECTION = 47; + private static final int METHODID_GET_CONNECTION_EVENTS = 48; private static final class MethodHandlers<Req, Resp> implements io.grpc.stub.ServerCalls.UnaryMethod<Req, Resp>, @@ -924,6 +1014,12 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M compression, serviceImpl::getTopology); break; + case METHODID_GET_TOPOLOGY_DETAILS: + io.quarkus.grpc.runtime.ServerCalls.oneToOne((context.ContextOuterClass.TopologyId) request, + (io.grpc.stub.StreamObserver<context.ContextOuterClass.TopologyDetails>) responseObserver, + compression, + serviceImpl::getTopologyDetails); + break; case METHODID_SET_TOPOLOGY: io.quarkus.grpc.runtime.ServerCalls.oneToOne((context.ContextOuterClass.Topology) request, (io.grpc.stub.StreamObserver<context.ContextOuterClass.TopologyId>) responseObserver, @@ -978,6 +1074,18 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M compression, serviceImpl::getDeviceEvents); break; + case METHODID_SELECT_DEVICE: + io.quarkus.grpc.runtime.ServerCalls.oneToOne((context.ContextOuterClass.DeviceFilter) request, + (io.grpc.stub.StreamObserver<context.ContextOuterClass.DeviceList>) responseObserver, + compression, + serviceImpl::selectDevice); + break; + case METHODID_LIST_END_POINT_NAMES: + io.quarkus.grpc.runtime.ServerCalls.oneToOne((context.ContextOuterClass.EndPointIdList) request, + (io.grpc.stub.StreamObserver<context.ContextOuterClass.EndPointNameList>) responseObserver, + compression, + serviceImpl::listEndPointNames); + break; case METHODID_LIST_LINK_IDS: io.quarkus.grpc.runtime.ServerCalls.oneToOne((context.ContextOuterClass.Empty) request, (io.grpc.stub.StreamObserver<context.ContextOuterClass.LinkIdList>) responseObserver, @@ -1056,6 +1164,12 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M compression, serviceImpl::getServiceEvents); break; + case METHODID_SELECT_SERVICE: + io.quarkus.grpc.runtime.ServerCalls.oneToOne((context.ContextOuterClass.ServiceFilter) request, + (io.grpc.stub.StreamObserver<context.ContextOuterClass.ServiceList>) responseObserver, + compression, + serviceImpl::selectService); + break; case METHODID_LIST_SLICE_IDS: io.quarkus.grpc.runtime.ServerCalls.oneToOne((context.ContextOuterClass.ContextId) request, (io.grpc.stub.StreamObserver<context.ContextOuterClass.SliceIdList>) responseObserver, @@ -1098,6 +1212,12 @@ public final class MutinyContextServiceGrpc implements io.quarkus.grpc.runtime.M compression, serviceImpl::getSliceEvents); break; + case METHODID_SELECT_SLICE: + io.quarkus.grpc.runtime.ServerCalls.oneToOne((context.ContextOuterClass.SliceFilter) request, + (io.grpc.stub.StreamObserver<context.ContextOuterClass.SliceList>) responseObserver, + compression, + serviceImpl::selectSlice); + break; case METHODID_LIST_CONNECTION_IDS: io.quarkus.grpc.runtime.ServerCalls.oneToOne((context.ContextOuterClass.ServiceId) request, (io.grpc.stub.StreamObserver<context.ContextOuterClass.ConnectionIdList>) responseObserver, diff --git a/src/policy/target/generated-sources/grpc/kpi_sample_types/KpiSampleTypes.java b/src/policy/target/generated-sources/grpc/kpi_sample_types/KpiSampleTypes.java index 67e1ec736f9d83cbf95b419e9e61e92e82e73b88..217672b2e8de2d7c840833a937b0fb04c38a221b 100644 --- a/src/policy/target/generated-sources/grpc/kpi_sample_types/KpiSampleTypes.java +++ b/src/policy/target/generated-sources/grpc/kpi_sample_types/KpiSampleTypes.java @@ -31,6 +31,10 @@ public final class KpiSampleTypes { * <code>KPISAMPLETYPE_PACKETS_RECEIVED = 102;</code> */ KPISAMPLETYPE_PACKETS_RECEIVED(102), + /** + * <code>KPISAMPLETYPE_PACKETS_DROPPED = 103;</code> + */ + KPISAMPLETYPE_PACKETS_DROPPED(103), /** * <code>KPISAMPLETYPE_BYTES_TRANSMITTED = 201;</code> */ @@ -39,6 +43,50 @@ public final class KpiSampleTypes { * <code>KPISAMPLETYPE_BYTES_RECEIVED = 202;</code> */ KPISAMPLETYPE_BYTES_RECEIVED(202), + /** + * <code>KPISAMPLETYPE_BYTES_DROPPED = 203;</code> + */ + KPISAMPLETYPE_BYTES_DROPPED(203), + /** + * <pre> + *. can be used by both optical and L3 without any issue + * </pre> + * + * <code>KPISAMPLETYPE_ML_CONFIDENCE = 401;</code> + */ + KPISAMPLETYPE_ML_CONFIDENCE(401), + /** + * <pre> + *. can be used by both optical and L3 without any issue + * </pre> + * + * <code>KPISAMPLETYPE_OPTICAL_SECURITY_STATUS = 501;</code> + */ + KPISAMPLETYPE_OPTICAL_SECURITY_STATUS(501), + /** + * <code>KPISAMPLETYPE_L3_UNIQUE_ATTACK_CONNS = 601;</code> + */ + KPISAMPLETYPE_L3_UNIQUE_ATTACK_CONNS(601), + /** + * <code>KPISAMPLETYPE_L3_TOTAL_DROPPED_PACKTS = 602;</code> + */ + KPISAMPLETYPE_L3_TOTAL_DROPPED_PACKTS(602), + /** + * <code>KPISAMPLETYPE_L3_UNIQUE_ATTACKERS = 603;</code> + */ + KPISAMPLETYPE_L3_UNIQUE_ATTACKERS(603), + /** + * <code>KPISAMPLETYPE_L3_UNIQUE_COMPROMISED_CLIENTS = 604;</code> + */ + KPISAMPLETYPE_L3_UNIQUE_COMPROMISED_CLIENTS(604), + /** + * <code>KPISAMPLETYPE_L3_SECURITY_STATUS_CRYPTO = 605;</code> + */ + KPISAMPLETYPE_L3_SECURITY_STATUS_CRYPTO(605), + /** + * <code>KPISAMPLETYPE_SERVICE_LATENCY_MS = 701;</code> + */ + KPISAMPLETYPE_SERVICE_LATENCY_MS(701), UNRECOGNIZED(-1), ; @@ -54,6 +102,10 @@ public final class KpiSampleTypes { * <code>KPISAMPLETYPE_PACKETS_RECEIVED = 102;</code> */ public static final int KPISAMPLETYPE_PACKETS_RECEIVED_VALUE = 102; + /** + * <code>KPISAMPLETYPE_PACKETS_DROPPED = 103;</code> + */ + public static final int KPISAMPLETYPE_PACKETS_DROPPED_VALUE = 103; /** * <code>KPISAMPLETYPE_BYTES_TRANSMITTED = 201;</code> */ @@ -62,6 +114,50 @@ public final class KpiSampleTypes { * <code>KPISAMPLETYPE_BYTES_RECEIVED = 202;</code> */ public static final int KPISAMPLETYPE_BYTES_RECEIVED_VALUE = 202; + /** + * <code>KPISAMPLETYPE_BYTES_DROPPED = 203;</code> + */ + public static final int KPISAMPLETYPE_BYTES_DROPPED_VALUE = 203; + /** + * <pre> + *. can be used by both optical and L3 without any issue + * </pre> + * + * <code>KPISAMPLETYPE_ML_CONFIDENCE = 401;</code> + */ + public static final int KPISAMPLETYPE_ML_CONFIDENCE_VALUE = 401; + /** + * <pre> + *. can be used by both optical and L3 without any issue + * </pre> + * + * <code>KPISAMPLETYPE_OPTICAL_SECURITY_STATUS = 501;</code> + */ + public static final int KPISAMPLETYPE_OPTICAL_SECURITY_STATUS_VALUE = 501; + /** + * <code>KPISAMPLETYPE_L3_UNIQUE_ATTACK_CONNS = 601;</code> + */ + public static final int KPISAMPLETYPE_L3_UNIQUE_ATTACK_CONNS_VALUE = 601; + /** + * <code>KPISAMPLETYPE_L3_TOTAL_DROPPED_PACKTS = 602;</code> + */ + public static final int KPISAMPLETYPE_L3_TOTAL_DROPPED_PACKTS_VALUE = 602; + /** + * <code>KPISAMPLETYPE_L3_UNIQUE_ATTACKERS = 603;</code> + */ + public static final int KPISAMPLETYPE_L3_UNIQUE_ATTACKERS_VALUE = 603; + /** + * <code>KPISAMPLETYPE_L3_UNIQUE_COMPROMISED_CLIENTS = 604;</code> + */ + public static final int KPISAMPLETYPE_L3_UNIQUE_COMPROMISED_CLIENTS_VALUE = 604; + /** + * <code>KPISAMPLETYPE_L3_SECURITY_STATUS_CRYPTO = 605;</code> + */ + public static final int KPISAMPLETYPE_L3_SECURITY_STATUS_CRYPTO_VALUE = 605; + /** + * <code>KPISAMPLETYPE_SERVICE_LATENCY_MS = 701;</code> + */ + public static final int KPISAMPLETYPE_SERVICE_LATENCY_MS_VALUE = 701; public final int getNumber() { @@ -91,8 +187,18 @@ public final class KpiSampleTypes { case 0: return KPISAMPLETYPE_UNKNOWN; case 101: return KPISAMPLETYPE_PACKETS_TRANSMITTED; case 102: return KPISAMPLETYPE_PACKETS_RECEIVED; + case 103: return KPISAMPLETYPE_PACKETS_DROPPED; case 201: return KPISAMPLETYPE_BYTES_TRANSMITTED; case 202: return KPISAMPLETYPE_BYTES_RECEIVED; + case 203: return KPISAMPLETYPE_BYTES_DROPPED; + case 401: return KPISAMPLETYPE_ML_CONFIDENCE; + case 501: return KPISAMPLETYPE_OPTICAL_SECURITY_STATUS; + case 601: return KPISAMPLETYPE_L3_UNIQUE_ATTACK_CONNS; + case 602: return KPISAMPLETYPE_L3_TOTAL_DROPPED_PACKTS; + case 603: return KPISAMPLETYPE_L3_UNIQUE_ATTACKERS; + case 604: return KPISAMPLETYPE_L3_UNIQUE_COMPROMISED_CLIENTS; + case 605: return KPISAMPLETYPE_L3_SECURITY_STATUS_CRYPTO; + case 701: return KPISAMPLETYPE_SERVICE_LATENCY_MS; default: return null; } } @@ -159,12 +265,22 @@ public final class KpiSampleTypes { static { java.lang.String[] descriptorData = { "\n\026kpi_sample_types.proto\022\020kpi_sample_typ" + - "es*\276\001\n\rKpiSampleType\022\031\n\025KPISAMPLETYPE_UN" + + "es*\327\004\n\rKpiSampleType\022\031\n\025KPISAMPLETYPE_UN" + "KNOWN\020\000\022%\n!KPISAMPLETYPE_PACKETS_TRANSMI" + "TTED\020e\022\"\n\036KPISAMPLETYPE_PACKETS_RECEIVED" + - "\020f\022$\n\037KPISAMPLETYPE_BYTES_TRANSMITTED\020\311\001" + - "\022!\n\034KPISAMPLETYPE_BYTES_RECEIVED\020\312\001b\006pro" + - "to3" + "\020f\022!\n\035KPISAMPLETYPE_PACKETS_DROPPED\020g\022$\n" + + "\037KPISAMPLETYPE_BYTES_TRANSMITTED\020\311\001\022!\n\034K" + + "PISAMPLETYPE_BYTES_RECEIVED\020\312\001\022 \n\033KPISAM" + + "PLETYPE_BYTES_DROPPED\020\313\001\022 \n\033KPISAMPLETYP" + + "E_ML_CONFIDENCE\020\221\003\022*\n%KPISAMPLETYPE_OPTI" + + "CAL_SECURITY_STATUS\020\365\003\022)\n$KPISAMPLETYPE_" + + "L3_UNIQUE_ATTACK_CONNS\020\331\004\022*\n%KPISAMPLETY" + + "PE_L3_TOTAL_DROPPED_PACKTS\020\332\004\022&\n!KPISAMP" + + "LETYPE_L3_UNIQUE_ATTACKERS\020\333\004\0220\n+KPISAMP" + + "LETYPE_L3_UNIQUE_COMPROMISED_CLIENTS\020\334\004\022" + + ",\n\'KPISAMPLETYPE_L3_SECURITY_STATUS_CRYP" + + "TO\020\335\004\022%\n KPISAMPLETYPE_SERVICE_LATENCY_M" + + "S\020\275\005b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, diff --git a/src/policy/target/generated-sources/grpc/monitoring/Monitoring.java b/src/policy/target/generated-sources/grpc/monitoring/Monitoring.java index ffd0ed3d839d951c755153b6f5beaf4b1a12cd2e..38f026eb1ac730e8f825e460916dc57469f0d312 100644 --- a/src/policy/target/generated-sources/grpc/monitoring/Monitoring.java +++ b/src/policy/target/generated-sources/grpc/monitoring/Monitoring.java @@ -139,6 +139,21 @@ public final class Monitoring { * <code>.context.SliceId slice_id = 8;</code> */ context.ContextOuterClass.SliceIdOrBuilder getSliceIdOrBuilder(); + + /** + * <code>.context.ConnectionId connection_id = 9;</code> + * @return Whether the connectionId field is set. + */ + boolean hasConnectionId(); + /** + * <code>.context.ConnectionId connection_id = 9;</code> + * @return The connectionId. + */ + context.ContextOuterClass.ConnectionId getConnectionId(); + /** + * <code>.context.ConnectionId connection_id = 9;</code> + */ + context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder(); } /** * Protobuf type {@code monitoring.KpiDescriptor} @@ -275,6 +290,19 @@ public final class Monitoring { break; } + case 74: { + context.ContextOuterClass.ConnectionId.Builder subBuilder = null; + if (connectionId_ != null) { + subBuilder = connectionId_.toBuilder(); + } + connectionId_ = input.readMessage(context.ContextOuterClass.ConnectionId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(connectionId_); + connectionId_ = subBuilder.buildPartial(); + } + + break; + } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { @@ -537,6 +565,32 @@ public final class Monitoring { return getSliceId(); } + public static final int CONNECTION_ID_FIELD_NUMBER = 9; + private context.ContextOuterClass.ConnectionId connectionId_; + /** + * <code>.context.ConnectionId connection_id = 9;</code> + * @return Whether the connectionId field is set. + */ + @java.lang.Override + public boolean hasConnectionId() { + return connectionId_ != null; + } + /** + * <code>.context.ConnectionId connection_id = 9;</code> + * @return The connectionId. + */ + @java.lang.Override + public context.ContextOuterClass.ConnectionId getConnectionId() { + return connectionId_ == null ? context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; + } + /** + * <code>.context.ConnectionId connection_id = 9;</code> + */ + @java.lang.Override + public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder() { + return getConnectionId(); + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -575,6 +629,9 @@ public final class Monitoring { if (sliceId_ != null) { output.writeMessage(8, getSliceId()); } + if (connectionId_ != null) { + output.writeMessage(9, getConnectionId()); + } unknownFields.writeTo(output); } @@ -615,6 +672,10 @@ public final class Monitoring { size += com.google.protobuf.CodedOutputStream .computeMessageSize(8, getSliceId()); } + if (connectionId_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(9, getConnectionId()); + } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; @@ -660,6 +721,11 @@ public final class Monitoring { if (!getSliceId() .equals(other.getSliceId())) return false; } + if (hasConnectionId() != other.hasConnectionId()) return false; + if (hasConnectionId()) { + if (!getConnectionId() + .equals(other.getConnectionId())) return false; + } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -699,6 +765,10 @@ public final class Monitoring { hash = (37 * hash) + SLICE_ID_FIELD_NUMBER; hash = (53 * hash) + getSliceId().hashCode(); } + if (hasConnectionId()) { + hash = (37 * hash) + CONNECTION_ID_FIELD_NUMBER; + hash = (53 * hash) + getConnectionId().hashCode(); + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; @@ -873,6 +943,12 @@ public final class Monitoring { sliceId_ = null; sliceIdBuilder_ = null; } + if (connectionIdBuilder_ == null) { + connectionId_ = null; + } else { + connectionId_ = null; + connectionIdBuilder_ = null; + } return this; } @@ -936,6 +1012,11 @@ public final class Monitoring { } else { result.sliceId_ = sliceIdBuilder_.build(); } + if (connectionIdBuilder_ == null) { + result.connectionId_ = connectionId_; + } else { + result.connectionId_ = connectionIdBuilder_.build(); + } onBuilt(); return result; } @@ -1032,6 +1113,9 @@ public final class Monitoring { if (other.hasSliceId()) { mergeSliceId(other.getSliceId()); } + if (other.hasConnectionId()) { + mergeConnectionId(other.getConnectionId()); + } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; @@ -2026,6 +2110,125 @@ public final class Monitoring { } return sliceIdBuilder_; } + + private context.ContextOuterClass.ConnectionId connectionId_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> connectionIdBuilder_; + /** + * <code>.context.ConnectionId connection_id = 9;</code> + * @return Whether the connectionId field is set. + */ + public boolean hasConnectionId() { + return connectionIdBuilder_ != null || connectionId_ != null; + } + /** + * <code>.context.ConnectionId connection_id = 9;</code> + * @return The connectionId. + */ + public context.ContextOuterClass.ConnectionId getConnectionId() { + if (connectionIdBuilder_ == null) { + return connectionId_ == null ? context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; + } else { + return connectionIdBuilder_.getMessage(); + } + } + /** + * <code>.context.ConnectionId connection_id = 9;</code> + */ + public Builder setConnectionId(context.ContextOuterClass.ConnectionId value) { + if (connectionIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + connectionId_ = value; + onChanged(); + } else { + connectionIdBuilder_.setMessage(value); + } + + return this; + } + /** + * <code>.context.ConnectionId connection_id = 9;</code> + */ + public Builder setConnectionId( + context.ContextOuterClass.ConnectionId.Builder builderForValue) { + if (connectionIdBuilder_ == null) { + connectionId_ = builderForValue.build(); + onChanged(); + } else { + connectionIdBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.ConnectionId connection_id = 9;</code> + */ + public Builder mergeConnectionId(context.ContextOuterClass.ConnectionId value) { + if (connectionIdBuilder_ == null) { + if (connectionId_ != null) { + connectionId_ = + context.ContextOuterClass.ConnectionId.newBuilder(connectionId_).mergeFrom(value).buildPartial(); + } else { + connectionId_ = value; + } + onChanged(); + } else { + connectionIdBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.context.ConnectionId connection_id = 9;</code> + */ + public Builder clearConnectionId() { + if (connectionIdBuilder_ == null) { + connectionId_ = null; + onChanged(); + } else { + connectionId_ = null; + connectionIdBuilder_ = null; + } + + return this; + } + /** + * <code>.context.ConnectionId connection_id = 9;</code> + */ + public context.ContextOuterClass.ConnectionId.Builder getConnectionIdBuilder() { + + onChanged(); + return getConnectionIdFieldBuilder().getBuilder(); + } + /** + * <code>.context.ConnectionId connection_id = 9;</code> + */ + public context.ContextOuterClass.ConnectionIdOrBuilder getConnectionIdOrBuilder() { + if (connectionIdBuilder_ != null) { + return connectionIdBuilder_.getMessageOrBuilder(); + } else { + return connectionId_ == null ? + context.ContextOuterClass.ConnectionId.getDefaultInstance() : connectionId_; + } + } + /** + * <code>.context.ConnectionId connection_id = 9;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder> + getConnectionIdFieldBuilder() { + if (connectionIdBuilder_ == null) { + connectionIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.ConnectionId, context.ContextOuterClass.ConnectionId.Builder, context.ContextOuterClass.ConnectionIdOrBuilder>( + getConnectionId(), + getParentForChildren(), + isClean()); + connectionId_ = null; + } + return connectionIdBuilder_; + } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { @@ -2869,19 +3072,28 @@ public final class Monitoring { com.google.protobuf.MessageOrBuilder { /** - * <code>.monitoring.KpiId kpi_id = 1;</code> - * @return Whether the kpiId field is set. + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> */ - boolean hasKpiId(); + java.util.List<monitoring.Monitoring.KpiId> + getKpiIdsList(); /** - * <code>.monitoring.KpiId kpi_id = 1;</code> - * @return The kpiId. + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> */ - monitoring.Monitoring.KpiId getKpiId(); + monitoring.Monitoring.KpiId getKpiIds(int index); /** - * <code>.monitoring.KpiId kpi_id = 1;</code> + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> */ - monitoring.Monitoring.KpiIdOrBuilder getKpiIdOrBuilder(); + int getKpiIdsCount(); + /** + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> + */ + java.util.List<? extends monitoring.Monitoring.KpiIdOrBuilder> + getKpiIdsOrBuilderList(); + /** + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> + */ + monitoring.Monitoring.KpiIdOrBuilder getKpiIdsOrBuilder( + int index); /** * <code>float monitoring_window_s = 2;</code> @@ -2889,18 +3101,12 @@ public final class Monitoring { */ float getMonitoringWindowS(); - /** - * <code>float sampling_rate_s = 3;</code> - * @return The samplingRateS. - */ - float getSamplingRateS(); - /** * <pre> * used when you want something like "get the last N many samples * </pre> * - * <code>uint32 last_n_samples = 4;</code> + * <code>uint32 last_n_samples = 3;</code> * @return The lastNSamples. */ int getLastNSamples(); @@ -2910,7 +3116,7 @@ public final class Monitoring { * used when you want something like "get the samples since X date/time" * </pre> * - * <code>.context.Timestamp start_timestamp = 5;</code> + * <code>.context.Timestamp start_timestamp = 4;</code> * @return Whether the startTimestamp field is set. */ boolean hasStartTimestamp(); @@ -2919,7 +3125,7 @@ public final class Monitoring { * used when you want something like "get the samples since X date/time" * </pre> * - * <code>.context.Timestamp start_timestamp = 5;</code> + * <code>.context.Timestamp start_timestamp = 4;</code> * @return The startTimestamp. */ context.ContextOuterClass.Timestamp getStartTimestamp(); @@ -2928,7 +3134,7 @@ public final class Monitoring { * used when you want something like "get the samples since X date/time" * </pre> * - * <code>.context.Timestamp start_timestamp = 5;</code> + * <code>.context.Timestamp start_timestamp = 4;</code> */ context.ContextOuterClass.TimestampOrBuilder getStartTimestampOrBuilder(); @@ -2937,7 +3143,7 @@ public final class Monitoring { * used when you want something like "get the samples until X date/time" * </pre> * - * <code>.context.Timestamp end_timestamp = 6;</code> + * <code>.context.Timestamp end_timestamp = 5;</code> * @return Whether the endTimestamp field is set. */ boolean hasEndTimestamp(); @@ -2946,7 +3152,7 @@ public final class Monitoring { * used when you want something like "get the samples until X date/time" * </pre> * - * <code>.context.Timestamp end_timestamp = 6;</code> + * <code>.context.Timestamp end_timestamp = 5;</code> * @return The endTimestamp. */ context.ContextOuterClass.Timestamp getEndTimestamp(); @@ -2955,7 +3161,7 @@ public final class Monitoring { * used when you want something like "get the samples until X date/time" * </pre> * - * <code>.context.Timestamp end_timestamp = 6;</code> + * <code>.context.Timestamp end_timestamp = 5;</code> */ context.ContextOuterClass.TimestampOrBuilder getEndTimestampOrBuilder(); } @@ -2972,6 +3178,7 @@ public final class Monitoring { super(builder); } private KpiQuery() { + kpiIds_ = java.util.Collections.emptyList(); } @java.lang.Override @@ -2994,6 +3201,7 @@ public final class Monitoring { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } + int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -3005,16 +3213,12 @@ public final class Monitoring { done = true; break; case 10: { - monitoring.Monitoring.KpiId.Builder subBuilder = null; - if (kpiId_ != null) { - subBuilder = kpiId_.toBuilder(); - } - kpiId_ = input.readMessage(monitoring.Monitoring.KpiId.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(kpiId_); - kpiId_ = subBuilder.buildPartial(); + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + kpiIds_ = new java.util.ArrayList<monitoring.Monitoring.KpiId>(); + mutable_bitField0_ |= 0x00000001; } - + kpiIds_.add( + input.readMessage(monitoring.Monitoring.KpiId.parser(), extensionRegistry)); break; } case 21: { @@ -3022,17 +3226,12 @@ public final class Monitoring { monitoringWindowS_ = input.readFloat(); break; } - case 29: { - - samplingRateS_ = input.readFloat(); - break; - } - case 32: { + case 24: { lastNSamples_ = input.readUInt32(); break; } - case 42: { + case 34: { context.ContextOuterClass.Timestamp.Builder subBuilder = null; if (startTimestamp_ != null) { subBuilder = startTimestamp_.toBuilder(); @@ -3045,7 +3244,7 @@ public final class Monitoring { break; } - case 50: { + case 42: { context.ContextOuterClass.Timestamp.Builder subBuilder = null; if (endTimestamp_ != null) { subBuilder = endTimestamp_.toBuilder(); @@ -3073,6 +3272,9 @@ public final class Monitoring { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { + if (((mutable_bitField0_ & 0x00000001) != 0)) { + kpiIds_ = java.util.Collections.unmodifiableList(kpiIds_); + } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } @@ -3090,30 +3292,44 @@ public final class Monitoring { monitoring.Monitoring.KpiQuery.class, monitoring.Monitoring.KpiQuery.Builder.class); } - public static final int KPI_ID_FIELD_NUMBER = 1; - private monitoring.Monitoring.KpiId kpiId_; + public static final int KPI_IDS_FIELD_NUMBER = 1; + private java.util.List<monitoring.Monitoring.KpiId> kpiIds_; /** - * <code>.monitoring.KpiId kpi_id = 1;</code> - * @return Whether the kpiId field is set. + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> */ @java.lang.Override - public boolean hasKpiId() { - return kpiId_ != null; + public java.util.List<monitoring.Monitoring.KpiId> getKpiIdsList() { + return kpiIds_; } /** - * <code>.monitoring.KpiId kpi_id = 1;</code> - * @return The kpiId. + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> */ @java.lang.Override - public monitoring.Monitoring.KpiId getKpiId() { - return kpiId_ == null ? monitoring.Monitoring.KpiId.getDefaultInstance() : kpiId_; + public java.util.List<? extends monitoring.Monitoring.KpiIdOrBuilder> + getKpiIdsOrBuilderList() { + return kpiIds_; } /** - * <code>.monitoring.KpiId kpi_id = 1;</code> + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> */ @java.lang.Override - public monitoring.Monitoring.KpiIdOrBuilder getKpiIdOrBuilder() { - return getKpiId(); + public int getKpiIdsCount() { + return kpiIds_.size(); + } + /** + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> + */ + @java.lang.Override + public monitoring.Monitoring.KpiId getKpiIds(int index) { + return kpiIds_.get(index); + } + /** + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> + */ + @java.lang.Override + public monitoring.Monitoring.KpiIdOrBuilder getKpiIdsOrBuilder( + int index) { + return kpiIds_.get(index); } public static final int MONITORING_WINDOW_S_FIELD_NUMBER = 2; @@ -3127,25 +3343,14 @@ public final class Monitoring { return monitoringWindowS_; } - public static final int SAMPLING_RATE_S_FIELD_NUMBER = 3; - private float samplingRateS_; - /** - * <code>float sampling_rate_s = 3;</code> - * @return The samplingRateS. - */ - @java.lang.Override - public float getSamplingRateS() { - return samplingRateS_; - } - - public static final int LAST_N_SAMPLES_FIELD_NUMBER = 4; + public static final int LAST_N_SAMPLES_FIELD_NUMBER = 3; private int lastNSamples_; /** * <pre> * used when you want something like "get the last N many samples * </pre> * - * <code>uint32 last_n_samples = 4;</code> + * <code>uint32 last_n_samples = 3;</code> * @return The lastNSamples. */ @java.lang.Override @@ -3153,14 +3358,14 @@ public final class Monitoring { return lastNSamples_; } - public static final int START_TIMESTAMP_FIELD_NUMBER = 5; + public static final int START_TIMESTAMP_FIELD_NUMBER = 4; private context.ContextOuterClass.Timestamp startTimestamp_; /** * <pre> * used when you want something like "get the samples since X date/time" * </pre> * - * <code>.context.Timestamp start_timestamp = 5;</code> + * <code>.context.Timestamp start_timestamp = 4;</code> * @return Whether the startTimestamp field is set. */ @java.lang.Override @@ -3172,7 +3377,7 @@ public final class Monitoring { * used when you want something like "get the samples since X date/time" * </pre> * - * <code>.context.Timestamp start_timestamp = 5;</code> + * <code>.context.Timestamp start_timestamp = 4;</code> * @return The startTimestamp. */ @java.lang.Override @@ -3184,21 +3389,21 @@ public final class Monitoring { * used when you want something like "get the samples since X date/time" * </pre> * - * <code>.context.Timestamp start_timestamp = 5;</code> + * <code>.context.Timestamp start_timestamp = 4;</code> */ @java.lang.Override public context.ContextOuterClass.TimestampOrBuilder getStartTimestampOrBuilder() { return getStartTimestamp(); } - public static final int END_TIMESTAMP_FIELD_NUMBER = 6; + public static final int END_TIMESTAMP_FIELD_NUMBER = 5; private context.ContextOuterClass.Timestamp endTimestamp_; /** * <pre> * used when you want something like "get the samples until X date/time" * </pre> * - * <code>.context.Timestamp end_timestamp = 6;</code> + * <code>.context.Timestamp end_timestamp = 5;</code> * @return Whether the endTimestamp field is set. */ @java.lang.Override @@ -3210,7 +3415,7 @@ public final class Monitoring { * used when you want something like "get the samples until X date/time" * </pre> * - * <code>.context.Timestamp end_timestamp = 6;</code> + * <code>.context.Timestamp end_timestamp = 5;</code> * @return The endTimestamp. */ @java.lang.Override @@ -3222,7 +3427,7 @@ public final class Monitoring { * used when you want something like "get the samples until X date/time" * </pre> * - * <code>.context.Timestamp end_timestamp = 6;</code> + * <code>.context.Timestamp end_timestamp = 5;</code> */ @java.lang.Override public context.ContextOuterClass.TimestampOrBuilder getEndTimestampOrBuilder() { @@ -3243,23 +3448,20 @@ public final class Monitoring { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (kpiId_ != null) { - output.writeMessage(1, getKpiId()); + for (int i = 0; i < kpiIds_.size(); i++) { + output.writeMessage(1, kpiIds_.get(i)); } if (monitoringWindowS_ != 0F) { output.writeFloat(2, monitoringWindowS_); } - if (samplingRateS_ != 0F) { - output.writeFloat(3, samplingRateS_); - } if (lastNSamples_ != 0) { - output.writeUInt32(4, lastNSamples_); + output.writeUInt32(3, lastNSamples_); } if (startTimestamp_ != null) { - output.writeMessage(5, getStartTimestamp()); + output.writeMessage(4, getStartTimestamp()); } if (endTimestamp_ != null) { - output.writeMessage(6, getEndTimestamp()); + output.writeMessage(5, getEndTimestamp()); } unknownFields.writeTo(output); } @@ -3270,29 +3472,25 @@ public final class Monitoring { if (size != -1) return size; size = 0; - if (kpiId_ != null) { + for (int i = 0; i < kpiIds_.size(); i++) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getKpiId()); + .computeMessageSize(1, kpiIds_.get(i)); } if (monitoringWindowS_ != 0F) { size += com.google.protobuf.CodedOutputStream .computeFloatSize(2, monitoringWindowS_); } - if (samplingRateS_ != 0F) { - size += com.google.protobuf.CodedOutputStream - .computeFloatSize(3, samplingRateS_); - } if (lastNSamples_ != 0) { size += com.google.protobuf.CodedOutputStream - .computeUInt32Size(4, lastNSamples_); + .computeUInt32Size(3, lastNSamples_); } if (startTimestamp_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(5, getStartTimestamp()); + .computeMessageSize(4, getStartTimestamp()); } if (endTimestamp_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(6, getEndTimestamp()); + .computeMessageSize(5, getEndTimestamp()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -3309,17 +3507,11 @@ public final class Monitoring { } monitoring.Monitoring.KpiQuery other = (monitoring.Monitoring.KpiQuery) obj; - if (hasKpiId() != other.hasKpiId()) return false; - if (hasKpiId()) { - if (!getKpiId() - .equals(other.getKpiId())) return false; - } + if (!getKpiIdsList() + .equals(other.getKpiIdsList())) return false; if (java.lang.Float.floatToIntBits(getMonitoringWindowS()) != java.lang.Float.floatToIntBits( other.getMonitoringWindowS())) return false; - if (java.lang.Float.floatToIntBits(getSamplingRateS()) - != java.lang.Float.floatToIntBits( - other.getSamplingRateS())) return false; if (getLastNSamples() != other.getLastNSamples()) return false; if (hasStartTimestamp() != other.hasStartTimestamp()) return false; @@ -3343,16 +3535,13 @@ public final class Monitoring { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasKpiId()) { - hash = (37 * hash) + KPI_ID_FIELD_NUMBER; - hash = (53 * hash) + getKpiId().hashCode(); + if (getKpiIdsCount() > 0) { + hash = (37 * hash) + KPI_IDS_FIELD_NUMBER; + hash = (53 * hash) + getKpiIdsList().hashCode(); } hash = (37 * hash) + MONITORING_WINDOW_S_FIELD_NUMBER; hash = (53 * hash) + java.lang.Float.floatToIntBits( getMonitoringWindowS()); - hash = (37 * hash) + SAMPLING_RATE_S_FIELD_NUMBER; - hash = (53 * hash) + java.lang.Float.floatToIntBits( - getSamplingRateS()); hash = (37 * hash) + LAST_N_SAMPLES_FIELD_NUMBER; hash = (53 * hash) + getLastNSamples(); if (hasStartTimestamp()) { @@ -3491,21 +3680,20 @@ public final class Monitoring { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { + getKpiIdsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); - if (kpiIdBuilder_ == null) { - kpiId_ = null; + if (kpiIdsBuilder_ == null) { + kpiIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); } else { - kpiId_ = null; - kpiIdBuilder_ = null; + kpiIdsBuilder_.clear(); } monitoringWindowS_ = 0F; - samplingRateS_ = 0F; - lastNSamples_ = 0; if (startTimestampBuilder_ == null) { @@ -3546,13 +3734,17 @@ public final class Monitoring { @java.lang.Override public monitoring.Monitoring.KpiQuery buildPartial() { monitoring.Monitoring.KpiQuery result = new monitoring.Monitoring.KpiQuery(this); - if (kpiIdBuilder_ == null) { - result.kpiId_ = kpiId_; + int from_bitField0_ = bitField0_; + if (kpiIdsBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + kpiIds_ = java.util.Collections.unmodifiableList(kpiIds_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.kpiIds_ = kpiIds_; } else { - result.kpiId_ = kpiIdBuilder_.build(); + result.kpiIds_ = kpiIdsBuilder_.build(); } result.monitoringWindowS_ = monitoringWindowS_; - result.samplingRateS_ = samplingRateS_; result.lastNSamples_ = lastNSamples_; if (startTimestampBuilder_ == null) { result.startTimestamp_ = startTimestamp_; @@ -3612,15 +3804,35 @@ public final class Monitoring { public Builder mergeFrom(monitoring.Monitoring.KpiQuery other) { if (other == monitoring.Monitoring.KpiQuery.getDefaultInstance()) return this; - if (other.hasKpiId()) { - mergeKpiId(other.getKpiId()); + if (kpiIdsBuilder_ == null) { + if (!other.kpiIds_.isEmpty()) { + if (kpiIds_.isEmpty()) { + kpiIds_ = other.kpiIds_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureKpiIdsIsMutable(); + kpiIds_.addAll(other.kpiIds_); + } + onChanged(); + } + } else { + if (!other.kpiIds_.isEmpty()) { + if (kpiIdsBuilder_.isEmpty()) { + kpiIdsBuilder_.dispose(); + kpiIdsBuilder_ = null; + kpiIds_ = other.kpiIds_; + bitField0_ = (bitField0_ & ~0x00000001); + kpiIdsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getKpiIdsFieldBuilder() : null; + } else { + kpiIdsBuilder_.addAllMessages(other.kpiIds_); + } + } } if (other.getMonitoringWindowS() != 0F) { setMonitoringWindowS(other.getMonitoringWindowS()); } - if (other.getSamplingRateS() != 0F) { - setSamplingRateS(other.getSamplingRateS()); - } if (other.getLastNSamples() != 0) { setLastNSamples(other.getLastNSamples()); } @@ -3658,124 +3870,246 @@ public final class Monitoring { } return this; } + private int bitField0_; + + private java.util.List<monitoring.Monitoring.KpiId> kpiIds_ = + java.util.Collections.emptyList(); + private void ensureKpiIdsIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + kpiIds_ = new java.util.ArrayList<monitoring.Monitoring.KpiId>(kpiIds_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + monitoring.Monitoring.KpiId, monitoring.Monitoring.KpiId.Builder, monitoring.Monitoring.KpiIdOrBuilder> kpiIdsBuilder_; - private monitoring.Monitoring.KpiId kpiId_; - private com.google.protobuf.SingleFieldBuilderV3< - monitoring.Monitoring.KpiId, monitoring.Monitoring.KpiId.Builder, monitoring.Monitoring.KpiIdOrBuilder> kpiIdBuilder_; /** - * <code>.monitoring.KpiId kpi_id = 1;</code> - * @return Whether the kpiId field is set. + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> */ - public boolean hasKpiId() { - return kpiIdBuilder_ != null || kpiId_ != null; + public java.util.List<monitoring.Monitoring.KpiId> getKpiIdsList() { + if (kpiIdsBuilder_ == null) { + return java.util.Collections.unmodifiableList(kpiIds_); + } else { + return kpiIdsBuilder_.getMessageList(); + } } /** - * <code>.monitoring.KpiId kpi_id = 1;</code> - * @return The kpiId. + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> */ - public monitoring.Monitoring.KpiId getKpiId() { - if (kpiIdBuilder_ == null) { - return kpiId_ == null ? monitoring.Monitoring.KpiId.getDefaultInstance() : kpiId_; + public int getKpiIdsCount() { + if (kpiIdsBuilder_ == null) { + return kpiIds_.size(); } else { - return kpiIdBuilder_.getMessage(); + return kpiIdsBuilder_.getCount(); } } /** - * <code>.monitoring.KpiId kpi_id = 1;</code> + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> */ - public Builder setKpiId(monitoring.Monitoring.KpiId value) { - if (kpiIdBuilder_ == null) { + public monitoring.Monitoring.KpiId getKpiIds(int index) { + if (kpiIdsBuilder_ == null) { + return kpiIds_.get(index); + } else { + return kpiIdsBuilder_.getMessage(index); + } + } + /** + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> + */ + public Builder setKpiIds( + int index, monitoring.Monitoring.KpiId value) { + if (kpiIdsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - kpiId_ = value; + ensureKpiIdsIsMutable(); + kpiIds_.set(index, value); onChanged(); } else { - kpiIdBuilder_.setMessage(value); + kpiIdsBuilder_.setMessage(index, value); } - return this; } /** - * <code>.monitoring.KpiId kpi_id = 1;</code> + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> */ - public Builder setKpiId( - monitoring.Monitoring.KpiId.Builder builderForValue) { - if (kpiIdBuilder_ == null) { - kpiId_ = builderForValue.build(); + public Builder setKpiIds( + int index, monitoring.Monitoring.KpiId.Builder builderForValue) { + if (kpiIdsBuilder_ == null) { + ensureKpiIdsIsMutable(); + kpiIds_.set(index, builderForValue.build()); onChanged(); } else { - kpiIdBuilder_.setMessage(builderForValue.build()); + kpiIdsBuilder_.setMessage(index, builderForValue.build()); } - return this; } /** - * <code>.monitoring.KpiId kpi_id = 1;</code> + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> */ - public Builder mergeKpiId(monitoring.Monitoring.KpiId value) { - if (kpiIdBuilder_ == null) { - if (kpiId_ != null) { - kpiId_ = - monitoring.Monitoring.KpiId.newBuilder(kpiId_).mergeFrom(value).buildPartial(); - } else { - kpiId_ = value; + public Builder addKpiIds(monitoring.Monitoring.KpiId value) { + if (kpiIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + ensureKpiIdsIsMutable(); + kpiIds_.add(value); onChanged(); } else { - kpiIdBuilder_.mergeFrom(value); + kpiIdsBuilder_.addMessage(value); } - return this; } /** - * <code>.monitoring.KpiId kpi_id = 1;</code> + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> */ - public Builder clearKpiId() { - if (kpiIdBuilder_ == null) { - kpiId_ = null; + public Builder addKpiIds( + int index, monitoring.Monitoring.KpiId value) { + if (kpiIdsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureKpiIdsIsMutable(); + kpiIds_.add(index, value); onChanged(); } else { - kpiId_ = null; - kpiIdBuilder_ = null; + kpiIdsBuilder_.addMessage(index, value); } - return this; } /** - * <code>.monitoring.KpiId kpi_id = 1;</code> + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> */ - public monitoring.Monitoring.KpiId.Builder getKpiIdBuilder() { - - onChanged(); - return getKpiIdFieldBuilder().getBuilder(); + public Builder addKpiIds( + monitoring.Monitoring.KpiId.Builder builderForValue) { + if (kpiIdsBuilder_ == null) { + ensureKpiIdsIsMutable(); + kpiIds_.add(builderForValue.build()); + onChanged(); + } else { + kpiIdsBuilder_.addMessage(builderForValue.build()); + } + return this; } /** - * <code>.monitoring.KpiId kpi_id = 1;</code> + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> */ - public monitoring.Monitoring.KpiIdOrBuilder getKpiIdOrBuilder() { - if (kpiIdBuilder_ != null) { - return kpiIdBuilder_.getMessageOrBuilder(); + public Builder addKpiIds( + int index, monitoring.Monitoring.KpiId.Builder builderForValue) { + if (kpiIdsBuilder_ == null) { + ensureKpiIdsIsMutable(); + kpiIds_.add(index, builderForValue.build()); + onChanged(); } else { - return kpiId_ == null ? - monitoring.Monitoring.KpiId.getDefaultInstance() : kpiId_; + kpiIdsBuilder_.addMessage(index, builderForValue.build()); } + return this; } /** - * <code>.monitoring.KpiId kpi_id = 1;</code> + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> */ - private com.google.protobuf.SingleFieldBuilderV3< + public Builder addAllKpiIds( + java.lang.Iterable<? extends monitoring.Monitoring.KpiId> values) { + if (kpiIdsBuilder_ == null) { + ensureKpiIdsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, kpiIds_); + onChanged(); + } else { + kpiIdsBuilder_.addAllMessages(values); + } + return this; + } + /** + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> + */ + public Builder clearKpiIds() { + if (kpiIdsBuilder_ == null) { + kpiIds_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + kpiIdsBuilder_.clear(); + } + return this; + } + /** + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> + */ + public Builder removeKpiIds(int index) { + if (kpiIdsBuilder_ == null) { + ensureKpiIdsIsMutable(); + kpiIds_.remove(index); + onChanged(); + } else { + kpiIdsBuilder_.remove(index); + } + return this; + } + /** + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> + */ + public monitoring.Monitoring.KpiId.Builder getKpiIdsBuilder( + int index) { + return getKpiIdsFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> + */ + public monitoring.Monitoring.KpiIdOrBuilder getKpiIdsOrBuilder( + int index) { + if (kpiIdsBuilder_ == null) { + return kpiIds_.get(index); } else { + return kpiIdsBuilder_.getMessageOrBuilder(index); + } + } + /** + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> + */ + public java.util.List<? extends monitoring.Monitoring.KpiIdOrBuilder> + getKpiIdsOrBuilderList() { + if (kpiIdsBuilder_ != null) { + return kpiIdsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(kpiIds_); + } + } + /** + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> + */ + public monitoring.Monitoring.KpiId.Builder addKpiIdsBuilder() { + return getKpiIdsFieldBuilder().addBuilder( + monitoring.Monitoring.KpiId.getDefaultInstance()); + } + /** + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> + */ + public monitoring.Monitoring.KpiId.Builder addKpiIdsBuilder( + int index) { + return getKpiIdsFieldBuilder().addBuilder( + index, monitoring.Monitoring.KpiId.getDefaultInstance()); + } + /** + * <code>repeated .monitoring.KpiId kpi_ids = 1;</code> + */ + public java.util.List<monitoring.Monitoring.KpiId.Builder> + getKpiIdsBuilderList() { + return getKpiIdsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< monitoring.Monitoring.KpiId, monitoring.Monitoring.KpiId.Builder, monitoring.Monitoring.KpiIdOrBuilder> - getKpiIdFieldBuilder() { - if (kpiIdBuilder_ == null) { - kpiIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + getKpiIdsFieldBuilder() { + if (kpiIdsBuilder_ == null) { + kpiIdsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< monitoring.Monitoring.KpiId, monitoring.Monitoring.KpiId.Builder, monitoring.Monitoring.KpiIdOrBuilder>( - getKpiId(), + kpiIds_, + ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); - kpiId_ = null; + kpiIds_ = null; } - return kpiIdBuilder_; + return kpiIdsBuilder_; } private float monitoringWindowS_ ; @@ -3809,44 +4143,13 @@ public final class Monitoring { return this; } - private float samplingRateS_ ; - /** - * <code>float sampling_rate_s = 3;</code> - * @return The samplingRateS. - */ - @java.lang.Override - public float getSamplingRateS() { - return samplingRateS_; - } - /** - * <code>float sampling_rate_s = 3;</code> - * @param value The samplingRateS to set. - * @return This builder for chaining. - */ - public Builder setSamplingRateS(float value) { - - samplingRateS_ = value; - onChanged(); - return this; - } - /** - * <code>float sampling_rate_s = 3;</code> - * @return This builder for chaining. - */ - public Builder clearSamplingRateS() { - - samplingRateS_ = 0F; - onChanged(); - return this; - } - private int lastNSamples_ ; /** * <pre> * used when you want something like "get the last N many samples * </pre> * - * <code>uint32 last_n_samples = 4;</code> + * <code>uint32 last_n_samples = 3;</code> * @return The lastNSamples. */ @java.lang.Override @@ -3858,7 +4161,7 @@ public final class Monitoring { * used when you want something like "get the last N many samples * </pre> * - * <code>uint32 last_n_samples = 4;</code> + * <code>uint32 last_n_samples = 3;</code> * @param value The lastNSamples to set. * @return This builder for chaining. */ @@ -3873,7 +4176,7 @@ public final class Monitoring { * used when you want something like "get the last N many samples * </pre> * - * <code>uint32 last_n_samples = 4;</code> + * <code>uint32 last_n_samples = 3;</code> * @return This builder for chaining. */ public Builder clearLastNSamples() { @@ -3891,7 +4194,7 @@ public final class Monitoring { * used when you want something like "get the samples since X date/time" * </pre> * - * <code>.context.Timestamp start_timestamp = 5;</code> + * <code>.context.Timestamp start_timestamp = 4;</code> * @return Whether the startTimestamp field is set. */ public boolean hasStartTimestamp() { @@ -3902,7 +4205,7 @@ public final class Monitoring { * used when you want something like "get the samples since X date/time" * </pre> * - * <code>.context.Timestamp start_timestamp = 5;</code> + * <code>.context.Timestamp start_timestamp = 4;</code> * @return The startTimestamp. */ public context.ContextOuterClass.Timestamp getStartTimestamp() { @@ -3917,7 +4220,7 @@ public final class Monitoring { * used when you want something like "get the samples since X date/time" * </pre> * - * <code>.context.Timestamp start_timestamp = 5;</code> + * <code>.context.Timestamp start_timestamp = 4;</code> */ public Builder setStartTimestamp(context.ContextOuterClass.Timestamp value) { if (startTimestampBuilder_ == null) { @@ -3937,7 +4240,7 @@ public final class Monitoring { * used when you want something like "get the samples since X date/time" * </pre> * - * <code>.context.Timestamp start_timestamp = 5;</code> + * <code>.context.Timestamp start_timestamp = 4;</code> */ public Builder setStartTimestamp( context.ContextOuterClass.Timestamp.Builder builderForValue) { @@ -3955,7 +4258,7 @@ public final class Monitoring { * used when you want something like "get the samples since X date/time" * </pre> * - * <code>.context.Timestamp start_timestamp = 5;</code> + * <code>.context.Timestamp start_timestamp = 4;</code> */ public Builder mergeStartTimestamp(context.ContextOuterClass.Timestamp value) { if (startTimestampBuilder_ == null) { @@ -3973,224 +4276,2861 @@ public final class Monitoring { return this; } /** - * <pre> - * used when you want something like "get the samples since X date/time" - * </pre> - * - * <code>.context.Timestamp start_timestamp = 5;</code> + * <pre> + * used when you want something like "get the samples since X date/time" + * </pre> + * + * <code>.context.Timestamp start_timestamp = 4;</code> + */ + public Builder clearStartTimestamp() { + if (startTimestampBuilder_ == null) { + startTimestamp_ = null; + onChanged(); + } else { + startTimestamp_ = null; + startTimestampBuilder_ = null; + } + + return this; + } + /** + * <pre> + * used when you want something like "get the samples since X date/time" + * </pre> + * + * <code>.context.Timestamp start_timestamp = 4;</code> + */ + public context.ContextOuterClass.Timestamp.Builder getStartTimestampBuilder() { + + onChanged(); + return getStartTimestampFieldBuilder().getBuilder(); + } + /** + * <pre> + * used when you want something like "get the samples since X date/time" + * </pre> + * + * <code>.context.Timestamp start_timestamp = 4;</code> + */ + public context.ContextOuterClass.TimestampOrBuilder getStartTimestampOrBuilder() { + if (startTimestampBuilder_ != null) { + return startTimestampBuilder_.getMessageOrBuilder(); + } else { + return startTimestamp_ == null ? + context.ContextOuterClass.Timestamp.getDefaultInstance() : startTimestamp_; + } + } + /** + * <pre> + * used when you want something like "get the samples since X date/time" + * </pre> + * + * <code>.context.Timestamp start_timestamp = 4;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> + getStartTimestampFieldBuilder() { + if (startTimestampBuilder_ == null) { + startTimestampBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder>( + getStartTimestamp(), + getParentForChildren(), + isClean()); + startTimestamp_ = null; + } + return startTimestampBuilder_; + } + + private context.ContextOuterClass.Timestamp endTimestamp_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> endTimestampBuilder_; + /** + * <pre> + * used when you want something like "get the samples until X date/time" + * </pre> + * + * <code>.context.Timestamp end_timestamp = 5;</code> + * @return Whether the endTimestamp field is set. + */ + public boolean hasEndTimestamp() { + return endTimestampBuilder_ != null || endTimestamp_ != null; + } + /** + * <pre> + * used when you want something like "get the samples until X date/time" + * </pre> + * + * <code>.context.Timestamp end_timestamp = 5;</code> + * @return The endTimestamp. + */ + public context.ContextOuterClass.Timestamp getEndTimestamp() { + if (endTimestampBuilder_ == null) { + return endTimestamp_ == null ? context.ContextOuterClass.Timestamp.getDefaultInstance() : endTimestamp_; + } else { + return endTimestampBuilder_.getMessage(); + } + } + /** + * <pre> + * used when you want something like "get the samples until X date/time" + * </pre> + * + * <code>.context.Timestamp end_timestamp = 5;</code> + */ + public Builder setEndTimestamp(context.ContextOuterClass.Timestamp value) { + if (endTimestampBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + endTimestamp_ = value; + onChanged(); + } else { + endTimestampBuilder_.setMessage(value); + } + + return this; + } + /** + * <pre> + * used when you want something like "get the samples until X date/time" + * </pre> + * + * <code>.context.Timestamp end_timestamp = 5;</code> + */ + public Builder setEndTimestamp( + context.ContextOuterClass.Timestamp.Builder builderForValue) { + if (endTimestampBuilder_ == null) { + endTimestamp_ = builderForValue.build(); + onChanged(); + } else { + endTimestampBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <pre> + * used when you want something like "get the samples until X date/time" + * </pre> + * + * <code>.context.Timestamp end_timestamp = 5;</code> + */ + public Builder mergeEndTimestamp(context.ContextOuterClass.Timestamp value) { + if (endTimestampBuilder_ == null) { + if (endTimestamp_ != null) { + endTimestamp_ = + context.ContextOuterClass.Timestamp.newBuilder(endTimestamp_).mergeFrom(value).buildPartial(); + } else { + endTimestamp_ = value; + } + onChanged(); + } else { + endTimestampBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <pre> + * used when you want something like "get the samples until X date/time" + * </pre> + * + * <code>.context.Timestamp end_timestamp = 5;</code> + */ + public Builder clearEndTimestamp() { + if (endTimestampBuilder_ == null) { + endTimestamp_ = null; + onChanged(); + } else { + endTimestamp_ = null; + endTimestampBuilder_ = null; + } + + return this; + } + /** + * <pre> + * used when you want something like "get the samples until X date/time" + * </pre> + * + * <code>.context.Timestamp end_timestamp = 5;</code> + */ + public context.ContextOuterClass.Timestamp.Builder getEndTimestampBuilder() { + + onChanged(); + return getEndTimestampFieldBuilder().getBuilder(); + } + /** + * <pre> + * used when you want something like "get the samples until X date/time" + * </pre> + * + * <code>.context.Timestamp end_timestamp = 5;</code> + */ + public context.ContextOuterClass.TimestampOrBuilder getEndTimestampOrBuilder() { + if (endTimestampBuilder_ != null) { + return endTimestampBuilder_.getMessageOrBuilder(); + } else { + return endTimestamp_ == null ? + context.ContextOuterClass.Timestamp.getDefaultInstance() : endTimestamp_; + } + } + /** + * <pre> + * used when you want something like "get the samples until X date/time" + * </pre> + * + * <code>.context.Timestamp end_timestamp = 5;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> + getEndTimestampFieldBuilder() { + if (endTimestampBuilder_ == null) { + endTimestampBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder>( + getEndTimestamp(), + getParentForChildren(), + isClean()); + endTimestamp_ = null; + } + return endTimestampBuilder_; + } + @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:monitoring.KpiQuery) + } + + // @@protoc_insertion_point(class_scope:monitoring.KpiQuery) + private static final monitoring.Monitoring.KpiQuery DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new monitoring.Monitoring.KpiQuery(); + } + + public static monitoring.Monitoring.KpiQuery getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<KpiQuery> + PARSER = new com.google.protobuf.AbstractParser<KpiQuery>() { + @java.lang.Override + public KpiQuery parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new KpiQuery(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<KpiQuery> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<KpiQuery> getParserForType() { + return PARSER; + } + + @java.lang.Override + public monitoring.Monitoring.KpiQuery getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface RawKpiOrBuilder extends + // @@protoc_insertion_point(interface_extends:monitoring.RawKpi) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>.context.Timestamp timestamp = 1;</code> + * @return Whether the timestamp field is set. + */ + boolean hasTimestamp(); + /** + * <code>.context.Timestamp timestamp = 1;</code> + * @return The timestamp. + */ + context.ContextOuterClass.Timestamp getTimestamp(); + /** + * <code>.context.Timestamp timestamp = 1;</code> + */ + context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder(); + + /** + * <code>.monitoring.KpiValue kpi_value = 2;</code> + * @return Whether the kpiValue field is set. + */ + boolean hasKpiValue(); + /** + * <code>.monitoring.KpiValue kpi_value = 2;</code> + * @return The kpiValue. + */ + monitoring.Monitoring.KpiValue getKpiValue(); + /** + * <code>.monitoring.KpiValue kpi_value = 2;</code> + */ + monitoring.Monitoring.KpiValueOrBuilder getKpiValueOrBuilder(); + } + /** + * <pre> + * cell + * </pre> + * + * Protobuf type {@code monitoring.RawKpi} + */ + public static final class RawKpi extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:monitoring.RawKpi) + RawKpiOrBuilder { + private static final long serialVersionUID = 0L; + // Use RawKpi.newBuilder() to construct. + private RawKpi(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private RawKpi() { + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new RawKpi(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private RawKpi( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + 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: { + context.ContextOuterClass.Timestamp.Builder subBuilder = null; + if (timestamp_ != null) { + subBuilder = timestamp_.toBuilder(); + } + timestamp_ = input.readMessage(context.ContextOuterClass.Timestamp.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(timestamp_); + timestamp_ = subBuilder.buildPartial(); + } + + break; + } + case 18: { + monitoring.Monitoring.KpiValue.Builder subBuilder = null; + if (kpiValue_ != null) { + subBuilder = kpiValue_.toBuilder(); + } + kpiValue_ = input.readMessage(monitoring.Monitoring.KpiValue.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(kpiValue_); + kpiValue_ = subBuilder.buildPartial(); + } + + 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 { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return monitoring.Monitoring.internal_static_monitoring_RawKpi_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return monitoring.Monitoring.internal_static_monitoring_RawKpi_fieldAccessorTable + .ensureFieldAccessorsInitialized( + monitoring.Monitoring.RawKpi.class, monitoring.Monitoring.RawKpi.Builder.class); + } + + public static final int TIMESTAMP_FIELD_NUMBER = 1; + private context.ContextOuterClass.Timestamp timestamp_; + /** + * <code>.context.Timestamp timestamp = 1;</code> + * @return Whether the timestamp field is set. + */ + @java.lang.Override + public boolean hasTimestamp() { + return timestamp_ != null; + } + /** + * <code>.context.Timestamp timestamp = 1;</code> + * @return The timestamp. + */ + @java.lang.Override + public context.ContextOuterClass.Timestamp getTimestamp() { + return timestamp_ == null ? context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_; + } + /** + * <code>.context.Timestamp timestamp = 1;</code> + */ + @java.lang.Override + public context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder() { + return getTimestamp(); + } + + public static final int KPI_VALUE_FIELD_NUMBER = 2; + private monitoring.Monitoring.KpiValue kpiValue_; + /** + * <code>.monitoring.KpiValue kpi_value = 2;</code> + * @return Whether the kpiValue field is set. + */ + @java.lang.Override + public boolean hasKpiValue() { + return kpiValue_ != null; + } + /** + * <code>.monitoring.KpiValue kpi_value = 2;</code> + * @return The kpiValue. + */ + @java.lang.Override + public monitoring.Monitoring.KpiValue getKpiValue() { + return kpiValue_ == null ? monitoring.Monitoring.KpiValue.getDefaultInstance() : kpiValue_; + } + /** + * <code>.monitoring.KpiValue kpi_value = 2;</code> + */ + @java.lang.Override + public monitoring.Monitoring.KpiValueOrBuilder getKpiValueOrBuilder() { + return getKpiValue(); + } + + 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 (timestamp_ != null) { + output.writeMessage(1, getTimestamp()); + } + if (kpiValue_ != null) { + output.writeMessage(2, getKpiValue()); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (timestamp_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getTimestamp()); + } + if (kpiValue_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, getKpiValue()); + } + 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 monitoring.Monitoring.RawKpi)) { + return super.equals(obj); + } + monitoring.Monitoring.RawKpi other = (monitoring.Monitoring.RawKpi) obj; + + if (hasTimestamp() != other.hasTimestamp()) return false; + if (hasTimestamp()) { + if (!getTimestamp() + .equals(other.getTimestamp())) return false; + } + if (hasKpiValue() != other.hasKpiValue()) return false; + if (hasKpiValue()) { + if (!getKpiValue() + .equals(other.getKpiValue())) 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 (hasTimestamp()) { + hash = (37 * hash) + TIMESTAMP_FIELD_NUMBER; + hash = (53 * hash) + getTimestamp().hashCode(); + } + if (hasKpiValue()) { + hash = (37 * hash) + KPI_VALUE_FIELD_NUMBER; + hash = (53 * hash) + getKpiValue().hashCode(); + } + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static monitoring.Monitoring.RawKpi parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static monitoring.Monitoring.RawKpi parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static monitoring.Monitoring.RawKpi parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static monitoring.Monitoring.RawKpi parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static monitoring.Monitoring.RawKpi parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static monitoring.Monitoring.RawKpi parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static monitoring.Monitoring.RawKpi parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static monitoring.Monitoring.RawKpi 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 monitoring.Monitoring.RawKpi parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static monitoring.Monitoring.RawKpi 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 monitoring.Monitoring.RawKpi parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static monitoring.Monitoring.RawKpi 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(monitoring.Monitoring.RawKpi 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> + * cell + * </pre> + * + * Protobuf type {@code monitoring.RawKpi} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:monitoring.RawKpi) + monitoring.Monitoring.RawKpiOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return monitoring.Monitoring.internal_static_monitoring_RawKpi_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return monitoring.Monitoring.internal_static_monitoring_RawKpi_fieldAccessorTable + .ensureFieldAccessorsInitialized( + monitoring.Monitoring.RawKpi.class, monitoring.Monitoring.RawKpi.Builder.class); + } + + // Construct using monitoring.Monitoring.RawKpi.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + if (timestampBuilder_ == null) { + timestamp_ = null; + } else { + timestamp_ = null; + timestampBuilder_ = null; + } + if (kpiValueBuilder_ == null) { + kpiValue_ = null; + } else { + kpiValue_ = null; + kpiValueBuilder_ = null; + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return monitoring.Monitoring.internal_static_monitoring_RawKpi_descriptor; + } + + @java.lang.Override + public monitoring.Monitoring.RawKpi getDefaultInstanceForType() { + return monitoring.Monitoring.RawKpi.getDefaultInstance(); + } + + @java.lang.Override + public monitoring.Monitoring.RawKpi build() { + monitoring.Monitoring.RawKpi result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public monitoring.Monitoring.RawKpi buildPartial() { + monitoring.Monitoring.RawKpi result = new monitoring.Monitoring.RawKpi(this); + if (timestampBuilder_ == null) { + result.timestamp_ = timestamp_; + } else { + result.timestamp_ = timestampBuilder_.build(); + } + if (kpiValueBuilder_ == null) { + result.kpiValue_ = kpiValue_; + } else { + result.kpiValue_ = kpiValueBuilder_.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 monitoring.Monitoring.RawKpi) { + return mergeFrom((monitoring.Monitoring.RawKpi)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(monitoring.Monitoring.RawKpi other) { + if (other == monitoring.Monitoring.RawKpi.getDefaultInstance()) return this; + if (other.hasTimestamp()) { + mergeTimestamp(other.getTimestamp()); + } + if (other.hasKpiValue()) { + mergeKpiValue(other.getKpiValue()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @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 { + monitoring.Monitoring.RawKpi parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (monitoring.Monitoring.RawKpi) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + private context.ContextOuterClass.Timestamp timestamp_; + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> timestampBuilder_; + /** + * <code>.context.Timestamp timestamp = 1;</code> + * @return Whether the timestamp field is set. + */ + public boolean hasTimestamp() { + return timestampBuilder_ != null || timestamp_ != null; + } + /** + * <code>.context.Timestamp timestamp = 1;</code> + * @return The timestamp. + */ + public context.ContextOuterClass.Timestamp getTimestamp() { + if (timestampBuilder_ == null) { + return timestamp_ == null ? context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_; + } else { + return timestampBuilder_.getMessage(); + } + } + /** + * <code>.context.Timestamp timestamp = 1;</code> + */ + public Builder setTimestamp(context.ContextOuterClass.Timestamp value) { + if (timestampBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + timestamp_ = value; + onChanged(); + } else { + timestampBuilder_.setMessage(value); + } + + return this; + } + /** + * <code>.context.Timestamp timestamp = 1;</code> + */ + public Builder setTimestamp( + context.ContextOuterClass.Timestamp.Builder builderForValue) { + if (timestampBuilder_ == null) { + timestamp_ = builderForValue.build(); + onChanged(); + } else { + timestampBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.context.Timestamp timestamp = 1;</code> + */ + public Builder mergeTimestamp(context.ContextOuterClass.Timestamp value) { + if (timestampBuilder_ == null) { + if (timestamp_ != null) { + timestamp_ = + context.ContextOuterClass.Timestamp.newBuilder(timestamp_).mergeFrom(value).buildPartial(); + } else { + timestamp_ = value; + } + onChanged(); + } else { + timestampBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.context.Timestamp timestamp = 1;</code> + */ + public Builder clearTimestamp() { + if (timestampBuilder_ == null) { + timestamp_ = null; + onChanged(); + } else { + timestamp_ = null; + timestampBuilder_ = null; + } + + return this; + } + /** + * <code>.context.Timestamp timestamp = 1;</code> + */ + public context.ContextOuterClass.Timestamp.Builder getTimestampBuilder() { + + onChanged(); + return getTimestampFieldBuilder().getBuilder(); + } + /** + * <code>.context.Timestamp timestamp = 1;</code> + */ + public context.ContextOuterClass.TimestampOrBuilder getTimestampOrBuilder() { + if (timestampBuilder_ != null) { + return timestampBuilder_.getMessageOrBuilder(); + } else { + return timestamp_ == null ? + context.ContextOuterClass.Timestamp.getDefaultInstance() : timestamp_; + } + } + /** + * <code>.context.Timestamp timestamp = 1;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> + getTimestampFieldBuilder() { + if (timestampBuilder_ == null) { + timestampBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder>( + getTimestamp(), + getParentForChildren(), + isClean()); + timestamp_ = null; + } + return timestampBuilder_; + } + + private monitoring.Monitoring.KpiValue kpiValue_; + private com.google.protobuf.SingleFieldBuilderV3< + monitoring.Monitoring.KpiValue, monitoring.Monitoring.KpiValue.Builder, monitoring.Monitoring.KpiValueOrBuilder> kpiValueBuilder_; + /** + * <code>.monitoring.KpiValue kpi_value = 2;</code> + * @return Whether the kpiValue field is set. + */ + public boolean hasKpiValue() { + return kpiValueBuilder_ != null || kpiValue_ != null; + } + /** + * <code>.monitoring.KpiValue kpi_value = 2;</code> + * @return The kpiValue. + */ + public monitoring.Monitoring.KpiValue getKpiValue() { + if (kpiValueBuilder_ == null) { + return kpiValue_ == null ? monitoring.Monitoring.KpiValue.getDefaultInstance() : kpiValue_; + } else { + return kpiValueBuilder_.getMessage(); + } + } + /** + * <code>.monitoring.KpiValue kpi_value = 2;</code> + */ + public Builder setKpiValue(monitoring.Monitoring.KpiValue value) { + if (kpiValueBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + kpiValue_ = value; + onChanged(); + } else { + kpiValueBuilder_.setMessage(value); + } + + return this; + } + /** + * <code>.monitoring.KpiValue kpi_value = 2;</code> + */ + public Builder setKpiValue( + monitoring.Monitoring.KpiValue.Builder builderForValue) { + if (kpiValueBuilder_ == null) { + kpiValue_ = builderForValue.build(); + onChanged(); + } else { + kpiValueBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.monitoring.KpiValue kpi_value = 2;</code> + */ + public Builder mergeKpiValue(monitoring.Monitoring.KpiValue value) { + if (kpiValueBuilder_ == null) { + if (kpiValue_ != null) { + kpiValue_ = + monitoring.Monitoring.KpiValue.newBuilder(kpiValue_).mergeFrom(value).buildPartial(); + } else { + kpiValue_ = value; + } + onChanged(); + } else { + kpiValueBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.monitoring.KpiValue kpi_value = 2;</code> + */ + public Builder clearKpiValue() { + if (kpiValueBuilder_ == null) { + kpiValue_ = null; + onChanged(); + } else { + kpiValue_ = null; + kpiValueBuilder_ = null; + } + + return this; + } + /** + * <code>.monitoring.KpiValue kpi_value = 2;</code> + */ + public monitoring.Monitoring.KpiValue.Builder getKpiValueBuilder() { + + onChanged(); + return getKpiValueFieldBuilder().getBuilder(); + } + /** + * <code>.monitoring.KpiValue kpi_value = 2;</code> + */ + public monitoring.Monitoring.KpiValueOrBuilder getKpiValueOrBuilder() { + if (kpiValueBuilder_ != null) { + return kpiValueBuilder_.getMessageOrBuilder(); + } else { + return kpiValue_ == null ? + monitoring.Monitoring.KpiValue.getDefaultInstance() : kpiValue_; + } + } + /** + * <code>.monitoring.KpiValue kpi_value = 2;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + monitoring.Monitoring.KpiValue, monitoring.Monitoring.KpiValue.Builder, monitoring.Monitoring.KpiValueOrBuilder> + getKpiValueFieldBuilder() { + if (kpiValueBuilder_ == null) { + kpiValueBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + monitoring.Monitoring.KpiValue, monitoring.Monitoring.KpiValue.Builder, monitoring.Monitoring.KpiValueOrBuilder>( + getKpiValue(), + getParentForChildren(), + isClean()); + kpiValue_ = null; + } + return kpiValueBuilder_; + } + @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:monitoring.RawKpi) + } + + // @@protoc_insertion_point(class_scope:monitoring.RawKpi) + private static final monitoring.Monitoring.RawKpi DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new monitoring.Monitoring.RawKpi(); + } + + public static monitoring.Monitoring.RawKpi getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<RawKpi> + PARSER = new com.google.protobuf.AbstractParser<RawKpi>() { + @java.lang.Override + public RawKpi parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new RawKpi(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<RawKpi> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<RawKpi> getParserForType() { + return PARSER; + } + + @java.lang.Override + public monitoring.Monitoring.RawKpi getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface RawKpiListOrBuilder extends + // @@protoc_insertion_point(interface_extends:monitoring.RawKpiList) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>.monitoring.KpiId kpi_id = 1;</code> + * @return Whether the kpiId field is set. + */ + boolean hasKpiId(); + /** + * <code>.monitoring.KpiId kpi_id = 1;</code> + * @return The kpiId. + */ + monitoring.Monitoring.KpiId getKpiId(); + /** + * <code>.monitoring.KpiId kpi_id = 1;</code> + */ + monitoring.Monitoring.KpiIdOrBuilder getKpiIdOrBuilder(); + + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + java.util.List<monitoring.Monitoring.RawKpi> + getRawKpisList(); + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + monitoring.Monitoring.RawKpi getRawKpis(int index); + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + int getRawKpisCount(); + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + java.util.List<? extends monitoring.Monitoring.RawKpiOrBuilder> + getRawKpisOrBuilderList(); + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + monitoring.Monitoring.RawKpiOrBuilder getRawKpisOrBuilder( + int index); + } + /** + * <pre> + * column + * </pre> + * + * Protobuf type {@code monitoring.RawKpiList} + */ + public static final class RawKpiList extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:monitoring.RawKpiList) + RawKpiListOrBuilder { + private static final long serialVersionUID = 0L; + // Use RawKpiList.newBuilder() to construct. + private RawKpiList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private RawKpiList() { + rawKpis_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new RawKpiList(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private RawKpiList( + 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: { + monitoring.Monitoring.KpiId.Builder subBuilder = null; + if (kpiId_ != null) { + subBuilder = kpiId_.toBuilder(); + } + kpiId_ = input.readMessage(monitoring.Monitoring.KpiId.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(kpiId_); + kpiId_ = subBuilder.buildPartial(); + } + + break; + } + case 18: { + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + rawKpis_ = new java.util.ArrayList<monitoring.Monitoring.RawKpi>(); + mutable_bitField0_ |= 0x00000001; + } + rawKpis_.add( + input.readMessage(monitoring.Monitoring.RawKpi.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)) { + rawKpis_ = java.util.Collections.unmodifiableList(rawKpis_); + } + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return monitoring.Monitoring.internal_static_monitoring_RawKpiList_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return monitoring.Monitoring.internal_static_monitoring_RawKpiList_fieldAccessorTable + .ensureFieldAccessorsInitialized( + monitoring.Monitoring.RawKpiList.class, monitoring.Monitoring.RawKpiList.Builder.class); + } + + public static final int KPI_ID_FIELD_NUMBER = 1; + private monitoring.Monitoring.KpiId kpiId_; + /** + * <code>.monitoring.KpiId kpi_id = 1;</code> + * @return Whether the kpiId field is set. + */ + @java.lang.Override + public boolean hasKpiId() { + return kpiId_ != null; + } + /** + * <code>.monitoring.KpiId kpi_id = 1;</code> + * @return The kpiId. + */ + @java.lang.Override + public monitoring.Monitoring.KpiId getKpiId() { + return kpiId_ == null ? monitoring.Monitoring.KpiId.getDefaultInstance() : kpiId_; + } + /** + * <code>.monitoring.KpiId kpi_id = 1;</code> + */ + @java.lang.Override + public monitoring.Monitoring.KpiIdOrBuilder getKpiIdOrBuilder() { + return getKpiId(); + } + + public static final int RAW_KPIS_FIELD_NUMBER = 2; + private java.util.List<monitoring.Monitoring.RawKpi> rawKpis_; + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + @java.lang.Override + public java.util.List<monitoring.Monitoring.RawKpi> getRawKpisList() { + return rawKpis_; + } + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + @java.lang.Override + public java.util.List<? extends monitoring.Monitoring.RawKpiOrBuilder> + getRawKpisOrBuilderList() { + return rawKpis_; + } + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + @java.lang.Override + public int getRawKpisCount() { + return rawKpis_.size(); + } + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + @java.lang.Override + public monitoring.Monitoring.RawKpi getRawKpis(int index) { + return rawKpis_.get(index); + } + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + @java.lang.Override + public monitoring.Monitoring.RawKpiOrBuilder getRawKpisOrBuilder( + int index) { + return rawKpis_.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 (kpiId_ != null) { + output.writeMessage(1, getKpiId()); + } + for (int i = 0; i < rawKpis_.size(); i++) { + output.writeMessage(2, rawKpis_.get(i)); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (kpiId_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getKpiId()); + } + for (int i = 0; i < rawKpis_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, rawKpis_.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 monitoring.Monitoring.RawKpiList)) { + return super.equals(obj); + } + monitoring.Monitoring.RawKpiList other = (monitoring.Monitoring.RawKpiList) obj; + + if (hasKpiId() != other.hasKpiId()) return false; + if (hasKpiId()) { + if (!getKpiId() + .equals(other.getKpiId())) return false; + } + if (!getRawKpisList() + .equals(other.getRawKpisList())) 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 (hasKpiId()) { + hash = (37 * hash) + KPI_ID_FIELD_NUMBER; + hash = (53 * hash) + getKpiId().hashCode(); + } + if (getRawKpisCount() > 0) { + hash = (37 * hash) + RAW_KPIS_FIELD_NUMBER; + hash = (53 * hash) + getRawKpisList().hashCode(); + } + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static monitoring.Monitoring.RawKpiList parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static monitoring.Monitoring.RawKpiList parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static monitoring.Monitoring.RawKpiList parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static monitoring.Monitoring.RawKpiList parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static monitoring.Monitoring.RawKpiList parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static monitoring.Monitoring.RawKpiList parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static monitoring.Monitoring.RawKpiList parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static monitoring.Monitoring.RawKpiList 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 monitoring.Monitoring.RawKpiList parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static monitoring.Monitoring.RawKpiList 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 monitoring.Monitoring.RawKpiList parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static monitoring.Monitoring.RawKpiList 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(monitoring.Monitoring.RawKpiList 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> + * column + * </pre> + * + * Protobuf type {@code monitoring.RawKpiList} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:monitoring.RawKpiList) + monitoring.Monitoring.RawKpiListOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return monitoring.Monitoring.internal_static_monitoring_RawKpiList_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return monitoring.Monitoring.internal_static_monitoring_RawKpiList_fieldAccessorTable + .ensureFieldAccessorsInitialized( + monitoring.Monitoring.RawKpiList.class, monitoring.Monitoring.RawKpiList.Builder.class); + } + + // Construct using monitoring.Monitoring.RawKpiList.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getRawKpisFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + if (kpiIdBuilder_ == null) { + kpiId_ = null; + } else { + kpiId_ = null; + kpiIdBuilder_ = null; + } + if (rawKpisBuilder_ == null) { + rawKpis_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + } else { + rawKpisBuilder_.clear(); + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return monitoring.Monitoring.internal_static_monitoring_RawKpiList_descriptor; + } + + @java.lang.Override + public monitoring.Monitoring.RawKpiList getDefaultInstanceForType() { + return monitoring.Monitoring.RawKpiList.getDefaultInstance(); + } + + @java.lang.Override + public monitoring.Monitoring.RawKpiList build() { + monitoring.Monitoring.RawKpiList result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public monitoring.Monitoring.RawKpiList buildPartial() { + monitoring.Monitoring.RawKpiList result = new monitoring.Monitoring.RawKpiList(this); + int from_bitField0_ = bitField0_; + if (kpiIdBuilder_ == null) { + result.kpiId_ = kpiId_; + } else { + result.kpiId_ = kpiIdBuilder_.build(); + } + if (rawKpisBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + rawKpis_ = java.util.Collections.unmodifiableList(rawKpis_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.rawKpis_ = rawKpis_; + } else { + result.rawKpis_ = rawKpisBuilder_.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 monitoring.Monitoring.RawKpiList) { + return mergeFrom((monitoring.Monitoring.RawKpiList)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(monitoring.Monitoring.RawKpiList other) { + if (other == monitoring.Monitoring.RawKpiList.getDefaultInstance()) return this; + if (other.hasKpiId()) { + mergeKpiId(other.getKpiId()); + } + if (rawKpisBuilder_ == null) { + if (!other.rawKpis_.isEmpty()) { + if (rawKpis_.isEmpty()) { + rawKpis_ = other.rawKpis_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureRawKpisIsMutable(); + rawKpis_.addAll(other.rawKpis_); + } + onChanged(); + } + } else { + if (!other.rawKpis_.isEmpty()) { + if (rawKpisBuilder_.isEmpty()) { + rawKpisBuilder_.dispose(); + rawKpisBuilder_ = null; + rawKpis_ = other.rawKpis_; + bitField0_ = (bitField0_ & ~0x00000001); + rawKpisBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getRawKpisFieldBuilder() : null; + } else { + rawKpisBuilder_.addAllMessages(other.rawKpis_); + } + } + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @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 { + monitoring.Monitoring.RawKpiList parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (monitoring.Monitoring.RawKpiList) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + private monitoring.Monitoring.KpiId kpiId_; + private com.google.protobuf.SingleFieldBuilderV3< + monitoring.Monitoring.KpiId, monitoring.Monitoring.KpiId.Builder, monitoring.Monitoring.KpiIdOrBuilder> kpiIdBuilder_; + /** + * <code>.monitoring.KpiId kpi_id = 1;</code> + * @return Whether the kpiId field is set. + */ + public boolean hasKpiId() { + return kpiIdBuilder_ != null || kpiId_ != null; + } + /** + * <code>.monitoring.KpiId kpi_id = 1;</code> + * @return The kpiId. + */ + public monitoring.Monitoring.KpiId getKpiId() { + if (kpiIdBuilder_ == null) { + return kpiId_ == null ? monitoring.Monitoring.KpiId.getDefaultInstance() : kpiId_; + } else { + return kpiIdBuilder_.getMessage(); + } + } + /** + * <code>.monitoring.KpiId kpi_id = 1;</code> + */ + public Builder setKpiId(monitoring.Monitoring.KpiId value) { + if (kpiIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + kpiId_ = value; + onChanged(); + } else { + kpiIdBuilder_.setMessage(value); + } + + return this; + } + /** + * <code>.monitoring.KpiId kpi_id = 1;</code> + */ + public Builder setKpiId( + monitoring.Monitoring.KpiId.Builder builderForValue) { + if (kpiIdBuilder_ == null) { + kpiId_ = builderForValue.build(); + onChanged(); + } else { + kpiIdBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * <code>.monitoring.KpiId kpi_id = 1;</code> + */ + public Builder mergeKpiId(monitoring.Monitoring.KpiId value) { + if (kpiIdBuilder_ == null) { + if (kpiId_ != null) { + kpiId_ = + monitoring.Monitoring.KpiId.newBuilder(kpiId_).mergeFrom(value).buildPartial(); + } else { + kpiId_ = value; + } + onChanged(); + } else { + kpiIdBuilder_.mergeFrom(value); + } + + return this; + } + /** + * <code>.monitoring.KpiId kpi_id = 1;</code> + */ + public Builder clearKpiId() { + if (kpiIdBuilder_ == null) { + kpiId_ = null; + onChanged(); + } else { + kpiId_ = null; + kpiIdBuilder_ = null; + } + + return this; + } + /** + * <code>.monitoring.KpiId kpi_id = 1;</code> + */ + public monitoring.Monitoring.KpiId.Builder getKpiIdBuilder() { + + onChanged(); + return getKpiIdFieldBuilder().getBuilder(); + } + /** + * <code>.monitoring.KpiId kpi_id = 1;</code> + */ + public monitoring.Monitoring.KpiIdOrBuilder getKpiIdOrBuilder() { + if (kpiIdBuilder_ != null) { + return kpiIdBuilder_.getMessageOrBuilder(); + } else { + return kpiId_ == null ? + monitoring.Monitoring.KpiId.getDefaultInstance() : kpiId_; + } + } + /** + * <code>.monitoring.KpiId kpi_id = 1;</code> + */ + private com.google.protobuf.SingleFieldBuilderV3< + monitoring.Monitoring.KpiId, monitoring.Monitoring.KpiId.Builder, monitoring.Monitoring.KpiIdOrBuilder> + getKpiIdFieldBuilder() { + if (kpiIdBuilder_ == null) { + kpiIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + monitoring.Monitoring.KpiId, monitoring.Monitoring.KpiId.Builder, monitoring.Monitoring.KpiIdOrBuilder>( + getKpiId(), + getParentForChildren(), + isClean()); + kpiId_ = null; + } + return kpiIdBuilder_; + } + + private java.util.List<monitoring.Monitoring.RawKpi> rawKpis_ = + java.util.Collections.emptyList(); + private void ensureRawKpisIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + rawKpis_ = new java.util.ArrayList<monitoring.Monitoring.RawKpi>(rawKpis_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + monitoring.Monitoring.RawKpi, monitoring.Monitoring.RawKpi.Builder, monitoring.Monitoring.RawKpiOrBuilder> rawKpisBuilder_; + + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + public java.util.List<monitoring.Monitoring.RawKpi> getRawKpisList() { + if (rawKpisBuilder_ == null) { + return java.util.Collections.unmodifiableList(rawKpis_); + } else { + return rawKpisBuilder_.getMessageList(); + } + } + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + public int getRawKpisCount() { + if (rawKpisBuilder_ == null) { + return rawKpis_.size(); + } else { + return rawKpisBuilder_.getCount(); + } + } + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + public monitoring.Monitoring.RawKpi getRawKpis(int index) { + if (rawKpisBuilder_ == null) { + return rawKpis_.get(index); + } else { + return rawKpisBuilder_.getMessage(index); + } + } + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + public Builder setRawKpis( + int index, monitoring.Monitoring.RawKpi value) { + if (rawKpisBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureRawKpisIsMutable(); + rawKpis_.set(index, value); + onChanged(); + } else { + rawKpisBuilder_.setMessage(index, value); + } + return this; + } + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + public Builder setRawKpis( + int index, monitoring.Monitoring.RawKpi.Builder builderForValue) { + if (rawKpisBuilder_ == null) { + ensureRawKpisIsMutable(); + rawKpis_.set(index, builderForValue.build()); + onChanged(); + } else { + rawKpisBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + public Builder addRawKpis(monitoring.Monitoring.RawKpi value) { + if (rawKpisBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureRawKpisIsMutable(); + rawKpis_.add(value); + onChanged(); + } else { + rawKpisBuilder_.addMessage(value); + } + return this; + } + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + public Builder addRawKpis( + int index, monitoring.Monitoring.RawKpi value) { + if (rawKpisBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureRawKpisIsMutable(); + rawKpis_.add(index, value); + onChanged(); + } else { + rawKpisBuilder_.addMessage(index, value); + } + return this; + } + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + public Builder addRawKpis( + monitoring.Monitoring.RawKpi.Builder builderForValue) { + if (rawKpisBuilder_ == null) { + ensureRawKpisIsMutable(); + rawKpis_.add(builderForValue.build()); + onChanged(); + } else { + rawKpisBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + public Builder addRawKpis( + int index, monitoring.Monitoring.RawKpi.Builder builderForValue) { + if (rawKpisBuilder_ == null) { + ensureRawKpisIsMutable(); + rawKpis_.add(index, builderForValue.build()); + onChanged(); + } else { + rawKpisBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + public Builder addAllRawKpis( + java.lang.Iterable<? extends monitoring.Monitoring.RawKpi> values) { + if (rawKpisBuilder_ == null) { + ensureRawKpisIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, rawKpis_); + onChanged(); + } else { + rawKpisBuilder_.addAllMessages(values); + } + return this; + } + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + public Builder clearRawKpis() { + if (rawKpisBuilder_ == null) { + rawKpis_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + rawKpisBuilder_.clear(); + } + return this; + } + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + public Builder removeRawKpis(int index) { + if (rawKpisBuilder_ == null) { + ensureRawKpisIsMutable(); + rawKpis_.remove(index); + onChanged(); + } else { + rawKpisBuilder_.remove(index); + } + return this; + } + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + public monitoring.Monitoring.RawKpi.Builder getRawKpisBuilder( + int index) { + return getRawKpisFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + public monitoring.Monitoring.RawKpiOrBuilder getRawKpisOrBuilder( + int index) { + if (rawKpisBuilder_ == null) { + return rawKpis_.get(index); } else { + return rawKpisBuilder_.getMessageOrBuilder(index); + } + } + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + public java.util.List<? extends monitoring.Monitoring.RawKpiOrBuilder> + getRawKpisOrBuilderList() { + if (rawKpisBuilder_ != null) { + return rawKpisBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(rawKpis_); + } + } + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + public monitoring.Monitoring.RawKpi.Builder addRawKpisBuilder() { + return getRawKpisFieldBuilder().addBuilder( + monitoring.Monitoring.RawKpi.getDefaultInstance()); + } + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + public monitoring.Monitoring.RawKpi.Builder addRawKpisBuilder( + int index) { + return getRawKpisFieldBuilder().addBuilder( + index, monitoring.Monitoring.RawKpi.getDefaultInstance()); + } + /** + * <code>repeated .monitoring.RawKpi raw_kpis = 2;</code> + */ + public java.util.List<monitoring.Monitoring.RawKpi.Builder> + getRawKpisBuilderList() { + return getRawKpisFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + monitoring.Monitoring.RawKpi, monitoring.Monitoring.RawKpi.Builder, monitoring.Monitoring.RawKpiOrBuilder> + getRawKpisFieldBuilder() { + if (rawKpisBuilder_ == null) { + rawKpisBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + monitoring.Monitoring.RawKpi, monitoring.Monitoring.RawKpi.Builder, monitoring.Monitoring.RawKpiOrBuilder>( + rawKpis_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + rawKpis_ = null; + } + return rawKpisBuilder_; + } + @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:monitoring.RawKpiList) + } + + // @@protoc_insertion_point(class_scope:monitoring.RawKpiList) + private static final monitoring.Monitoring.RawKpiList DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new monitoring.Monitoring.RawKpiList(); + } + + public static monitoring.Monitoring.RawKpiList getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<RawKpiList> + PARSER = new com.google.protobuf.AbstractParser<RawKpiList>() { + @java.lang.Override + public RawKpiList parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new RawKpiList(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<RawKpiList> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<RawKpiList> getParserForType() { + return PARSER; + } + + @java.lang.Override + public monitoring.Monitoring.RawKpiList getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface RawKpiTableOrBuilder extends + // @@protoc_insertion_point(interface_extends:monitoring.RawKpiTable) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> + */ + java.util.List<monitoring.Monitoring.RawKpiList> + getRawKpiListsList(); + /** + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> + */ + monitoring.Monitoring.RawKpiList getRawKpiLists(int index); + /** + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> + */ + int getRawKpiListsCount(); + /** + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> + */ + java.util.List<? extends monitoring.Monitoring.RawKpiListOrBuilder> + getRawKpiListsOrBuilderList(); + /** + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> + */ + monitoring.Monitoring.RawKpiListOrBuilder getRawKpiListsOrBuilder( + int index); + } + /** + * <pre> + * table + * </pre> + * + * Protobuf type {@code monitoring.RawKpiTable} + */ + public static final class RawKpiTable extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:monitoring.RawKpiTable) + RawKpiTableOrBuilder { + private static final long serialVersionUID = 0L; + // Use RawKpiTable.newBuilder() to construct. + private RawKpiTable(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private RawKpiTable() { + rawKpiLists_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new RawKpiTable(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private RawKpiTable( + 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)) { + rawKpiLists_ = new java.util.ArrayList<monitoring.Monitoring.RawKpiList>(); + mutable_bitField0_ |= 0x00000001; + } + rawKpiLists_.add( + input.readMessage(monitoring.Monitoring.RawKpiList.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)) { + rawKpiLists_ = java.util.Collections.unmodifiableList(rawKpiLists_); + } + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return monitoring.Monitoring.internal_static_monitoring_RawKpiTable_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return monitoring.Monitoring.internal_static_monitoring_RawKpiTable_fieldAccessorTable + .ensureFieldAccessorsInitialized( + monitoring.Monitoring.RawKpiTable.class, monitoring.Monitoring.RawKpiTable.Builder.class); + } + + public static final int RAW_KPI_LISTS_FIELD_NUMBER = 1; + private java.util.List<monitoring.Monitoring.RawKpiList> rawKpiLists_; + /** + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> + */ + @java.lang.Override + public java.util.List<monitoring.Monitoring.RawKpiList> getRawKpiListsList() { + return rawKpiLists_; + } + /** + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> + */ + @java.lang.Override + public java.util.List<? extends monitoring.Monitoring.RawKpiListOrBuilder> + getRawKpiListsOrBuilderList() { + return rawKpiLists_; + } + /** + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> + */ + @java.lang.Override + public int getRawKpiListsCount() { + return rawKpiLists_.size(); + } + /** + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> + */ + @java.lang.Override + public monitoring.Monitoring.RawKpiList getRawKpiLists(int index) { + return rawKpiLists_.get(index); + } + /** + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> + */ + @java.lang.Override + public monitoring.Monitoring.RawKpiListOrBuilder getRawKpiListsOrBuilder( + int index) { + return rawKpiLists_.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 < rawKpiLists_.size(); i++) { + output.writeMessage(1, rawKpiLists_.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 < rawKpiLists_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, rawKpiLists_.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 monitoring.Monitoring.RawKpiTable)) { + return super.equals(obj); + } + monitoring.Monitoring.RawKpiTable other = (monitoring.Monitoring.RawKpiTable) obj; + + if (!getRawKpiListsList() + .equals(other.getRawKpiListsList())) 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 (getRawKpiListsCount() > 0) { + hash = (37 * hash) + RAW_KPI_LISTS_FIELD_NUMBER; + hash = (53 * hash) + getRawKpiListsList().hashCode(); + } + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static monitoring.Monitoring.RawKpiTable parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static monitoring.Monitoring.RawKpiTable parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static monitoring.Monitoring.RawKpiTable parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static monitoring.Monitoring.RawKpiTable parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static monitoring.Monitoring.RawKpiTable parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static monitoring.Monitoring.RawKpiTable parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static monitoring.Monitoring.RawKpiTable parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static monitoring.Monitoring.RawKpiTable 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 monitoring.Monitoring.RawKpiTable parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static monitoring.Monitoring.RawKpiTable 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 monitoring.Monitoring.RawKpiTable parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static monitoring.Monitoring.RawKpiTable 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(monitoring.Monitoring.RawKpiTable 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> + * table + * </pre> + * + * Protobuf type {@code monitoring.RawKpiTable} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:monitoring.RawKpiTable) + monitoring.Monitoring.RawKpiTableOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return monitoring.Monitoring.internal_static_monitoring_RawKpiTable_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return monitoring.Monitoring.internal_static_monitoring_RawKpiTable_fieldAccessorTable + .ensureFieldAccessorsInitialized( + monitoring.Monitoring.RawKpiTable.class, monitoring.Monitoring.RawKpiTable.Builder.class); + } + + // Construct using monitoring.Monitoring.RawKpiTable.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getRawKpiListsFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + if (rawKpiListsBuilder_ == null) { + rawKpiLists_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + } else { + rawKpiListsBuilder_.clear(); + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return monitoring.Monitoring.internal_static_monitoring_RawKpiTable_descriptor; + } + + @java.lang.Override + public monitoring.Monitoring.RawKpiTable getDefaultInstanceForType() { + return monitoring.Monitoring.RawKpiTable.getDefaultInstance(); + } + + @java.lang.Override + public monitoring.Monitoring.RawKpiTable build() { + monitoring.Monitoring.RawKpiTable result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public monitoring.Monitoring.RawKpiTable buildPartial() { + monitoring.Monitoring.RawKpiTable result = new monitoring.Monitoring.RawKpiTable(this); + int from_bitField0_ = bitField0_; + if (rawKpiListsBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + rawKpiLists_ = java.util.Collections.unmodifiableList(rawKpiLists_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.rawKpiLists_ = rawKpiLists_; + } else { + result.rawKpiLists_ = rawKpiListsBuilder_.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 monitoring.Monitoring.RawKpiTable) { + return mergeFrom((monitoring.Monitoring.RawKpiTable)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(monitoring.Monitoring.RawKpiTable other) { + if (other == monitoring.Monitoring.RawKpiTable.getDefaultInstance()) return this; + if (rawKpiListsBuilder_ == null) { + if (!other.rawKpiLists_.isEmpty()) { + if (rawKpiLists_.isEmpty()) { + rawKpiLists_ = other.rawKpiLists_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureRawKpiListsIsMutable(); + rawKpiLists_.addAll(other.rawKpiLists_); + } + onChanged(); + } + } else { + if (!other.rawKpiLists_.isEmpty()) { + if (rawKpiListsBuilder_.isEmpty()) { + rawKpiListsBuilder_.dispose(); + rawKpiListsBuilder_ = null; + rawKpiLists_ = other.rawKpiLists_; + bitField0_ = (bitField0_ & ~0x00000001); + rawKpiListsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getRawKpiListsFieldBuilder() : null; + } else { + rawKpiListsBuilder_.addAllMessages(other.rawKpiLists_); + } + } + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @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 { + monitoring.Monitoring.RawKpiTable parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (monitoring.Monitoring.RawKpiTable) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + private java.util.List<monitoring.Monitoring.RawKpiList> rawKpiLists_ = + java.util.Collections.emptyList(); + private void ensureRawKpiListsIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + rawKpiLists_ = new java.util.ArrayList<monitoring.Monitoring.RawKpiList>(rawKpiLists_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + monitoring.Monitoring.RawKpiList, monitoring.Monitoring.RawKpiList.Builder, monitoring.Monitoring.RawKpiListOrBuilder> rawKpiListsBuilder_; + + /** + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> */ - public Builder clearStartTimestamp() { - if (startTimestampBuilder_ == null) { - startTimestamp_ = null; - onChanged(); + public java.util.List<monitoring.Monitoring.RawKpiList> getRawKpiListsList() { + if (rawKpiListsBuilder_ == null) { + return java.util.Collections.unmodifiableList(rawKpiLists_); } else { - startTimestamp_ = null; - startTimestampBuilder_ = null; + return rawKpiListsBuilder_.getMessageList(); } - - return this; } /** - * <pre> - * used when you want something like "get the samples since X date/time" - * </pre> - * - * <code>.context.Timestamp start_timestamp = 5;</code> + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> */ - public context.ContextOuterClass.Timestamp.Builder getStartTimestampBuilder() { - - onChanged(); - return getStartTimestampFieldBuilder().getBuilder(); + public int getRawKpiListsCount() { + if (rawKpiListsBuilder_ == null) { + return rawKpiLists_.size(); + } else { + return rawKpiListsBuilder_.getCount(); + } } /** - * <pre> - * used when you want something like "get the samples since X date/time" - * </pre> - * - * <code>.context.Timestamp start_timestamp = 5;</code> + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> */ - public context.ContextOuterClass.TimestampOrBuilder getStartTimestampOrBuilder() { - if (startTimestampBuilder_ != null) { - return startTimestampBuilder_.getMessageOrBuilder(); + public monitoring.Monitoring.RawKpiList getRawKpiLists(int index) { + if (rawKpiListsBuilder_ == null) { + return rawKpiLists_.get(index); } else { - return startTimestamp_ == null ? - context.ContextOuterClass.Timestamp.getDefaultInstance() : startTimestamp_; + return rawKpiListsBuilder_.getMessage(index); } } /** - * <pre> - * used when you want something like "get the samples since X date/time" - * </pre> - * - * <code>.context.Timestamp start_timestamp = 5;</code> + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> - getStartTimestampFieldBuilder() { - if (startTimestampBuilder_ == null) { - startTimestampBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder>( - getStartTimestamp(), - getParentForChildren(), - isClean()); - startTimestamp_ = null; + public Builder setRawKpiLists( + int index, monitoring.Monitoring.RawKpiList value) { + if (rawKpiListsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureRawKpiListsIsMutable(); + rawKpiLists_.set(index, value); + onChanged(); + } else { + rawKpiListsBuilder_.setMessage(index, value); } - return startTimestampBuilder_; + return this; } - - private context.ContextOuterClass.Timestamp endTimestamp_; - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> endTimestampBuilder_; /** - * <pre> - * used when you want something like "get the samples until X date/time" - * </pre> - * - * <code>.context.Timestamp end_timestamp = 6;</code> - * @return Whether the endTimestamp field is set. + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> */ - public boolean hasEndTimestamp() { - return endTimestampBuilder_ != null || endTimestamp_ != null; + public Builder setRawKpiLists( + int index, monitoring.Monitoring.RawKpiList.Builder builderForValue) { + if (rawKpiListsBuilder_ == null) { + ensureRawKpiListsIsMutable(); + rawKpiLists_.set(index, builderForValue.build()); + onChanged(); + } else { + rawKpiListsBuilder_.setMessage(index, builderForValue.build()); + } + return this; } /** - * <pre> - * used when you want something like "get the samples until X date/time" - * </pre> - * - * <code>.context.Timestamp end_timestamp = 6;</code> - * @return The endTimestamp. + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> */ - public context.ContextOuterClass.Timestamp getEndTimestamp() { - if (endTimestampBuilder_ == null) { - return endTimestamp_ == null ? context.ContextOuterClass.Timestamp.getDefaultInstance() : endTimestamp_; + public Builder addRawKpiLists(monitoring.Monitoring.RawKpiList value) { + if (rawKpiListsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureRawKpiListsIsMutable(); + rawKpiLists_.add(value); + onChanged(); } else { - return endTimestampBuilder_.getMessage(); + rawKpiListsBuilder_.addMessage(value); } + return this; } /** - * <pre> - * used when you want something like "get the samples until X date/time" - * </pre> - * - * <code>.context.Timestamp end_timestamp = 6;</code> + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> */ - public Builder setEndTimestamp(context.ContextOuterClass.Timestamp value) { - if (endTimestampBuilder_ == null) { + public Builder addRawKpiLists( + int index, monitoring.Monitoring.RawKpiList value) { + if (rawKpiListsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - endTimestamp_ = value; + ensureRawKpiListsIsMutable(); + rawKpiLists_.add(index, value); onChanged(); } else { - endTimestampBuilder_.setMessage(value); + rawKpiListsBuilder_.addMessage(index, value); } - return this; } /** - * <pre> - * used when you want something like "get the samples until X date/time" - * </pre> - * - * <code>.context.Timestamp end_timestamp = 6;</code> + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> */ - public Builder setEndTimestamp( - context.ContextOuterClass.Timestamp.Builder builderForValue) { - if (endTimestampBuilder_ == null) { - endTimestamp_ = builderForValue.build(); + public Builder addRawKpiLists( + monitoring.Monitoring.RawKpiList.Builder builderForValue) { + if (rawKpiListsBuilder_ == null) { + ensureRawKpiListsIsMutable(); + rawKpiLists_.add(builderForValue.build()); onChanged(); } else { - endTimestampBuilder_.setMessage(builderForValue.build()); + rawKpiListsBuilder_.addMessage(builderForValue.build()); } - return this; } /** - * <pre> - * used when you want something like "get the samples until X date/time" - * </pre> - * - * <code>.context.Timestamp end_timestamp = 6;</code> + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> */ - public Builder mergeEndTimestamp(context.ContextOuterClass.Timestamp value) { - if (endTimestampBuilder_ == null) { - if (endTimestamp_ != null) { - endTimestamp_ = - context.ContextOuterClass.Timestamp.newBuilder(endTimestamp_).mergeFrom(value).buildPartial(); - } else { - endTimestamp_ = value; - } + public Builder addRawKpiLists( + int index, monitoring.Monitoring.RawKpiList.Builder builderForValue) { + if (rawKpiListsBuilder_ == null) { + ensureRawKpiListsIsMutable(); + rawKpiLists_.add(index, builderForValue.build()); onChanged(); } else { - endTimestampBuilder_.mergeFrom(value); + rawKpiListsBuilder_.addMessage(index, builderForValue.build()); } - return this; } /** - * <pre> - * used when you want something like "get the samples until X date/time" - * </pre> - * - * <code>.context.Timestamp end_timestamp = 6;</code> + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> */ - public Builder clearEndTimestamp() { - if (endTimestampBuilder_ == null) { - endTimestamp_ = null; + public Builder addAllRawKpiLists( + java.lang.Iterable<? extends monitoring.Monitoring.RawKpiList> values) { + if (rawKpiListsBuilder_ == null) { + ensureRawKpiListsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, rawKpiLists_); onChanged(); } else { - endTimestamp_ = null; - endTimestampBuilder_ = null; + rawKpiListsBuilder_.addAllMessages(values); } - return this; } /** - * <pre> - * used when you want something like "get the samples until X date/time" - * </pre> - * - * <code>.context.Timestamp end_timestamp = 6;</code> + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> */ - public context.ContextOuterClass.Timestamp.Builder getEndTimestampBuilder() { - - onChanged(); - return getEndTimestampFieldBuilder().getBuilder(); + public Builder clearRawKpiLists() { + if (rawKpiListsBuilder_ == null) { + rawKpiLists_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + rawKpiListsBuilder_.clear(); + } + return this; } /** - * <pre> - * used when you want something like "get the samples until X date/time" - * </pre> - * - * <code>.context.Timestamp end_timestamp = 6;</code> + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> */ - public context.ContextOuterClass.TimestampOrBuilder getEndTimestampOrBuilder() { - if (endTimestampBuilder_ != null) { - return endTimestampBuilder_.getMessageOrBuilder(); + public Builder removeRawKpiLists(int index) { + if (rawKpiListsBuilder_ == null) { + ensureRawKpiListsIsMutable(); + rawKpiLists_.remove(index); + onChanged(); } else { - return endTimestamp_ == null ? - context.ContextOuterClass.Timestamp.getDefaultInstance() : endTimestamp_; + rawKpiListsBuilder_.remove(index); } + return this; } /** - * <pre> - * used when you want something like "get the samples until X date/time" - * </pre> - * - * <code>.context.Timestamp end_timestamp = 6;</code> + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> */ - private com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder> - getEndTimestampFieldBuilder() { - if (endTimestampBuilder_ == null) { - endTimestampBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - context.ContextOuterClass.Timestamp, context.ContextOuterClass.Timestamp.Builder, context.ContextOuterClass.TimestampOrBuilder>( - getEndTimestamp(), + public monitoring.Monitoring.RawKpiList.Builder getRawKpiListsBuilder( + int index) { + return getRawKpiListsFieldBuilder().getBuilder(index); + } + /** + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> + */ + public monitoring.Monitoring.RawKpiListOrBuilder getRawKpiListsOrBuilder( + int index) { + if (rawKpiListsBuilder_ == null) { + return rawKpiLists_.get(index); } else { + return rawKpiListsBuilder_.getMessageOrBuilder(index); + } + } + /** + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> + */ + public java.util.List<? extends monitoring.Monitoring.RawKpiListOrBuilder> + getRawKpiListsOrBuilderList() { + if (rawKpiListsBuilder_ != null) { + return rawKpiListsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(rawKpiLists_); + } + } + /** + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> + */ + public monitoring.Monitoring.RawKpiList.Builder addRawKpiListsBuilder() { + return getRawKpiListsFieldBuilder().addBuilder( + monitoring.Monitoring.RawKpiList.getDefaultInstance()); + } + /** + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> + */ + public monitoring.Monitoring.RawKpiList.Builder addRawKpiListsBuilder( + int index) { + return getRawKpiListsFieldBuilder().addBuilder( + index, monitoring.Monitoring.RawKpiList.getDefaultInstance()); + } + /** + * <code>repeated .monitoring.RawKpiList raw_kpi_lists = 1;</code> + */ + public java.util.List<monitoring.Monitoring.RawKpiList.Builder> + getRawKpiListsBuilderList() { + return getRawKpiListsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + monitoring.Monitoring.RawKpiList, monitoring.Monitoring.RawKpiList.Builder, monitoring.Monitoring.RawKpiListOrBuilder> + getRawKpiListsFieldBuilder() { + if (rawKpiListsBuilder_ == null) { + rawKpiListsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + monitoring.Monitoring.RawKpiList, monitoring.Monitoring.RawKpiList.Builder, monitoring.Monitoring.RawKpiListOrBuilder>( + rawKpiLists_, + ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); - endTimestamp_ = null; + rawKpiLists_ = null; } - return endTimestampBuilder_; + return rawKpiListsBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -4205,41 +7145,41 @@ public final class Monitoring { } - // @@protoc_insertion_point(builder_scope:monitoring.KpiQuery) + // @@protoc_insertion_point(builder_scope:monitoring.RawKpiTable) } - // @@protoc_insertion_point(class_scope:monitoring.KpiQuery) - private static final monitoring.Monitoring.KpiQuery DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:monitoring.RawKpiTable) + private static final monitoring.Monitoring.RawKpiTable DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new monitoring.Monitoring.KpiQuery(); + DEFAULT_INSTANCE = new monitoring.Monitoring.RawKpiTable(); } - public static monitoring.Monitoring.KpiQuery getDefaultInstance() { + public static monitoring.Monitoring.RawKpiTable getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser<KpiQuery> - PARSER = new com.google.protobuf.AbstractParser<KpiQuery>() { + private static final com.google.protobuf.Parser<RawKpiTable> + PARSER = new com.google.protobuf.AbstractParser<RawKpiTable>() { @java.lang.Override - public KpiQuery parsePartialFrom( + public RawKpiTable parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new KpiQuery(input, extensionRegistry); + return new RawKpiTable(input, extensionRegistry); } }; - public static com.google.protobuf.Parser<KpiQuery> parser() { + public static com.google.protobuf.Parser<RawKpiTable> parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser<KpiQuery> getParserForType() { + public com.google.protobuf.Parser<RawKpiTable> getParserForType() { return PARSER; } @java.lang.Override - public monitoring.Monitoring.KpiQuery getDefaultInstanceForType() { + public monitoring.Monitoring.RawKpiTable getDefaultInstanceForType() { return DEFAULT_INSTANCE; } @@ -18321,6 +21261,21 @@ public final class Monitoring { private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_monitoring_KpiQuery_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_monitoring_RawKpi_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_monitoring_RawKpi_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_monitoring_RawKpiList_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_monitoring_RawKpiList_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_monitoring_RawKpiTable_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_monitoring_RawKpiTable_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_monitoring_KpiId_descriptor; private static final @@ -18406,7 +21361,7 @@ public final class Monitoring { static { java.lang.String[] descriptorData = { "\n\020monitoring.proto\022\nmonitoring\032\rcontext." + - "proto\032\026kpi_sample_types.proto\"\311\002\n\rKpiDes" + + "proto\032\026kpi_sample_types.proto\"\367\002\n\rKpiDes" + "criptor\022!\n\006kpi_id\030\001 \001(\0132\021.monitoring.Kpi" + "Id\022\027\n\017kpi_description\030\002 \001(\t\022&\n\013kpi_id_li" + "st\030\003 \003(\0132\021.monitoring.KpiId\0228\n\017kpi_sampl" + @@ -18415,86 +21370,92 @@ public final class Monitoring { "eId\022(\n\013endpoint_id\030\006 \001(\0132\023.context.EndPo" + "intId\022&\n\nservice_id\030\007 \001(\0132\022.context.Serv" + "iceId\022\"\n\010slice_id\030\010 \001(\0132\020.context.SliceI" + - "d\"l\n\021MonitorKpiRequest\022!\n\006kpi_id\030\001 \001(\0132\021" + - ".monitoring.KpiId\022\033\n\023monitoring_window_s" + - "\030\002 \001(\002\022\027\n\017sampling_rate_s\030\003 \001(\002\"\323\001\n\010KpiQ" + - "uery\022!\n\006kpi_id\030\001 \001(\0132\021.monitoring.KpiId\022" + - "\033\n\023monitoring_window_s\030\002 \001(\002\022\027\n\017sampling" + - "_rate_s\030\003 \001(\002\022\026\n\016last_n_samples\030\004 \001(\r\022+\n" + - "\017start_timestamp\030\005 \001(\0132\022.context.Timesta" + - "mp\022)\n\rend_timestamp\030\006 \001(\0132\022.context.Time" + - "stamp\"&\n\005KpiId\022\035\n\006kpi_id\030\001 \001(\0132\r.context" + - ".Uuid\"x\n\003Kpi\022!\n\006kpi_id\030\001 \001(\0132\021.monitorin" + - "g.KpiId\022%\n\ttimestamp\030\002 \001(\0132\022.context.Tim" + - "estamp\022\'\n\tkpi_value\030\003 \001(\0132\024.monitoring.K" + - "piValue\"\250\001\n\rKpiValueRange\022)\n\013kpiMinValue" + - "\030\001 \001(\0132\024.monitoring.KpiValue\022)\n\013kpiMaxVa" + - "lue\030\002 \001(\0132\024.monitoring.KpiValue\022\017\n\007inRan" + - "ge\030\003 \001(\010\022\027\n\017includeMinValue\030\004 \001(\010\022\027\n\017inc" + - "ludeMaxValue\030\005 \001(\010\"\241\001\n\010KpiValue\022\022\n\010int32" + - "Val\030\001 \001(\005H\000\022\023\n\tuint32Val\030\002 \001(\rH\000\022\022\n\010int6" + - "4Val\030\003 \001(\003H\000\022\023\n\tuint64Val\030\004 \001(\004H\000\022\022\n\010flo" + - "atVal\030\005 \001(\002H\000\022\023\n\tstringVal\030\006 \001(\tH\000\022\021\n\007bo" + - "olVal\030\007 \001(\010H\000B\007\n\005value\"\'\n\007KpiList\022\034\n\003kpi" + - "\030\001 \003(\0132\017.monitoring.Kpi\"K\n\021KpiDescriptor" + - "List\0226\n\023kpi_descriptor_list\030\001 \003(\0132\031.moni" + - "toring.KpiDescriptor\"\362\001\n\016SubsDescriptor\022" + - "+\n\007subs_id\030\001 \001(\0132\032.monitoring.Subscripti" + - "onID\022!\n\006kpi_id\030\002 \001(\0132\021.monitoring.KpiId\022" + - "\033\n\023sampling_duration_s\030\003 \001(\002\022\033\n\023sampling" + - "_interval_s\030\004 \001(\002\022+\n\017start_timestamp\030\005 \001" + - "(\0132\022.context.Timestamp\022)\n\rend_timestamp\030" + - "\006 \001(\0132\022.context.Timestamp\"0\n\016Subscriptio" + - "nID\022\036\n\007subs_id\030\001 \001(\0132\r.context.Uuid\"b\n\014S" + - "ubsResponse\022+\n\007subs_id\030\001 \001(\0132\032.monitorin" + - "g.SubscriptionID\022%\n\010kpi_list\030\002 \001(\0132\023.mon" + - "itoring.KpiList\"?\n\010SubsList\0223\n\017subs_desc" + - "riptor\030\001 \003(\0132\032.monitoring.SubsDescriptor" + - "\"\337\001\n\017AlarmDescriptor\022%\n\010alarm_id\030\001 \001(\0132\023" + - ".monitoring.AlarmID\022\031\n\021alarm_description" + - "\030\002 \001(\t\022\014\n\004name\030\003 \001(\t\022!\n\006kpi_id\030\004 \001(\0132\021.m" + - "onitoring.KpiId\0222\n\017kpi_value_range\030\005 \001(\013" + - "2\031.monitoring.KpiValueRange\022%\n\ttimestamp" + - "\030\006 \001(\0132\022.context.Timestamp\"*\n\007AlarmID\022\037\n" + - "\010alarm_id\030\001 \001(\0132\r.context.Uuid\"}\n\021AlarmS" + - "ubscription\022%\n\010alarm_id\030\001 \001(\0132\023.monitori" + - "ng.AlarmID\022\036\n\026subscription_timeout_s\030\002 \001" + - "(\002\022!\n\031subscription_frequency_ms\030\003 \001(\002\"k\n" + - "\rAlarmResponse\022%\n\010alarm_id\030\001 \001(\0132\023.monit" + - "oring.AlarmID\022\014\n\004text\030\002 \001(\t\022%\n\010kpi_list\030" + - "\003 \001(\0132\023.monitoring.KpiList\"B\n\tAlarmList\022" + - "5\n\020alarm_descriptor\030\001 \003(\0132\033.monitoring.A" + - "larmDescriptor2\230\t\n\021MonitoringService\0228\n\006" + - "SetKpi\022\031.monitoring.KpiDescriptor\032\021.moni" + - "toring.KpiId\"\000\0220\n\tDeleteKpi\022\021.monitoring" + - ".KpiId\032\016.context.Empty\"\000\022B\n\020GetKpiDescri" + - "ptor\022\021.monitoring.KpiId\032\031.monitoring.Kpi" + - "Descriptor\"\000\022G\n\024GetKpiDescriptorList\022\016.c" + - "ontext.Empty\032\035.monitoring.KpiDescriptorL" + - "ist\"\000\022/\n\nIncludeKpi\022\017.monitoring.Kpi\032\016.c" + - "ontext.Empty\"\000\022=\n\nMonitorKpi\022\035.monitorin" + - "g.MonitorKpiRequest\032\016.context.Empty\"\000\022;\n" + - "\014QueryKpiData\022\024.monitoring.KpiQuery\032\023.mo" + - "nitoring.KpiList\"\000\022N\n\022SetKpiSubscription" + - "\022\032.monitoring.SubsDescriptor\032\030.monitorin" + - "g.SubsResponse\"\0000\001\022M\n\021GetSubsDescriptor\022" + - "\032.monitoring.SubscriptionID\032\032.monitoring" + - ".SubsDescriptor\"\000\022:\n\020GetSubscriptions\022\016." + - "context.Empty\032\024.monitoring.SubsList\"\000\022B\n" + - "\022DeleteSubscription\022\032.monitoring.Subscri" + - "ptionID\032\016.context.Empty\"\000\022A\n\013SetKpiAlarm" + - "\022\033.monitoring.AlarmDescriptor\032\023.monitori" + - "ng.AlarmID\"\000\0224\n\tGetAlarms\022\016.context.Empt" + - "y\032\025.monitoring.AlarmList\"\000\022H\n\022GetAlarmDe" + - "scriptor\022\023.monitoring.AlarmID\032\033.monitori" + - "ng.AlarmDescriptor\"\000\022V\n\026GetAlarmResponse" + - "Stream\022\035.monitoring.AlarmSubscription\032\031." + - "monitoring.AlarmResponse\"\0000\001\0224\n\013DeleteAl" + - "arm\022\023.monitoring.AlarmID\032\016.context.Empty" + - "\"\000\0226\n\014GetStreamKpi\022\021.monitoring.KpiId\032\017." + - "monitoring.Kpi\"\0000\001\0225\n\rGetInstantKpi\022\021.mo" + - "nitoring.KpiId\032\017.monitoring.Kpi\"\000b\006proto" + - "3" + "d\022,\n\rconnection_id\030\t \001(\0132\025.context.Conne" + + "ctionId\"l\n\021MonitorKpiRequest\022!\n\006kpi_id\030\001" + + " \001(\0132\021.monitoring.KpiId\022\033\n\023monitoring_wi" + + "ndow_s\030\002 \001(\002\022\027\n\017sampling_rate_s\030\003 \001(\002\"\273\001" + + "\n\010KpiQuery\022\"\n\007kpi_ids\030\001 \003(\0132\021.monitoring" + + ".KpiId\022\033\n\023monitoring_window_s\030\002 \001(\002\022\026\n\016l" + + "ast_n_samples\030\003 \001(\r\022+\n\017start_timestamp\030\004" + + " \001(\0132\022.context.Timestamp\022)\n\rend_timestam" + + "p\030\005 \001(\0132\022.context.Timestamp\"X\n\006RawKpi\022%\n" + + "\ttimestamp\030\001 \001(\0132\022.context.Timestamp\022\'\n\t" + + "kpi_value\030\002 \001(\0132\024.monitoring.KpiValue\"U\n" + + "\nRawKpiList\022!\n\006kpi_id\030\001 \001(\0132\021.monitoring" + + ".KpiId\022$\n\010raw_kpis\030\002 \003(\0132\022.monitoring.Ra" + + "wKpi\"<\n\013RawKpiTable\022-\n\rraw_kpi_lists\030\001 \003" + + "(\0132\026.monitoring.RawKpiList\"&\n\005KpiId\022\035\n\006k" + + "pi_id\030\001 \001(\0132\r.context.Uuid\"x\n\003Kpi\022!\n\006kpi" + + "_id\030\001 \001(\0132\021.monitoring.KpiId\022%\n\ttimestam" + + "p\030\002 \001(\0132\022.context.Timestamp\022\'\n\tkpi_value" + + "\030\003 \001(\0132\024.monitoring.KpiValue\"\250\001\n\rKpiValu" + + "eRange\022)\n\013kpiMinValue\030\001 \001(\0132\024.monitoring" + + ".KpiValue\022)\n\013kpiMaxValue\030\002 \001(\0132\024.monitor" + + "ing.KpiValue\022\017\n\007inRange\030\003 \001(\010\022\027\n\017include" + + "MinValue\030\004 \001(\010\022\027\n\017includeMaxValue\030\005 \001(\010\"" + + "\241\001\n\010KpiValue\022\022\n\010int32Val\030\001 \001(\005H\000\022\023\n\tuint" + + "32Val\030\002 \001(\rH\000\022\022\n\010int64Val\030\003 \001(\003H\000\022\023\n\tuin" + + "t64Val\030\004 \001(\004H\000\022\022\n\010floatVal\030\005 \001(\002H\000\022\023\n\tst" + + "ringVal\030\006 \001(\tH\000\022\021\n\007boolVal\030\007 \001(\010H\000B\007\n\005va" + + "lue\"\'\n\007KpiList\022\034\n\003kpi\030\001 \003(\0132\017.monitoring" + + ".Kpi\"K\n\021KpiDescriptorList\0226\n\023kpi_descrip" + + "tor_list\030\001 \003(\0132\031.monitoring.KpiDescripto" + + "r\"\362\001\n\016SubsDescriptor\022+\n\007subs_id\030\001 \001(\0132\032." + + "monitoring.SubscriptionID\022!\n\006kpi_id\030\002 \001(" + + "\0132\021.monitoring.KpiId\022\033\n\023sampling_duratio" + + "n_s\030\003 \001(\002\022\033\n\023sampling_interval_s\030\004 \001(\002\022+" + + "\n\017start_timestamp\030\005 \001(\0132\022.context.Timest" + + "amp\022)\n\rend_timestamp\030\006 \001(\0132\022.context.Tim" + + "estamp\"0\n\016SubscriptionID\022\036\n\007subs_id\030\001 \001(" + + "\0132\r.context.Uuid\"b\n\014SubsResponse\022+\n\007subs" + + "_id\030\001 \001(\0132\032.monitoring.SubscriptionID\022%\n" + + "\010kpi_list\030\002 \001(\0132\023.monitoring.KpiList\"?\n\010" + + "SubsList\0223\n\017subs_descriptor\030\001 \003(\0132\032.moni" + + "toring.SubsDescriptor\"\337\001\n\017AlarmDescripto" + + "r\022%\n\010alarm_id\030\001 \001(\0132\023.monitoring.AlarmID" + + "\022\031\n\021alarm_description\030\002 \001(\t\022\014\n\004name\030\003 \001(" + + "\t\022!\n\006kpi_id\030\004 \001(\0132\021.monitoring.KpiId\0222\n\017" + + "kpi_value_range\030\005 \001(\0132\031.monitoring.KpiVa" + + "lueRange\022%\n\ttimestamp\030\006 \001(\0132\022.context.Ti" + + "mestamp\"*\n\007AlarmID\022\037\n\010alarm_id\030\001 \001(\0132\r.c" + + "ontext.Uuid\"}\n\021AlarmSubscription\022%\n\010alar" + + "m_id\030\001 \001(\0132\023.monitoring.AlarmID\022\036\n\026subsc" + + "ription_timeout_s\030\002 \001(\002\022!\n\031subscription_" + + "frequency_ms\030\003 \001(\002\"k\n\rAlarmResponse\022%\n\010a" + + "larm_id\030\001 \001(\0132\023.monitoring.AlarmID\022\014\n\004te" + + "xt\030\002 \001(\t\022%\n\010kpi_list\030\003 \001(\0132\023.monitoring." + + "KpiList\"B\n\tAlarmList\0225\n\020alarm_descriptor" + + "\030\001 \003(\0132\033.monitoring.AlarmDescriptor2\234\t\n\021" + + "MonitoringService\0228\n\006SetKpi\022\031.monitoring" + + ".KpiDescriptor\032\021.monitoring.KpiId\"\000\0220\n\tD" + + "eleteKpi\022\021.monitoring.KpiId\032\016.context.Em" + + "pty\"\000\022B\n\020GetKpiDescriptor\022\021.monitoring.K" + + "piId\032\031.monitoring.KpiDescriptor\"\000\022G\n\024Get" + + "KpiDescriptorList\022\016.context.Empty\032\035.moni" + + "toring.KpiDescriptorList\"\000\022/\n\nIncludeKpi" + + "\022\017.monitoring.Kpi\032\016.context.Empty\"\000\022=\n\nM" + + "onitorKpi\022\035.monitoring.MonitorKpiRequest" + + "\032\016.context.Empty\"\000\022?\n\014QueryKpiData\022\024.mon" + + "itoring.KpiQuery\032\027.monitoring.RawKpiTabl" + + "e\"\000\022N\n\022SetKpiSubscription\022\032.monitoring.S" + + "ubsDescriptor\032\030.monitoring.SubsResponse\"" + + "\0000\001\022M\n\021GetSubsDescriptor\022\032.monitoring.Su" + + "bscriptionID\032\032.monitoring.SubsDescriptor" + + "\"\000\022:\n\020GetSubscriptions\022\016.context.Empty\032\024" + + ".monitoring.SubsList\"\000\022B\n\022DeleteSubscrip" + + "tion\022\032.monitoring.SubscriptionID\032\016.conte" + + "xt.Empty\"\000\022A\n\013SetKpiAlarm\022\033.monitoring.A" + + "larmDescriptor\032\023.monitoring.AlarmID\"\000\0224\n" + + "\tGetAlarms\022\016.context.Empty\032\025.monitoring." + + "AlarmList\"\000\022H\n\022GetAlarmDescriptor\022\023.moni" + + "toring.AlarmID\032\033.monitoring.AlarmDescrip" + + "tor\"\000\022V\n\026GetAlarmResponseStream\022\035.monito" + + "ring.AlarmSubscription\032\031.monitoring.Alar" + + "mResponse\"\0000\001\0224\n\013DeleteAlarm\022\023.monitorin" + + "g.AlarmID\032\016.context.Empty\"\000\0226\n\014GetStream" + + "Kpi\022\021.monitoring.KpiId\032\017.monitoring.Kpi\"" + + "\0000\001\0225\n\rGetInstantKpi\022\021.monitoring.KpiId\032" + + "\017.monitoring.Kpi\"\000b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, @@ -18507,7 +21468,7 @@ public final class Monitoring { internal_static_monitoring_KpiDescriptor_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_monitoring_KpiDescriptor_descriptor, - new java.lang.String[] { "KpiId", "KpiDescription", "KpiIdList", "KpiSampleType", "DeviceId", "EndpointId", "ServiceId", "SliceId", }); + new java.lang.String[] { "KpiId", "KpiDescription", "KpiIdList", "KpiSampleType", "DeviceId", "EndpointId", "ServiceId", "SliceId", "ConnectionId", }); internal_static_monitoring_MonitorKpiRequest_descriptor = getDescriptor().getMessageTypes().get(1); internal_static_monitoring_MonitorKpiRequest_fieldAccessorTable = new @@ -18519,93 +21480,111 @@ public final class Monitoring { internal_static_monitoring_KpiQuery_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_monitoring_KpiQuery_descriptor, - new java.lang.String[] { "KpiId", "MonitoringWindowS", "SamplingRateS", "LastNSamples", "StartTimestamp", "EndTimestamp", }); - internal_static_monitoring_KpiId_descriptor = + new java.lang.String[] { "KpiIds", "MonitoringWindowS", "LastNSamples", "StartTimestamp", "EndTimestamp", }); + internal_static_monitoring_RawKpi_descriptor = getDescriptor().getMessageTypes().get(3); + internal_static_monitoring_RawKpi_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_monitoring_RawKpi_descriptor, + new java.lang.String[] { "Timestamp", "KpiValue", }); + internal_static_monitoring_RawKpiList_descriptor = + getDescriptor().getMessageTypes().get(4); + internal_static_monitoring_RawKpiList_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_monitoring_RawKpiList_descriptor, + new java.lang.String[] { "KpiId", "RawKpis", }); + internal_static_monitoring_RawKpiTable_descriptor = + getDescriptor().getMessageTypes().get(5); + internal_static_monitoring_RawKpiTable_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_monitoring_RawKpiTable_descriptor, + new java.lang.String[] { "RawKpiLists", }); + internal_static_monitoring_KpiId_descriptor = + getDescriptor().getMessageTypes().get(6); internal_static_monitoring_KpiId_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_monitoring_KpiId_descriptor, new java.lang.String[] { "KpiId", }); internal_static_monitoring_Kpi_descriptor = - getDescriptor().getMessageTypes().get(4); + getDescriptor().getMessageTypes().get(7); internal_static_monitoring_Kpi_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_monitoring_Kpi_descriptor, new java.lang.String[] { "KpiId", "Timestamp", "KpiValue", }); internal_static_monitoring_KpiValueRange_descriptor = - getDescriptor().getMessageTypes().get(5); + getDescriptor().getMessageTypes().get(8); internal_static_monitoring_KpiValueRange_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_monitoring_KpiValueRange_descriptor, new java.lang.String[] { "KpiMinValue", "KpiMaxValue", "InRange", "IncludeMinValue", "IncludeMaxValue", }); internal_static_monitoring_KpiValue_descriptor = - getDescriptor().getMessageTypes().get(6); + getDescriptor().getMessageTypes().get(9); internal_static_monitoring_KpiValue_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_monitoring_KpiValue_descriptor, new java.lang.String[] { "Int32Val", "Uint32Val", "Int64Val", "Uint64Val", "FloatVal", "StringVal", "BoolVal", "Value", }); internal_static_monitoring_KpiList_descriptor = - getDescriptor().getMessageTypes().get(7); + getDescriptor().getMessageTypes().get(10); internal_static_monitoring_KpiList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_monitoring_KpiList_descriptor, new java.lang.String[] { "Kpi", }); internal_static_monitoring_KpiDescriptorList_descriptor = - getDescriptor().getMessageTypes().get(8); + getDescriptor().getMessageTypes().get(11); internal_static_monitoring_KpiDescriptorList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_monitoring_KpiDescriptorList_descriptor, new java.lang.String[] { "KpiDescriptorList", }); internal_static_monitoring_SubsDescriptor_descriptor = - getDescriptor().getMessageTypes().get(9); + getDescriptor().getMessageTypes().get(12); internal_static_monitoring_SubsDescriptor_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_monitoring_SubsDescriptor_descriptor, new java.lang.String[] { "SubsId", "KpiId", "SamplingDurationS", "SamplingIntervalS", "StartTimestamp", "EndTimestamp", }); internal_static_monitoring_SubscriptionID_descriptor = - getDescriptor().getMessageTypes().get(10); + getDescriptor().getMessageTypes().get(13); internal_static_monitoring_SubscriptionID_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_monitoring_SubscriptionID_descriptor, new java.lang.String[] { "SubsId", }); internal_static_monitoring_SubsResponse_descriptor = - getDescriptor().getMessageTypes().get(11); + getDescriptor().getMessageTypes().get(14); internal_static_monitoring_SubsResponse_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_monitoring_SubsResponse_descriptor, new java.lang.String[] { "SubsId", "KpiList", }); internal_static_monitoring_SubsList_descriptor = - getDescriptor().getMessageTypes().get(12); + getDescriptor().getMessageTypes().get(15); internal_static_monitoring_SubsList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_monitoring_SubsList_descriptor, new java.lang.String[] { "SubsDescriptor", }); internal_static_monitoring_AlarmDescriptor_descriptor = - getDescriptor().getMessageTypes().get(13); + getDescriptor().getMessageTypes().get(16); internal_static_monitoring_AlarmDescriptor_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_monitoring_AlarmDescriptor_descriptor, new java.lang.String[] { "AlarmId", "AlarmDescription", "Name", "KpiId", "KpiValueRange", "Timestamp", }); internal_static_monitoring_AlarmID_descriptor = - getDescriptor().getMessageTypes().get(14); + getDescriptor().getMessageTypes().get(17); internal_static_monitoring_AlarmID_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_monitoring_AlarmID_descriptor, new java.lang.String[] { "AlarmId", }); internal_static_monitoring_AlarmSubscription_descriptor = - getDescriptor().getMessageTypes().get(15); + getDescriptor().getMessageTypes().get(18); internal_static_monitoring_AlarmSubscription_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_monitoring_AlarmSubscription_descriptor, new java.lang.String[] { "AlarmId", "SubscriptionTimeoutS", "SubscriptionFrequencyMs", }); internal_static_monitoring_AlarmResponse_descriptor = - getDescriptor().getMessageTypes().get(16); + getDescriptor().getMessageTypes().get(19); internal_static_monitoring_AlarmResponse_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_monitoring_AlarmResponse_descriptor, new java.lang.String[] { "AlarmId", "Text", "KpiList", }); internal_static_monitoring_AlarmList_descriptor = - getDescriptor().getMessageTypes().get(17); + getDescriptor().getMessageTypes().get(20); internal_static_monitoring_AlarmList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_monitoring_AlarmList_descriptor, diff --git a/src/policy/target/generated-sources/grpc/monitoring/MonitoringService.java b/src/policy/target/generated-sources/grpc/monitoring/MonitoringService.java index e43e9174c6eee81e5c5faf4a2d3049848f01b041..0ce30559b2c0a1bb6236431482d6b99b82cf0842 100644 --- a/src/policy/target/generated-sources/grpc/monitoring/MonitoringService.java +++ b/src/policy/target/generated-sources/grpc/monitoring/MonitoringService.java @@ -20,7 +20,7 @@ public interface MonitoringService extends MutinyService { io.smallrye.mutiny.Uni<context.ContextOuterClass.Empty> monitorKpi(monitoring.Monitoring.MonitorKpiRequest request); - io.smallrye.mutiny.Uni<monitoring.Monitoring.KpiList> queryKpiData(monitoring.Monitoring.KpiQuery request); + io.smallrye.mutiny.Uni<monitoring.Monitoring.RawKpiTable> queryKpiData(monitoring.Monitoring.KpiQuery request); io.smallrye.mutiny.Uni<monitoring.Monitoring.SubsDescriptor> getSubsDescriptor(monitoring.Monitoring.SubscriptionID request); diff --git a/src/policy/target/generated-sources/grpc/monitoring/MonitoringServiceBean.java b/src/policy/target/generated-sources/grpc/monitoring/MonitoringServiceBean.java index 83c1b9cd108886f5b54248c5c9861ec9f5c2fabf..cbc984e7132bdbf22c9b99a510106c5c6f4cbda7 100644 --- a/src/policy/target/generated-sources/grpc/monitoring/MonitoringServiceBean.java +++ b/src/policy/target/generated-sources/grpc/monitoring/MonitoringServiceBean.java @@ -64,7 +64,7 @@ public class MonitoringServiceBean extends MutinyMonitoringServiceGrpc.Monitorin } } @Override - public io.smallrye.mutiny.Uni<monitoring.Monitoring.KpiList> queryKpiData(monitoring.Monitoring.KpiQuery request) { + public io.smallrye.mutiny.Uni<monitoring.Monitoring.RawKpiTable> queryKpiData(monitoring.Monitoring.KpiQuery request) { try { return delegate.queryKpiData(request); } catch (UnsupportedOperationException e) { diff --git a/src/policy/target/generated-sources/grpc/monitoring/MonitoringServiceClient.java b/src/policy/target/generated-sources/grpc/monitoring/MonitoringServiceClient.java index fc16b2b9bfb19c27fd6ff593e4d2311017b9286b..0e8ff5d1b8929694b49548984cd7d53f9c8f68a4 100644 --- a/src/policy/target/generated-sources/grpc/monitoring/MonitoringServiceClient.java +++ b/src/policy/target/generated-sources/grpc/monitoring/MonitoringServiceClient.java @@ -45,7 +45,7 @@ public class MonitoringServiceClient implements MonitoringService, MutinyClient< return stub.monitorKpi(request); } @Override - public io.smallrye.mutiny.Uni<monitoring.Monitoring.KpiList> queryKpiData(monitoring.Monitoring.KpiQuery request) { + public io.smallrye.mutiny.Uni<monitoring.Monitoring.RawKpiTable> queryKpiData(monitoring.Monitoring.KpiQuery request) { return stub.queryKpiData(request); } @Override diff --git a/src/policy/target/generated-sources/grpc/monitoring/MonitoringServiceGrpc.java b/src/policy/target/generated-sources/grpc/monitoring/MonitoringServiceGrpc.java index 9f3d85f72f78afca40e60c7439c84b61b1976d55..c5f55b3b44c03ea8f5377ce11e3c3e547da5ef06 100644 --- a/src/policy/target/generated-sources/grpc/monitoring/MonitoringServiceGrpc.java +++ b/src/policy/target/generated-sources/grpc/monitoring/MonitoringServiceGrpc.java @@ -201,28 +201,28 @@ public final class MonitoringServiceGrpc { } private static volatile io.grpc.MethodDescriptor<monitoring.Monitoring.KpiQuery, - monitoring.Monitoring.KpiList> getQueryKpiDataMethod; + monitoring.Monitoring.RawKpiTable> getQueryKpiDataMethod; @io.grpc.stub.annotations.RpcMethod( fullMethodName = SERVICE_NAME + '/' + "QueryKpiData", requestType = monitoring.Monitoring.KpiQuery.class, - responseType = monitoring.Monitoring.KpiList.class, + responseType = monitoring.Monitoring.RawKpiTable.class, methodType = io.grpc.MethodDescriptor.MethodType.UNARY) public static io.grpc.MethodDescriptor<monitoring.Monitoring.KpiQuery, - monitoring.Monitoring.KpiList> getQueryKpiDataMethod() { - io.grpc.MethodDescriptor<monitoring.Monitoring.KpiQuery, monitoring.Monitoring.KpiList> getQueryKpiDataMethod; + monitoring.Monitoring.RawKpiTable> getQueryKpiDataMethod() { + io.grpc.MethodDescriptor<monitoring.Monitoring.KpiQuery, monitoring.Monitoring.RawKpiTable> getQueryKpiDataMethod; if ((getQueryKpiDataMethod = MonitoringServiceGrpc.getQueryKpiDataMethod) == null) { synchronized (MonitoringServiceGrpc.class) { if ((getQueryKpiDataMethod = MonitoringServiceGrpc.getQueryKpiDataMethod) == null) { MonitoringServiceGrpc.getQueryKpiDataMethod = getQueryKpiDataMethod = - io.grpc.MethodDescriptor.<monitoring.Monitoring.KpiQuery, monitoring.Monitoring.KpiList>newBuilder() + io.grpc.MethodDescriptor.<monitoring.Monitoring.KpiQuery, monitoring.Monitoring.RawKpiTable>newBuilder() .setType(io.grpc.MethodDescriptor.MethodType.UNARY) .setFullMethodName(generateFullMethodName(SERVICE_NAME, "QueryKpiData")) .setSampledToLocalTracing(true) .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( monitoring.Monitoring.KpiQuery.getDefaultInstance())) .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( - monitoring.Monitoring.KpiList.getDefaultInstance())) + monitoring.Monitoring.RawKpiTable.getDefaultInstance())) .setSchemaDescriptor(new MonitoringServiceMethodDescriptorSupplier("QueryKpiData")) .build(); } @@ -665,7 +665,7 @@ public final class MonitoringServiceGrpc { /** */ public void queryKpiData(monitoring.Monitoring.KpiQuery request, - io.grpc.stub.StreamObserver<monitoring.Monitoring.KpiList> responseObserver) { + io.grpc.stub.StreamObserver<monitoring.Monitoring.RawKpiTable> responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getQueryKpiDataMethod(), responseObserver); } @@ -795,7 +795,7 @@ public final class MonitoringServiceGrpc { io.grpc.stub.ServerCalls.asyncUnaryCall( new MethodHandlers< monitoring.Monitoring.KpiQuery, - monitoring.Monitoring.KpiList>( + monitoring.Monitoring.RawKpiTable>( this, METHODID_QUERY_KPI_DATA))) .addMethod( getSetKpiSubscriptionMethod(), @@ -943,7 +943,7 @@ public final class MonitoringServiceGrpc { /** */ public void queryKpiData(monitoring.Monitoring.KpiQuery request, - io.grpc.stub.StreamObserver<monitoring.Monitoring.KpiList> responseObserver) { + io.grpc.stub.StreamObserver<monitoring.Monitoring.RawKpiTable> responseObserver) { io.grpc.stub.ClientCalls.asyncUnaryCall( getChannel().newCall(getQueryKpiDataMethod(), getCallOptions()), request, responseObserver); } @@ -1095,7 +1095,7 @@ public final class MonitoringServiceGrpc { /** */ - public monitoring.Monitoring.KpiList queryKpiData(monitoring.Monitoring.KpiQuery request) { + public monitoring.Monitoring.RawKpiTable queryKpiData(monitoring.Monitoring.KpiQuery request) { return io.grpc.stub.ClientCalls.blockingUnaryCall( getChannel(), getQueryKpiDataMethod(), getCallOptions(), request); } @@ -1245,7 +1245,7 @@ public final class MonitoringServiceGrpc { /** */ - public com.google.common.util.concurrent.ListenableFuture<monitoring.Monitoring.KpiList> queryKpiData( + public com.google.common.util.concurrent.ListenableFuture<monitoring.Monitoring.RawKpiTable> queryKpiData( monitoring.Monitoring.KpiQuery request) { return io.grpc.stub.ClientCalls.futureUnaryCall( getChannel().newCall(getQueryKpiDataMethod(), getCallOptions()), request); @@ -1378,7 +1378,7 @@ public final class MonitoringServiceGrpc { break; case METHODID_QUERY_KPI_DATA: serviceImpl.queryKpiData((monitoring.Monitoring.KpiQuery) request, - (io.grpc.stub.StreamObserver<monitoring.Monitoring.KpiList>) responseObserver); + (io.grpc.stub.StreamObserver<monitoring.Monitoring.RawKpiTable>) responseObserver); break; case METHODID_SET_KPI_SUBSCRIPTION: serviceImpl.setKpiSubscription((monitoring.Monitoring.SubsDescriptor) request, diff --git a/src/policy/target/generated-sources/grpc/monitoring/MutinyMonitoringServiceGrpc.java b/src/policy/target/generated-sources/grpc/monitoring/MutinyMonitoringServiceGrpc.java index 8f066682b996e236be1d14cc65b80d1b8984804f..f045ecc7ed434ba90bdfda065f18e0d839850a76 100644 --- a/src/policy/target/generated-sources/grpc/monitoring/MutinyMonitoringServiceGrpc.java +++ b/src/policy/target/generated-sources/grpc/monitoring/MutinyMonitoringServiceGrpc.java @@ -66,7 +66,7 @@ public final class MutinyMonitoringServiceGrpc implements io.quarkus.grpc.runtim } - public io.smallrye.mutiny.Uni<monitoring.Monitoring.KpiList> queryKpiData(monitoring.Monitoring.KpiQuery request) { + public io.smallrye.mutiny.Uni<monitoring.Monitoring.RawKpiTable> queryKpiData(monitoring.Monitoring.KpiQuery request) { return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::queryKpiData); } @@ -173,7 +173,7 @@ public final class MutinyMonitoringServiceGrpc implements io.quarkus.grpc.runtim } - public io.smallrye.mutiny.Uni<monitoring.Monitoring.KpiList> queryKpiData(monitoring.Monitoring.KpiQuery request) { + public io.smallrye.mutiny.Uni<monitoring.Monitoring.RawKpiTable> queryKpiData(monitoring.Monitoring.KpiQuery request) { throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); } @@ -281,7 +281,7 @@ public final class MutinyMonitoringServiceGrpc implements io.quarkus.grpc.runtim asyncUnaryCall( new MethodHandlers< monitoring.Monitoring.KpiQuery, - monitoring.Monitoring.KpiList>( + monitoring.Monitoring.RawKpiTable>( this, METHODID_QUERY_KPI_DATA, compression))) .addMethod( monitoring.MonitoringServiceGrpc.getSetKpiSubscriptionMethod(), @@ -440,7 +440,7 @@ public final class MutinyMonitoringServiceGrpc implements io.quarkus.grpc.runtim break; case METHODID_QUERY_KPI_DATA: io.quarkus.grpc.runtime.ServerCalls.oneToOne((monitoring.Monitoring.KpiQuery) request, - (io.grpc.stub.StreamObserver<monitoring.Monitoring.KpiList>) responseObserver, + (io.grpc.stub.StreamObserver<monitoring.Monitoring.RawKpiTable>) responseObserver, compression, serviceImpl::queryKpiData); break; diff --git a/src/policy/target/generated-sources/grpc/policy/Policy.java b/src/policy/target/generated-sources/grpc/policy/Policy.java index 0fb9c004aba385973770c0f0c448b60341f7e63c..505c0d7ff98d573e67f8cf39b399ec8ab9b30b68 100644 --- a/src/policy/target/generated-sources/grpc/policy/Policy.java +++ b/src/policy/target/generated-sources/grpc/policy/Policy.java @@ -9641,27 +9641,27 @@ public final class Policy { com.google.protobuf.MessageOrBuilder { /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ - java.util.List<policy.Policy.PolicyRuleId> + java.util.List<policy.Policy.PolicyRule> getPolicyRulesList(); /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ - policy.Policy.PolicyRuleId getPolicyRules(int index); + policy.Policy.PolicyRule getPolicyRules(int index); /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ int getPolicyRulesCount(); /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ - java.util.List<? extends policy.Policy.PolicyRuleIdOrBuilder> + java.util.List<? extends policy.Policy.PolicyRuleOrBuilder> getPolicyRulesOrBuilderList(); /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ - policy.Policy.PolicyRuleIdOrBuilder getPolicyRulesOrBuilder( + policy.Policy.PolicyRuleOrBuilder getPolicyRulesOrBuilder( int index); } /** @@ -9717,11 +9717,11 @@ public final class Policy { break; case 10: { if (!((mutable_bitField0_ & 0x00000001) != 0)) { - policyRules_ = new java.util.ArrayList<policy.Policy.PolicyRuleId>(); + policyRules_ = new java.util.ArrayList<policy.Policy.PolicyRule>(); mutable_bitField0_ |= 0x00000001; } policyRules_.add( - input.readMessage(policy.Policy.PolicyRuleId.parser(), extensionRegistry)); + input.readMessage(policy.Policy.PolicyRule.parser(), extensionRegistry)); break; } default: { @@ -9760,41 +9760,41 @@ public final class Policy { } public static final int POLICYRULES_FIELD_NUMBER = 1; - private java.util.List<policy.Policy.PolicyRuleId> policyRules_; + private java.util.List<policy.Policy.PolicyRule> policyRules_; /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ @java.lang.Override - public java.util.List<policy.Policy.PolicyRuleId> getPolicyRulesList() { + public java.util.List<policy.Policy.PolicyRule> getPolicyRulesList() { return policyRules_; } /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ @java.lang.Override - public java.util.List<? extends policy.Policy.PolicyRuleIdOrBuilder> + public java.util.List<? extends policy.Policy.PolicyRuleOrBuilder> getPolicyRulesOrBuilderList() { return policyRules_; } /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ @java.lang.Override public int getPolicyRulesCount() { return policyRules_.size(); } /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ @java.lang.Override - public policy.Policy.PolicyRuleId getPolicyRules(int index) { + public policy.Policy.PolicyRule getPolicyRules(int index) { return policyRules_.get(index); } /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ @java.lang.Override - public policy.Policy.PolicyRuleIdOrBuilder getPolicyRulesOrBuilder( + public policy.Policy.PolicyRuleOrBuilder getPolicyRulesOrBuilder( int index) { return policyRules_.get(index); } @@ -10145,22 +10145,22 @@ public final class Policy { } private int bitField0_; - private java.util.List<policy.Policy.PolicyRuleId> policyRules_ = + private java.util.List<policy.Policy.PolicyRule> policyRules_ = java.util.Collections.emptyList(); private void ensurePolicyRulesIsMutable() { if (!((bitField0_ & 0x00000001) != 0)) { - policyRules_ = new java.util.ArrayList<policy.Policy.PolicyRuleId>(policyRules_); + policyRules_ = new java.util.ArrayList<policy.Policy.PolicyRule>(policyRules_); bitField0_ |= 0x00000001; } } private com.google.protobuf.RepeatedFieldBuilderV3< - policy.Policy.PolicyRuleId, policy.Policy.PolicyRuleId.Builder, policy.Policy.PolicyRuleIdOrBuilder> policyRulesBuilder_; + policy.Policy.PolicyRule, policy.Policy.PolicyRule.Builder, policy.Policy.PolicyRuleOrBuilder> policyRulesBuilder_; /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ - public java.util.List<policy.Policy.PolicyRuleId> getPolicyRulesList() { + public java.util.List<policy.Policy.PolicyRule> getPolicyRulesList() { if (policyRulesBuilder_ == null) { return java.util.Collections.unmodifiableList(policyRules_); } else { @@ -10168,7 +10168,7 @@ public final class Policy { } } /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ public int getPolicyRulesCount() { if (policyRulesBuilder_ == null) { @@ -10178,9 +10178,9 @@ public final class Policy { } } /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ - public policy.Policy.PolicyRuleId getPolicyRules(int index) { + public policy.Policy.PolicyRule getPolicyRules(int index) { if (policyRulesBuilder_ == null) { return policyRules_.get(index); } else { @@ -10188,10 +10188,10 @@ public final class Policy { } } /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ public Builder setPolicyRules( - int index, policy.Policy.PolicyRuleId value) { + int index, policy.Policy.PolicyRule value) { if (policyRulesBuilder_ == null) { if (value == null) { throw new NullPointerException(); @@ -10205,10 +10205,10 @@ public final class Policy { return this; } /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ public Builder setPolicyRules( - int index, policy.Policy.PolicyRuleId.Builder builderForValue) { + int index, policy.Policy.PolicyRule.Builder builderForValue) { if (policyRulesBuilder_ == null) { ensurePolicyRulesIsMutable(); policyRules_.set(index, builderForValue.build()); @@ -10219,9 +10219,9 @@ public final class Policy { return this; } /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ - public Builder addPolicyRules(policy.Policy.PolicyRuleId value) { + public Builder addPolicyRules(policy.Policy.PolicyRule value) { if (policyRulesBuilder_ == null) { if (value == null) { throw new NullPointerException(); @@ -10235,10 +10235,10 @@ public final class Policy { return this; } /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ public Builder addPolicyRules( - int index, policy.Policy.PolicyRuleId value) { + int index, policy.Policy.PolicyRule value) { if (policyRulesBuilder_ == null) { if (value == null) { throw new NullPointerException(); @@ -10252,10 +10252,10 @@ public final class Policy { return this; } /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ public Builder addPolicyRules( - policy.Policy.PolicyRuleId.Builder builderForValue) { + policy.Policy.PolicyRule.Builder builderForValue) { if (policyRulesBuilder_ == null) { ensurePolicyRulesIsMutable(); policyRules_.add(builderForValue.build()); @@ -10266,10 +10266,10 @@ public final class Policy { return this; } /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ public Builder addPolicyRules( - int index, policy.Policy.PolicyRuleId.Builder builderForValue) { + int index, policy.Policy.PolicyRule.Builder builderForValue) { if (policyRulesBuilder_ == null) { ensurePolicyRulesIsMutable(); policyRules_.add(index, builderForValue.build()); @@ -10280,10 +10280,10 @@ public final class Policy { return this; } /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ public Builder addAllPolicyRules( - java.lang.Iterable<? extends policy.Policy.PolicyRuleId> values) { + java.lang.Iterable<? extends policy.Policy.PolicyRule> values) { if (policyRulesBuilder_ == null) { ensurePolicyRulesIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( @@ -10295,7 +10295,7 @@ public final class Policy { return this; } /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ public Builder clearPolicyRules() { if (policyRulesBuilder_ == null) { @@ -10308,7 +10308,7 @@ public final class Policy { return this; } /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ public Builder removePolicyRules(int index) { if (policyRulesBuilder_ == null) { @@ -10321,16 +10321,16 @@ public final class Policy { return this; } /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ - public policy.Policy.PolicyRuleId.Builder getPolicyRulesBuilder( + public policy.Policy.PolicyRule.Builder getPolicyRulesBuilder( int index) { return getPolicyRulesFieldBuilder().getBuilder(index); } /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ - public policy.Policy.PolicyRuleIdOrBuilder getPolicyRulesOrBuilder( + public policy.Policy.PolicyRuleOrBuilder getPolicyRulesOrBuilder( int index) { if (policyRulesBuilder_ == null) { return policyRules_.get(index); } else { @@ -10338,9 +10338,9 @@ public final class Policy { } } /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ - public java.util.List<? extends policy.Policy.PolicyRuleIdOrBuilder> + public java.util.List<? extends policy.Policy.PolicyRuleOrBuilder> getPolicyRulesOrBuilderList() { if (policyRulesBuilder_ != null) { return policyRulesBuilder_.getMessageOrBuilderList(); @@ -10349,33 +10349,33 @@ public final class Policy { } } /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ - public policy.Policy.PolicyRuleId.Builder addPolicyRulesBuilder() { + public policy.Policy.PolicyRule.Builder addPolicyRulesBuilder() { return getPolicyRulesFieldBuilder().addBuilder( - policy.Policy.PolicyRuleId.getDefaultInstance()); + policy.Policy.PolicyRule.getDefaultInstance()); } /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ - public policy.Policy.PolicyRuleId.Builder addPolicyRulesBuilder( + public policy.Policy.PolicyRule.Builder addPolicyRulesBuilder( int index) { return getPolicyRulesFieldBuilder().addBuilder( - index, policy.Policy.PolicyRuleId.getDefaultInstance()); + index, policy.Policy.PolicyRule.getDefaultInstance()); } /** - * <code>repeated .policy.PolicyRuleId policyRules = 1;</code> + * <code>repeated .policy.PolicyRule policyRules = 1;</code> */ - public java.util.List<policy.Policy.PolicyRuleId.Builder> + public java.util.List<policy.Policy.PolicyRule.Builder> getPolicyRulesBuilderList() { return getPolicyRulesFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< - policy.Policy.PolicyRuleId, policy.Policy.PolicyRuleId.Builder, policy.Policy.PolicyRuleIdOrBuilder> + policy.Policy.PolicyRule, policy.Policy.PolicyRule.Builder, policy.Policy.PolicyRuleOrBuilder> getPolicyRulesFieldBuilder() { if (policyRulesBuilder_ == null) { policyRulesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< - policy.Policy.PolicyRuleId, policy.Policy.PolicyRuleId.Builder, policy.Policy.PolicyRuleIdOrBuilder>( + policy.Policy.PolicyRule, policy.Policy.PolicyRule.Builder, policy.Policy.PolicyRuleOrBuilder>( policyRules_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), @@ -10524,30 +10524,30 @@ public final class Policy { "viceList\030\001 \003(\0132\031.policy.PolicyRuleServic" + "e\"N\n\024PolicyRuleDeviceList\0226\n\024policyRuleD" + "eviceList\030\001 \003(\0132\030.policy.PolicyRuleDevic" + - "e\";\n\016PolicyRuleList\022)\n\013policyRules\030\001 \003(\013" + - "2\024.policy.PolicyRuleId*\377\001\n\023PolicyRuleSta" + - "teEnum\022\024\n\020POLICY_UNDEFINED\020\000\022\021\n\rPOLICY_F" + - "AILED\020\001\022\023\n\017POLICY_INSERTED\020\002\022\024\n\020POLICY_V" + - "ALIDATED\020\003\022\026\n\022POLICY_PROVISIONED\020\004\022\021\n\rPO" + - "LICY_ACTIVE\020\005\022\023\n\017POLICY_ENFORCED\020\006\022\026\n\022PO" + - "LICY_INEFFECTIVE\020\007\022\024\n\020POLICY_EFFECTIVE\020\010" + - "\022\022\n\016POLICY_UPDATED\020\t\022\022\n\016POLICY_REMOVED\020\n" + - "2\323\004\n\rPolicyService\022H\n\020PolicyAddService\022\031" + - ".policy.PolicyRuleService\032\027.policy.Polic" + - "yRuleState\"\000\022F\n\017PolicyAddDevice\022\030.policy" + - ".PolicyRuleDevice\032\027.policy.PolicyRuleSta" + - "te\"\000\022K\n\023PolicyUpdateService\022\031.policy.Pol" + - "icyRuleService\032\027.policy.PolicyRuleState\"" + - "\000\022I\n\022PolicyUpdateDevice\022\030.policy.PolicyR" + - "uleDevice\032\027.policy.PolicyRuleState\"\000\022?\n\014" + - "PolicyDelete\022\024.policy.PolicyRuleId\032\027.pol" + - "icy.PolicyRuleState\"\000\022E\n\020GetPolicyServic" + - "e\022\024.policy.PolicyRuleId\032\031.policy.PolicyR" + - "uleService\"\000\022C\n\017GetPolicyDevice\022\024.policy" + - ".PolicyRuleId\032\030.policy.PolicyRuleDevice\"" + - "\000\022K\n\024GetPolicyByServiceId\022\022.context.Serv" + - "iceId\032\035.policy.PolicyRuleServiceList\"\000b\006" + - "proto3" + "e\"9\n\016PolicyRuleList\022\'\n\013policyRules\030\001 \003(\013" + + "2\022.policy.PolicyRule*\377\001\n\023PolicyRuleState" + + "Enum\022\024\n\020POLICY_UNDEFINED\020\000\022\021\n\rPOLICY_FAI" + + "LED\020\001\022\023\n\017POLICY_INSERTED\020\002\022\024\n\020POLICY_VAL" + + "IDATED\020\003\022\026\n\022POLICY_PROVISIONED\020\004\022\021\n\rPOLI" + + "CY_ACTIVE\020\005\022\023\n\017POLICY_ENFORCED\020\006\022\026\n\022POLI" + + "CY_INEFFECTIVE\020\007\022\024\n\020POLICY_EFFECTIVE\020\010\022\022" + + "\n\016POLICY_UPDATED\020\t\022\022\n\016POLICY_REMOVED\020\n2\323" + + "\004\n\rPolicyService\022H\n\020PolicyAddService\022\031.p" + + "olicy.PolicyRuleService\032\027.policy.PolicyR" + + "uleState\"\000\022F\n\017PolicyAddDevice\022\030.policy.P" + + "olicyRuleDevice\032\027.policy.PolicyRuleState" + + "\"\000\022K\n\023PolicyUpdateService\022\031.policy.Polic" + + "yRuleService\032\027.policy.PolicyRuleState\"\000\022" + + "I\n\022PolicyUpdateDevice\022\030.policy.PolicyRul" + + "eDevice\032\027.policy.PolicyRuleState\"\000\022?\n\014Po" + + "licyDelete\022\024.policy.PolicyRuleId\032\027.polic" + + "y.PolicyRuleState\"\000\022E\n\020GetPolicyService\022" + + "\024.policy.PolicyRuleId\032\031.policy.PolicyRul" + + "eService\"\000\022C\n\017GetPolicyDevice\022\024.policy.P" + + "olicyRuleId\032\030.policy.PolicyRuleDevice\"\000\022" + + "K\n\024GetPolicyByServiceId\022\022.context.Servic" + + "eId\032\035.policy.PolicyRuleServiceList\"\000b\006pr" + + "oto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, diff --git a/src/policy/target/generated-sources/grpc/policy/PolicyAction.java b/src/policy/target/generated-sources/grpc/policy/PolicyAction.java index f7d7c71cd5e51a0685e0503c51ce7003aced8f05..c79a3487bb3a6d9c9cffab185da605a15366f0d4 100644 --- a/src/policy/target/generated-sources/grpc/policy/PolicyAction.java +++ b/src/policy/target/generated-sources/grpc/policy/PolicyAction.java @@ -35,6 +35,14 @@ public final class PolicyAction { * <code>POLICYRULE_ACTION_ADD_SERVICE_CONSTRAINT = 3;</code> */ POLICYRULE_ACTION_ADD_SERVICE_CONSTRAINT(3), + /** + * <code>POLICY_RULE_ACTION_CALL_SERVICE_RPC = 4;</code> + */ + POLICY_RULE_ACTION_CALL_SERVICE_RPC(4), + /** + * <code>POLICY_RULE_ACTION_RECALCULATE_PATH = 5;</code> + */ + POLICY_RULE_ACTION_RECALCULATE_PATH(5), UNRECOGNIZED(-1), ; @@ -54,6 +62,14 @@ public final class PolicyAction { * <code>POLICYRULE_ACTION_ADD_SERVICE_CONSTRAINT = 3;</code> */ public static final int POLICYRULE_ACTION_ADD_SERVICE_CONSTRAINT_VALUE = 3; + /** + * <code>POLICY_RULE_ACTION_CALL_SERVICE_RPC = 4;</code> + */ + public static final int POLICY_RULE_ACTION_CALL_SERVICE_RPC_VALUE = 4; + /** + * <code>POLICY_RULE_ACTION_RECALCULATE_PATH = 5;</code> + */ + public static final int POLICY_RULE_ACTION_RECALCULATE_PATH_VALUE = 5; public final int getNumber() { @@ -84,6 +100,8 @@ public final class PolicyAction { case 1: return POLICYRULE_ACTION_SET_DEVICE_STATUS; case 2: return POLICYRULE_ACTION_ADD_SERVICE_CONFIGRULE; case 3: return POLICYRULE_ACTION_ADD_SERVICE_CONSTRAINT; + case 4: return POLICY_RULE_ACTION_CALL_SERVICE_RPC; + case 5: return POLICY_RULE_ACTION_RECALCULATE_PATH; default: return null; } } @@ -1798,12 +1816,14 @@ public final class PolicyAction { "yRuleActionEnum\0225\n\raction_config\030\002 \003(\0132\036" + ".policy.PolicyRuleActionConfig\"B\n\026Policy" + "RuleActionConfig\022\022\n\naction_key\030\001 \001(\t\022\024\n\014" + - "action_value\030\002 \001(\t*\274\001\n\024PolicyRuleActionE" + + "action_value\030\002 \001(\t*\216\002\n\024PolicyRuleActionE" + "num\022\037\n\033POLICYRULE_ACTION_NO_ACTION\020\000\022\'\n#" + "POLICYRULE_ACTION_SET_DEVICE_STATUS\020\001\022,\n" + "(POLICYRULE_ACTION_ADD_SERVICE_CONFIGRUL" + "E\020\002\022,\n(POLICYRULE_ACTION_ADD_SERVICE_CON" + - "STRAINT\020\003b\006proto3" + "STRAINT\020\003\022\'\n#POLICY_RULE_ACTION_CALL_SER" + + "VICE_RPC\020\004\022\'\n#POLICY_RULE_ACTION_RECALCU" + + "LATE_PATH\020\005b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, diff --git a/src/policy/target/generated-sources/grpc/service/MutinyServiceServiceGrpc.java b/src/policy/target/generated-sources/grpc/service/MutinyServiceServiceGrpc.java index 8caa9641d654e5b0f3e07635b366684d8ab5f980..cc94512929b34d0f3ddf427be5cb5655d774479b 100644 --- a/src/policy/target/generated-sources/grpc/service/MutinyServiceServiceGrpc.java +++ b/src/policy/target/generated-sources/grpc/service/MutinyServiceServiceGrpc.java @@ -50,6 +50,11 @@ public final class MutinyServiceServiceGrpc implements io.quarkus.grpc.runtime.M return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::deleteService); } + + public io.smallrye.mutiny.Uni<context.ContextOuterClass.Empty> recomputeConnections(context.ContextOuterClass.Service request) { + return io.quarkus.grpc.runtime.ClientCalls.oneToOne(request, delegateStub::recomputeConnections); + } + } @@ -82,6 +87,11 @@ public final class MutinyServiceServiceGrpc implements io.quarkus.grpc.runtime.M throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); } + + public io.smallrye.mutiny.Uni<context.ContextOuterClass.Empty> recomputeConnections(context.ContextOuterClass.Service 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( @@ -105,6 +115,13 @@ public final class MutinyServiceServiceGrpc implements io.quarkus.grpc.runtime.M context.ContextOuterClass.ServiceId, context.ContextOuterClass.Empty>( this, METHODID_DELETE_SERVICE, compression))) + .addMethod( + service.ServiceServiceGrpc.getRecomputeConnectionsMethod(), + asyncUnaryCall( + new MethodHandlers< + context.ContextOuterClass.Service, + context.ContextOuterClass.Empty>( + this, METHODID_RECOMPUTE_CONNECTIONS, compression))) .build(); } } @@ -112,6 +129,7 @@ public final class MutinyServiceServiceGrpc implements io.quarkus.grpc.runtime.M private static final int METHODID_CREATE_SERVICE = 0; private static final int METHODID_UPDATE_SERVICE = 1; private static final int METHODID_DELETE_SERVICE = 2; + private static final int METHODID_RECOMPUTE_CONNECTIONS = 3; private static final class MethodHandlers<Req, Resp> implements io.grpc.stub.ServerCalls.UnaryMethod<Req, Resp>, @@ -150,6 +168,12 @@ public final class MutinyServiceServiceGrpc implements io.quarkus.grpc.runtime.M compression, serviceImpl::deleteService); break; + case METHODID_RECOMPUTE_CONNECTIONS: + io.quarkus.grpc.runtime.ServerCalls.oneToOne((context.ContextOuterClass.Service) request, + (io.grpc.stub.StreamObserver<context.ContextOuterClass.Empty>) responseObserver, + compression, + serviceImpl::recomputeConnections); + break; default: throw new java.lang.AssertionError(); } diff --git a/src/policy/target/generated-sources/grpc/service/Service.java b/src/policy/target/generated-sources/grpc/service/Service.java index 32393a23714ffd1c1aa69d0909a3ffe7bc876146..aa9280357d820220c97d0baa18e1fb4f74a00804 100644 --- a/src/policy/target/generated-sources/grpc/service/Service.java +++ b/src/policy/target/generated-sources/grpc/service/Service.java @@ -24,11 +24,13 @@ public final class Service { static { java.lang.String[] descriptorData = { "\n\rservice.proto\022\007service\032\rcontext.proto2" + - "\271\001\n\016ServiceService\0227\n\rCreateService\022\020.co" + + "\365\001\n\016ServiceService\0227\n\rCreateService\022\020.co" + "ntext.Service\032\022.context.ServiceId\"\000\0227\n\rU" + "pdateService\022\020.context.Service\032\022.context" + ".ServiceId\"\000\0225\n\rDeleteService\022\022.context." + - "ServiceId\032\016.context.Empty\"\000b\006proto3" + "ServiceId\032\016.context.Empty\"\000\022:\n\024Recompute" + + "Connections\022\020.context.Service\032\016.context." + + "Empty\"\000b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, diff --git a/src/policy/target/generated-sources/grpc/service/ServiceService.java b/src/policy/target/generated-sources/grpc/service/ServiceService.java index b51f2353623b201978b84ff8587553a8ef606b51..531c92ce66bd4084e9db441bef0660acb0461d98 100644 --- a/src/policy/target/generated-sources/grpc/service/ServiceService.java +++ b/src/policy/target/generated-sources/grpc/service/ServiceService.java @@ -14,6 +14,8 @@ public interface ServiceService extends MutinyService { io.smallrye.mutiny.Uni<context.ContextOuterClass.Empty> deleteService(context.ContextOuterClass.ServiceId request); + io.smallrye.mutiny.Uni<context.ContextOuterClass.Empty> recomputeConnections(context.ContextOuterClass.Service request); + diff --git a/src/policy/target/generated-sources/grpc/service/ServiceServiceBean.java b/src/policy/target/generated-sources/grpc/service/ServiceServiceBean.java index a4c34aaa82129ae725d7b2ff7abeff7dc6c159cc..433a8149b102dd72c1cbf61e2fe6dca9fb3bc838 100644 --- a/src/policy/target/generated-sources/grpc/service/ServiceServiceBean.java +++ b/src/policy/target/generated-sources/grpc/service/ServiceServiceBean.java @@ -39,5 +39,13 @@ public class ServiceServiceBean extends MutinyServiceServiceGrpc.ServiceServiceI throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); } } + @Override + public io.smallrye.mutiny.Uni<context.ContextOuterClass.Empty> recomputeConnections(context.ContextOuterClass.Service request) { + try { + return delegate.recomputeConnections(request); + } catch (UnsupportedOperationException e) { + throw new io.grpc.StatusRuntimeException(io.grpc.Status.UNIMPLEMENTED); + } + } } \ No newline at end of file diff --git a/src/policy/target/generated-sources/grpc/service/ServiceServiceClient.java b/src/policy/target/generated-sources/grpc/service/ServiceServiceClient.java index 91522d4779a6ee7c85c9589588ea7cc0cba39efc..50063b344e4f87a0dd3966af60a5c945639c57d3 100644 --- a/src/policy/target/generated-sources/grpc/service/ServiceServiceClient.java +++ b/src/policy/target/generated-sources/grpc/service/ServiceServiceClient.java @@ -32,5 +32,9 @@ public class ServiceServiceClient implements ServiceService, MutinyClient<Mutiny public io.smallrye.mutiny.Uni<context.ContextOuterClass.Empty> deleteService(context.ContextOuterClass.ServiceId request) { return stub.deleteService(request); } + @Override + public io.smallrye.mutiny.Uni<context.ContextOuterClass.Empty> recomputeConnections(context.ContextOuterClass.Service request) { + return stub.recomputeConnections(request); + } } \ No newline at end of file diff --git a/src/policy/target/generated-sources/grpc/service/ServiceServiceGrpc.java b/src/policy/target/generated-sources/grpc/service/ServiceServiceGrpc.java index 66419a93bacee7dad02d302044b8024e8ed12154..5b926a2af71c4d2e7e83d4ef3c2723b8ca7e3a8f 100644 --- a/src/policy/target/generated-sources/grpc/service/ServiceServiceGrpc.java +++ b/src/policy/target/generated-sources/grpc/service/ServiceServiceGrpc.java @@ -107,6 +107,37 @@ public final class ServiceServiceGrpc { return getDeleteServiceMethod; } + private static volatile io.grpc.MethodDescriptor<context.ContextOuterClass.Service, + context.ContextOuterClass.Empty> getRecomputeConnectionsMethod; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "RecomputeConnections", + requestType = context.ContextOuterClass.Service.class, + responseType = context.ContextOuterClass.Empty.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor<context.ContextOuterClass.Service, + context.ContextOuterClass.Empty> getRecomputeConnectionsMethod() { + io.grpc.MethodDescriptor<context.ContextOuterClass.Service, context.ContextOuterClass.Empty> getRecomputeConnectionsMethod; + if ((getRecomputeConnectionsMethod = ServiceServiceGrpc.getRecomputeConnectionsMethod) == null) { + synchronized (ServiceServiceGrpc.class) { + if ((getRecomputeConnectionsMethod = ServiceServiceGrpc.getRecomputeConnectionsMethod) == null) { + ServiceServiceGrpc.getRecomputeConnectionsMethod = getRecomputeConnectionsMethod = + io.grpc.MethodDescriptor.<context.ContextOuterClass.Service, context.ContextOuterClass.Empty>newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "RecomputeConnections")) + .setSampledToLocalTracing(true) + .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + context.ContextOuterClass.Service.getDefaultInstance())) + .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + context.ContextOuterClass.Empty.getDefaultInstance())) + .setSchemaDescriptor(new ServiceServiceMethodDescriptorSupplier("RecomputeConnections")) + .build(); + } + } + } + return getRecomputeConnectionsMethod; + } + /** * Creates a new async stub that supports all call types for the service */ @@ -176,6 +207,13 @@ public final class ServiceServiceGrpc { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getDeleteServiceMethod(), responseObserver); } + /** + */ + public void recomputeConnections(context.ContextOuterClass.Service request, + io.grpc.stub.StreamObserver<context.ContextOuterClass.Empty> responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getRecomputeConnectionsMethod(), responseObserver); + } + @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) .addMethod( @@ -199,6 +237,13 @@ public final class ServiceServiceGrpc { context.ContextOuterClass.ServiceId, context.ContextOuterClass.Empty>( this, METHODID_DELETE_SERVICE))) + .addMethod( + getRecomputeConnectionsMethod(), + io.grpc.stub.ServerCalls.asyncUnaryCall( + new MethodHandlers< + context.ContextOuterClass.Service, + context.ContextOuterClass.Empty>( + this, METHODID_RECOMPUTE_CONNECTIONS))) .build(); } } @@ -240,6 +285,14 @@ public final class ServiceServiceGrpc { io.grpc.stub.ClientCalls.asyncUnaryCall( getChannel().newCall(getDeleteServiceMethod(), getCallOptions()), request, responseObserver); } + + /** + */ + public void recomputeConnections(context.ContextOuterClass.Service request, + io.grpc.stub.StreamObserver<context.ContextOuterClass.Empty> responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getRecomputeConnectionsMethod(), getCallOptions()), request, responseObserver); + } } /** @@ -276,6 +329,13 @@ public final class ServiceServiceGrpc { return io.grpc.stub.ClientCalls.blockingUnaryCall( getChannel(), getDeleteServiceMethod(), getCallOptions(), request); } + + /** + */ + public context.ContextOuterClass.Empty recomputeConnections(context.ContextOuterClass.Service request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getRecomputeConnectionsMethod(), getCallOptions(), request); + } } /** @@ -315,11 +375,20 @@ public final class ServiceServiceGrpc { return io.grpc.stub.ClientCalls.futureUnaryCall( getChannel().newCall(getDeleteServiceMethod(), getCallOptions()), request); } + + /** + */ + public com.google.common.util.concurrent.ListenableFuture<context.ContextOuterClass.Empty> recomputeConnections( + context.ContextOuterClass.Service request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getRecomputeConnectionsMethod(), getCallOptions()), request); + } } private static final int METHODID_CREATE_SERVICE = 0; private static final int METHODID_UPDATE_SERVICE = 1; private static final int METHODID_DELETE_SERVICE = 2; + private static final int METHODID_RECOMPUTE_CONNECTIONS = 3; private static final class MethodHandlers<Req, Resp> implements io.grpc.stub.ServerCalls.UnaryMethod<Req, Resp>, @@ -350,6 +419,10 @@ public final class ServiceServiceGrpc { serviceImpl.deleteService((context.ContextOuterClass.ServiceId) request, (io.grpc.stub.StreamObserver<context.ContextOuterClass.Empty>) responseObserver); break; + case METHODID_RECOMPUTE_CONNECTIONS: + serviceImpl.recomputeConnections((context.ContextOuterClass.Service) request, + (io.grpc.stub.StreamObserver<context.ContextOuterClass.Empty>) responseObserver); + break; default: throw new AssertionError(); } @@ -414,6 +487,7 @@ public final class ServiceServiceGrpc { .addMethod(getCreateServiceMethod()) .addMethod(getUpdateServiceMethod()) .addMethod(getDeleteServiceMethod()) + .addMethod(getRecomputeConnectionsMethod()) .build(); } } diff --git a/src/policy/target/kubernetes/kubernetes.yml b/src/policy/target/kubernetes/kubernetes.yml index f1079230f5e5efb75fb14d6cd6f3ad3fb5c9d2e3..0f97b9338962e0d19427443968fb004ba4da9573 100644 --- a/src/policy/target/kubernetes/kubernetes.yml +++ b/src/policy/target/kubernetes/kubernetes.yml @@ -16,8 +16,8 @@ apiVersion: v1 kind: Service metadata: annotations: - app.quarkus.io/commit-id: 23832f2975e3c8967e9685f7e3a5f5458d04527a - app.quarkus.io/build-timestamp: 2023-04-04 - 11:56:04 +0000 + app.quarkus.io/commit-id: 8d0654b519e90fe0127e7d1419adce25fa3a179d + app.quarkus.io/build-timestamp: 2023-07-10 - 09:41:26 +0000 prometheus.io/scrape: "true" prometheus.io/path: /q/metrics prometheus.io/port: "8080" @@ -42,8 +42,8 @@ apiVersion: apps/v1 kind: Deployment metadata: annotations: - app.quarkus.io/commit-id: 23832f2975e3c8967e9685f7e3a5f5458d04527a - app.quarkus.io/build-timestamp: 2023-04-04 - 11:56:04 +0000 + app.quarkus.io/commit-id: 8d0654b519e90fe0127e7d1419adce25fa3a179d + app.quarkus.io/build-timestamp: 2023-07-10 - 09:41:26 +0000 prometheus.io/scrape: "true" prometheus.io/path: /q/metrics prometheus.io/port: "8080" @@ -60,8 +60,8 @@ spec: template: metadata: annotations: - app.quarkus.io/commit-id: 23832f2975e3c8967e9685f7e3a5f5458d04527a - app.quarkus.io/build-timestamp: 2023-04-04 - 11:56:04 +0000 + app.quarkus.io/commit-id: 8d0654b519e90fe0127e7d1419adce25fa3a179d + app.quarkus.io/build-timestamp: 2023-07-10 - 09:41:26 +0000 prometheus.io/scrape: "true" prometheus.io/path: /q/metrics prometheus.io/port: "8080" @@ -76,12 +76,12 @@ spec: valueFrom: fieldRef: fieldPath: metadata.namespace - - name: MONITORING_SERVICE_HOST - value: monitoringservice - name: CONTEXT_SERVICE_HOST value: contextservice - name: SERVICE_SERVICE_HOST value: serviceservice + - name: MONITORING_SERVICE_HOST + value: monitoringservice image: labs.etsi.org:5050/tfs/controller/policy:0.1.0 imagePullPolicy: Always livenessProbe: diff --git a/src/service/client/TEServiceClient.py b/src/service/client/TEServiceClient.py new file mode 100644 index 0000000000000000000000000000000000000000..19ca95bceb285c03df635859728ecf15640d8438 --- /dev/null +++ b/src/service/client/TEServiceClient.py @@ -0,0 +1,67 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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.proto.context_pb2 import Empty, Service, ServiceId, ServiceStatus +from common.proto.te_pb2_grpc import TEServiceStub +from common.tools.client.RetryDecorator import retry, delay_exponential +from common.tools.grpc.Tools import grpc_message_to_json_string + +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 TEServiceClient: + def __init__(self, host=None, port=None): + if not host: host = get_service_host(ServiceNameEnum.TE) + if not port: port = get_service_port_grpc(ServiceNameEnum.TE) + 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 = TEServiceStub(self.channel) + + def close(self): + if self.channel is not None: self.channel.close() + self.channel = None + self.stub = None + + @RETRY_DECORATOR + def RequestLSP(self, request : Service) -> ServiceStatus: + LOGGER.debug('RequestLSP request: {:s}'.format(grpc_message_to_json_string(request))) + response = self.stub.RequestLSP(request) + LOGGER.debug('RequestLSP result: {:s}'.format(grpc_message_to_json_string(response))) + return response + + @RETRY_DECORATOR + def UpdateLSP(self, request : ServiceId) -> ServiceStatus: + LOGGER.debug('UpdateLSP request: {:s}'.format(grpc_message_to_json_string(request))) + response = self.stub.UpdateLSP(request) + LOGGER.debug('UpdateLSP result: {:s}'.format(grpc_message_to_json_string(response))) + return response + + @RETRY_DECORATOR + def DeleteLSP(self, request : ServiceId) -> Empty: + LOGGER.debug('DeleteLSP request: {:s}'.format(grpc_message_to_json_string(request))) + response = self.stub.DeleteLSP(request) + LOGGER.debug('DeleteLSP result: {:s}'.format(grpc_message_to_json_string(response))) + return response diff --git a/src/service/requirements.in b/src/service/requirements.in index 83b6342c0c0ed5e969ba03e8af5ac502b1f525c9..48fd76485d6bbaf53c3867147882614fc0cf1b04 100644 --- a/src/service/requirements.in +++ b/src/service/requirements.in @@ -14,6 +14,7 @@ anytree==2.8.0 +geopy==2.3.0 networkx==2.6.3 pydot==1.4.2 redis==4.1.2 diff --git a/src/service/service/ServiceServiceServicerImpl.py b/src/service/service/ServiceServiceServicerImpl.py index 6d23fd4cee53d1639c9eefbd943d45dab497b253..f79e3e5f3aa983aacda3163682737cdf0ff6be03 100644 --- a/src/service/service/ServiceServiceServicerImpl.py +++ b/src/service/service/ServiceServiceServicerImpl.py @@ -12,13 +12,14 @@ # See the License for the specific language governing permissions and # limitations under the License. -import grpc, json, logging, random, uuid +import copy, grpc, json, logging, random, uuid from typing import Optional from common.method_wrappers.Decorator import MetricsPool, safe_and_metered_rpc_method from common.method_wrappers.ServiceExceptions import ( AlreadyExistsException, InvalidArgumentException, NotFoundException, NotImplementedException, OperationFailedException) -from common.proto.context_pb2 import Connection, Empty, Service, ServiceId, ServiceStatusEnum, ServiceTypeEnum +from common.proto.context_pb2 import ( + Connection, Empty, Service, ServiceId, ServiceStatusEnum, ServiceTypeEnum, ConstraintActionEnum) from common.proto.pathcomp_pb2 import PathCompRequest from common.proto.service_pb2_grpc import ServiceServiceServicer from common.tools.context_queries.Service import get_service_by_id @@ -26,8 +27,10 @@ from common.tools.grpc.Tools import grpc_message_to_json, grpc_message_to_json_s from context.client.ContextClient import ContextClient from pathcomp.frontend.client.PathCompClient import PathCompClient from service.service.tools.ConnectionToString import connection_to_string +from service.client.TEServiceClient import TEServiceClient from .service_handler_api.ServiceHandlerFactory import ServiceHandlerFactory from .task_scheduler.TaskScheduler import TasksScheduler +from .tools.GeodesicDistance import gps_distance LOGGER = logging.getLogger(__name__) @@ -93,17 +96,101 @@ class ServiceServiceServicerImpl(ServiceServiceServicer): context_client = ContextClient() _service : Optional[Service] = get_service_by_id( context_client, request.service_id, rw_copy=False, - include_config_rules=False, include_constraints=False, include_endpoint_ids=False) + include_config_rules=True, include_constraints=True, include_endpoint_ids=True) + + # Identify service constraints + num_disjoint_paths = None + is_diverse = False + gps_location_aware = False + for constraint in request.service_constraints: + constraint_kind = constraint.WhichOneof('constraint') + if constraint_kind == 'sla_availability': + num_disjoint_paths = constraint.sla_availability.num_disjoint_paths + elif constraint_kind == 'custom': + if constraint.custom.constraint_type == 'diversity': is_diverse = True + elif constraint_kind == 'endpoint_location': + location = constraint.endpoint_location.location + if location.WhichOneof('location') == 'gps_position': gps_location_aware = True + else: + continue + + LOGGER.debug('num_disjoint_paths={:s}'.format(str(num_disjoint_paths))) + LOGGER.debug('is_diverse={:s}'.format(str(is_diverse))) + LOGGER.debug('gps_location_aware={:s}'.format(str(gps_location_aware))) + + if _service is not None and num_disjoint_paths is None and not is_diverse and gps_location_aware: + LOGGER.debug(' Removing previous service') + tasks_scheduler = TasksScheduler(self.service_handler_factory) + tasks_scheduler.compose_from_service(_service, is_delete=True) + tasks_scheduler.execute_all() + service = Service() service.CopyFrom(request if _service is None else _service) + if service.service_type == ServiceTypeEnum.SERVICETYPE_UNKNOWN: # pylint: disable=no-member service.service_type = request.service_type # pylint: disable=no-member service.service_status.service_status = ServiceStatusEnum.SERVICESTATUS_PLANNED # pylint: disable=no-member + if service.service_type == ServiceTypeEnum.SERVICETYPE_TE: + # TE service: + context_client.SetService(request) + + te_service_client = TEServiceClient() + service_status = te_service_client.RequestLSP(service) + + if service_status.service_status == ServiceStatusEnum.SERVICESTATUS_ACTIVE: + _service : Optional[Service] = get_service_by_id( + context_client, request.service_id, rw_copy=True, + include_config_rules=False, include_constraints=False, include_endpoint_ids=False) + _service.service_status.service_status = ServiceStatusEnum.SERVICESTATUS_ACTIVE + service_id = context_client.SetService(_service) + return service_id + else: + MSG = 'RequestLSP for Service({:s}) returned ServiceStatus({:s})' + context_uuid = request.service_id.context_id.context_uuid.uuid + service_uuid = request.service_id.service_uuid.uuid + service_key = '{:s}/{:s}'.format(context_uuid, service_uuid) + str_service_status = ServiceStatusEnum.Name(service_status.service_status) + raise Exception(MSG.format(service_key, str_service_status)) + + # Normal service del service.service_endpoint_ids[:] # pylint: disable=no-member for endpoint_id in request.service_endpoint_ids: service.service_endpoint_ids.add().CopyFrom(endpoint_id) # pylint: disable=no-member + device_list = context_client.ListDevices(Empty()) + + LOGGER.debug('[before] request={:s}'.format(grpc_message_to_json_string(request))) + for constraint in request.service_constraints: + if constraint.action == ConstraintActionEnum.CONSTRAINTACTION_UNDEFINED: + # Field action is new; assume if not set, it means SET + constraint.action = ConstraintActionEnum.CONSTRAINTACTION_SET + + if constraint.action != ConstraintActionEnum.CONSTRAINTACTION_SET: continue + if constraint.WhichOneof('constraint') != 'endpoint_location': continue + if constraint.endpoint_location.HasField('endpoint_id'): continue + + service_location = constraint.endpoint_location.location + distances = {} + for device in device_list.devices: + for endpoint in device.device_endpoints: + if not endpoint.endpoint_location.HasField('gps_position'): continue + distance = gps_distance(service_location.gps_position, endpoint.endpoint_location.gps_position) + distances[distance] = endpoint.endpoint_id + + closer_endpoint_id = distances[min(distances)] + constraint.endpoint_location.endpoint_id.CopyFrom(closer_endpoint_id) + + service_endpoint_ids = [ + endpoint_id.endpoint_uuid + for endpoint_id in service.service_endpoint_ids + ] + if closer_endpoint_id not in service_endpoint_ids: + service.service_endpoint_ids.append(closer_endpoint_id) + + LOGGER.debug('[after] request={:s}'.format(grpc_message_to_json_string(request))) + LOGGER.debug('[after] service={:s}'.format(grpc_message_to_json_string(service))) + del service.service_constraints[:] # pylint: disable=no-member for constraint in request.service_constraints: service.service_constraints.add().CopyFrom(constraint) # pylint: disable=no-member @@ -119,12 +206,6 @@ class ServiceServiceServicerImpl(ServiceServiceServicer): context_client, service_id_with_uuids, rw_copy=False, include_config_rules=True, include_constraints=True, include_endpoint_ids=True) - num_disjoint_paths = 0 - for constraint in request.service_constraints: - if constraint.WhichOneof('constraint') == 'sla_availability': - num_disjoint_paths = constraint.sla_availability.num_disjoint_paths - break - num_disjoint_paths = 1 if num_disjoint_paths is None or num_disjoint_paths == 0 else num_disjoint_paths num_expected_endpoints = num_disjoint_paths * 2 @@ -164,6 +245,14 @@ class ServiceServiceServicerImpl(ServiceServiceServicer): service.service_status.service_status = ServiceStatusEnum.SERVICESTATUS_PENDING_REMOVAL context_client.SetService(service) + if service.service_type == ServiceTypeEnum.SERVICETYPE_TE: + # TE service + te_service_client = TEServiceClient() + te_service_client.DeleteLSP(request) + context_client.RemoveService(request) + return Empty() + + # Normal service # Feed TaskScheduler with this service and the sub-services and sub-connections related to this service. # TaskScheduler identifies inter-dependencies among them and produces a schedule of tasks (an ordered list of # tasks to be executed) to implement the requested delete operation. diff --git a/src/service/service/service_handler_api/FilterFields.py b/src/service/service/service_handler_api/FilterFields.py index 3ec71dc64536e28457c4f1adbf3679186285786d..1b22c5c42e908e9b9455358edd2abf54442628f5 100644 --- a/src/service/service/service_handler_api/FilterFields.py +++ b/src/service/service/service_handler_api/FilterFields.py @@ -23,7 +23,8 @@ SERVICE_TYPE_VALUES = { ServiceTypeEnum.SERVICETYPE_UNKNOWN, ServiceTypeEnum.SERVICETYPE_L3NM, ServiceTypeEnum.SERVICETYPE_L2NM, - ServiceTypeEnum.SERVICETYPE_TAPI_CONNECTIVITY_SERVICE + ServiceTypeEnum.SERVICETYPE_TAPI_CONNECTIVITY_SERVICE, + ServiceTypeEnum.SERVICETYPE_TE, } DEVICE_DRIVER_VALUES = { @@ -35,6 +36,7 @@ DEVICE_DRIVER_VALUES = { DeviceDriverEnum.DEVICEDRIVER_ONF_TR_352, DeviceDriverEnum.DEVICEDRIVER_XR, DeviceDriverEnum.DEVICEDRIVER_IETF_L2VPN, + DeviceDriverEnum.DEVICEDRIVER_GNMI_OPENCONFIG, } # Map allowed filter fields to allowed values per Filter field. If no restriction (free text) None is specified diff --git a/src/service/service/service_handler_api/SettingsHandler.py b/src/service/service/service_handler_api/SettingsHandler.py index 85dd3a12851bf8c5ba697180fe00d0467e7a76b5..b8daec7d7b5fc857aef9aa5e46bb04d33a02b47c 100644 --- a/src/service/service/service_handler_api/SettingsHandler.py +++ b/src/service/service/service_handler_api/SettingsHandler.py @@ -16,7 +16,8 @@ import anytree, json, logging from typing import Any, List, Optional, Tuple, Union from common.proto.context_pb2 import ConfigActionEnum, ConfigRule, Device, EndPoint, ServiceConfig from common.tools.grpc.Tools import grpc_message_to_json, grpc_message_to_json_string -from service.service.service_handler_api.AnyTreeTools import TreeNode, delete_subnode, get_subnode, set_subnode_value +from .AnyTreeTools import TreeNode, delete_subnode, dump_subtree, get_subnode, set_subnode_value +from .Tools import extract_endpoint_index, extract_index LOGGER = logging.getLogger(__name__) @@ -41,9 +42,10 @@ class SettingsHandler: elif kind == 'acl': device_uuid = config_rule.acl.endpoint_id.device_id.device_uuid.uuid endpoint_uuid = config_rule.acl.endpoint_id.endpoint_uuid.uuid + endpoint_name, endpoint_index = extract_endpoint_index(endpoint_uuid) acl_ruleset_name = config_rule.acl.rule_set.name - ACL_KEY_TEMPLATE = '/device[{:s}]/endpoint[{:s}]/acl_ruleset[{:s}]' - key_or_path = ACL_KEY_TEMPLATE.format(device_uuid, endpoint_uuid, acl_ruleset_name) + ACL_KEY_TEMPLATE = '/device[{:s}]/endpoint[{:s}]/index[{:d}]/acl_ruleset[{:s}]' + key_or_path = ACL_KEY_TEMPLATE.format(device_uuid, endpoint_name,endpoint_index, acl_ruleset_name) value = grpc_message_to_json(config_rule.acl) else: MSG = 'Unsupported Kind({:s}) in ConfigRule({:s})' @@ -55,6 +57,16 @@ class SettingsHandler: def get(self, key_or_path : Union[str, List[str]], default : Optional[Any] = None) -> Optional[TreeNode]: return get_subnode(self.__resolver, self.__config, key_or_path, default=default) + def get_device_settings(self, device : Device) -> Optional[TreeNode]: + device_keys = device.device_id.device_uuid.uuid, device.name + + for device_key in device_keys: + endpoint_settings_uri = '/device[{:s}]/settings'.format(device_key) + endpoint_settings = self.get(endpoint_settings_uri) + if endpoint_settings is not None: return endpoint_settings + + return None + def get_endpoint_settings(self, device : Device, endpoint : EndPoint) -> Optional[TreeNode]: device_keys = device.device_id.device_uuid.uuid, device.name endpoint_keys = endpoint.endpoint_id.endpoint_uuid.uuid, endpoint.name @@ -66,6 +78,28 @@ class SettingsHandler: if endpoint_settings is not None: return endpoint_settings return None + + def get_endpoint_acls(self, device : Device, endpoint : EndPoint) -> List [Tuple]: + endpoint_name = endpoint.name + device_keys = device.device_id.device_uuid.uuid, device.name + endpoint_keys = endpoint.endpoint_id.endpoint_uuid.uuid, endpoint.name + acl_rules = [] + for device_key in device_keys: + for endpoint_key in endpoint_keys: + endpoint_settings_uri = '/device[{:s}]/endpoint[{:s}]'.format(device_key, endpoint_key) + endpoint_settings = self.get(endpoint_settings_uri) + if endpoint_settings is None: continue + endpoint_name, endpoint_index = extract_endpoint_index(endpoint_name) + ACL_RULE_PREFIX = '/device[{:s}]/endpoint[{:s}]/'.format(device_key, endpoint_name) + + results = dump_subtree(endpoint_settings) + for res_key, res_value in results: + if not res_key.startswith(ACL_RULE_PREFIX): continue + if not "acl_ruleset" in res_key: continue + acl_index = extract_index(res_value) + if not 'index[{:d}]'.format(acl_index) in res_key: continue + acl_rules.append((res_key, res_value)) + return acl_rules def set(self, key_or_path : Union[str, List[str]], value : Any) -> None: set_subnode_value(self.__resolver, self.__config, key_or_path, value) @@ -86,3 +120,6 @@ class SettingsHandler: MSG = 'Unsupported Action({:s}) in ConfigRule({:s})' LOGGER.warning(MSG.format(str(action), grpc_message_to_json_string(config_rule))) return + + def dump_config_rules(self) -> List[Tuple[Any, Any]]: + return dump_subtree(self.__config) diff --git a/src/service/service/service_handler_api/Tools.py b/src/service/service/service_handler_api/Tools.py index 222cd8968cd490d488dbbfc0082b6c3d4f5c1035..b06d128d94328b0d664e8928e1701ee327aa6d03 100644 --- a/src/service/service/service_handler_api/Tools.py +++ b/src/service/service/service_handler_api/Tools.py @@ -12,11 +12,12 @@ # See the License for the specific language governing permissions and # limitations under the License. -import functools +import functools, re from typing import Any, List, Optional, Tuple, Union from common.method_wrappers.ServiceExceptions import NotFoundException from common.proto.context_pb2 import Device, EndPoint from common.type_checkers.Checkers import chk_length, chk_type +from common.tools.grpc.Tools import grpc_message_to_json ACTION_MSG_SET_ENDPOINT = 'Set EndPoint(device_uuid={:s}, endpoint_uuid={:s}, topology_uuid={:s})' ACTION_MSG_DELETE_ENDPOINT = 'Delete EndPoint(device_uuid={:s}, endpoint_uuid={:s}, topology_uuid={:s})' @@ -58,3 +59,18 @@ def get_device_endpoint_uuids(endpoint : Tuple[str, str, Optional[str]]) -> Tupl chk_length('endpoint', endpoint, min_length=2, max_length=3) device_uuid, endpoint_uuid = endpoint[0:2] # ignore topology_uuid by now return device_uuid, endpoint_uuid + +def extract_endpoint_index(endpoint_name : str, default_index=0) -> Tuple[str, int]: + RE_PATTERN = '^(eth\-[0-9]+(?:\/[0-9]+)*)(?:\.([0-9]+))?$' + m = re.match(RE_PATTERN, endpoint_name) + if m is None: return endpoint_name, default_index + endpoint_name, index = m.groups() + if index is not None: index = int(index) + return endpoint_name, index + +def extract_index(res_value : str) -> int: + acl_value = grpc_message_to_json(res_value,use_integers_for_enums=True) + endpoint = acl_value.split("'endpoint_uuid': {'uuid': '") + endpoint = endpoint[1].split("'}") + _ , index = extract_endpoint_index(endpoint[0]) + return index diff --git a/src/service/service/service_handlers/__init__.py b/src/service/service/service_handlers/__init__.py index 257bc138fe932e7e5abee00981848248039d0b3f..7ea0d4f627b5d6010f6e40135f6005471efe8d71 100644 --- a/src/service/service/service_handlers/__init__.py +++ b/src/service/service/service_handlers/__init__.py @@ -19,6 +19,7 @@ from .l2nm_ietfl2vpn.L2NM_IETFL2VPN_ServiceHandler import L2NM_IETFL2VPN_Service from .l2nm_openconfig.L2NMOpenConfigServiceHandler import L2NMOpenConfigServiceHandler from .l3nm_emulated.L3NMEmulatedServiceHandler import L3NMEmulatedServiceHandler from .l3nm_openconfig.L3NMOpenConfigServiceHandler import L3NMOpenConfigServiceHandler +from .l3nm_gnmi_openconfig.L3NMGnmiOpenConfigServiceHandler import L3NMGnmiOpenConfigServiceHandler from .microwave.MicrowaveServiceHandler import MicrowaveServiceHandler from .p4.p4_service_handler import P4ServiceHandler from .tapi_tapi.TapiServiceHandler import TapiServiceHandler @@ -49,6 +50,12 @@ SERVICE_HANDLERS = [ FilterFieldEnum.DEVICE_DRIVER : DeviceDriverEnum.DEVICEDRIVER_OPENCONFIG, } ]), + (L3NMGnmiOpenConfigServiceHandler, [ + { + FilterFieldEnum.SERVICE_TYPE : ServiceTypeEnum.SERVICETYPE_L3NM, + FilterFieldEnum.DEVICE_DRIVER : DeviceDriverEnum.DEVICEDRIVER_GNMI_OPENCONFIG, + } + ]), (TapiServiceHandler, [ { FilterFieldEnum.SERVICE_TYPE : ServiceTypeEnum.SERVICETYPE_TAPI_CONNECTIVITY_SERVICE, diff --git a/src/service/service/service_handlers/l2nm_emulated/ConfigRules.py b/src/service/service/service_handlers/l2nm_emulated/ConfigRules.py index 072696324342bc425329c134cf6c48704de313da..e68a62030fba242d40e6b1c9bf0c2c65e66639f2 100644 --- a/src/service/service/service_handlers/l2nm_emulated/ConfigRules.py +++ b/src/service/service/service_handlers/l2nm_emulated/ConfigRules.py @@ -12,13 +12,13 @@ # See the License for the specific language governing permissions and # limitations under the License. -from typing import Dict, List +from typing import Dict, List, Tuple from common.tools.object_factory.ConfigRule import json_config_rule_delete, json_config_rule_set from service.service.service_handler_api.AnyTreeTools import TreeNode def setup_config_rules( service_uuid : str, connection_uuid : str, device_uuid : str, endpoint_uuid : str, endpoint_name : str, - service_settings : TreeNode, endpoint_settings : TreeNode + service_settings : TreeNode, endpoint_settings : TreeNode, endpoint_acls : List [Tuple] ) -> List[Dict]: if service_settings is None: return [] diff --git a/src/service/service/service_handlers/l2nm_emulated/L2NMEmulatedServiceHandler.py b/src/service/service/service_handlers/l2nm_emulated/L2NMEmulatedServiceHandler.py index 416c10f72fe2199ce241c4d527d9c58ce93d2b44..7bd227f43fc52cf63266faea30c2a492f392b3ae 100644 --- a/src/service/service/service_handlers/l2nm_emulated/L2NMEmulatedServiceHandler.py +++ b/src/service/service/service_handlers/l2nm_emulated/L2NMEmulatedServiceHandler.py @@ -15,7 +15,7 @@ import json, logging from typing import Any, List, Optional, Tuple, Union from common.method_wrappers.Decorator import MetricsPool, metered_subclass_method -from common.proto.context_pb2 import ConfigRule, DeviceId, Service +from common.proto.context_pb2 import ConfigActionEnum, ConfigRule, DeviceId, Service from common.tools.object_factory.Device import json_device_id from common.type_checkers.Checkers import chk_type from service.service.service_handler_api.Tools import get_device_endpoint_uuids, get_endpoint_matching @@ -52,13 +52,42 @@ class L2NMEmulatedServiceHandler(_ServiceHandler): device_uuid, endpoint_uuid = get_device_endpoint_uuids(endpoint) device_obj = self.__task_executor.get_device(DeviceId(**json_device_id(device_uuid))) + device_name = device_obj.name + + for config_rule in device_obj.device_config.config_rules: + raw_data = SettingsHandler._config_rule_to_raw(config_rule) + if raw_data is None: continue + action, key_or_path, value = raw_data + if action != ConfigActionEnum.CONFIGACTION_SET: continue + if not key_or_path.startswith('/endpoints/endpoint['): continue + if not key_or_path.endswith(']/settings'): continue + key_or_path = key_or_path.replace('/endpoints/', '/device[{:s}]/'.format(device_name)) + LOGGER.debug('Setting key_or_path={:s} value={:s}'.format(str(key_or_path), str(value))) + self.__settings_handler.set(key_or_path, value) + + service_config_rules = self.__settings_handler.dump_config_rules() + LOGGER.debug('service_config_rules={:s}'.format(str(service_config_rules))) + endpoint_obj = get_endpoint_matching(device_obj, endpoint_uuid) - endpoint_settings = self.__settings_handler.get_endpoint_settings(device_obj, endpoint_obj) endpoint_name = endpoint_obj.name + endpoint_settings = self.__settings_handler.get_endpoint_settings(device_obj, endpoint_obj) + endpoint_acls = self.__settings_handler.get_endpoint_acls(device_obj, endpoint_obj) + + MSG = 'device_uuid={:s} device_name={:s} endpoint_uuid={:s} endpoint_name={:s} endpoint_settings={:s}' + str_endpoint_settings = str(None) if endpoint_settings is None else str(endpoint_settings.value) + LOGGER.debug(MSG.format( + str(device_uuid), str(device_name), str(endpoint_uuid), str(endpoint_name), str_endpoint_settings + )) json_config_rules = setup_config_rules( service_uuid, connection_uuid, device_uuid, endpoint_uuid, endpoint_name, - settings, endpoint_settings) + settings, endpoint_settings, endpoint_acls) + + if len(json_config_rules) > 0: + del device_obj.device_config.config_rules[:] + for json_config_rule in json_config_rules: + device_obj.device_config.config_rules.append(ConfigRule(**json_config_rule)) + self.__task_executor.configure_device(device_obj) if len(json_config_rules) > 0: del device_obj.device_config.config_rules[:] @@ -89,9 +118,31 @@ class L2NMEmulatedServiceHandler(_ServiceHandler): device_uuid, endpoint_uuid = get_device_endpoint_uuids(endpoint) device_obj = self.__task_executor.get_device(DeviceId(**json_device_id(device_uuid))) + device_name = device_obj.name + + for config_rule in device_obj.device_config.config_rules: + raw_data = SettingsHandler._config_rule_to_raw(config_rule) + if raw_data is None: continue + action, key_or_path, value = raw_data + if action != ConfigActionEnum.CONFIGACTION_SET: continue + if not key_or_path.startswith('/endpoints/endpoint['): continue + if not key_or_path.endswith(']/settings'): continue + key_or_path = key_or_path.replace('/endpoints/', '/device[{:s}]/'.format(device_name)) + LOGGER.debug('Setting key_or_path={:s} value={:s}'.format(str(key_or_path), str(value))) + self.__settings_handler.set(key_or_path, value) + + service_config_rules = self.__settings_handler.dump_config_rules() + LOGGER.debug('service_config_rules={:s}'.format(str(service_config_rules))) + endpoint_obj = get_endpoint_matching(device_obj, endpoint_uuid) - endpoint_settings = self.__settings_handler.get_endpoint_settings(device_obj, endpoint_obj) endpoint_name = endpoint_obj.name + endpoint_settings = self.__settings_handler.get_endpoint_settings(device_obj, endpoint_obj) + + MSG = 'device_uuid={:s} device_name={:s} endpoint_uuid={:s} endpoint_name={:s} endpoint_settings={:s}' + str_endpoint_settings = str(None) if endpoint_settings is None else str(endpoint_settings.value) + LOGGER.debug(MSG.format( + str(device_uuid), str(device_name), str(endpoint_uuid), str(endpoint_name), str_endpoint_settings + )) json_config_rules = teardown_config_rules( service_uuid, connection_uuid, device_uuid, endpoint_uuid, endpoint_name, diff --git a/src/service/service/service_handlers/l2nm_openconfig/ConfigRules.py b/src/service/service/service_handlers/l2nm_openconfig/ConfigRules.py index 5afedb33dea6783af9cdb88b86bc186a279de9cc..cedb39ebf151ef229d374150619ef4486c03a240 100644 --- a/src/service/service/service_handlers/l2nm_openconfig/ConfigRules.py +++ b/src/service/service/service_handlers/l2nm_openconfig/ConfigRules.py @@ -12,38 +12,45 @@ # See the License for the specific language governing permissions and # limitations under the License. -from typing import Dict, List +from typing import Dict, List, Tuple from common.tools.object_factory.ConfigRule import json_config_rule_delete, json_config_rule_set from service.service.service_handler_api.AnyTreeTools import TreeNode def setup_config_rules( service_uuid : str, connection_uuid : str, device_uuid : str, endpoint_uuid : str, endpoint_name : str, - service_settings : TreeNode, endpoint_settings : TreeNode + service_settings : TreeNode, endpoint_settings : TreeNode, endpoint_acls : List [Tuple] ) -> List[Dict]: if service_settings is None: return [] if endpoint_settings is None: return [] - #json_settings : Dict = service_settings.value + json_settings : Dict = service_settings.value json_endpoint_settings : Dict = endpoint_settings.value - #mtu = json_settings.get('mtu', 1450 ) # 1512 - #address_families = json_settings.get('address_families', [] ) # ['IPV4'] - #bgp_as = json_settings.get('bgp_as', 0 ) # 65000 - #bgp_route_target = json_settings.get('bgp_route_target', '0:0') # 65000:333 - - #router_id = json_endpoint_settings.get('router_id', '0.0.0.0') # '10.95.0.10' - #route_distinguisher = json_endpoint_settings.get('route_distinguisher', '0:0' ) # '60001:801' - sub_interface_index = json_endpoint_settings.get('sub_interface_index', 0 ) # 1 - vlan_id = json_endpoint_settings.get('vlan_id', 1 ) # 400 - #address_ip = json_endpoint_settings.get('address_ip', '0.0.0.0') # '2.2.2.1' - #address_prefix = json_endpoint_settings.get('address_prefix', 24 ) # 30 - remote_router = json_endpoint_settings.get('remote_router', '0.0.0.0') # '5.5.5.5' - circuit_id = json_endpoint_settings.get('circuit_id', '000' ) # '111' - - if_cirid_name = '{:s}.{:s}'.format(endpoint_name, str(circuit_id)) - network_instance_name = 'ELAN-AC:{:s}'.format(str(circuit_id)) - connection_point_id = 'VC-1' + mtu = json_settings.get('mtu', 1450 ) # 1512 + #address_families = json_settings.get('address_families', [] ) # ['IPV4'] + #bgp_as = json_settings.get('bgp_as', 0 ) # 65000 + #bgp_route_target = json_settings.get('bgp_route_target', '0:0') # 65000:333 + + #router_id = json_endpoint_settings.get('router_id', '0.0.0.0') # '10.95.0.10' + #route_distinguisher = json_endpoint_settings.get('route_distinguisher', '0:0' ) # '60001:801' + sub_interface_index = json_endpoint_settings.get('sub_interface_index', 0 ) # 1 + vlan_id = json_endpoint_settings.get('vlan_id', 1 ) # 400 + #address_ip = json_endpoint_settings.get('address_ip', '0.0.0.0') # '2.2.2.1' + #address_prefix = json_endpoint_settings.get('address_prefix', 24 ) # 30 + remote_router = json_endpoint_settings.get('remote_router', '5.5.5.5') # '5.5.5.5' + network_instance_name = json_endpoint_settings.get('ni_name', 'ELAN-AC:{:s}'.format(str(vlan_id))) #ELAN-AC:1 + # virtual_circuit_id = json_endpoint_settings.get('vc_id', '111' ) # '111' + connection_point = json_endpoint_settings.get('conn_point', '1' ) # '111' + #network_interface_desc = '{:s}-NetIf'.format(service_uuid) + network_interface_desc = json_endpoint_settings.get('ni_description','') + #network_subinterface_desc = '{:s}-NetSubIf'.format(service_uuid) + network_subinterface_desc = json_endpoint_settings.get('subif_description','') + + if_cirid_name = '{:s}.{:d}'.format(endpoint_name, vlan_id) + connection_point_id = 'VC-{:s}'.format(str(connection_point)) #Provisionalmente comentado, en principio se deberia usar asi + #connection_point_id = 'VC-1' #Uso provisional + virtual_circuit_id = vlan_id json_config_rules = [ @@ -62,9 +69,13 @@ def setup_config_rules( json_config_rule_set( '/network_instance[{:s}]/connection_point[{:s}]'.format(network_instance_name, connection_point_id), - {'name': network_instance_name, 'connection_point': connection_point_id, 'VC_ID': circuit_id, + {'name': network_instance_name, 'connection_point': connection_point_id, 'VC_ID': virtual_circuit_id, 'remote_system': remote_router}), ] + for res_key, res_value in endpoint_acls: + json_config_rules.append( + {'action': 1, 'acl': res_value} + ) return json_config_rules def teardown_config_rules( @@ -86,14 +97,14 @@ def teardown_config_rules( #router_id = json_endpoint_settings.get('router_id', '0.0.0.0') # '10.95.0.10' #route_distinguisher = json_endpoint_settings.get('route_distinguisher', '0:0' ) # '60001:801' sub_interface_index = json_endpoint_settings.get('sub_interface_index', 0 ) # 1 - #vlan_id = json_endpoint_settings.get('vlan_id', 1 ) # 400 + vlan_id = json_endpoint_settings.get('vlan_id', 1 ) # 400 #address_ip = json_endpoint_settings.get('address_ip', '0.0.0.0') # '2.2.2.1' #address_prefix = json_endpoint_settings.get('address_prefix', 24 ) # 30 #remote_router = json_endpoint_settings.get('remote_router', '0.0.0.0') # '5.5.5.5' - circuit_id = json_endpoint_settings.get('circuit_id', '000' ) # '111' + #circuit_id = json_endpoint_settings.get('circuit_id', '000' ) # '111' - if_cirid_name = '{:s}.{:s}'.format(endpoint_name, str(circuit_id)) - network_instance_name = 'ELAN-AC:{:s}'.format(str(circuit_id)) + if_cirid_name = '{:s}.{:d}'.format(endpoint_name, vlan_id) + network_instance_name = 'ELAN-AC:{:s}'.format(str(vlan_id)) connection_point_id = 'VC-1' json_config_rules = [ diff --git a/src/service/service/service_handlers/l2nm_openconfig/L2NMOpenConfigServiceHandler.py b/src/service/service/service_handlers/l2nm_openconfig/L2NMOpenConfigServiceHandler.py index aae9e968b44af52170fdf6f6ecfab76fe90e2b52..6f7f05db5ceed0a2b9146f9275e1619131d77278 100644 --- a/src/service/service/service_handlers/l2nm_openconfig/L2NMOpenConfigServiceHandler.py +++ b/src/service/service/service_handlers/l2nm_openconfig/L2NMOpenConfigServiceHandler.py @@ -54,11 +54,12 @@ class L2NMOpenConfigServiceHandler(_ServiceHandler): device_obj = self.__task_executor.get_device(DeviceId(**json_device_id(device_uuid))) endpoint_obj = get_endpoint_matching(device_obj, endpoint_uuid) endpoint_settings = self.__settings_handler.get_endpoint_settings(device_obj, endpoint_obj) + endpoint_acls = self.__settings_handler.get_endpoint_acls(device_obj, endpoint_obj) endpoint_name = endpoint_obj.name json_config_rules = setup_config_rules( service_uuid, connection_uuid, device_uuid, endpoint_uuid, endpoint_name, - settings, endpoint_settings) + settings, endpoint_settings, endpoint_acls) if len(json_config_rules) > 0: del device_obj.device_config.config_rules[:] diff --git a/src/service/service/service_handlers/l3nm_gnmi_openconfig/ConfigRuleComposer.py b/src/service/service/service_handlers/l3nm_gnmi_openconfig/ConfigRuleComposer.py new file mode 100644 index 0000000000000000000000000000000000000000..7f3593df39f88e2e3ee806dcc33f67f9e85a6b69 --- /dev/null +++ b/src/service/service/service_handlers/l3nm_gnmi_openconfig/ConfigRuleComposer.py @@ -0,0 +1,119 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 Dict, List, Optional, Tuple +from common.proto.context_pb2 import Device, EndPoint +from common.tools.object_factory.ConfigRule import json_config_rule_delete, json_config_rule_set + +from service.service.service_handler_api.AnyTreeTools import TreeNode + +def _interface(if_name, sif_index, ipv4_address, ipv4_prefix, enabled) -> Tuple[str, Dict]: + str_path = '/interface[{:s}]'.format(if_name) + str_data = {'name': if_name, 'enabled': enabled, 'sub_if_index': sif_index, + 'sub_if_enabled': enabled, 'sub_if_ipv4_enabled': enabled, + 'sub_if_ipv4_address': ipv4_address, 'sub_if_ipv4_prefix': ipv4_prefix} + return str_path, str_data + +def _network_instance(ni_name, ni_type) -> Tuple[str, Dict]: + str_path = '/network_instance[{:s}]'.format(ni_name) + str_data = {'name': ni_name, 'type': ni_type} + return str_path, str_data + +def _network_instance_static_route(ni_name, prefix, next_hop, next_hop_index=0) -> Tuple[str, Dict]: + str_path = '/network_instance[{:s}]/static_route[{:s}]'.format(ni_name, prefix) + str_data = {'name': ni_name, 'prefix': prefix, 'next_hop': next_hop, 'next_hop_index': next_hop_index} + return str_path, str_data + +def _network_instance_interface(ni_name, if_name, sif_index) -> Tuple[str, Dict]: + str_path = '/network_instance[{:s}]/interface[{:s}.{:d}]'.format(ni_name, if_name, sif_index) + str_data = {'name': ni_name, 'if_name': if_name, 'sif_index': sif_index} + return str_path, str_data + +class EndpointComposer: + def __init__(self, endpoint_uuid : str) -> None: + self.uuid = endpoint_uuid + self.objekt : Optional[EndPoint] = None + self.sub_interface_index = 0 + self.ipv4_address = None + self.ipv4_prefix = None + + def configure(self, endpoint_obj : EndPoint, settings : Optional[TreeNode]) -> None: + self.objekt = endpoint_obj + if settings is None: return + json_settings : Dict = settings.value + self.ipv4_address = json_settings['ipv4_address'] + self.ipv4_prefix = json_settings['ipv4_prefix'] + self.sub_interface_index = json_settings['sub_interface_index'] + + def get_config_rules(self, network_instance_name : str, delete : bool = False) -> List[Dict]: + json_config_rule = json_config_rule_delete if delete else json_config_rule_set + return [ + json_config_rule(*_interface( + self.objekt.name, self.sub_interface_index, self.ipv4_address, self.ipv4_prefix, True + )), + json_config_rule(*_network_instance_interface( + network_instance_name, self.objekt.name, self.sub_interface_index + )), + ] + +class DeviceComposer: + def __init__(self, device_uuid : str) -> None: + self.uuid = device_uuid + self.objekt : Optional[Device] = None + self.endpoints : Dict[str, EndpointComposer] = dict() + self.static_routes : Dict[str, str] = dict() + + def get_endpoint(self, endpoint_uuid : str) -> EndpointComposer: + if endpoint_uuid not in self.endpoints: + self.endpoints[endpoint_uuid] = EndpointComposer(endpoint_uuid) + return self.endpoints[endpoint_uuid] + + def configure(self, device_obj : Device, settings : Optional[TreeNode]) -> None: + self.objekt = device_obj + if settings is None: return + json_settings : Dict = settings.value + static_routes = json_settings.get('static_routes', []) + for static_route in static_routes: + prefix = static_route['prefix'] + next_hop = static_route['next_hop'] + self.static_routes[prefix] = next_hop + + def get_config_rules(self, network_instance_name : str, delete : bool = False) -> List[Dict]: + json_config_rule = json_config_rule_delete if delete else json_config_rule_set + config_rules = [ + json_config_rule(*_network_instance(network_instance_name, 'L3VRF')) + ] + for endpoint in self.endpoints.values(): + config_rules.extend(endpoint.get_config_rules(network_instance_name, delete=delete)) + for prefix, next_hop in self.static_routes.items(): + config_rules.append( + json_config_rule(*_network_instance_static_route(network_instance_name, prefix, next_hop)) + ) + if delete: config_rules = list(reversed(config_rules)) + return config_rules + +class ConfigRuleComposer: + def __init__(self) -> None: + self.devices : Dict[str, DeviceComposer] = dict() + + def get_device(self, device_uuid : str) -> DeviceComposer: + if device_uuid not in self.devices: + self.devices[device_uuid] = DeviceComposer(device_uuid) + return self.devices[device_uuid] + + def get_config_rules(self, network_instance_name : str, delete : bool = False) -> Dict[str, List[Dict]]: + return { + device_uuid : device.get_config_rules(network_instance_name, delete=delete) + for device_uuid, device in self.devices.items() + } diff --git a/src/service/service/service_handlers/l3nm_gnmi_openconfig/L3NMGnmiOpenConfigServiceHandler.py b/src/service/service/service_handlers/l3nm_gnmi_openconfig/L3NMGnmiOpenConfigServiceHandler.py new file mode 100644 index 0000000000000000000000000000000000000000..a9cec3f42cf75a27451e953f85342e299b642685 --- /dev/null +++ b/src/service/service/service_handlers/l3nm_gnmi_openconfig/L3NMGnmiOpenConfigServiceHandler.py @@ -0,0 +1,161 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 json, logging +from typing import Any, Dict, List, Optional, Tuple, Union +from common.method_wrappers.Decorator import MetricsPool, metered_subclass_method +from common.proto.context_pb2 import ConfigRule, DeviceId, Service +from common.tools.object_factory.Device import json_device_id +from common.type_checkers.Checkers import chk_type +from service.service.service_handler_api.Tools import get_device_endpoint_uuids, get_endpoint_matching +from service.service.service_handler_api._ServiceHandler import _ServiceHandler +from service.service.service_handler_api.SettingsHandler import SettingsHandler +from service.service.task_scheduler.TaskExecutor import TaskExecutor +from .ConfigRuleComposer import ConfigRuleComposer + +LOGGER = logging.getLogger(__name__) + +METRICS_POOL = MetricsPool('Service', 'Handler', labels={'handler': 'l3nm_gnmi_openconfig'}) + +class L3NMGnmiOpenConfigServiceHandler(_ServiceHandler): + def __init__( # pylint: disable=super-init-not-called + self, service : Service, task_executor : TaskExecutor, **settings + ) -> None: + self.__service = service + self.__task_executor = task_executor + self.__settings_handler = SettingsHandler(service.service_config, **settings) + self.__composer = ConfigRuleComposer() + self.__endpoint_map : Dict[Tuple[str, str], str] = dict() + + def _compose_config_rules(self, endpoints : List[Tuple[str, str, Optional[str]]]) -> None: + for endpoint in endpoints: + device_uuid, endpoint_uuid = get_device_endpoint_uuids(endpoint) + + device_obj = self.__task_executor.get_device(DeviceId(**json_device_id(device_uuid))) + device_settings = self.__settings_handler.get_device_settings(device_obj) + _device = self.__composer.get_device(device_obj.name) + _device.configure(device_obj, device_settings) + + endpoint_obj = get_endpoint_matching(device_obj, endpoint_uuid) + endpoint_settings = self.__settings_handler.get_endpoint_settings(device_obj, endpoint_obj) + _endpoint = _device.get_endpoint(endpoint_obj.name) + _endpoint.configure(endpoint_obj, endpoint_settings) + + self.__endpoint_map[(device_uuid, endpoint_uuid)] = device_obj.name + + def _do_configurations( + self, config_rules_per_device : Dict[str, List[Dict]], endpoints : List[Tuple[str, str, Optional[str]]], + delete : bool = False + ) -> List[Union[bool, Exception]]: + # Configuration is done atomically on each device, all OK / all KO per device + results_per_device = dict() + for device_name,json_config_rules in config_rules_per_device.items(): + try: + device_obj = self.__composer.get_device(device_name).objekt + if len(json_config_rules) == 0: continue + del device_obj.device_config.config_rules[:] + for json_config_rule in json_config_rules: + device_obj.device_config.config_rules.append(ConfigRule(**json_config_rule)) + self.__task_executor.configure_device(device_obj) + results_per_device[device_name] = True + except Exception as e: # pylint: disable=broad-exception-caught + verb = 'deconfigure' if delete else 'configure' + MSG = 'Unable to {:s} Device({:s}) : ConfigRules({:s})' + LOGGER.exception(MSG.format(verb, str(device_name), str(json_config_rules))) + results_per_device[device_name] = e + + results = [] + for endpoint in endpoints: + device_uuid, endpoint_uuid = get_device_endpoint_uuids(endpoint) + device_name = self.__endpoint_map[(device_uuid, endpoint_uuid)] + results.append(results_per_device[device_name]) + return results + + @metered_subclass_method(METRICS_POOL) + def SetEndpoint( + self, endpoints : List[Tuple[str, str, Optional[str]]], connection_uuid : Optional[str] = None + ) -> List[Union[bool, Exception]]: + chk_type('endpoints', endpoints, list) + if len(endpoints) == 0: return [] + service_uuid = self.__service.service_id.service_uuid.uuid + #settings = self.__settings_handler.get('/settings') + self._compose_config_rules(endpoints) + network_instance_name = service_uuid.split('-')[0] + config_rules_per_device = self.__composer.get_config_rules(network_instance_name, delete=False) + results = self._do_configurations(config_rules_per_device, endpoints) + return results + + @metered_subclass_method(METRICS_POOL) + def DeleteEndpoint( + self, endpoints : List[Tuple[str, str, Optional[str]]], connection_uuid : Optional[str] = None + ) -> List[Union[bool, Exception]]: + chk_type('endpoints', endpoints, list) + if len(endpoints) == 0: return [] + service_uuid = self.__service.service_id.service_uuid.uuid + #settings = self.__settings_handler.get('/settings') + self._compose_config_rules(endpoints) + network_instance_name = service_uuid.split('-')[0] + config_rules_per_device = self.__composer.get_config_rules(network_instance_name, delete=True) + results = self._do_configurations(config_rules_per_device, endpoints, delete=True) + return results + + @metered_subclass_method(METRICS_POOL) + def SetConstraint(self, constraints : List[Tuple[str, Any]]) -> List[Union[bool, Exception]]: + chk_type('constraints', constraints, list) + if len(constraints) == 0: return [] + + msg = '[SetConstraint] Method not implemented. Constraints({:s}) are being ignored.' + LOGGER.warning(msg.format(str(constraints))) + return [True for _ in range(len(constraints))] + + @metered_subclass_method(METRICS_POOL) + def DeleteConstraint(self, constraints : List[Tuple[str, Any]]) -> List[Union[bool, Exception]]: + chk_type('constraints', constraints, list) + if len(constraints) == 0: return [] + + msg = '[DeleteConstraint] Method not implemented. Constraints({:s}) are being ignored.' + LOGGER.warning(msg.format(str(constraints))) + return [True for _ in range(len(constraints))] + + @metered_subclass_method(METRICS_POOL) + def SetConfig(self, resources : List[Tuple[str, Any]]) -> List[Union[bool, Exception]]: + chk_type('resources', resources, list) + if len(resources) == 0: return [] + + results = [] + for resource in resources: + try: + resource_value = json.loads(resource[1]) + self.__settings_handler.set(resource[0], resource_value) + results.append(True) + except Exception as e: # pylint: disable=broad-except + LOGGER.exception('Unable to SetConfig({:s})'.format(str(resource))) + results.append(e) + + return results + + @metered_subclass_method(METRICS_POOL) + def DeleteConfig(self, resources : List[Tuple[str, Any]]) -> List[Union[bool, Exception]]: + chk_type('resources', resources, list) + if len(resources) == 0: return [] + + results = [] + for resource in resources: + try: + self.__settings_handler.delete(resource[0]) + except Exception as e: # pylint: disable=broad-except + LOGGER.exception('Unable to DeleteConfig({:s})'.format(str(resource))) + results.append(e) + + return results diff --git a/src/service/service/service_handlers/l3nm_gnmi_openconfig/__init__.py b/src/service/service/service_handlers/l3nm_gnmi_openconfig/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..1549d9811aa5d1c193a44ad45d0d7773236c0612 --- /dev/null +++ b/src/service/service/service_handlers/l3nm_gnmi_openconfig/__init__.py @@ -0,0 +1,14 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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/service/service/service_handlers/l3nm_openconfig/ConfigRules.py b/src/service/service/service_handlers/l3nm_openconfig/ConfigRules.py index 5d260bf86b82c66be8eb2f0caa683a72d8bd0ba5..1e4425cdbcaa6ac1f423f2c3c65889e0e8017789 100644 --- a/src/service/service/service_handlers/l3nm_openconfig/ConfigRules.py +++ b/src/service/service/service_handlers/l3nm_openconfig/ConfigRules.py @@ -12,13 +12,13 @@ # See the License for the specific language governing permissions and # limitations under the License. -from typing import Dict, List +from typing import Dict, List, Tuple from common.tools.object_factory.ConfigRule import json_config_rule_delete, json_config_rule_set from service.service.service_handler_api.AnyTreeTools import TreeNode def setup_config_rules( service_uuid : str, connection_uuid : str, device_uuid : str, endpoint_uuid : str, endpoint_name : str, - service_settings : TreeNode, endpoint_settings : TreeNode + service_settings : TreeNode, endpoint_settings : TreeNode, endpoint_acls : List [Tuple] ) -> List[Dict]: if service_settings is None: return [] @@ -27,22 +27,26 @@ def setup_config_rules( json_settings : Dict = service_settings.value json_endpoint_settings : Dict = endpoint_settings.value - service_short_uuid = service_uuid.split('-')[-1] - network_instance_name = '{:s}-NetInst'.format(service_short_uuid) - network_interface_desc = '{:s}-NetIf'.format(service_uuid) - network_subinterface_desc = '{:s}-NetSubIf'.format(service_uuid) + mtu = json_settings.get('mtu', 1450 ) # 1512 + #address_families = json_settings.get('address_families', [] ) # ['IPV4'] + bgp_as = json_settings.get('bgp_as', 65000 ) # 65000 - mtu = json_settings.get('mtu', 1450 ) # 1512 - #address_families = json_settings.get('address_families', [] ) # ['IPV4'] - bgp_as = json_settings.get('bgp_as', 65000 ) # 65000 - route_distinguisher = json_settings.get('route_distinguisher', '0:0' ) # '60001:801' - sub_interface_index = json_endpoint_settings.get('sub_interface_index', 0 ) # 1 - router_id = json_endpoint_settings.get('router_id', '0.0.0.0') # '10.95.0.10' - vlan_id = json_endpoint_settings.get('vlan_id', 1 ) # 400 - address_ip = json_endpoint_settings.get('address_ip', '0.0.0.0') # '2.2.2.1' - address_prefix = json_endpoint_settings.get('address_prefix', 24 ) # 30 - policy_import = json_endpoint_settings.get('policy_AZ', '2' ) # 2 - policy_export = json_endpoint_settings.get('policy_ZA', '7' ) # 30 + router_id = json_endpoint_settings.get('router_id', '0.0.0.0') # '10.95.0.10' + route_distinguisher = json_settings.get('route_distinguisher', '65000:101' ) # '60001:801' + sub_interface_index = json_endpoint_settings.get('sub_interface_index', 0 ) # 1 + vlan_id = json_endpoint_settings.get('vlan_id', 1 ) # 400 + address_ip = json_endpoint_settings.get('address_ip', '0.0.0.0') # '2.2.2.1' + address_prefix = json_endpoint_settings.get('address_prefix', 24 ) # 30 + + policy_import = json_endpoint_settings.get('policy_AZ', '2' ) # 2 + policy_export = json_endpoint_settings.get('policy_ZA', '7' ) # 30 + #network_interface_desc = '{:s}-NetIf'.format(service_uuid) + network_interface_desc = json_endpoint_settings.get('ni_description','') + #network_subinterface_desc = '{:s}-NetSubIf'.format(service_uuid) + network_subinterface_desc = json_endpoint_settings.get('subif_description','') + #service_short_uuid = service_uuid.split('-')[-1] + #network_instance_name = '{:s}-NetInst'.format(service_short_uuid) + network_instance_name = json_endpoint_settings.get('ni_name', service_uuid.split('-')[-1]) #ELAN-AC:1 if_subif_name = '{:s}.{:d}'.format(endpoint_name, vlan_id) @@ -50,7 +54,9 @@ def setup_config_rules( # Configure Interface (not used) #json_config_rule_set( # '/interface[{:s}]'.format(endpoint_name), { - # 'name': endpoint_name, 'description': network_interface_desc, 'mtu': mtu, + # 'name': endpoint_name, + # 'description': network_interface_desc, + # 'mtu': mtu, #}), #Create network instance @@ -177,6 +183,10 @@ def setup_config_rules( }), ] + for res_key, res_value in endpoint_acls: + json_config_rules.append( + {'action': 1, 'acl': res_value} + ) return json_config_rules def teardown_config_rules( diff --git a/src/service/service/service_handlers/l3nm_openconfig/L3NMOpenConfigServiceHandler.py b/src/service/service/service_handlers/l3nm_openconfig/L3NMOpenConfigServiceHandler.py index b14a005e12947cc99b4d46ad0c58c9aae5778d05..3f8a6d9dd445fb4e5b9f051ac117ca71655446e3 100644 --- a/src/service/service/service_handlers/l3nm_openconfig/L3NMOpenConfigServiceHandler.py +++ b/src/service/service/service_handlers/l3nm_openconfig/L3NMOpenConfigServiceHandler.py @@ -54,11 +54,12 @@ class L3NMOpenConfigServiceHandler(_ServiceHandler): device_obj = self.__task_executor.get_device(DeviceId(**json_device_id(device_uuid))) endpoint_obj = get_endpoint_matching(device_obj, endpoint_uuid) endpoint_settings = self.__settings_handler.get_endpoint_settings(device_obj, endpoint_obj) + endpoint_acls = self.__settings_handler.get_endpoint_acls(device_obj, endpoint_obj) endpoint_name = endpoint_obj.name json_config_rules = setup_config_rules( service_uuid, connection_uuid, device_uuid, endpoint_uuid, endpoint_name, - settings, endpoint_settings) + settings, endpoint_settings, endpoint_acls) if len(json_config_rules) > 0: del device_obj.device_config.config_rules[:] diff --git a/src/service/service/tools/GeodesicDistance.py b/src/service/service/tools/GeodesicDistance.py new file mode 100644 index 0000000000000000000000000000000000000000..b66d336f0f617aa834905785e2e49f95073a2df9 --- /dev/null +++ b/src/service/service/tools/GeodesicDistance.py @@ -0,0 +1,18 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 geopy.distance import geodesic + +def gps_distance(gps1, gps2): + return geodesic((gps1.latitude, gps1.longitude), (gps2.latitude, gps2.longitude)).km diff --git a/src/service/tests/PrepareTestScenario.py b/src/service/tests/PrepareTestScenario.py index e4609ec416803312926422aca16cb02a6785a789..6397d95495d4e06cbb6fa2d055a293cfac0bf48f 100644 --- a/src/service/tests/PrepareTestScenario.py +++ b/src/service/tests/PrepareTestScenario.py @@ -22,30 +22,32 @@ from service.client.ServiceClient import ServiceClient from service.service.ServiceService import ServiceService from service.service.service_handler_api.ServiceHandlerFactory import ServiceHandlerFactory from service.service.service_handlers import SERVICE_HANDLERS -from service.tests.MockService_Dependencies import MockService_Dependencies +#from service.tests.MockService_Dependencies import MockService_Dependencies LOCAL_HOST = '127.0.0.1' MOCKSERVICE_PORT = 10000 -SERVICE_SERVICE_PORT = MOCKSERVICE_PORT + get_service_port_grpc(ServiceNameEnum.SERVICE) # avoid privileged ports +SERVICE_SERVICE_PORT = MOCKSERVICE_PORT + int(get_service_port_grpc(ServiceNameEnum.SERVICE)) # avoid privileged ports os.environ[get_env_var_name(ServiceNameEnum.SERVICE, ENVVAR_SUFIX_SERVICE_HOST )] = str(LOCAL_HOST) os.environ[get_env_var_name(ServiceNameEnum.SERVICE, ENVVAR_SUFIX_SERVICE_PORT_GRPC)] = str(SERVICE_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 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 +#def context_client(mock_service : MockService_Dependencies): # pylint: disable=redefined-outer-name +def context_client(): _client = ContextClient() yield _client _client.close() @pytest.fixture(scope='session') -def device_client(mock_service : MockService_Dependencies): # pylint: disable=redefined-outer-name +#def device_client(mock_service : MockService_Dependencies): # pylint: disable=redefined-outer-name +def device_client(): _client = DeviceClient() yield _client _client.close() diff --git a/src/service/tests/ServiceHandler_L3NM_EMU.py b/src/service/tests/ServiceHandler_L3NM_EMU.py index 3df27b439626dad652e443cca4195ce36f4ac86f..2f58aabd987eb391c195fb1f170959178ba40be6 100644 --- a/src/service/tests/ServiceHandler_L3NM_EMU.py +++ b/src/service/tests/ServiceHandler_L3NM_EMU.py @@ -13,63 +13,97 @@ # limitations under the License. from typing import Dict, List, Tuple + +from common.tools.object_factory.Location import json_location, json_gps_position from common.tools.object_factory.ConfigRule import json_config_rule_set -from common.tools.object_factory.Constraint import json_constraint_custom +from common.tools.object_factory.Constraint import json_constraint_custom, json_constraint_endpoint_location_gps from common.tools.object_factory.Device import ( - json_device_emulated_packet_router_disabled, json_device_emulated_tapi_disabled, json_device_id) -from common.tools.object_factory.EndPoint import json_endpoint, json_endpoint_id + json_device_emulated_connect_rules, json_device_emulated_packet_router_disabled, + json_device_emulated_tapi_disabled, json_device_id) +from common.tools.object_factory.EndPoint import json_endpoint, json_endpoint_descriptor, json_endpoint_id from common.tools.object_factory.Link import json_link, json_link_id from common.tools.object_factory.Service import json_service_id, json_service_l3nm_planned from .CommonObjects import CONTEXT, CONTEXT_ID, PACKET_PORT_SAMPLE_TYPES, TOPOLOGY, TOPOLOGY_ID SERVICE_HANDLER_NAME = 'l3nm_emulated' -def json_endpoint_ids(device_id : Dict, endpoint_descriptors : List[Tuple[str, str]]): +def json_endpoint_ids(device_id : Dict, endpoint_descriptors : List[Dict]): return [ - json_endpoint_id(device_id, ep_uuid) - for ep_uuid, _ in endpoint_descriptors + json_endpoint_id(device_id, ep_data['uuid']) + for ep_data in endpoint_descriptors ] -def json_endpoints(device_id : Dict, endpoint_descriptors : List[Tuple[str, str]]): +def json_endpoints(device_id : Dict, endpoint_descriptors : List[Dict]): return [ - json_endpoint(device_id, ep_uuid, ep_type, kpi_sample_types=PACKET_PORT_SAMPLE_TYPES) - for ep_uuid, ep_type in endpoint_descriptors + json_endpoint( + device_id, ep_data['uuid'], ep_data['type'], kpi_sample_types=PACKET_PORT_SAMPLE_TYPES, + location=ep_data.get('location')) + for ep_data in endpoint_descriptors ] + +BARCELONA_GPS = (41.386726, 2.170107) +MALAGA_GPS = (36.721162, -4.418339) +ZARAGOZA_GPS = (41.655552, -0.876442) +MADRID_GPS = (40.416741, -3.703285) +TOLEDO_GPS = (39.862947, -4.027485) +ANDORRA_GPS = (42.506017, 1.525923) +SANTIAGO_GPS = (42.876254, -8.543588) +GRANADA_GPS = (37.178106, -3.599816) +PONFERRADA_GPS = (42.550116, -6.597930) +ALBACETE_GPS = (38.998249, -1.858145) + + # ----- Devices -------------------------------------------------------------------------------------------------------- DEVICE_R1_UUID = 'R1' -DEVICE_R1_ENDPOINT_DEFS = [('EP1', 'optical'), ('EP100', 'copper')] +DEVICE_R1_ENDPOINT_DEFS = [ + json_endpoint_descriptor('EP1', 'optical', location=json_location(gps_position=json_gps_position(*BARCELONA_GPS))), + json_endpoint_descriptor('EP100', 'copper', location=json_location(gps_position=json_gps_position(*BARCELONA_GPS))) +] DEVICE_R1_ID = json_device_id(DEVICE_R1_UUID) -DEVICE_R1_ENDPOINTS = json_endpoints(DEVICE_R1_ID, DEVICE_R1_ENDPOINT_DEFS) +DEVICE_R1_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_R1_ENDPOINT_DEFS) +DEVICE_R1 = json_device_emulated_packet_router_disabled( + DEVICE_R1_UUID, config_rules=DEVICE_R1_CONNECT_RULES) DEVICE_R1_ENDPOINT_IDS = json_endpoint_ids(DEVICE_R1_ID, DEVICE_R1_ENDPOINT_DEFS) -DEVICE_R1 = json_device_emulated_packet_router_disabled(DEVICE_R1_UUID, endpoints=DEVICE_R1_ENDPOINTS) ENDPOINT_ID_R1_EP1 = DEVICE_R1_ENDPOINT_IDS[0] ENDPOINT_ID_R1_EP100 = DEVICE_R1_ENDPOINT_IDS[1] DEVICE_R2_UUID = 'R2' -DEVICE_R2_ENDPOINT_DEFS = [('EP1', 'optical'), ('EP100', 'copper')] +DEVICE_R2_ENDPOINT_DEFS = [ + json_endpoint_descriptor('EP1', 'optical', location=json_location(gps_position=json_gps_position(*MADRID_GPS))), + json_endpoint_descriptor('EP100', 'copper', location=json_location(gps_position=json_gps_position(*MADRID_GPS))) +] DEVICE_R2_ID = json_device_id(DEVICE_R2_UUID) -DEVICE_R2_ENDPOINTS = json_endpoints(DEVICE_R2_ID, DEVICE_R2_ENDPOINT_DEFS) +DEVICE_R2_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_R2_ENDPOINT_DEFS) +DEVICE_R2 = json_device_emulated_packet_router_disabled( + DEVICE_R2_UUID, config_rules=DEVICE_R2_CONNECT_RULES) DEVICE_R2_ENDPOINT_IDS = json_endpoint_ids(DEVICE_R2_ID, DEVICE_R2_ENDPOINT_DEFS) -DEVICE_R2 = json_device_emulated_packet_router_disabled(DEVICE_R2_UUID, endpoints=DEVICE_R2_ENDPOINTS) ENDPOINT_ID_R2_EP1 = DEVICE_R2_ENDPOINT_IDS[0] ENDPOINT_ID_R2_EP100 = DEVICE_R2_ENDPOINT_IDS[1] DEVICE_R3_UUID = 'R3' -DEVICE_R3_ENDPOINT_DEFS = [('EP1', 'optical'), ('EP100', 'copper')] +DEVICE_R3_ENDPOINT_DEFS = [ + json_endpoint_descriptor('EP1', 'optical', location=json_location(gps_position=json_gps_position(*MALAGA_GPS))), + json_endpoint_descriptor('EP100', 'copper', location=json_location(gps_position=json_gps_position(*MALAGA_GPS))) +] DEVICE_R3_ID = json_device_id(DEVICE_R3_UUID) -DEVICE_R3_ENDPOINTS = json_endpoints(DEVICE_R3_ID, DEVICE_R3_ENDPOINT_DEFS) +DEVICE_R2_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_R2_ENDPOINT_DEFS) +DEVICE_R3 = json_device_emulated_packet_router_disabled( + DEVICE_R3_UUID, config_rules=DEVICE_R2_CONNECT_RULES) DEVICE_R3_ENDPOINT_IDS = json_endpoint_ids(DEVICE_R3_ID, DEVICE_R3_ENDPOINT_DEFS) -DEVICE_R3 = json_device_emulated_packet_router_disabled(DEVICE_R3_UUID, endpoints=DEVICE_R3_ENDPOINTS) ENDPOINT_ID_R3_EP1 = DEVICE_R3_ENDPOINT_IDS[0] ENDPOINT_ID_R3_EP100 = DEVICE_R3_ENDPOINT_IDS[1] DEVICE_O1_UUID = 'O1' -DEVICE_O1_ENDPOINT_DEFS = [('EP1', 'optical'), ('EP2', 'optical'), ('EP3', 'optical')] +DEVICE_O1_ENDPOINT_DEFS = [ + json_endpoint_descriptor('EP1', 'optical', location=json_location(gps_position=json_gps_position(*PONFERRADA_GPS))), + json_endpoint_descriptor('EP2', 'optical', location=json_location(gps_position=json_gps_position(*PONFERRADA_GPS))), + json_endpoint_descriptor('EP3', 'optical', location=json_location(gps_position=json_gps_position(*PONFERRADA_GPS))) +] DEVICE_O1_ID = json_device_id(DEVICE_O1_UUID) -DEVICE_O1_ENDPOINTS = json_endpoints(DEVICE_O1_ID, DEVICE_O1_ENDPOINT_DEFS) +DEVICE_O1_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_O1_ENDPOINT_DEFS) +DEVICE_O1 = json_device_emulated_tapi_disabled(DEVICE_O1_UUID, config_rules=DEVICE_O1_CONNECT_RULES) DEVICE_O1_ENDPOINT_IDS = json_endpoint_ids(DEVICE_O1_ID, DEVICE_O1_ENDPOINT_DEFS) -DEVICE_O1 = json_device_emulated_tapi_disabled(DEVICE_O1_UUID, endpoints=DEVICE_O1_ENDPOINTS) ENDPOINT_ID_O1_EP1 = DEVICE_O1_ENDPOINT_IDS[0] ENDPOINT_ID_O1_EP2 = DEVICE_O1_ENDPOINT_IDS[1] ENDPOINT_ID_O1_EP3 = DEVICE_O1_ENDPOINT_IDS[2] @@ -104,6 +138,16 @@ SERVICE_R1_R3_CONSTRAINTS = [ json_constraint_custom('latency_ms', 15.2), json_constraint_custom('jitter_us', 1.2), ] + +SERVICE_R1_R3_CONSTRAINTS_LOCATION = [ + json_constraint_endpoint_location_gps(None, ZARAGOZA_GPS[0], ZARAGOZA_GPS[1]), + json_constraint_endpoint_location_gps(None, TOLEDO_GPS[0], TOLEDO_GPS[1]), +] +SERVICE_R1_R3_CONSTRAINTS_LOCATION_NEW = [ + json_constraint_endpoint_location_gps(None, SANTIAGO_GPS[0], SANTIAGO_GPS[1]), + json_constraint_endpoint_location_gps(None, GRANADA_GPS[0], GRANADA_GPS[1]), +] + SERVICE_R1_R3_CONFIG_RULES = [ json_config_rule_set( '/settings', @@ -123,14 +167,15 @@ SERVICE_R1_R3_DESCRIPTOR = json_service_l3nm_planned(SERVICE_R1_R3_UUID) # ----- Test Descriptor ------------------------------------------------------------------------------------------------ TEST_SERVICE_HANDLER = (SERVICE_HANDLER_NAME, { - 'contexts' : [CONTEXT], - 'topologies' : [TOPOLOGY], - 'devices' : [DEVICE_R1, DEVICE_R2, DEVICE_R3, DEVICE_O1], - 'links' : [LINK_R1_O1, LINK_R2_O1, LINK_R3_O1], - - 'service_id' : SERVICE_R1_R3_ID, - 'service_descriptor' : SERVICE_R1_R3_DESCRIPTOR, - 'service_endpoint_ids' : SERVICE_R1_R3_ENDPOINT_IDS, - 'service_config_rules' : SERVICE_R1_R3_CONFIG_RULES, - 'service_constraints' : SERVICE_R1_R3_CONSTRAINTS, + 'contexts' : [CONTEXT], + 'topologies' : [TOPOLOGY], + 'devices' : [DEVICE_R1, DEVICE_R2, DEVICE_R3, DEVICE_O1], + 'links' : [LINK_R1_O1, LINK_R2_O1, LINK_R3_O1], + 'service_id' : SERVICE_R1_R3_ID, + 'service_descriptor' : SERVICE_R1_R3_DESCRIPTOR, + 'service_endpoint_ids' : SERVICE_R1_R3_ENDPOINT_IDS, + 'service_config_rules' : SERVICE_R1_R3_CONFIG_RULES, + 'service_constraints' : SERVICE_R1_R3_CONSTRAINTS, + 'service_constraints_location' : SERVICE_R1_R3_CONSTRAINTS_LOCATION, + 'service_constraints_location_new' : SERVICE_R1_R3_CONSTRAINTS_LOCATION_NEW, }) diff --git a/src/service/tests/ServiceHandler_L3NM_OC.py b/src/service/tests/ServiceHandler_L3NM_OC.py index a8f1e315a136838cdea4e2c7c4c9e444be250a4b..2dcf089e0263d77203adfc45e5d06dbe54727347 100644 --- a/src/service/tests/ServiceHandler_L3NM_OC.py +++ b/src/service/tests/ServiceHandler_L3NM_OC.py @@ -19,28 +19,31 @@ from common.tools.object_factory.Constraint import json_constraint_custom from common.tools.object_factory.Device import ( json_device_connect_rules, json_device_emulated_packet_router_disabled, json_device_emulated_tapi_disabled, json_device_id) -from common.tools.object_factory.EndPoint import json_endpoint, json_endpoint_id +from common.tools.object_factory.EndPoint import json_endpoint, json_endpoint_descriptor, json_endpoint_id from common.tools.object_factory.Link import json_link, json_link_id from common.tools.object_factory.Service import json_service_id, json_service_l3nm_planned from .CommonObjects import CONTEXT, CONTEXT_ID, PACKET_PORT_SAMPLE_TYPES, TOPOLOGY, TOPOLOGY_ID SERVICE_HANDLER_NAME = 'l3nm_openconfig' -def json_endpoint_ids(device_id : Dict, endpoint_descriptors : List[Tuple[str, str]]): +def json_endpoint_ids(device_id : Dict, endpoint_descriptors : List[Dict]): return [ - json_endpoint_id(device_id, ep_uuid) - for ep_uuid, _ in endpoint_descriptors + json_endpoint_id(device_id, ep_data['uuid']) + for ep_data in endpoint_descriptors ] -def json_endpoints(device_id : Dict, endpoint_descriptors : List[Tuple[str, str]]): +def json_endpoints(device_id : Dict, endpoint_descriptors : List[Dict]): return [ - json_endpoint(device_id, ep_uuid, ep_type, kpi_sample_types=PACKET_PORT_SAMPLE_TYPES) - for ep_uuid, ep_type in endpoint_descriptors + json_endpoint( + device_id, ep_data['uuid'], ep_data['type'], kpi_sample_types=PACKET_PORT_SAMPLE_TYPES, + location=ep_data.get('location')) + for ep_data in endpoint_descriptors ] # ----- Devices -------------------------------------------------------------------------------------------------------- DEVICE_R1_UUID = 'R1' -DEVICE_R1_ENDPOINT_DEFS = [('EP1', 'optical'), ('EP100', 'copper')] +DEVICE_R1_ENDPOINT_DEFS = [json_endpoint_descriptor('EP1', 'optical'), + json_endpoint_descriptor('EP100', 'copper')] DEVICE_R1_ADDRESS = '10.0.0.1' DEVICE_R1_PORT = 830 DEVICE_R1_USERNAME = 'admin' @@ -60,7 +63,8 @@ DEVICE_R1_CONNECT_RULES = json_device_connect_rules(DEVICE_R1_ADDRESS, DEVICE_R1 DEVICE_R2_UUID = 'R2' -DEVICE_R2_ENDPOINT_DEFS = [('EP1', 'optical'), ('EP100', 'copper')] +DEVICE_R2_ENDPOINT_DEFS = [json_endpoint_descriptor('EP1', 'optical'), + json_endpoint_descriptor('EP100', 'copper')] DEVICE_R2_ADDRESS = '10.0.0.2' DEVICE_R2_PORT = 830 DEVICE_R2_USERNAME = 'admin' @@ -80,7 +84,8 @@ DEVICE_R2_CONNECT_RULES = json_device_connect_rules(DEVICE_R2_ADDRESS, DEVICE_R2 DEVICE_O1_UUID = 'O1' -DEVICE_O1_ENDPOINT_DEFS = [(str(uuid.uuid4()), 'optical'), (str(uuid.uuid4()), 'optical')] +DEVICE_O1_ENDPOINT_DEFS = [json_endpoint_descriptor(str(uuid.uuid4()), 'optical'), + json_endpoint_descriptor(str(uuid.uuid4()), 'optical')] DEVICE_O1_ADDRESS = '10.0.0.3' DEVICE_O1_PORT = 4900 DEVICE_O1_TIMEOUT = 120 @@ -137,14 +142,15 @@ SERVICE_R1_R2_DESCRIPTOR = json_service_l3nm_planned(SERVICE_R1_R2_UUID) # ----- Test Descriptor ------------------------------------------------------------------------------------------------ TEST_SERVICE_HANDLER = (SERVICE_HANDLER_NAME, { - 'contexts' : [CONTEXT], - 'topologies' : [TOPOLOGY], - 'devices' : [DEVICE_R1, DEVICE_R2, DEVICE_O1], - 'links' : [LINK_R1_O1, LINK_R2_O1], - - 'service_id' : SERVICE_R1_R2_ID, - 'service_descriptor' : SERVICE_R1_R2_DESCRIPTOR, - 'service_endpoint_ids' : SERVICE_R1_R2_ENDPOINT_IDS, - 'service_config_rules' : SERVICE_R1_R2_CONFIG_RULES, - 'service_constraints' : SERVICE_R1_R2_CONSTRAINTS, + 'contexts' : [CONTEXT], + 'topologies' : [TOPOLOGY], + 'devices' : [DEVICE_R1, DEVICE_R2, DEVICE_O1], + 'links' : [LINK_R1_O1, LINK_R2_O1], + 'service_id' : SERVICE_R1_R2_ID, + 'service_descriptor' : SERVICE_R1_R2_DESCRIPTOR, + 'service_endpoint_ids' : SERVICE_R1_R2_ENDPOINT_IDS, + 'service_config_rules' : SERVICE_R1_R2_CONFIG_RULES, + 'service_constraints' : SERVICE_R1_R2_CONSTRAINTS, + 'service_constraints_location' : [], + 'service_constraints_location_new' : [], }) diff --git a/src/service/tests/ServiceHandlersToTest.py b/src/service/tests/ServiceHandlersToTest.py index c50a0b45774f15497578a9c5b365e1e331d6d95e..9b45cad7b9def99a5285f4a249af5cd608a91770 100644 --- a/src/service/tests/ServiceHandlersToTest.py +++ b/src/service/tests/ServiceHandlersToTest.py @@ -22,8 +22,8 @@ try: except ImportError: pass -try: - from service.tests.ServiceHandler_L3NM_OC import TEST_SERVICE_HANDLER - SERVICE_HANDLERS_TO_TEST.append(TEST_SERVICE_HANDLER) -except ImportError: - pass +#try: +# from service.tests.ServiceHandler_L3NM_OC import TEST_SERVICE_HANDLER +# SERVICE_HANDLERS_TO_TEST.append(TEST_SERVICE_HANDLER) +#except ImportError: +# pass diff --git a/src/service/tests/test_unitary.py b/src/service/tests/test_unitary.py index f99f9b191083db017486d03d0bc93b0d9152b35f..366add517994c255abd29056f2ab523de3752a37 100644 --- a/src/service/tests/test_unitary.py +++ b/src/service/tests/test_unitary.py @@ -22,7 +22,9 @@ from device.client.DeviceClient import DeviceClient from service.client.ServiceClient import ServiceClient from .PrepareTestScenario import ( # pylint: disable=unused-import # be careful, order of symbols is important here! - mock_service, service_service, context_client, device_client, service_client) + # mock_service, + service_service, context_client, device_client, service_client +) LOGGER = logging.getLogger(__name__) LOGGER.setLevel(logging.DEBUG) @@ -37,8 +39,8 @@ class TestServiceHandlers: scenarios = SERVICE_HANDLERS_TO_TEST def test_prepare_environment( - self, service_id, service_descriptor, service_endpoint_ids, service_config_rules, service_constraints, - contexts, topologies, devices, links, + self, contexts, topologies, devices, links, service_id, service_descriptor, service_endpoint_ids, + service_config_rules, service_constraints, service_constraints_location, service_constraints_location_new, context_client : ContextClient, # pylint: disable=redefined-outer-name device_client : DeviceClient, # pylint: disable=redefined-outer-name service_client : ServiceClient): # pylint: disable=redefined-outer-name @@ -50,8 +52,8 @@ class TestServiceHandlers: def test_service_create_error_cases( - self, service_id, service_descriptor, service_endpoint_ids, service_config_rules, service_constraints, - contexts, topologies, devices, links, + self, contexts, topologies, devices, links, service_id, service_descriptor, service_endpoint_ids, + service_config_rules, service_constraints, service_constraints_location, service_constraints_location_new, context_client : ContextClient, # pylint: disable=redefined-outer-name device_client : DeviceClient, # pylint: disable=redefined-outer-name service_client : ServiceClient): # pylint: disable=redefined-outer-name @@ -91,8 +93,8 @@ class TestServiceHandlers: def test_service_create_correct( - self, service_id, service_descriptor, service_endpoint_ids, service_config_rules, service_constraints, - contexts, topologies, devices, links, + self, contexts, topologies, devices, links, service_id, service_descriptor, service_endpoint_ids, + service_config_rules, service_constraints, service_constraints_location, service_constraints_location_new, context_client : ContextClient, # pylint: disable=redefined-outer-name device_client : DeviceClient, # pylint: disable=redefined-outer-name service_client : ServiceClient): # pylint: disable=redefined-outer-name @@ -101,8 +103,8 @@ class TestServiceHandlers: def test_service_get_created( - self, service_id, service_descriptor, service_endpoint_ids, service_config_rules, service_constraints, - contexts, topologies, devices, links, + self, contexts, topologies, devices, links, service_id, service_descriptor, service_endpoint_ids, + service_config_rules, service_constraints, service_constraints_location, service_constraints_location_new, context_client : ContextClient, # pylint: disable=redefined-outer-name device_client : DeviceClient, # pylint: disable=redefined-outer-name service_client : ServiceClient): # pylint: disable=redefined-outer-name @@ -112,8 +114,8 @@ class TestServiceHandlers: def test_service_update_configure( - self, service_id, service_descriptor, service_endpoint_ids, service_config_rules, service_constraints, - contexts, topologies, devices, links, + self, contexts, topologies, devices, links, service_id, service_descriptor, service_endpoint_ids, + service_config_rules, service_constraints, service_constraints_location, service_constraints_location_new, context_client : ContextClient, # pylint: disable=redefined-outer-name device_client : DeviceClient, # pylint: disable=redefined-outer-name service_client : ServiceClient): # pylint: disable=redefined-outer-name @@ -123,7 +125,6 @@ class TestServiceHandlers: service_with_settings['service_config']['config_rules'].extend(service_config_rules) service_with_settings['service_constraints'].extend(service_constraints) service_client.UpdateService(Service(**service_with_settings)) - for endpoint_id in service_endpoint_ids: device_id = endpoint_id['device_id'] device_data = context_client.GetDevice(DeviceId(**device_id)) @@ -131,10 +132,9 @@ class TestServiceHandlers: LOGGER.info('device_data[{:s}][#{:d}] => {:s}'.format( str(device_id), i, grpc_message_to_json_string(config_rule))) - def test_service_update_deconfigure( - self, service_id, service_descriptor, service_endpoint_ids, service_config_rules, service_constraints, - contexts, topologies, devices, links, + self, contexts, topologies, devices, links, service_id, service_descriptor, service_endpoint_ids, + service_config_rules, service_constraints, service_constraints_location, service_constraints_location_new, context_client : ContextClient, # pylint: disable=redefined-outer-name device_client : DeviceClient, # pylint: disable=redefined-outer-name service_client : ServiceClient): # pylint: disable=redefined-outer-name @@ -152,8 +152,8 @@ class TestServiceHandlers: def test_service_get_updated( - self, service_id, service_descriptor, service_endpoint_ids, service_config_rules, service_constraints, - contexts, topologies, devices, links, + self, contexts, topologies, devices, links, service_id, service_descriptor, service_endpoint_ids, + service_config_rules, service_constraints, service_constraints_location, service_constraints_location_new, context_client : ContextClient, # pylint: disable=redefined-outer-name device_client : DeviceClient, # pylint: disable=redefined-outer-name service_client : ServiceClient): # pylint: disable=redefined-outer-name @@ -162,19 +162,79 @@ class TestServiceHandlers: LOGGER.info('service_data = {:s}'.format(grpc_message_to_json_string(service_data))) - def test_service_delete( - self, service_id, service_descriptor, service_endpoint_ids, service_config_rules, service_constraints, - contexts, topologies, devices, links, + def test_service_update_configure_loc( + self, contexts, topologies, devices, links, service_id, service_descriptor, service_endpoint_ids, + service_config_rules, service_constraints, service_constraints_location, service_constraints_location_new, context_client : ContextClient, # pylint: disable=redefined-outer-name device_client : DeviceClient, # pylint: disable=redefined-outer-name service_client : ServiceClient): # pylint: disable=redefined-outer-name - service_client.DeleteService(ServiceId(**service_id)) + service_with_settings = copy.deepcopy(service_descriptor) + service_with_settings['service_config']['config_rules'].extend(service_config_rules) + service_with_settings['service_constraints'].extend(service_constraints_location) + service_client.UpdateService(Service(**service_with_settings)) + + for endpoint_id in service_endpoint_ids: + device_id = endpoint_id['device_id'] + device_data = context_client.GetDevice(DeviceId(**device_id)) + for i,config_rule in enumerate(device_data.device_config.config_rules): + LOGGER.info('device_data[{:s}][#{:d}] => {:s}'.format( + str(device_id), i, grpc_message_to_json_string(config_rule))) + def test_service_get_updated_1( + self, contexts, topologies, devices, links, service_id, service_descriptor, service_endpoint_ids, + service_config_rules, service_constraints, service_constraints_location, service_constraints_location_new, + context_client : ContextClient, # pylint: disable=redefined-outer-name + device_client : DeviceClient, # pylint: disable=redefined-outer-name + service_client : ServiceClient): # pylint: disable=redefined-outer-name + + service_data = context_client.GetService(ServiceId(**service_id)) + LOGGER.info('service_data = {:s}'.format(grpc_message_to_json_string(service_data))) + + + def test_service_update_configure_loc_new( + self, contexts, topologies, devices, links, service_id, service_descriptor, service_endpoint_ids, + service_config_rules, service_constraints, service_constraints_location, service_constraints_location_new, + context_client : ContextClient, # pylint: disable=redefined-outer-name + device_client : DeviceClient, # pylint: disable=redefined-outer-name + service_client : ServiceClient): # pylint: disable=redefined-outer-name + + service_with_settings = copy.deepcopy(service_descriptor) + service_with_settings['service_config']['config_rules'].extend(service_config_rules) + service_with_settings['service_constraints'].extend(service_constraints_location_new) + service_client.UpdateService(Service(**service_with_settings)) + + for endpoint_id in service_endpoint_ids: + device_id = endpoint_id['device_id'] + device_data = context_client.GetDevice(DeviceId(**device_id)) + for i,config_rule in enumerate(device_data.device_config.config_rules): + LOGGER.info('device_data[{:s}][#{:d}] => {:s}'.format( + str(device_id), i, grpc_message_to_json_string(config_rule))) + + + def test_service_get_updated_2( + self, contexts, topologies, devices, links, service_id, service_descriptor, service_endpoint_ids, + service_config_rules, service_constraints, service_constraints_location, service_constraints_location_new, + context_client : ContextClient, # pylint: disable=redefined-outer-name + device_client : DeviceClient, # pylint: disable=redefined-outer-name + service_client : ServiceClient): # pylint: disable=redefined-outer-name + + service_data = context_client.GetService(ServiceId(**service_id)) + LOGGER.info('service_data = {:s}'.format(grpc_message_to_json_string(service_data))) + + def test_service_delete_loc( + self, contexts, topologies, devices, links, service_id, service_descriptor, service_endpoint_ids, + service_config_rules, service_constraints, service_constraints_location, service_constraints_location_new, + context_client : ContextClient, # pylint: disable=redefined-outer-name + device_client : DeviceClient, # pylint: disable=redefined-outer-name + service_client : ServiceClient): # pylint: disable=redefined-outer-name + + service_client.DeleteService(ServiceId(**service_id)) + def test_cleanup_environment( - self, service_id, service_descriptor, service_endpoint_ids, service_config_rules, service_constraints, - contexts, topologies, devices, links, + self, contexts, topologies, devices, links, service_id, service_descriptor, service_endpoint_ids, + service_config_rules, service_constraints, service_constraints_location, service_constraints_location_new, context_client : ContextClient, # pylint: disable=redefined-outer-name device_client : DeviceClient, # pylint: disable=redefined-outer-name service_client : ServiceClient): # pylint: disable=redefined-outer-name diff --git a/src/slice/service/SliceServiceServicerImpl.py b/src/slice/service/SliceServiceServicerImpl.py index f91c55e281e8ed5f994dea3dce43a63184669795..cbe2dd5c715da21e0e8bbdead6fa60af746cd58f 100644 --- a/src/slice/service/SliceServiceServicerImpl.py +++ b/src/slice/service/SliceServiceServicerImpl.py @@ -18,7 +18,7 @@ from common.proto.context_pb2 import ( Empty, Service, ServiceId, ServiceStatusEnum, ServiceTypeEnum, Slice, SliceId, SliceStatusEnum) from common.proto.slice_pb2_grpc import SliceServiceServicer from common.method_wrappers.Decorator import MetricsPool, safe_and_metered_rpc_method -from common.tools.context_queries.InterDomain import is_multi_domain +from common.tools.context_queries.InterDomain import is_inter_domain #, is_multi_domain from common.tools.context_queries.Slice import get_slice_by_id from common.tools.grpc.ConfigRules import copy_config_rules from common.tools.grpc.Constraints import copy_constraints @@ -48,7 +48,7 @@ class SliceServiceServicerImpl(SliceServiceServicer): slice_rw = Slice() slice_rw.CopyFrom(request if slice_ro is None else slice_ro) - slice_rw.name = request.name + if len(request.name) > 0: slice_rw.name = request.name slice_rw.slice_owner.CopyFrom(request.slice_owner) # pylint: disable=no-member slice_rw.slice_status.slice_status = SliceStatusEnum.SLICESTATUS_PLANNED # pylint: disable=no-member @@ -74,7 +74,7 @@ class SliceServiceServicerImpl(SliceServiceServicer): #changes = deepdiff.DeepDiff(json_current_slice, json_updated_slice) #LOGGER.info('changes = {:s}'.format(str(changes))) - if is_multi_domain(context_client, slice_with_uuids.slice_endpoint_ids): + if is_inter_domain(context_client, slice_with_uuids.slice_endpoint_ids): interdomain_client = InterdomainClient() slice_id = interdomain_client.RequestSlice(slice_with_uuids) slice_ = context_client.GetSlice(slice_id) @@ -203,29 +203,28 @@ class SliceServiceServicerImpl(SliceServiceServicer): context_client.close() return Empty() - if is_multi_domain(context_client, _slice.slice_endpoint_ids): - #interdomain_client = InterdomainClient() - #slice_id = interdomain_client.DeleteSlice(request) - raise NotImplementedError('Delete inter-domain slice') - else: - current_slice = Slice() - current_slice.CopyFrom(_slice) - current_slice.slice_status.slice_status = SliceStatusEnum.SLICESTATUS_DEINIT # pylint: disable=no-member - context_client.SetSlice(current_slice) + _slice_rw = Slice() + _slice_rw.CopyFrom(_slice) + _slice_rw.slice_status.slice_status = SliceStatusEnum.SLICESTATUS_DEINIT # pylint: disable=no-member + context_client.SetSlice(_slice_rw) + if is_inter_domain(context_client, _slice.slice_endpoint_ids): + interdomain_client = InterdomainClient() + slice_id = interdomain_client.DeleteSlice(request) + interdomain_client.close() + else: if self._slice_grouper.is_enabled: - ungrouped = self._slice_grouper.ungroup(current_slice) # pylint: disable=unused-variable - - service_client = ServiceClient() - for service_id in _slice.slice_service_ids: - current_slice = Slice() - current_slice.slice_id.CopyFrom(_slice.slice_id) # pylint: disable=no-member - slice_service_id = current_slice.slice_service_ids.add() # pylint: disable=no-member - slice_service_id.CopyFrom(service_id) - context_client.UnsetSlice(current_slice) - - service_client.DeleteService(service_id) - service_client.close() + ungrouped = self._slice_grouper.ungroup(_slice_rw) # pylint: disable=unused-variable + + service_client = ServiceClient() + for service_id in _slice.slice_service_ids: + tmp_slice = Slice() + tmp_slice.slice_id.CopyFrom(_slice.slice_id) # pylint: disable=no-member + slice_service_id = tmp_slice.slice_service_ids.add() # pylint: disable=no-member + slice_service_id.CopyFrom(service_id) + context_client.UnsetSlice(tmp_slice) + service_client.DeleteService(service_id) + service_client.close() context_client.RemoveSlice(request) context_client.close() diff --git a/src/te/.dockerignore b/src/te/.dockerignore new file mode 100644 index 0000000000000000000000000000000000000000..558d2f3ece10e09c6a5ecd710c21e3f727bdd25c --- /dev/null +++ b/src/te/.dockerignore @@ -0,0 +1,4 @@ +Dockerfile +_build +README.md +.tool-versions diff --git a/src/te/.gitignore b/src/te/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..eeb7cfc4aefeeb2f4fa86e208119ebc360c3f7af --- /dev/null +++ b/src/te/.gitignore @@ -0,0 +1,21 @@ +.tool-versions +.rebar3 +_* +.eunit +*.o +*.beam +*.plt +*.swp +*.swo +.erlang.cookie +ebin +log +erl_crash.dump +.rebar +logs +_build +.idea +*.iml +rebar3.crashdump +*~ +config/dev.config diff --git a/src/te/Dockerfile b/src/te/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..aaca9fe87ad330c2d43406d5b5df2a585617d937 --- /dev/null +++ b/src/te/Dockerfile @@ -0,0 +1,59 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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. + +# Multi-stage Docker image build + +# Build stage 0 +FROM erlang:24.3-alpine + +RUN apk add --no-cache bash git + +RUN mkdir /var/teraflow +WORKDIR /var/teraflow + +COPY proto proto +RUN bash -c proto/generate_code_erlang.sh +RUN mkdir src +COPY src/te src/te +WORKDIR src/te +RUN rebar3 as prod release + +# Build stage 1 +FROM alpine + +# Install some libs +RUN apk add --no-cache libgcc libstdc++ && \ + apk add --no-cache openssl && \ + apk add --no-cache libcrypto1.1 && \ + apk add --no-cache ncurses-libs + +# Install the released application +COPY --from=0 /var/teraflow/src/te/_build/prod/rel/tfte /tfte + +# Expose relevant ports +EXPOSE 10030 +EXPOSE 4189 + +ARG ERLANG_LOGGER_LEVEL_DEFAULT=debug +ARG ERLANG_COOKIE_DEFAULT=tfte-unsafe-cookie +ARG ERLANG_NODE_IP_DEFAULT=127.0.0.1 +ARG ERLANG_NODE_NAME_DEFAULT=tfte + +ENV ERLANG_LOGGER_LEVEL=$ERLANG_LOGGER_LEVEL_DEFAULT +ENV ERLANG_COOKIE=$ERLANG_COOKIE_DEFAULT +ENV ERLANG_NODE_IP=$ERLANG_NODE_IP_DEFAULT +ENV ERLANG_NODE_NAME=$ERLANG_NODE_NAME_DEFAULT + +ENTRYPOINT ["/tfte/bin/tfte"] +CMD ["foreground"] diff --git a/src/te/README.md b/src/te/README.md new file mode 100644 index 0000000000000000000000000000000000000000..5da478e61ca7f88182e757c80ea7b2916de9998d --- /dev/null +++ b/src/te/README.md @@ -0,0 +1,81 @@ +TeraFlow Traffic Engineering Service +==================================== + +This service is mean as an example of a Teraflow Service made in Erlang. + +The Traffic Engineering service is tested on Ubuntu 20.04. Follow the instructions below to build, test, and run this service on your local environment. + + +## Build + +First the TeraFlow protocol buffer code must have been generated: + + $ ../../proto/generate_code_erlang.sh + +Then the TE service can be built: + + $ rebar3 compile + + +## Execute Unit Tests + + $ rebar3 eunit + + +## Run Service Console + +First you need to crete a configuration file if not already done, and customize it if required: + + $ cp config/dev.config.template config/dev.config + +Then you can start the service in console mode: + + $ rebar3 shell + + +## Docker + +### Build Image + +The docker image must be built from the root of the Teraflow project: + + $ docker build -t te:dev -f src/te/Dockerfile . + + +### Run a shell from inside the container + + $ docker run -ti --rm --entrypoint sh te:dev + + +### Run Docker Container + + $ docker run -d --name te --init te:dev + + +### Open a Console to a Docker Container's Service + + $ docker exec -it te /tfte/bin/tfte remote_console + + +### Show Logs + + $ docker logs te + + +## Kubernetes + +### Open a Console + + $ kubectl --namespace tfs exec -ti $(kubectl --namespace tfs get pods --selector=app=teservice -o name) -c server -- /tfte/bin/tfte remote_console + + +### Show Logs + + $ kubectl --namespace tfs logs $(kubectl --namespace tfs get pods --selector=app=teservice -o name) -c server + + +## Teraflow + +To build and deploy the TE service as part of Teraflow, the following line must be added or uncomented in your `my_deploy.sh`: + + export TFS_COMPONENTS="${TFS_COMPONENTS} te" diff --git a/src/te/apps/epce/src/epce.app.src b/src/te/apps/epce/src/epce.app.src new file mode 100644 index 0000000000000000000000000000000000000000..13324fd2fd68567623543b16affdd5b4a0241ad4 --- /dev/null +++ b/src/te/apps/epce/src/epce.app.src @@ -0,0 +1,30 @@ +%% Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +%% +%% 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. + +{application, epce, + [{description, "An Erlang PCE"}, + {vsn, "0.1.0"}, + {registered, []}, + {mod, {epce_app, []}}, + {applications, + [kernel, + stdlib, + pcep_server + ]}, + {env,[]}, + {modules, []}, + + {licenses, ["Apache 2.0"]}, + {links, []} + ]}. diff --git a/src/te/apps/epce/src/epce_app.erl b/src/te/apps/epce/src/epce_app.erl new file mode 100644 index 0000000000000000000000000000000000000000..19f574f38eb93080beca9b3cc7c47a78994fce57 --- /dev/null +++ b/src/te/apps/epce/src/epce_app.erl @@ -0,0 +1,34 @@ +%%%----------------------------------------------------------------------------- +%% Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +%% +%% 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. +%%%----------------------------------------------------------------------------- + +-module(epce_app). + +-behaviour(application). + + +%%% EXPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% Behaviour application functions +-export([start/2, stop/1]). + + +%%% BEHAVIOUR application FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +start(_StartType, _StartArgs) -> + epce_sup:start_link(). + +stop(_State) -> + ok. diff --git a/src/te/apps/epce/src/epce_pcep_server_handler.erl b/src/te/apps/epce/src/epce_pcep_server_handler.erl new file mode 100644 index 0000000000000000000000000000000000000000..dea88b5d0b253573b956aabcf240ffed0caf15be --- /dev/null +++ b/src/te/apps/epce/src/epce_pcep_server_handler.erl @@ -0,0 +1,90 @@ +%%%----------------------------------------------------------------------------- +%% Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +%% +%% 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. +%%%----------------------------------------------------------------------------- + +-module(epce_pcep_server_handler). + +-behaviour(gen_pcep_handler). + + +%%% INCLUDES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +-include_lib("kernel/include/logger.hrl"). +-include_lib("pcep_codec/include/pcep_codec_te.hrl"). + + +%%% EXPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% API functions + +% Behaviour gen_pcep_handler functions +-export([init/1]). +-export([opened/4]). +-export([flow_added/2]). +-export([flow_initiated/2]). +-export([ready/1]). +-export([request_route/2]). +-export([flow_delegated/2]). +-export([flow_status_changed/3]). +-export([terminate/2]). + + +%%% RECORDS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +-record(state, {}). + + +%%% API FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + +%%% BEHAVIOUR gen_pcep_handler FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +init([]) -> + {ok, #{}, #state{}}. + +opened(Id, Caps, Sess, State) -> + case epce_server:session_opened(Id, Caps, Sess) of + ok -> {ok, State}; + {error, Reason} -> {error, Reason} + end. + +flow_added(Flow, State) -> + case epce_server:flow_added(Flow) of + {error, _Reason} = Error -> Error; + ok -> {ok, State} + end. + +flow_initiated(Flow, State) -> + ok = epce_server:flow_initiated(Flow), + {ok, State}. + +ready(State) -> + {ok, State}. + +request_route(RouteReq, State) -> + case epce_server:request_route(RouteReq) of + {error, _Reason} = Error -> Error; + {ok, Route} -> {ok, Route, State} + end. + +flow_delegated(_Flow, State) -> + {ok, State}. + +flow_status_changed(FlowId, NewStatus, State) -> + epce_server:flow_status_changed(FlowId, NewStatus), + {ok, State}. + +terminate(_Reason, _State) -> + ok. diff --git a/src/te/apps/epce/src/epce_server.erl b/src/te/apps/epce/src/epce_server.erl new file mode 100644 index 0000000000000000000000000000000000000000..d1d86b5766a3f8d8fe31b873dddbf7c8076ca0f5 --- /dev/null +++ b/src/te/apps/epce/src/epce_server.erl @@ -0,0 +1,346 @@ +%%%----------------------------------------------------------------------------- +%% Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +%% +%% 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. +%%%----------------------------------------------------------------------------- + +-module(epce_server). + +-behaviour(gen_server). + + +%%% INCLUDES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +-include_lib("kernel/include/logger.hrl"). +-include_lib("pcep_server/include/pcep_server.hrl"). + + +%%% EXPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% API Functions +-export([start_link/0]). +-export([get_flows/0]). +-export([update_flow/2]). +-export([initiate_flow/4]). + +% Handler Functions +-export([session_opened/3]). +-export([flow_added/1]). +-export([flow_initiated/1]). +-export([request_route/1]). +-export([flow_status_changed/2]). + +% Behaviour gen_server functions +-export([init/1]). +-export([handle_call/3]). +-export([handle_cast/2]). +-export([handle_continue/2]). +-export([handle_info/2]). +-export([code_change/3]). +-export([terminate/2]). + + +%%% MACROS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +-define(LARGE_TIMEOUT, infinity). + + +%%% RECORDS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +-record(sess, { + id, + caps, + monref, + pid +}). + +-record(state, { + bouncer, + sessions = #{}, + sess_pids = #{}, + flows = #{} +}). + + +%%% API FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +start_link() -> + gen_server:start_link({local, ?MODULE}, ?MODULE, [], []). + +get_flows() -> + gen_server:call(?MODULE, get_flows). + +update_flow(FlowId, LabelStack) -> + gen_server:call(?MODULE, {update_flow, FlowId, LabelStack}). + +initiate_flow(Name, From, To, BindingLabel) -> + gen_server:call(?MODULE, {initiate_flow, Name, From, To, + BindingLabel}, ?LARGE_TIMEOUT). + + +%%% HANDLER FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +session_opened(Id, Caps, Pid) -> + gen_server:call(?MODULE, {session_opened, Id, Caps, Pid}). + +flow_added(Flow) -> + gen_server:call(?MODULE, {flow_added, Flow}). + +flow_initiated(Flow) -> + gen_server:call(?MODULE, {flow_initiated, Flow}). + +request_route(RouteReq) -> + gen_server:call(?MODULE, {request_route, RouteReq}). + +flow_status_changed(FlowId, NewStatus) -> + gen_server:call(?MODULE, {flow_status_changed, FlowId, NewStatus}). + + +%%% BEHAVIOUR gen_server FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +init([]) -> + {ok, bouncer_start(#state{})}. + +handle_call(get_flows, _From, #state{flows = Flows} = State) -> + {reply, {ok, Flows}, State}; +handle_call({update_flow, FlowId, Labels}, From, + #state{flows = Flows, sessions = SessMap} = State) -> + case maps:find(FlowId, Flows) of + error -> {reply, {error, flow_not_found}, State}; + {ok, #{owner := Owner, route := #{} = R}} -> + case maps:find(Owner, SessMap) of + error -> {reply, {error, session_not_found}, State}; + {ok, #sess{pid = Pid}} -> + #{source := S, destination := D, constraints := C} = R, + ReqRoute = routereq_from_labels(S, D, C, Labels), + session_update_flow(State, Pid, FlowId, ReqRoute, From), + {noreply, State} + end + end; +handle_call({initiate_flow, Name, FromKey, ToKey, Binding}, From, + #state{sessions = SessMap} = State) -> + case {pcc_address(FromKey), pcc_address(ToKey)} of + {{error, Reason}, _} -> + {reply, {error, Reason}, State}; + {_, {error, Reason}} -> + {reply, {error, Reason}, State}; + {{ok, FromAddr}, {ok, ToAddr}} -> + case maps:find(FromAddr, SessMap) of + error -> {reply, {error, session_not_found}, State}; + {ok, #sess{pid = Pid}} -> + case compute_path(FromAddr, ToAddr) of + {error, Reason} -> + {reply, {error, Reason}, State}; + {ok, Labels} -> + InitRoute = routeinit_from_labels(Name, FromAddr, + ToAddr, [], Binding, Labels), + session_initiate_flow(State, Pid, InitRoute, From), + {noreply, State} + end + end + end; +handle_call({session_opened, Id, Caps, Pid}, _From, + #state{sessions = SessMap, sess_pids = SessPids} = State) -> + logger:debug("Session with capabilities ~w open to ~w", [Caps, Id]), + case maps:find(Id, SessMap) of + {ok, _} -> {reply, {error, already_opened}, State}; + error -> + MonRef = erlang:monitor(process, Pid), + SessRec = #sess{id = Id, caps = Caps, monref = MonRef, pid = Pid}, + {reply, ok, State#state{ + sessions = SessMap#{Id => SessRec}, + sess_pids = SessPids#{Pid => SessRec} + }} + end; +handle_call({flow_added, #{id := Id, route := Route} = Flow}, + _From, #state{flows = Flows} = State) -> + logger:debug("Flow ~w with route ~w added", [Id, route_to_labels(Route)]), + {reply, ok, State#state{flows = Flows#{Id => Flow}}}; +handle_call({flow_initiated, #{id := Id, route := Route} = Flow}, + _From, #state{flows = Flows} = State) -> + logger:debug("Flow ~w with route ~p initiated", + [Id, route_to_labels(Route)]), + {reply, ok, State#state{flows = Flows#{Id => Flow}}}; +handle_call({request_route, RouteReq}, _From, State) -> + logger:info("Route from ~w to ~w requested", + [maps:get(source, RouteReq), maps:get(destination, RouteReq)]), + #{source := S, destination := D, constraints := C} = RouteReq, + case compute_path(S, D) of + {error, _Reason} = Error -> + {reply, Error, State}; + {ok, Labels} -> + Route = routereq_from_labels(S, D, C, Labels), + {reply, {ok, Route}, State} + end; +handle_call({flow_status_changed, FlowId, NewStatus}, _From, + #state{flows = Flows} = State) -> + logger:info("Flow ~w status changed to ~w", [FlowId, NewStatus]), + Flow = maps:get(FlowId, Flows), + {reply, ok, State#state{ + flows = maps:put(FlowId, Flow#{status := NewStatus}, Flows)}}; +handle_call(Request, From, State) -> + logger:warning("Unexpected call from ~w: ~p", [From, Request]), + {reply, {error, unexpected_call}, State}. + + +handle_cast(Request, State) -> + logger:warning("Unexpected cast: ~p", [Request]), + {noreply, State}. + +handle_continue(_Continue, State) -> + {noreply, State}. + +handle_info({flow_updated, FlowId, NewRoute, From}, + #state{flows = Flows} = State) -> + logger:info("Flow ~w updated to ~w", [FlowId, route_to_labels(NewRoute)]), + case maps:find(FlowId, Flows) of + error -> {noreply, State}; + {ok, Flow} -> + Flows2 = Flows#{FlowId => Flow#{route => NewRoute}}, + gen_server:reply(From, ok), + {noreply, State#state{flows = Flows2}} + end; +handle_info({flow_update_error, FlowId, Reason, From}, State) -> + logger:error("Flow ~w updated error: ~p", [FlowId, Reason]), + gen_server:reply(From, {error, Reason}), + {noreply, State}; +handle_info({flow_initiated, #{id := FlowId, route := Route} = Flow, From}, + #state{flows = Flows} = State) -> + logger:info("Flow ~w initiated to ~p", + [FlowId, route_to_labels(Route)]), + gen_server:reply(From, {ok, FlowId}), + {noreply, State#state{flows = Flows#{FlowId => Flow}}}; +handle_info({flow_init_error, Reason, From}, State) -> + logger:error("Flow initialisation error: ~p", [Reason]), + gen_server:reply(From, {error, Reason}), + {noreply, State}; +handle_info({'DOWN', MonRef, process, Pid, _Reason}, + #state{sessions = SessMap, sess_pids = PidMap} = State) -> + case maps:take(Pid, PidMap) of + {#sess{id = Id, monref = MonRef}, PidMap2} -> + SessMap2 = maps:remove(Id, SessMap), + %TODO: Do something about the flows from this session ? + {noreply, State#state{ + sessions = SessMap2, + sess_pids = PidMap2 + }}; + _X -> + {noreply, State} + end; +handle_info(Info, State) -> + logger:warning("Unexpected message: ~p", [Info]), + {noreply, State}. + +code_change(_OldVsn, State, _Extra) -> + {ok, State}. + +terminate(_Reason, _State) -> + ok. + + +%%% INTERNAL FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +ted_index(Id) when is_binary(Id) -> id; +ted_index({_, _, _, _}) -> pcc_address. + +pcc_address(Key) -> + case epce_ted:lookup(ted_index(Key), Key) of + {error, Reason} -> + logger:warning("Failed to find a PCC address for router ~p: ~p", + [Key, Reason]), + {error, router_not_found}; + {ok, #{pcc_address := Addr}} -> + {ok, Addr} + end. + +compute_path(From, To) when is_binary(From), is_binary(To) -> + compute_path_result(From, To, epce_ted:compute_path(id, From, To)); +compute_path({_, _, _, _} = From, {_, _, _, _} = To) -> + compute_path_result(From, To, epce_ted:compute_path(pcc_address, From, To)). + +compute_path_result(From, To, {error, Reason}) -> + logger:warning("Failed to find a route from ~p to ~p: ~p", + [From, To, Reason]), + {error, route_not_found}; +compute_path_result(From, To, {ok, Devices}) -> + Labels = tl([L || #{mpls_label := L} <- Devices, L =/= undefined]), + logger:debug("Route from ~p to ~p: ~p", [From, To, Labels]), + {ok, Labels}. + +routereq_from_labels(Source, Destination, Constraints, Labels) -> + #{ + source => Source, + destination => Destination, + constraints => Constraints, + steps => [ + #{ + is_loose => false, + nai_type => absent, + sid => #mpls_stack_entry{label = L} + } + || L <- Labels + ] + }. + +routeinit_from_labels(Name, Source, Destination, Constraints, Binding, Labels) -> + Route = routereq_from_labels(Source, Destination, Constraints, Labels), + Route#{ + name => Name, + binding_label => Binding + }. + +route_to_labels(#{steps := Steps}) -> + [Sid#mpls_stack_entry.label || #{sid := Sid} <- Steps]. + + +%-- Session Interface Functions ------------------------------------------------ + +session_update_flow(#state{bouncer = Pid}, SessPid, FlowId, Route, Args) -> + Pid ! {update_flow, SessPid, FlowId, Route, Args}. + +session_initiate_flow(#state{bouncer = Pid}, SessPid, Route, Args) -> + Pid ! {initiate_flow, SessPid, Route, Args}. + +bouncer_start(#state{bouncer = undefined} = State) -> + Self = self(), + Pid = erlang:spawn_link(fun() -> + bouncer_bootstrap(Self) + end), + receive bouncer_ready -> ok end, + State#state{bouncer = Pid}. + +bouncer_bootstrap(Parent) -> + Parent ! bouncer_ready, + bouncer_loop(Parent). + +bouncer_loop(Parent) -> + receive + {update_flow, SessPid, FlowId, ReqRoute, Args} -> + case pcep_server_session:update_flow(SessPid, FlowId, ReqRoute) of + {ok, NewRoute} -> + Parent ! {flow_updated, FlowId, NewRoute, Args}, + bouncer_loop(Parent); + {error, Reason} -> + Parent ! {flow_update_error, FlowId, Reason, Args}, + bouncer_loop(Parent) + end; + {initiate_flow, SessPid, InitRoute, Args} -> + case pcep_server_session:initiate_flow(SessPid, InitRoute) of + {ok, Flow} -> + Parent ! {flow_initiated, Flow, Args}, + bouncer_loop(Parent); + {error, Reason} -> + Parent ! {flow_init_error, Reason, Args}, + bouncer_loop(Parent) + end + end. diff --git a/src/te/apps/epce/src/epce_sup.erl b/src/te/apps/epce/src/epce_sup.erl new file mode 100644 index 0000000000000000000000000000000000000000..79c17c9a869a5bdba078e225a7187c0ebcdbcd92 --- /dev/null +++ b/src/te/apps/epce/src/epce_sup.erl @@ -0,0 +1,59 @@ +%%%----------------------------------------------------------------------------- +%% Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +%% +%% 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. +%%%----------------------------------------------------------------------------- + +-module(epce_sup). + +-behaviour(supervisor). + + +%%% EXPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% Behaviour supervisor functions +-export([start_link/0]). +-export([init/1]). + + +%%% MACROS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +-define(TED_WORKER, epce_ted). +-define(PCE_WORKER, epce_server). + + +%%% BEHAVIOUR SUPERVISOR FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +start_link() -> + supervisor:start_link({local, ?MODULE}, ?MODULE, []). + +init([]) -> + SupFlags = #{ + strategy => one_for_all, + intensity => 0, + period => 1 + }, + TEDSpec = #{ + id => ?TED_WORKER, + start => {?TED_WORKER, start_link, []}, + restart => permanent, + shutdown => brutal_kill + }, + ServerSpec = #{ + id => ?PCE_WORKER, + start => {?PCE_WORKER, start_link, []}, + restart => permanent, + shutdown => brutal_kill + }, + {ok, {SupFlags, [TEDSpec, ServerSpec]}}. + diff --git a/src/te/apps/epce/src/epce_ted.erl b/src/te/apps/epce/src/epce_ted.erl new file mode 100644 index 0000000000000000000000000000000000000000..8313bec1ca6b3b75e374dfef7b8fd23d29690d68 --- /dev/null +++ b/src/te/apps/epce/src/epce_ted.erl @@ -0,0 +1,239 @@ +%%%----------------------------------------------------------------------------- +%% Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +%% +%% 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. +%%%----------------------------------------------------------------------------- + +-module(epce_ted). + +-behaviour(gen_server). + + +%%% INCLUDES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +-include_lib("kernel/include/logger.hrl"). + + +%%% EXPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% API Functions +-export([start_link/0]). +-export([device_added/2]). +-export([device_updated/2]). +-export([device_deleted/1]). +-export([link_added/2]). +-export([link_updated/2]). +-export([link_deleted/1]). +-export([compute_path/3]). +-export([lookup/2]). + +-export([get_graph/0]). + +% Behaviour gen_server functions +-export([init/1]). +-export([handle_call/3]). +-export([handle_cast/2]). +-export([handle_continue/2]). +-export([handle_info/2]). +-export([code_change/3]). +-export([terminate/2]). + + +%%% RECORDS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +-record(state, { + graph :: diagraph:graph(), + pcc_address_to_id = #{} :: map() +}). + + +%%% API FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +start_link() -> + gen_server:start_link({local, ?MODULE}, ?MODULE, [], []). + +device_added(Id, Device) -> + gen_server:call(?MODULE, {device_added, Id, Device}). + +device_updated(Id, Device) -> + gen_server:call(?MODULE, {device_updated, Id, Device}). + +device_deleted(Id) -> + gen_server:call(?MODULE, {device_deleted, Id}). + +link_added(Id, Link) -> + gen_server:call(?MODULE, {link_added, Id, Link}). + +link_updated(Id, Link) -> + gen_server:call(?MODULE, {link_updated, Id, Link}). + +link_deleted(Id) -> + gen_server:call(?MODULE, {link_deleted, Id}). + +compute_path(Index, From, To) + when Index =:= id; Index =:= pcc_address -> + gen_server:call(?MODULE, {compute_path, Index, From, To}); +compute_path(Index, _From, _To) -> + {error, {invalid_index, Index}}. + +lookup(Index, Key) + when Index =:= id; Index =:= pcc_address -> + gen_server:call(?MODULE, {lookup, Index, Key}); +lookup(Index, _Key) -> + {error, {invalid_index, Index}}. + + +get_graph() -> + gen_server:call(?MODULE, get_graph). + + +%%% BEHAVIOUR gen_server FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +init([]) -> + ?LOG_INFO("Starting TED process...", []), + % {ok, #state{graph = digraph:new([private, cyclic])}}. + {ok, #state{graph = digraph:new([protected, cyclic])}}. + +handle_call({device_added, Id, Device}, _From, State) -> + ?LOG_DEBUG("Adding TED device ~p: ~p", [Id, Device]), + {reply, ok, do_update_device(State, Id, Device)}; +handle_call({device_updated, Id, Device}, _From, State) -> + ?LOG_DEBUG("Updating TED device ~p: ~p", [Id, Device]), + {reply, ok, do_update_device(State, Id, Device)}; +handle_call({device_deleted, Id}, _From, State) -> + ?LOG_DEBUG("Deleting TED device ~p", [Id]), + {reply, ok, do_delete_device(State, Id)}; +handle_call({link_added, Id, Link}, _From, State) -> + ?LOG_DEBUG("Adding TED link ~p: ~p", [Id, Link]), + {reply, ok, do_update_link(State, Id, Link)}; +handle_call({link_updated, Id, Link}, _From, State) -> + ?LOG_DEBUG("Updating TED link ~p: ~p", [Id, Link]), + {reply, ok, do_update_link(State, Id, Link)}; +handle_call({link_deleted, Id}, _From, State) -> + ?LOG_DEBUG("Deleting TED link ~p", [Id]), + {reply, ok, do_delete_link(State, Id)}; +handle_call({compute_path, Index, From, To}, _From, #state{graph = G} = State) -> + case as_ids(State, Index, [From, To]) of + {ok, [FromId, ToId]} -> + {reply, do_compute_path(G, FromId, ToId), State}; + {error, Reason} -> + {reply, {error, Reason}, State} + end; +handle_call({lookup, Index, Key}, _From, #state{graph = G} = State) -> + case as_ids(State, Index, [Key]) of + {ok, [Id]} -> + {reply, do_lookup(G, Id), State}; + {error, Reason} -> + {reply, {error, Reason}, State} + end; +handle_call(get_graph, _From, #state{graph = G} = State) -> + {reply, G, State}; +handle_call(Request, _From, State) -> + logger:warning("Unexpected call to TED process ~w", [Request]), + {reply, {error, unexpected_call}, State}. + +handle_cast(Request, State) -> + logger:warning("Unexpected cast to TED process ~w", [Request]), + {noreply, State}. + +handle_continue(_Continue, State) -> + {noreply, State}. + +handle_info(Info, State) -> + logger:warning("Unexpected message to TED process ~w", [Info]), + {noreply, State}. + +code_change(_OldVsn, State, _Extra) -> + {ok, State}. + +terminate(_Reason, _State) -> + ?LOG_INFO("Terminating TED process...", []), + ok. + + +%%% INTERNAL FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +as_ids(_State, id, Keys) -> + {ok, Keys}; +as_ids(State, IndexType, Keys) -> + as_ids(State, IndexType, Keys, []). + +as_ids(_State, _IndexType, [], Acc) -> + {ok, lists:reverse(Acc)}; +as_ids(#state{pcc_address_to_id = Index} = State, pcc_address, [Key | Rest], Acc) -> + case maps:find(Key, Index) of + error -> {error, {unknown_key, Key}}; + {ok, Id} -> as_ids(State, pcc_address, Rest, [Id | Acc]) + end. + +do_update_device(#state{graph = G} = State, Id, NewDevice) -> + State2 = case digraph:vertex(G, Id) of + false -> State; + {Id, OldDevice} -> index_remove_device(State, OldDevice) + end, + digraph:add_vertex(G, Id, NewDevice), + index_add_device(State2, NewDevice). + +do_delete_device(#state{graph = G} = State, Id) -> + case digraph:vertex(G, Id) of + false -> State; + {Id, OldDevice} -> + digraph:del_vertex(G, Id), + index_remove_device(State, OldDevice) + end. + +index_remove_device(#state{pcc_address_to_id = Index} = State, + #{pcc_address := OldAddress}) -> + Index2 = maps:remove(OldAddress, Index), + State#state{pcc_address_to_id = Index2}. + +index_add_device(State, #{pcc_address := undefined}) -> + State; +index_add_device(#state{pcc_address_to_id = Index} = State, + #{id := Id, pcc_address := NewAddress}) -> + Index2 = Index#{NewAddress => Id}, + State#state{pcc_address_to_id = Index2}. + +do_update_link(#state{graph = G} = State, Id, Link) -> + #{endpoints := [EP1, EP2]} = Link, + #{device := D1} = EP1, + #{device := D2} = EP2, + digraph:add_edge(G, {Id, a}, D1, D2, Link), + digraph:add_edge(G, {Id, b}, D2, D1, Link), + State. + +do_delete_link(#state{graph = G} = State, Id) -> + digraph:del_edge(G, {Id, a}), + digraph:del_edge(G, {Id, b}), + State. + +do_compute_path(G, FromId, ToId) -> + case digraph:get_short_path(G, FromId, ToId) of + false -> {error, not_found}; + Ids -> {ok, retrieve_devices(G, Ids, [])} + end. + +do_lookup(G, Id) -> + case digraph:vertex(G, Id) of + {_, Info} -> {ok, Info}; + false -> {error, not_found} + end. + +retrieve_devices(_G, [], Acc) -> + lists:reverse(Acc); +retrieve_devices(G, [Id | Rest], Acc) -> + case digraph:vertex(G, Id) of + false -> {error, invalid_path}; + {Id, Device} -> + retrieve_devices(G, Rest, [Device | Acc]) + end. diff --git a/src/te/apps/tfte/src/tfte.app.src b/src/te/apps/tfte/src/tfte.app.src new file mode 100644 index 0000000000000000000000000000000000000000..abebf116975d5a820d2da462c319f67fdbf93118 --- /dev/null +++ b/src/te/apps/tfte/src/tfte.app.src @@ -0,0 +1,32 @@ +%% Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +%% +%% 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. + +{application, tfte, + [{description, "Teraflow Traffic Engineering Service"}, + {vsn, "0.1.0"}, + {registered, []}, + {mod, {tfte_app, []}}, + {applications, + [kernel, + stdlib, + tfpb, + jsx, + epce + ]}, + {env,[]}, + {modules, []}, + + {licenses, ["Apache 2.0"]}, + {links, []} + ]}. diff --git a/src/te/apps/tfte/src/tfte_app.erl b/src/te/apps/tfte/src/tfte_app.erl new file mode 100644 index 0000000000000000000000000000000000000000..a629a1b139d4d2a2965ff724676f23b6734ddd11 --- /dev/null +++ b/src/te/apps/tfte/src/tfte_app.erl @@ -0,0 +1,110 @@ +%%%----------------------------------------------------------------------------- +%% Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +%% +%% 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. +%% +%% @doc tfte public API +%% @end +%%%----------------------------------------------------------------------------- + +-module(tfte_app). + +-behaviour(application). + + +%%% INCLUDES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +-include_lib("kernel/include/logger.hrl"). + + +%%% EXPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% Behaviour application callback functions +-export([start/2, stop/1]). + + +%%% BEHAVIOUR applicaation CALLBACK FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +start(_StartType, _StartArgs) -> + case tfte_sup:start_link() of + {ok, Pid} -> + add_services(), + {ok, Pid}; + Other -> + Other + end. + +stop(_State) -> + ok. + + +%%% INTERNAL FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +add_services() -> + case application:get_env(tfte, services) of + {ok, Services} -> add_services(Services); + _ -> ok + end. + +add_services([]) -> ok; +add_services([{Name, EndpointsSpecs, GrpcOpts} | Rest]) -> + try resolve_endpoints(Name, EndpointsSpecs, []) of + Endpoints -> + case grpcbox_channel_sup:start_child(Name, Endpoints, GrpcOpts) of + {ok, _Pid} -> + ?LOG_INFO("GRPC channel to ~s service started", [Name]), + ok; + {error, Reason} -> + ?LOG_WARNING("GRPC channel to ~s service failed to start: ~p", + [Name, Reason]), + ok + end + catch + throw:{Name, Reason, Extra} -> + ?LOG_WARNING("Failed to resolve ~s service configuration: ~s ~p", + [Name, Reason, Extra]) + end, + add_services(Rest). + +resolve_endpoints(_Name, [], Acc) -> + lists:reverse(Acc); +resolve_endpoints(Name, [{Transport, HostSpec, PortSpec, SslOpts} | Rest], Acc) -> + Acc2 = [{Transport, resolve_host_spec(Name, HostSpec), + resolve_port_spec(Name, PortSpec), SslOpts} | Acc], + resolve_endpoints(Name, Rest, Acc2). + +resolve_host_spec(_Name, Hostname) when is_list(Hostname) -> Hostname; +resolve_host_spec(Name, {env, Key}) when is_list(Key) -> + try os:getenv(Key) of + false -> throw({Name, service_hostname_not_found, Key}); + Hostname -> Hostname + catch + _:Reason -> + throw({Name, service_hostname_error, Reason}) + end. + +resolve_port_spec(_Name, Port) when is_integer(Port) -> Port; +resolve_port_spec(Name, {env, Key}) when is_list(Key) -> + try os:getenv(Key) of + false -> throw({Name, service_port_not_found, Key}); + PortStr -> + try list_to_integer(PortStr) of + Port -> Port + catch + _:Reason -> + throw({Name, service_port_error, Reason}) + end + catch + _:Reason -> + throw({Name, service_port_error, Reason}) + end. diff --git a/src/te/apps/tfte/src/tfte_context.erl b/src/te/apps/tfte/src/tfte_context.erl new file mode 100644 index 0000000000000000000000000000000000000000..453852f34dd5210b8c7d407d967a3da36f635349 --- /dev/null +++ b/src/te/apps/tfte/src/tfte_context.erl @@ -0,0 +1,187 @@ +%%%----------------------------------------------------------------------------- +%% Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +%% +%% 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. +%%%----------------------------------------------------------------------------- + +-module(tfte_context). + +-behaviour(gen_statem). + + +%%% INCLUDES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +-include_lib("kernel/include/logger.hrl"). + + +%%% EXPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% API functions +-export([start_link/0]). +-export([is_ready/0]). + +% Behaviour gen_statem functions +-export([init/1]). +-export([callback_mode/0]). +-export([handle_event/4]). +-export([terminate/3]). +-export([code_change/4]). + + +%%% Records %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +-record(data, { + uuid :: map(), + sub :: term() | undefined, + obj :: map() | undefined +}). + + +%%% MACROS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +-define(SUBSCRIBE_RETRY_TIMEOUT, 1000). +-define(RETRIEVE_RETRY_TIMEOUT, 10000). + + +%%% API FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +start_link() -> + gen_statem:start_link({local, ?MODULE}, ?MODULE, [], []). + +is_ready() -> + case whereis(?MODULE) of + undefined -> false; + _ -> gen_statem:call(?MODULE, is_ready) + end. + + +%%% BEHAVIOUR gen_statem FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +init([]) -> + {ok, Name} = application:get_env(tfte, context), + ?LOG_INFO("Starting context ~s service handler...", [Name]), + UUID = #{context_uuid => #{uuid => Name}}, + {ok, subscribe, #data{uuid = UUID}}. + +callback_mode() -> [handle_event_function, state_enter]. + +%-- SUBSCRIBE STATE ------------------------------------------------------------ +handle_event(enter, _, subscribe, #data{sub = undefined}) -> + {keep_state_and_data, [{state_timeout, 0, do_suscribe}]}; +handle_event(enter, _, subscribe, Data) -> + % We already have a context subscription + {next_state, ready, Data}; +handle_event(state_timeout, do_suscribe, subscribe, Data) -> + ?LOG_DEBUG("Subscribing to context events...", []), + case do_subscribe() of + {ok, Sub} -> + ?LOG_INFO("Subscribed to context events", []), + Data2 = Data#data{sub = Sub}, + {next_state, retrieve, Data2}; + {error, Reason} -> + ?LOG_ERROR("Failed to subscribe to context service events: ~p", [Reason]), + {keep_state_and_data, [{state_timeout, ?SUBSCRIBE_RETRY_TIMEOUT, do_suscribe}]} + end; +%-- RETRIEVE STATE ------------------------------------------------------------- +handle_event(enter, _, retrieve, _Data) -> + {keep_state_and_data, [{state_timeout, 0, do_retrieve}]}; +handle_event(state_timeout, do_retrieve, retrieve, #data{uuid = UUID} = Data) -> + ?LOG_DEBUG("Retrieving context ~p...", [UUID]), + case get_object(UUID) of + error -> + {keep_state_and_data, [{state_timeout, ?RETRIEVE_RETRY_TIMEOUT, do_retrieve}]}; + {ok, Context} -> + ?LOG_DEBUG("Got context: ~p", [Context]), + tfte_server:context_ready(Context), + {next_state, ready, Data#data{obj = Context}} + end; +handle_event(info, {headers, Id, Value}, retrieve, + #data{sub = #{stream_id := Id}}) -> + %TODO: Handle HTTP errors ??? + ?LOG_DEBUG("Received context stream header: ~p", [Value]), + keep_state_and_data; +handle_event(info, {data, Id, Value}, retrieve, + #data{sub = #{stream_id := Id}}) -> + ?LOG_DEBUG("Received context event, retrying context: ~p", [Value]), + {keep_state_and_data, [{state_timeout, 0, do_retrieve}]}; +handle_event(info, {'DOWN', Ref, process, Pid, Reason}, retrieve, + #data{sub = #{stream_id := Id, monitor_ref := Ref, stream_pid := Pid}} = Data) -> + ?LOG_DEBUG("Context subscription is down: ~p", [Reason]), + Data2 = Data#data{sub = undefined}, + Info = receive + {trailers, Id, {Status, Message, Metadata}} -> + {Reason, Status, Message, Metadata} + after 0 -> + Reason + end, + ?LOG_ERROR("Context subscription error: ~p", [Info]), + {next_state, subscribe, Data2}; +%-- READY STATE ---------------------------------------------------------------- +handle_event(enter, _, ready, _Data) -> + keep_state_and_data; +handle_event(info, {headers, Id, Value}, ready, + #data{sub = #{stream_id := Id}}) -> + %TODO: Handle HTTP errors ??? + ?LOG_DEBUG("Received context stream header: ~p", [Value]), + keep_state_and_data; +handle_event(info, {data, Id, #{context_id := UUID, event := Event}}, ready, + #data{uuid = UUID, sub = #{stream_id := Id}}) -> + ?LOG_DEBUG("Received context event: ~p", [Event]), + tfte_server:context_event(Event), + keep_state_and_data; +handle_event(info, {'DOWN', Ref, process, Pid, Reason}, ready, + #data{sub = #{stream_id := Id, monitor_ref := Ref, stream_pid := Pid}} = Data) -> + ?LOG_DEBUG("Context subscription is down: ~p", [Reason]), + Data2 = Data#data{sub = undefined}, + Info = receive + {trailers, Id, {Status, Message, Metadata}} -> + {Reason, Status, Message, Metadata} + after 0 -> + Reason + end, + ?LOG_ERROR("Context subscription error: ~p", [Info]), + {next_state, subscribe, Data2}; +%-- ANY STATE ------------------------------------------------------------------ +handle_event({call, _From}, is_ready, State, _Data) -> + {keep_state_and_data, [{reply, State =:= ready}]}; +handle_event(info, Msg, StateName, _Data) -> + ?LOG_WARNING("Unexpected context message in state ~w: ~p", [StateName, Msg]), + keep_state_and_data. + +terminate(Reason, _State, _Data) -> + ?LOG_INFO("Context service handler terminated: ~p", [Reason]), + ok. + +code_change(_OldVsn, OldState, OldData, _Extra) -> + {ok, OldState, OldData}. + + +%%% INTERNAL FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +grpc_opts() -> + #{channel => context}. + +do_subscribe() -> + context_context_service_client:get_context_events(#{}, grpc_opts()). + +get_object(UUID) -> + case context_context_service_client:get_context(UUID, grpc_opts()) of + {error, Reason} -> + ?LOG_ERROR("Local error while retrieving the context object: ~p", [Reason]), + error; + {error, Reason, _Headers} -> + ?LOG_ERROR("Remote error while retrieving the context object: ~p", [Reason]), + error; + {ok, Result, _Headers} -> + {ok, Result} + end. \ No newline at end of file diff --git a/src/te/apps/tfte/src/tfte_server.erl b/src/te/apps/tfte/src/tfte_server.erl new file mode 100644 index 0000000000000000000000000000000000000000..002bda810e901debddd72a3cfa7ec50bab8e3f97 --- /dev/null +++ b/src/te/apps/tfte/src/tfte_server.erl @@ -0,0 +1,189 @@ +%%%----------------------------------------------------------------------------- +%% Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +%% +%% 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. +%%%----------------------------------------------------------------------------- + +-module(tfte_server). + +-behaviour(gen_statem). + + +%%% INCLUDES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +-include_lib("kernel/include/logger.hrl"). + + +%%% EXPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% API functions +-export([start_link/0]). +-export([context_ready/1]). +-export([context_event/1]). +-export([topology_ready/1]). +-export([topology_event/1]). +-export([request_lsp/1]). +-export([delete_lsp/1]). + +% Behaviour gen_statem functions +-export([init/1]). +-export([callback_mode/0]). +-export([handle_event/4]). +-export([terminate/3]). +-export([code_change/4]). + + +%%% Records %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +-record(data, { + services = #{} +}). + + +%%% MACROS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + +%%% API FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +start_link() -> + gen_statem:start_link({local, ?MODULE}, ?MODULE, [], []). + +context_ready(Context) -> + gen_statem:cast(?MODULE, {context_ready, Context}). + +context_event(Event) -> + gen_statem:cast(?MODULE, {context_event, Event}). + +topology_ready(Topology) -> + gen_statem:cast(?MODULE, {topology_ready, Topology}). + +topology_event(Event) -> + gen_statem:cast(?MODULE, {topology_event, Event}). + +request_lsp(ServiceMap) -> + gen_statem:call(?MODULE, {request_lsp, ServiceMap}). + +delete_lsp(ServiceId) -> + gen_statem:call(?MODULE, {delete_lsp, ServiceId}). + + +%%% BEHAVIOUR gen_statem FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +init([]) -> + ?LOG_INFO("Starting server...", []), + case tfte_context:is_ready() of + false -> {ok, wait_context, #data{}}; + true -> {ok, ready, #data{}} + end. + +callback_mode() -> [handle_event_function, state_enter]. + +%-- WAIT_CONTEXT STATE --------------------------------------------------------- +handle_event(enter, _, wait_context, _Data) -> + keep_state_and_data; +handle_event(cast, {context_ready, _Context}, wait_context, Data) -> + ?LOG_DEBUG("Teraflow context initialized: ~p", [_Context]), + tfte_topology:context_updated(), + {next_state, ready, Data}; +%-- READY STATE ---------------------------------------------------------------- +handle_event(enter, _, ready, _Data) -> + keep_state_and_data; +handle_event(cast, {context_ready, _Context}, ready, _Data) -> + ?LOG_DEBUG("Teraflow context updated: ~p", [_Context]), + tfte_topology:context_updated(), + keep_state_and_data; +handle_event(cast, {context_event, _Event}, ready, _Data) -> + ?LOG_DEBUG("Teraflow context event: ~p", [_Event]), + keep_state_and_data; +handle_event(cast, {topology_ready, _Topology}, ready, _Data) -> + ?LOG_DEBUG("Teraflow topology updated: ~p", [_Topology]), + keep_state_and_data; +handle_event(cast, {topology_event, _Event}, ready, _Data) -> + ?LOG_DEBUG("Teraflow topology event: ~p", [_Event]), + keep_state_and_data; +handle_event({call, From}, {request_lsp, ServiceMap}, ready, Data) -> + ?LOG_DEBUG("Teraflow service ~s requested its LSPs", + [format_service_id(maps:get(service_id, ServiceMap, undefined))]), + {Result, Data2} = do_request_lsp(Data, ServiceMap), + {keep_state, Data2, [{reply, From, Result}]}; +handle_event({call, From}, {delete_lsp, ServiceId}, ready, Data) -> + ?LOG_DEBUG("Teraflow service ~s delete its LSPs", + [format_service_id(ServiceId)]), + {Result, Data2} = do_delete_lsp(Data, ServiceId), + {keep_state, Data2, [{reply, From, Result}]}; +%-- ANY STATE ------------------------------------------------------------------ +handle_event(EventType, EventContent, State, _Data) -> + ?LOG_WARNING("Unexpected tfte_server ~w event in state ~w: ~w", + [EventType, State, EventContent]), + keep_state_and_data. + +terminate(Reason, _State, _Data) -> + ?LOG_INFO("Server terminated: ~p", [Reason]), + ok. + +code_change(_OldVsn, OldState, OldData, _Extra) -> + {ok, OldState, OldData}. + + +%%% INTERNAL FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +format_service_id(undefined) -> <<"undefined">>; +format_service_id(#{context_id := #{context_uuid := #{uuid := ContextName}}, + service_uuid := #{uuid := ServiceUUID}}) -> + iolist_to_binary(io_lib:format("~s:~s", [ContextName, ServiceUUID])). + +do_request_lsp(#data{services = Services} = Data, + #{service_type := 'SERVICETYPE_TE'} = ServiceMap) -> + try + + #{service_config := Config, + service_endpoint_ids := Endpoints, + service_id := ServiceId} = ServiceMap, + #{<<"binding_label">> := BindingLabel1, <<"symbolic_name">> := SymbolicName1} + = tfte_util:custom_config(Config, <<"/lsp-fw">>), + #{<<"binding_label">> := BindingLabel2, <<"symbolic_name">> := SymbolicName2} + = tfte_util:custom_config(Config, <<"/lsp-bw">>), + [#{device_id := #{device_uuid := #{uuid := Id1}}}, + #{device_id := #{device_uuid := #{uuid := Id2}}}] = Endpoints, + case epce_server:initiate_flow(SymbolicName1, Id1, Id2, BindingLabel1) of + {error, Reason} -> + ?LOG_ERROR("Error while setting up service ~s forward LSP: ~p", + [format_service_id(ServiceId), Reason]), + {{error, Reason}, Data}; + {ok, ForwardFlow} -> + case epce_server:initiate_flow(SymbolicName2, Id2, Id1, BindingLabel2) of + {error, Reason} -> + ?LOG_ERROR("Error while setting up service ~s backward LSP: ~p", + [format_service_id(ServiceId), Reason]), + %TODO: Cleanup forward flow ? + {{error, Reason}, Data}; + {ok, BackwardFlow} -> + ServiceData = {ServiceMap, ForwardFlow, BackwardFlow}, + Services2 = Services#{ServiceId => ServiceData}, + Data2 = Data#data{services = Services2}, + {{ok, 'SERVICESTATUS_ACTIVE'}, Data2} + end + end + + catch T:E:S -> + ?LOG_ERROR("Error while requesintg LSP: ~p:~p", [T, E]), + ?LOG_ERROR("Stacktrace: ~p", [S]), + {{error, internal_error}, Data} + end; +do_request_lsp(Data, ServiceMap) -> + ?LOG_ERROR("Invalid arguments to RequestLSP call: ~p", [ServiceMap]), + {{error, badarg}, Data}. + +do_delete_lsp(Data, ServiceId) -> + ?LOG_INFO("LSP DELETION REQUESTED ~p", [ServiceId]), + {{error, not_implemented}, Data}. \ No newline at end of file diff --git a/src/te/apps/tfte/src/tfte_service_sup.erl b/src/te/apps/tfte/src/tfte_service_sup.erl new file mode 100644 index 0000000000000000000000000000000000000000..6ec5d09b069ca856f6298fdc8effa2bb01cf115a --- /dev/null +++ b/src/te/apps/tfte/src/tfte_service_sup.erl @@ -0,0 +1,64 @@ +%%%----------------------------------------------------------------------------- +%% Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +%% +%% 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. +%% +%% @doc tfte service supervisor. +%% @end +%%%----------------------------------------------------------------------------- + +-module(tfte_service_sup). + +-behaviour(supervisor). + + +%%% EXPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% API Functions +-export([start_link/0]). + +% Behaviour supervisor callback functions +-export([init/1]). + + +%%% MACROS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +-define(SERVER, ?MODULE). + + +%%% API FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +start_link() -> + supervisor:start_link({local, ?SERVER}, ?MODULE, []). + + +%%% BEHAVIOUR supervisor CALLBACK FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +init([]) -> + SupFlags = #{strategy => one_for_one, + intensity => 0, + period => 1}, + ContextSpec = #{ + id => tfte_context, + start => {tfte_context, start_link, []}, + restart => permanent, + shutdown => brutal_kill + }, + TopologySpec = #{ + id => tfte_topology, + start => {tfte_topology, start_link, []}, + restart => permanent, + shutdown => brutal_kill + }, + ChildSpecs = [ContextSpec, TopologySpec], + {ok, {SupFlags, ChildSpecs}}. diff --git a/src/te/apps/tfte/src/tfte_sup.erl b/src/te/apps/tfte/src/tfte_sup.erl new file mode 100644 index 0000000000000000000000000000000000000000..4630511d6fec909b002acd57bec61790e54f7e94 --- /dev/null +++ b/src/te/apps/tfte/src/tfte_sup.erl @@ -0,0 +1,66 @@ +%%%----------------------------------------------------------------------------- +%% Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +%% +%% 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. +%% +%% @doc tfte top level supervisor. +%% @end +%%%----------------------------------------------------------------------------- + +-module(tfte_sup). + +-behaviour(supervisor). + + +%%% EXPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% API Functions +-export([start_link/0]). + +% Behaviour supervisor callback functions +-export([init/1]). + + +%%% MACROS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +-define(SERVER, ?MODULE). +-define(ROOT_SERVER, tfte_server). + + +%%% API FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +start_link() -> + supervisor:start_link({local, ?SERVER}, ?MODULE, []). + + +%%% BEHAVIOUR supervisor CALLBACK FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +init([]) -> + SupFlags = #{strategy => one_for_all, + intensity => 0, + period => 1}, + ServiceSupSpec = #{ + id => service_sup, + start => {tfte_service_sup, start_link, []}, + restart => permanent, + type => supervisor, + shutdown => brutal_kill + }, + ServerSpec = #{ + id => ?ROOT_SERVER, + start => {?ROOT_SERVER, start_link, []}, + restart => permanent, + shutdown => brutal_kill + }, + ChildSpecs = [ServerSpec, ServiceSupSpec], + {ok, {SupFlags, ChildSpecs}}. diff --git a/src/te/apps/tfte/src/tfte_te_service.erl b/src/te/apps/tfte/src/tfte_te_service.erl new file mode 100644 index 0000000000000000000000000000000000000000..b9911ee37a5719c838baca7f86dd326b810f9bc8 --- /dev/null +++ b/src/te/apps/tfte/src/tfte_te_service.erl @@ -0,0 +1,66 @@ +%%%----------------------------------------------------------------------------- +%% Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +%% +%% 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. +%%%----------------------------------------------------------------------------- + +-module(tfte_te_service). + +-behaviour(te_te_service_bhvr). + + +%%% INCLUDES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +-include_lib("grpcbox/include/grpcbox.hrl"). +-include_lib("kernel/include/logger.hrl"). + + +%%% EXPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% Behaviour te_te_service_bhvr callback functions +-export([request_lsp/2]). +-export([update_lsp/2]). +-export([delete_lsp/2]). + + +%%% BEHAVIOUR te_te_service_bhvr CALLBACK FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%% + +request_lsp(Ctx, Service) -> + ?LOG_INFO("Requesting LSP: ~p", [Service]), + try tfte_server:request_lsp(Service) of + {ok, Status} -> + {ok, #{service_status => Status}, Ctx}; + {error, Reason} -> + ?LOG_INFO("Error while requesting LSP: ~p", [Reason]), + {ok, #{service_status => 'SERVICESTATUS_UNDEFINED'}, Ctx} + catch E:R:S -> + ?LOG_ERROR("Error while requesting LSP: ~p:~p ~p", [E, R, S]), + {ok, #{service_status => 'SERVICESTATUS_UNDEFINED'}, Ctx} + end. + +update_lsp(_Ctx, _ServiceId) -> + {error, {?GRPC_STATUS_UNIMPLEMENTED, <<"Not yet implemented">>}, + #{headers => #{}, trailers => #{}}}. + +delete_lsp(Ctx, ServiceId) -> + ?LOG_ERROR("Deleting LSP: ~p", [ServiceId]), + try tfte_server:delete_lsp(ServiceId) of + {ok, Status} -> + {ok, Status, Ctx}; + {error, Reason} -> + ?LOG_INFO("Error while deleting LSP: ~p", [Reason]), + {ok, #{service_status => 'SERVICESTATUS_UNDEFINED'}, Ctx} + catch E:R:S -> + ?LOG_ERROR("Error while deleting LSP: ~p:~p ~p", [E, R, S]), + {ok, #{service_status => 'SERVICESTATUS_UNDEFINED'}, Ctx} + end. diff --git a/src/te/apps/tfte/src/tfte_topology.erl b/src/te/apps/tfte/src/tfte_topology.erl new file mode 100644 index 0000000000000000000000000000000000000000..39897caa800ebed291d34d91b4a6b154c90f0f2e --- /dev/null +++ b/src/te/apps/tfte/src/tfte_topology.erl @@ -0,0 +1,405 @@ +%%%----------------------------------------------------------------------------- +%% Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +%% +%% 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. +%%%----------------------------------------------------------------------------- + +-module(tfte_topology). + +-behaviour(gen_statem). + + +%%% INCLUDES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +-include_lib("kernel/include/logger.hrl"). + + +%%% EXPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% API functions +-export([start_link/0]). +-export([context_updated/0]). + +% Behaviour gen_statem functions +-export([init/1]). +-export([callback_mode/0]). +-export([handle_event/4]). +-export([terminate/3]). +-export([code_change/4]). + + +%%% Records %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +-record(data, { + uuid :: map(), + sub :: term() | undefined, + obj :: map() | undefined, + devices = #{} :: map(), + links = #{} :: map(), + names = #{} :: map() +}). + + +%%% MACROS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +-define(SUBSCRIBE_RETRY_TIMEOUT, 1000). +-define(RETRIEVE_RETRY_TIMEOUT, 10000). + + +%%% API FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +start_link() -> + gen_statem:start_link({local, ?MODULE}, ?MODULE, [], []). + +context_updated() -> + gen_statem:cast(?MODULE, context_updated). + + +%%% BEHAVIOUR gen_statem FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +init([]) -> + {ok, ContextName} = application:get_env(tfte, context), + {ok, TopoName} = application:get_env(tfte, topology), + ContextUUID = #{context_uuid => #{uuid => ContextName}}, + TopoUUID = #{context_id => ContextUUID, + topology_uuid => #{uuid => TopoName}}, + ?LOG_INFO("Starting topology ~s service handler...", [TopoName]), + {ok, retrieve, #data{uuid = TopoUUID}}. + +callback_mode() -> [handle_event_function, state_enter]. + +%-- RETRIEVE STATE ------------------------------------------------------------- +handle_event(enter, _, retrieve, _Data) -> + {keep_state_and_data, [{state_timeout, 0, do_retrieve}]}; +handle_event(state_timeout, do_retrieve, retrieve, #data{uuid = UUID} = Data) -> + ?LOG_DEBUG("Retrieving topology ~p...", [UUID]), + case get_object(UUID) of + error -> + {keep_state_and_data, [{state_timeout, ?RETRIEVE_RETRY_TIMEOUT, do_retrieve}]}; + {ok, #{device_ids := Devices, link_ids := Links } = Topology} -> + case {length(Devices), length(Links)} of + {D, L} when D =:= 0; L =:= 0 -> + ?LOG_WARNING("Got topology, but there is missing devices or links", []), + {keep_state_and_data, [{state_timeout, 1000, do_retrieve}]}; + _ -> + ?LOG_DEBUG("Got topology: ~p", [Topology]), + {next_state, subscribe, Data#data{obj = Topology}} + end + end; +handle_event(cast, context_updated, retrieve, _Data) -> + {keep_state_and_data, [{state_timeout, 0, do_retrieve}]}; +%-- SUBSCRIBE STATE ------------------------------------------------------------ +handle_event(enter, _, subscribe, #data{sub = undefined}) -> + {keep_state_and_data, [{state_timeout, 0, do_suscribe}]}; +handle_event(enter, _, subscribe, Data) -> + % We already have a topology subscription + {next_state, ready, Data}; +handle_event(state_timeout, do_suscribe, subscribe, #data{uuid = UUID} = Data) -> + ?LOG_DEBUG("Subscribing to topology events...", []), + case do_subscribe(UUID) of + {ok, Sub} -> + ?LOG_INFO("Subscribed to topology events", []), + Data2 = #data{obj = Obj} = Data#data{sub = Sub}, + #{device_ids := DeviceIds, link_ids := LinkIds} = Obj, + case update_topology(Data2, DeviceIds, LinkIds) of + {ok, Data3} -> + tfte_server:topology_ready(Obj), + {next_state, ready, Data3}; + {error, Reason} -> + ?LOG_ERROR("Failed to load topology: ~p", [Reason]), + statem_rollback_to_retrieve(Data2) + end; + {error, Reason} -> + ?LOG_ERROR("Failed to subscribe to topology service events: ~p", [Reason]), + {next_state, retrieve, [{state_timeout, ?SUBSCRIBE_RETRY_TIMEOUT, do_retrieve}]} + end; +%-- READY STATE ---------------------------------------------------------------- +handle_event(enter, _, ready, _Data) -> + keep_state_and_data; +handle_event(info, {headers, Id, Value}, ready, + #data{sub = #{stream_id := Id}}) -> + %TODO: Handle HTTP errors ??? + ?LOG_DEBUG("Received topology stream header: ~p", [Value]), + keep_state_and_data; +handle_event(info, {data, Id, #{event := Event}}, ready, + #data{sub = #{stream_id := Id}} = Data) -> + ?LOG_DEBUG("Received topology event: ~p", [Event]), + handle_topology_event(Data, Event); +handle_event(info, {'DOWN', Ref, process, Pid, Reason}, ready, + #data{sub = #{stream_id := Id, monitor_ref := Ref, stream_pid := Pid}} = Data) -> + ?LOG_DEBUG("Topology subscription is down: ~p", [Reason]), + Data2 = Data#data{sub = undefined}, + Info = receive + {trailers, Id, {Status, Message, Metadata}} -> + {Reason, Status, Message, Metadata} + after 0 -> + Reason + end, + ?LOG_ERROR("Topology subscription error: ~p", [Info]), + {next_state, retrieve, Data2}; +handle_event(cast, context_updated, ready, _Data) -> + keep_state_and_data; +%-- ANY STATE ------------------------------------------------------------------ +handle_event(info, Msg, StateName, _Data) -> + ?LOG_WARNING("Unexpected topology message in state ~w: ~p", [StateName, Msg]), + keep_state_and_data. + +terminate(Reason, _State, _Data) -> + ?LOG_INFO("Topology service handler terminated: ~p", [Reason]), + ok. + +code_change(_OldVsn, OldState, OldData, _Extra) -> + {ok, OldState, OldData}. + + +%%% INTERNAL FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +statem_rollback_to_retrieve(#data{sub = undefined} = Data) -> + {next_state, retrieve, Data, [{state_timeout, ?RETRIEVE_RETRY_TIMEOUT, do_retrieve}]}; +statem_rollback_to_retrieve(#data{sub = Sub} = Data) -> + grpcbox_client:close_send_and_recv(Sub), + Data2 = Data#data{sub = undefined}, + {next_state, retrieve, Data2, [{state_timeout, ?RETRIEVE_RETRY_TIMEOUT, do_retrieve}]}. + +handle_topology_event(#data{uuid = UUID} = Data, + #{event_type := 'EVENTTYPE_UPDATE'} = Event) -> + case get_object(UUID) of + error -> + statem_rollback_to_retrieve(Data); + {ok, #{device_ids := DeviceIds, link_ids := LinkIds} = Topology} -> + ?LOG_DEBUG("Got new topology: ~p", [Topology]), + Data2 = Data#data{obj = Topology}, + case update_topology(Data2, DeviceIds, LinkIds) of + {ok, Data3} -> + tfte_server:topology_event(Event), + {keep_state, Data3}; + {error, Reason} -> + ?LOG_ERROR("Failed to update topology: ~p", [Reason]), + statem_rollback_to_retrieve(Data2) + end + end; +handle_topology_event(_Data, Event) -> + tfte_server:topology_event(Event), + keep_state_and_data. + +update_topology(Data, DeviceIds, LinkIds) -> + try + {Data2, Events} = update_devices(Data, DeviceIds, []), + {Data3, Events2} = update_links(Data2, LinkIds, Events), + post_topology_events(lists:reverse(Events2)), + {ok, Data3} + catch + throw:Reason -> + {error, Reason} + end. + +post_topology_events(Events) -> + lists:foreach(fun post_topology_event/1, Events). + +post_topology_event({device_added, Id, Device}) -> + epce_ted:device_added(Id, Device); +post_topology_event({device_updated, Id, Device}) -> + epce_ted:device_updated(Id, Device); +post_topology_event({device_deleted, Id}) -> + epce_ted:device_deleted(Id); +post_topology_event({link_added, Id, Link}) -> + epce_ted:link_added(Id, Link); +post_topology_event({link_updated, Id, Link}) -> + epce_ted:link_updated(Id, Link); +post_topology_event({link_deleted, Id}) -> + epce_ted:link_deleted(Id). + +update_devices(#data{devices = OldDevices} = Data, DeviceIds, Events) -> + update_devices(Data, OldDevices, #{}, DeviceIds, Events). + +update_devices(Data, OldDevices, NewDevices, [], Events) -> + #data{names = Names} = Data, + Events2 = [{device_deleted, maps:get(I, Names, undefined)} + || I <- maps:keys(OldDevices)] ++ Events, + {Data#data{devices = NewDevices}, Events2}; +update_devices(Data, OldDevices, NewDevices, [GivenId | Rest], Events) -> + case get_device(GivenId) of + error -> throw({device_retrieval_error, GivenId}); + {ok, Device} -> + Device2 = #{id := Id, real_id := RealId} = post_process_device(Device), + #data{names = Names} = Data, + Data2 = Data#data{names = Names#{RealId => Id}}, + NewDevices2 = NewDevices#{Id => Device}, + case maps:take(Id, OldDevices) of + error -> + % New device + Events2 = [{device_added, Id, Device2} | Events], + update_devices(Data2, OldDevices, NewDevices2, Rest, Events2); + {Device, OldDevices2} -> + % Device did not change + update_devices(Data2, OldDevices2, NewDevices2, Rest, Events); + {_OldDevice, OldDevices2} -> + % Device changed + Events2 = [{device_updated, Id, Device2} | Events], + update_devices(Data2, OldDevices2, NewDevices2, Rest, Events2) + end + end. + +update_links(#data{links = OldLinks} = Data, LinksIds, Events) -> + update_links(Data, OldLinks, #{}, LinksIds, Events). + +update_links(Data, OldLinks, NewLinks, [], Events) -> + Events2 = [{link_deleted, post_process_link_id(I)} + || I <- maps:keys(OldLinks)] ++ Events, + {Data#data{links = NewLinks}, Events2}; +update_links(Data, OldLinks, NewLinks, [Id | Rest], Events) -> + case get_link(Id) of + error -> throw({link_retrieval_error, Id}); + {ok, Link} -> + Id2 = post_process_link_id(Id), + Link2 = post_process_link(Data, Link), + NewLinks2 = NewLinks#{Id => Link}, + case maps:take(Id, OldLinks) of + error -> + % New Link + Events2 = [{link_added, Id2, Link2} | Events], + update_links(Data, OldLinks, NewLinks2, Rest, Events2); + {Link, OldLinks2} -> + % Link did not change + update_links(Data, OldLinks2, NewLinks2, Rest, Events); + {_OldLink, OldLinks2} -> + % Link changed + Events2 = [{link_updated, Id2, Link2} | Events], + update_links(Data, OldLinks2, NewLinks2, Rest, Events2) + end + end. + +post_process_device(#{device_id := Id, name := Name} = Device) -> + #{id => Name, + real_id => Id, + type => device_type(Device), + pcc_address => device_pcc_address(Device), + mpls_label => device_mpls_label(Device), + status => device_status(Device), + endpoints => device_endpoints(Device)}. + +device_type(#{device_type := Type}) -> + Type. + +device_status(#{device_operational_status := 'DEVICEOPERATIONALSTATUS_UNDEFINED'}) -> + undefined; +device_status(#{device_operational_status := 'DEVICEOPERATIONALSTATUS_DISABLED'}) -> + disabled; +device_status(#{device_operational_status := 'DEVICEOPERATIONALSTATUS_ENABLED'}) -> + enabled. + +device_mpls_label(Device) -> + try device_config_value(<<"/te_data">>, Device) of + Map when is_map(Map) -> maps:get(<<"mpls_label">>, Map, undefined); + _ -> undefined + catch error:badarg -> undefined + end. + +device_pcc_address(Device) -> + try device_config_value(<<"/te_data">>, Device) of + Map when is_map(Map) -> + case maps:get(<<"pcc_address">>, Map, undefined) of + AddressBin -> + case inet_parse:address(binary_to_list(AddressBin)) of + {ok, Address} -> Address; + {error,einval} -> undefined + end + end; + _ -> undefined + catch + error:badarg -> undefined + end. + +device_config_value(Key, #{device_config := Config}) -> + tfte_util:custom_config(Config, Key). + +device_endpoints(Device) -> + device_endpoints(Device, []). + +device_endpoints(#{device_endpoints := Endpoints}, Acc) -> + device_endpoints(Endpoints, Acc); +device_endpoints([], Acc) -> + lists:reverse(Acc); +device_endpoints([#{name := Name} | Rest], Acc) -> + device_endpoints(Rest, [Name | Acc]). + +post_process_link_id(#{link_uuid := #{uuid := Name}}) -> + Name. + +post_process_link(Data, Link) -> + #{id => link_id(Link), + endpoints => link_endpoints(Data, Link)}. + +link_id(#{link_id := Id}) -> + post_process_link_id(Id). + +link_endpoints(Data, Link) -> + link_endpoints(Data, Link, []). + +link_endpoints(Data, #{link_endpoint_ids := Endpoints}, Acc) -> + link_endpoints(Data, Endpoints, Acc); +link_endpoints(_Data, [], Acc) -> + lists:reverse(Acc); +link_endpoints(Data, [#{device_id := RealId, + endpoint_uuid := #{uuid := EndpointName}} | Rest], Acc) -> + #data{names = Names} = Data, + Endpoint = #{ + device => maps:get(RealId, Names, undefined), + endpoint => EndpointName + }, + link_endpoints(Data, Rest, [Endpoint | Acc]). + + +%-- GRPC UNTILITY FUNCTION ----------------------------------------------------- + +grpc_opts() -> + #{channel => context}. + +do_subscribe(UUID) -> + context_context_service_client:get_topology_events(UUID, grpc_opts()). + +get_object(UUID) -> + case context_context_service_client:get_topology(UUID, grpc_opts()) of + {error, Reason} -> + ?LOG_ERROR("Local error while retrieving the topology object: ~p", [Reason]), + error; + {error, Reason, _Headers} -> + ?LOG_ERROR("Remote error while retrieving the topology object: ~p", [Reason]), + error; + {ok, Result, _Headers} -> + {ok, Result} + end. + +get_device(UUID) -> + case context_context_service_client:get_device(UUID, grpc_opts()) of + {error, Reason} -> + ?LOG_ERROR("Local error while retrieving a device object: ~p", [Reason]), + error; + {error, Reason, _Headers} -> + ?LOG_ERROR("Remote error while retrieving a device object: ~p", [Reason]), + error; + {ok, Result, _Headers} -> + {ok, Result} + end. + +get_link(UUID) -> + case context_context_service_client:get_link(UUID, grpc_opts()) of + {error, Reason} -> + ?LOG_ERROR("Local error while retrieving a link object: ~p", [Reason]), + error; + {error, Reason, _Headers} -> + ?LOG_ERROR("Remote error while retrieving a link object: ~p", [Reason]), + error; + {ok, Result, _Headers} -> + {ok, Result} + end. diff --git a/src/te/apps/tfte/src/tfte_util.erl b/src/te/apps/tfte/src/tfte_util.erl new file mode 100644 index 0000000000000000000000000000000000000000..fb058c7cf6b247c13bd95f2f0c5696eec30da8bf --- /dev/null +++ b/src/te/apps/tfte/src/tfte_util.erl @@ -0,0 +1,43 @@ +%%%----------------------------------------------------------------------------- +%% Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +%% +%% 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. +%%%----------------------------------------------------------------------------- + +-module(tfte_util). + +%%% INCLUDES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +-include_lib("kernel/include/logger.hrl"). + + +%%% EXPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% API functions +-export([custom_config/2]). + + +%%% API FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +custom_config(#{config_rules := Rules}, Key) -> + custom_config(Rules, Key); +custom_config([], _Key) -> + undefined; +custom_config([#{action := 'CONFIGACTION_SET', + config_rule := {custom, Rule}} | Rest], Key) -> + case Rule of + #{resource_key := Key, resource_value := Value} -> jsx:decode(Value); + _ -> custom_config(Rest, Key) + end; +custom_config([_Rule | Rest], Key) -> + custom_config(Rest, Key). diff --git a/src/te/config/dev.config.template b/src/te/config/dev.config.template new file mode 100644 index 0000000000000000000000000000000000000000..6e21dc0d2d021447cf5eb84869d97b7a3662f58c --- /dev/null +++ b/src/te/config/dev.config.template @@ -0,0 +1,78 @@ +% Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +% +% 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. + +[ + {tfte, [ + {services, [ + {te, [{http, "localhost", 10030, []}], #{}} + ]} + ]}, + + {pcep_server, [ + {handler, {epce_pcep_server_handler, []}} + ]}, + + {epce, [ + ]}, + + {grpcbox, [ + {servers, [#{ + grpc_opts => #{ + service_protos => [te_pb, grpcbox_health_pb, grpcbox_reflection_pb], + %client_cert_dir => "", + services => #{ + 'te.TEService' => tfte_te_service, + 'grpc.health.v1.Health' => grpcbox_health_service, + 'grpc.reflection.v1alpha.ServerReflection' => grpcbox_reflection_service + } + }, + transport_opts => #{ + ssl => false + %keyfile => "", + %certfile => "", + %cacertfile => "" + }, + listen_opts => #{ + port => 10030, + ip => {0,0,0,0} + }, + pool_opts => #{ + size => 10 + }, + server_opts => #{ + header_table_size => 4096, + enable_push => 1, + max_concurrent_streams => unlimited, + initial_window_size => 65535, + max_frame_size => 16384, + max_header_list_size => unlimited + } + }]} + ]}, + + {kernel, [ + {logger_level, debug}, + {logger, [ + {handler, default, logger_std_h, #{ + level => debug, + filter_default => log, + config => #{type => standard_io}, + formatter => {logger_formatter, #{ + legacy_header => false, + single_line => true + }} + }} + ]} + ]} +]. \ No newline at end of file diff --git a/src/te/config/sys.config.src b/src/te/config/sys.config.src new file mode 100644 index 0000000000000000000000000000000000000000..edcd4384a3236df42b1e530c8b3a92b96c80e09e --- /dev/null +++ b/src/te/config/sys.config.src @@ -0,0 +1,101 @@ +% Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +% +% 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. + +[ + + {tfte, [ + {context, <<"admin">>}, + {topology, <<"admin">>}, + {services, [ + {te, [ + {http, {env, "TESERVICE_SERVICE_HOST"}, {env, "TESERVICE_SERVICE_PORT_GRPC"}, []} + ], #{}}, + {service, [ + {http, {env, "SERVICESERVICE_SERVICE_HOST"}, {env, "SERVICESERVICE_SERVICE_PORT_GRPC"}, []} + ], #{}}, + {monitoring, [ + {http, {env, "MONITORINGSERVICE_SERVICE_HOST"}, {env, "MONITORINGSERVICE_SERVICE_PORT_GRPC"}, []} + ], #{}}, + {compute, [ + {http, {env, "COMPUTESERVICE_SERVICE_HOST"}, {env, "COMPUTESERVICE_SERVICE_PORT_GRPC"}, []} + ], #{}}, + {device, [ + {http, {env, "DEVICESERVICE_SERVICE_HOST"}, {env, "DEVICESERVICE_SERVICE_PORT_GRPC"}, []} + ], #{}}, + {context, [ + {http, {env, "CONTEXTSERVICE_SERVICE_HOST"}, {env, "CONTEXTSERVICE_SERVICE_PORT_GRPC"}, []} + ], #{}}, + {automation, [ + {http, {env, "AUTOMATIONSERVICE_SERVICE_HOST"}, {env, "AUTOMATIONSERVICE_SERVICE_PORT_GRPC"}, []} + ], #{}} + ]} + ]}, + + {pcep_server, [ + {handler, {epce_pcep_server_handler, []}} + ]}, + + {epce, [ + ]}, + + {grpcbox, [ + {servers, [#{ + grpc_opts => #{ + service_protos => [te_pb, grpcbox_health_pb, grpcbox_reflection_pb], + %client_cert_dir => "", + services => #{ + 'te.TEService' => tfte_te_service, + 'grpc.health.v1.Health' => grpcbox_health_service, + 'grpc.reflection.v1alpha.ServerReflection' => grpcbox_reflection_service + } + }, + transport_opts => #{ + ssl => false + %keyfile => "", + %certfile => "", + %cacertfile => "" + }, + listen_opts => #{ + port => 10030, + ip => {0,0,0,0} + }, + pool_opts => #{ + size => 10 + }, + server_opts => #{ + header_table_size => 4096, + enable_push => 1, + max_concurrent_streams => unlimited, + initial_window_size => 65535, + max_frame_size => 16384, + max_header_list_size => unlimited + } + }]} + ]}, + + {kernel, [ + {logger_level, ${ERLANG_LOGGER_LEVEL}}, + {logger, [ + {handler, default, logger_std_h, #{ + level => ${ERLANG_LOGGER_LEVEL}, + filter_default => log, + config => #{type => standard_io}, + formatter => {logger_formatter, #{ + legacy_header => false, + single_line => true + }} + }} + ]} + ]} +]. \ No newline at end of file diff --git a/src/te/config/vm.args.src b/src/te/config/vm.args.src new file mode 100644 index 0000000000000000000000000000000000000000..899705ce169a8302bdd201751342db58b5c85421 --- /dev/null +++ b/src/te/config/vm.args.src @@ -0,0 +1,4 @@ ++C multi_time_warp ++sbwt none +-name ${ERLANG_NODE_NAME}@${ERLANG_NODE_IP} +-setcookie ${ERLANG_COOKIE} diff --git a/src/te/rebar.config b/src/te/rebar.config new file mode 100644 index 0000000000000000000000000000000000000000..01f7a899ee6fb69970bd38d6b75c47450887f313 --- /dev/null +++ b/src/te/rebar.config @@ -0,0 +1,54 @@ +% Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +% +% 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. + +{erl_opts, [debug_info]}. + +{deps, [ + grpcbox, + jsx, + {pcep_server, {git, "https://github.com/stritzinger/pcep_server.git", {branch, "master"}}} +]}. + +{shell, [ + {config, "config/dev.config"}, + {apps, [epce, tfte, tfpb, grpcbox]} +]}. + +{project_app_dirs, ["apps/*", "../../proto/src/erlang"]}. + +{relx, [ + {release, {tfte, "1.0.0"}, [ + runtime_tools, + epce, + grpcbox, + jsx, + tfpb, + tfte + ]}, + {vm_args_src, "config/vm.args.src"}, + {sys_config_src, "config/sys.config.src"}, + {dev_mode, true}, + {include_erts, false}, + {extended_start_script, true} +]}. + +{profiles, [ + {prod, [ + {relx, [ + {dev_mode, false}, + {include_erts, true}, + {include_src, false} + ]} + ]} +]}. diff --git a/src/te/rebar.lock b/src/te/rebar.lock new file mode 100644 index 0000000000000000000000000000000000000000..c435b045661e26b84495269c3ba79406990d09fb --- /dev/null +++ b/src/te/rebar.lock @@ -0,0 +1,41 @@ +{"1.2.0", +[{<<"acceptor_pool">>,{pkg,<<"acceptor_pool">>,<<"1.0.0">>},1}, + {<<"chatterbox">>,{pkg,<<"ts_chatterbox">>,<<"0.12.0">>},1}, + {<<"codec_sequencer">>, + {git,"https://github.com/stritzinger/codec_sequencer.git", + {ref,"fc8760894f7962ef1497bf6ce4247eb75db9d5ca"}}, + 2}, + {<<"ctx">>,{pkg,<<"ctx">>,<<"0.6.0">>},1}, + {<<"gproc">>,{pkg,<<"gproc">>,<<"0.8.0">>},1}, + {<<"grpcbox">>,{pkg,<<"grpcbox">>,<<"0.15.0">>},0}, + {<<"hpack">>,{pkg,<<"hpack_erl">>,<<"0.2.3">>},2}, + {<<"jsx">>,{pkg,<<"jsx">>,<<"3.1.0">>},0}, + {<<"pcep_codec">>, + {git,"https://github.com/stritzinger/pcep_codec.git", + {ref,"ca5eb0822d9971ec4bcfb427a49b2e516081a126"}}, + 1}, + {<<"pcep_server">>, + {git,"https://github.com/stritzinger/pcep_server.git", + {ref,"ea751fa807f4c1f5635f781431fe384610166b0a"}}, + 0}, + {<<"ranch">>,{pkg,<<"ranch">>,<<"2.0.0">>},1}]}. +[ +{pkg_hash,[ + {<<"acceptor_pool">>, <<"43C20D2ACAE35F0C2BCD64F9D2BDE267E459F0F3FD23DAB26485BF518C281B21">>}, + {<<"chatterbox">>, <<"4E54F199E15C0320B85372A24E35554A2CCFC4342E0B7CD8DAED9A04F9B8EF4A">>}, + {<<"ctx">>, <<"8FF88B70E6400C4DF90142E7F130625B82086077A45364A78D208ED3ED53C7FE">>}, + {<<"gproc">>, <<"CEA02C578589C61E5341FCE149EA36CCEF236CC2ECAC8691FBA408E7EA77EC2F">>}, + {<<"grpcbox">>, <<"97C7126296A091602D372EBF5860A04F7BC795B45B33A984CAD2B8E362774FD8">>}, + {<<"hpack">>, <<"17670F83FF984AE6CD74B1C456EDDE906D27FF013740EE4D9EFAA4F1BF999633">>}, + {<<"jsx">>, <<"D12516BAA0BB23A59BB35DCCAF02A1BD08243FCBB9EFE24F2D9D056CCFF71268">>}, + {<<"ranch">>, <<"FBF3D79661C071543256F9051CAF19D65DAA6DF1CF6824D8F37A49B19A66F703">>}]}, +{pkg_hash_ext,[ + {<<"acceptor_pool">>, <<"0CBCD83FDC8B9AD2EEE2067EF8B91A14858A5883CB7CD800E6FCD5803E158788">>}, + {<<"chatterbox">>, <<"6478C161BC60244F41CD5847CC3ACCD26D997883E9F7FACD36FF24533B2FA579">>}, + {<<"ctx">>, <<"A14ED2D1B67723DBEBBE423B28D7615EB0BDCBA6FF28F2D1F1B0A7E1D4AA5FC2">>}, + {<<"gproc">>, <<"580ADAFA56463B75263EF5A5DF4C86AF321F68694E7786CB057FD805D1E2A7DE">>}, + {<<"grpcbox">>, <<"161ABE9E17E7D1982EFA6488ADEAA13C3E847A07984A6E6B224E553368918647">>}, + {<<"hpack">>, <<"06F580167C4B8B8A6429040DF36CC93BBA6D571FAEAEC1B28816523379CBB23A">>}, + {<<"jsx">>, <<"0C5CC8FDC11B53CC25CF65AC6705AD39E54ECC56D1C22E4ADB8F5A53FB9427F3">>}, + {<<"ranch">>, <<"C20A4840C7D6623C19812D3A7C828B2F1BD153EF0F124CB69C54FE51D8A42AE0">>}]} +]. diff --git a/src/te/tests/deploy_specs.sh b/src/te/tests/deploy_specs.sh new file mode 100644 index 0000000000000000000000000000000000000000..818fb2b0d69ae63b197a83683e68aed96e50d6e2 --- /dev/null +++ b/src/te/tests/deploy_specs.sh @@ -0,0 +1,147 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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. + + +# ----- TeraFlowSDN ------------------------------------------------------------ + +# Set the URL of the internal MicroK8s Docker registry where the images will be uploaded to. +export TFS_REGISTRY_IMAGES="http://localhost:32000/tfs/" + +# Set the list of components, separated by spaces, you want to build images for, and deploy. +#export TFS_COMPONENTS="context device pathcomp service slice compute webui load_generator" +export TFS_COMPONENTS="context device pathcomp service slice webui" + +# Uncomment to activate Monitoring +#export TFS_COMPONENTS="${TFS_COMPONENTS} monitoring" + +# Uncomment to activate Automation and Policy Manager +#export TFS_COMPONENTS="${TFS_COMPONENTS} automation policy" + +# Uncomment to activate Optical CyberSecurity +#export TFS_COMPONENTS="${TFS_COMPONENTS} dbscanserving opticalattackmitigator opticalattackdetector opticalattackmanager" + +# Uncomment to activate L3 CyberSecurity +#export TFS_COMPONENTS="${TFS_COMPONENTS} l3_attackmitigator l3_centralizedattackdetector" + +# Uncomment to activate TE +export TFS_COMPONENTS="${TFS_COMPONENTS} te" + +# Set the tag you want to use for your images. +export TFS_IMAGE_TAG="dev" + +# Set the name of the Kubernetes namespace to deploy TFS to. +export TFS_K8S_NAMESPACE="tfs" + +# Set additional manifest files to be applied after the deployment +export TFS_EXTRA_MANIFESTS="manifests/nginx_ingress_http.yaml" + +# Uncomment to monitor performance of components +#export TFS_EXTRA_MANIFESTS="${TFS_EXTRA_MANIFESTS} manifests/servicemonitors.yaml" + +# Uncomment when deploying Optical CyberSecurity +#export TFS_EXTRA_MANIFESTS="${TFS_EXTRA_MANIFESTS} manifests/cachingservice.yaml" + +# Set the new Grafana admin password +export TFS_GRAFANA_PASSWORD="admin123+" + +# Disable skip-build flag to rebuild the Docker images. +export TFS_SKIP_BUILD="" + + +# ----- CockroachDB ------------------------------------------------------------ + +# Set the namespace where CockroackDB will be deployed. +export CRDB_NAMESPACE="crdb" + +# Set the external port CockroackDB Postgre SQL interface will be exposed to. +export CRDB_EXT_PORT_SQL="26257" + +# Set the external port CockroackDB HTTP Mgmt GUI interface will be exposed to. +export CRDB_EXT_PORT_HTTP="8081" + +# Set the database username to be used by Context. +export CRDB_USERNAME="tfs" + +# Set the database user's password to be used by Context. +export CRDB_PASSWORD="tfs123" + +# Set the database name to be used by Context. +export CRDB_DATABASE="tfs" + +# Set CockroachDB installation mode to 'single'. This option is convenient for development and testing. +# See ./deploy/all.sh or ./deploy/crdb.sh for additional details +export CRDB_DEPLOY_MODE="single" + +# Disable flag for dropping database, if it exists. +export CRDB_DROP_DATABASE_IF_EXISTS="YES" + +# Disable flag for re-deploying CockroachDB from scratch. +export CRDB_REDEPLOY="" + + +# ----- NATS ------------------------------------------------------------------- + +# Set the namespace where NATS will be deployed. +export NATS_NAMESPACE="nats" + +# Set the external port NATS Client interface will be exposed to. +export NATS_EXT_PORT_CLIENT="4222" + +# Set the external port NATS HTTP Mgmt GUI interface will be exposed to. +export NATS_EXT_PORT_HTTP="8222" + +# Disable flag for re-deploying NATS from scratch. +export NATS_REDEPLOY="" + + +# ----- QuestDB ---------------------------------------------------------------- + +# Set the namespace where QuestDB will be deployed. +export QDB_NAMESPACE="qdb" + +# Set the external port QuestDB Postgre SQL interface will be exposed to. +export QDB_EXT_PORT_SQL="8812" + +# Set the external port QuestDB Influx Line Protocol interface will be exposed to. +export QDB_EXT_PORT_ILP="9009" + +# Set the external port QuestDB HTTP Mgmt GUI interface will be exposed to. +export QDB_EXT_PORT_HTTP="9000" + +# Set the database username to be used for QuestDB. +export QDB_USERNAME="admin" + +# Set the database user's password to be used for QuestDB. +export QDB_PASSWORD="quest" + +# Set the table name to be used by Monitoring for KPIs. +export QDB_TABLE_MONITORING_KPIS="tfs_monitoring_kpis" + +# Set the table name to be used by Slice for plotting groups. +export QDB_TABLE_SLICE_GROUPS="tfs_slice_groups" + +# Disable flag for dropping tables if they exist. +export QDB_DROP_TABLES_IF_EXIST="YES" + +# Disable flag for re-deploying QuestDB from scratch. +export QDB_REDEPLOY="" + + +# ----- K8s Observability ------------------------------------------------------ + +# Set the external port Prometheus Mgmt HTTP GUI interface will be exposed to. +export PROM_EXT_PORT_HTTP="9090" + +# Set the external port Grafana HTTP Dashboards will be exposed to. +export GRAF_EXT_PORT_HTTP="3000" diff --git a/src/te/tests/netgen-config.yml b/src/te/tests/netgen-config.yml new file mode 100644 index 0000000000000000000000000000000000000000..d037088ce6cafdf95110ce5eadd31e8fb7a302ed --- /dev/null +++ b/src/te/tests/netgen-config.yml @@ -0,0 +1,115 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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. + +# Directory used for Netgen's operation. +# Default: "/tmp/netgen" +# netgen_runstatedir: + +# Clean exit. +# Default: 'false' +# clean_exit: + +# Valgrind parameters. +# Default: "--tool=memcheck" +# valgrind_params: "--tool=memcheck --leak-check=full --trace-children=yes" +# valgrind_params: "--tool=memcheck --leak-check=full" +# valgrind_params: "--tool=memcheck --leak-check=full --show-leak-kinds=all" +# valgrind_params: "--tool=callgrind --dump-instr=yes --collect-jumps=yes" + +# Perf directory +# Default: [netgen_runstatedir]/perf +# perf_dir: + +# Plugins configuration. +plugins: + frr: + # FRR's sysconfdir (--sysconfdir). + # Default: "/etc/frr" + # sysconfdir: + + # FRR's localstatedir (--localstatedir). + # Default: "/var/run/frr" + # localstatedir: + + # FRR's user (--enable-user). + # Default: "frr" + # user: + user: "root" + + # FRR's group (--enable-group). + # Default: "frr" + # group: + group: "root" + + # Directory to store FRR logs. + # Default: [netgen_runstatedir]/frrlogs + # logdir: + + tcpdump: + # Directory to store tcpdump captures. + # Default: [netgen_runstatedir]/pcaps + # pcap_dir: + + # Filter on which nodes tcpdump should run. + # Default: [] + # whitelist: + + # Filter on which nodes tcpdump should not run. + # Default: [] + # blacklist: + + tmux: + # Path of tmux script used to open a shell on all routers. + # Default: [netgen_runstatedir]/tmux.sh + # file: + + # Panels per node. + # Default: 1 + # panels-per-node: + + bird: + # BIRD's sysconfdir (--sysconfdir). + # Default: "/etc/bird" + # sysconfdir: + + # BIRD's localstatedir (--localstatedir). + # Default: "/var/run/bird" + # localstatedir: + + # BIRD's user (--enable-user). + # Default: "bird" + # user: + + # BIRD's group (--enable-group). + # Default: "bird" + # group: + + # Directory to store BIRD logs. + # Default: [netgen_runstatedir]/birdlogs + # logdir: + + bgpsimple: + # Path to bgp_simple script + # Default: "bgp_simple.pl" + # path: + + iou: + # IOU working directory. + # Default: [netgen_runstatedir]/iou + # dir: + + dynamips: + # dynamips working directory. + # Default: [netgen_runstatedir]/dynamips + # dir: diff --git a/src/te/tests/netgen-topology.yml.template b/src/te/tests/netgen-topology.yml.template new file mode 100644 index 0000000000000000000000000000000000000000..fd21c436324f03e59e37b7cb5cd829245782e133 --- /dev/null +++ b/src/te/tests/netgen-topology.yml.template @@ -0,0 +1,548 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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. + +# +# +---------+ +# | | +# | SRC | +# | 9.9.9.1 | +# | | +# +---------+ +# |eth-rt1 (.1) +# | +# |10.0.10.0/24 +# | +# |eth-src (.2) +# +---------+ . +# | | . +# | RT1 |eth-rt1-pce (???) . +# | 1.1.1.1 +----------------------------------+ +# | 16010 | . ??? | +# +---------+ . | +# |eth-sw1 . | +# | . | +# | . | +# | . | +# +---------+ | +---------+ . | +# | | | | | . | +# | RT2 |eth-sw1 | eth-sw1| RT3 | . | +# | 2.2.2.2 +----------+----------+ 3.3.3.3 | . | +# | 16020 | 10.0.1.0/24 | 16030 | . | +# +---------+ +---------+ .eth-pce-rt1|(???) +# eth-rt4-1| |eth-rt4-2 eth-rt5-1| |eth-rt5-2. +----+----+ +# | | | | . | | +# 10.0.2.0/24| |10.0.3.0/24 10.0.4.0/24| |10.0.5.0/24 | PCE | +# | | | | . | ???? | +# eth-rt2-1| |eth-rt2-2 eth-rt3-1| |eth-rt3-2. | | +# +---------+ +---------+ . +----+----+ +# | | | | .eth-pce-rt6|(???) +# | RT4 | 10.0.6.0/24 | RT5 | . | +# | 4.4.4.4 +---------------------+ 5.5.5.5 | . | +# | 16040 |eth-rt5 eth-rt4| 16050 | . | +# +---------+ +---------+ . | +# eth-rt6| |eth-rt6 . | +# | | . | +# 10.0.7.0/24| |10.0.8.0/24 | +# | +---------+ | . | +# +----------| |-----------+ . | +# eth-rt4| RT6 |eth-rt5 . | +# | 6.6.6.6 |eth-rt6-pce (????) . ???? | +# | 16060 +----------------------------------+ +# +---------+ . +# |eth-dst (.1) . +# | . +# |10.0.11.0/24 +# | +# |eth-rt6 (.2) +# +---------+ +# | | +# | DST | +# | 9.9.9.2 | +# | | +# +---------+ +# + +--- + +routers: + + src: + links: + lo: + ipv4: 9.9.9.1/32 + ipv6: 2001:db8:1066::1/128 + mpls: yes + eth-rt1: + peer: [rt1, eth-src] + ipv4: 10.0.10.1/24 + mpls: yes + frr: + zebra: + run: yes + config: + shell: | + ip route add 9.9.9.2/32 encap mpls 1111 via inet 10.0.10.2 src 9.9.9.1 + + rt1: + links: + lo: + ipv4: 1.1.1.1/32 + mpls: yes + eth-sw1: + peer: [sw1, sw1-rt1] + ipv4: 10.0.1.1/24 + mpls: yes + eth-src: + peer: [src, eth-rt1] + ipv4: 10.0.10.2/24 + mpls: yes + frr: + zebra: + run: yes + config: + pathd: + args: "-M pathd_pcep" + config: | + debug pathd pcep basic + segment-routing + traffic-eng + pcep + pce-config CONFIG + source-address ip 1.1.1.1 + pce PCE + pce-initiated + address ip ${PCE_IP} + config CONFIG + pcc + peer PCE + ! + isisd: + run: yes + config: | + interface lo + ip router isis 1 + ipv6 router isis 1 + isis passive + ! + interface eth-sw1 + ip router isis 1 + ipv6 router isis 1 + isis hello-multiplier 3 + ! + router isis 1 + net 49.0000.0000.0000.0001.00 + is-type level-1 + redistribute ipv4 static level-1 + redistribute ipv4 connected level-1 + topology ipv6-unicast + segment-routing on + segment-routing global-block 16000 23999 + segment-routing node-msd 8 + segment-routing prefix 1.1.1.1/32 index 10 explicit-null + segment-routing prefix 2001:db8:1000::1/128 index 11 explicit-null + ! + shell: | + ip route add 9.9.9.1/32 dev eth-src + ip link add eth-rt1-pce type veth peer name eth-pce-rt1 + ip addr add ${RT1_PCE_INT_IF_IP}/24 dev eth-rt1-pce + ip link set eth-pce-rt1 netns ${PCE_NETNS} + ip -n ${PCE_NETNS} addr add ${RT1_PCE_EXT_IF_IP}/24 dev eth-pce-rt1 + ip link set eth-rt1-pce up + ip -n ${PCE_NETNS} link set eth-pce-rt1 up + ip route add ${RT1_PCE_EXT_IF_IP}/24 via ${RT1_PCE_INT_IF_IP} dev eth-rt1-pce src 1.1.1.1 + ip -n ${PCE_NETNS} route add ${RT1_PCE_INT_IF_IP}/32 via ${RT1_PCE_EXT_IF_IP} dev eth-pce-rt1 + ip -n ${PCE_NETNS} route add 1.1.1.1/32 via ${RT1_PCE_EXT_IF_IP} dev eth-pce-rt1 + + rt2: + links: + lo: + ipv4: 2.2.2.2/32 + ipv6: 2001:db8:1000::2/128 + mpls: yes + eth-sw1: + peer: [sw1, sw1-rt2] + ipv4: 10.0.1.2/24 + mpls: yes + eth-rt4-1: + peer: [rt4, eth-rt2-1] + ipv4: 10.0.2.2/24 + mpls: yes + eth-rt4-2: + peer: [rt4, eth-rt2-2] + ipv4: 10.0.3.2/24 + mpls: yes + frr: + zebra: + run: yes + config: + isisd: + run: yes + config: | + interface lo + ip router isis 1 + ipv6 router isis 1 + isis passive + ! + interface eth-sw1 + ip router isis 1 + ipv6 router isis 1 + isis hello-multiplier 3 + ! + interface eth-rt4-1 + ip router isis 1 + ipv6 router isis 1 + isis network point-to-point + isis hello-multiplier 3 + ! + interface eth-rt4-2 + ip router isis 1 + ipv6 router isis 1 + isis network point-to-point + isis hello-multiplier 3 + ! + router isis 1 + net 49.0000.0000.0000.0002.00 + is-type level-1 + topology ipv6-unicast + segment-routing on + segment-routing global-block 16000 23999 + segment-routing node-msd 8 + segment-routing prefix 2.2.2.2/32 index 20 no-php-flag + segment-routing prefix 2001:db8:1000::2/128 index 21 no-php-flag + ! + + rt3: + links: + lo: + ipv4: 3.3.3.3/32 + ipv6: 2001:db8:1000::3/128 + mpls: yes + eth-sw1: + peer: [sw1, sw1-rt3] + ipv4: 10.0.1.3/24 + mpls: yes + eth-rt5-1: + peer: [rt5, eth-rt3-1] + ipv4: 10.0.4.3/24 + mpls: yes + eth-rt5-2: + peer: [rt5, eth-rt3-2] + ipv4: 10.0.5.3/24 + mpls: yes + frr: + zebra: + run: yes + config: + isisd: + run: yes + config: | + interface lo + ip router isis 1 + ipv6 router isis 1 + isis passive + ! + interface eth-sw1 + ip router isis 1 + ipv6 router isis 1 + isis hello-multiplier 3 + ! + interface eth-rt5-1 + ip router isis 1 + ipv6 router isis 1 + isis network point-to-point + isis hello-multiplier 3 + ! + interface eth-rt5-2 + ip router isis 1 + ipv6 router isis 1 + isis network point-to-point + isis hello-multiplier 3 + ! + router isis 1 + net 49.0000.0000.0000.0003.00 + is-type level-1 + topology ipv6-unicast + segment-routing on + segment-routing global-block 16000 23999 + segment-routing node-msd 8 + segment-routing prefix 3.3.3.3/32 index 30 no-php-flag + segment-routing prefix 2001:db8:1000::3/128 index 31 no-php-flag + ! + + rt4: + links: + lo: + ipv4: 4.4.4.4/32 + ipv6: 2001:db8:1000::4/128 + mpls: yes + eth-rt2-1: + peer: [rt2, eth-rt4-1] + ipv4: 10.0.2.4/24 + mpls: yes + eth-rt2-2: + peer: [rt2, eth-rt4-2] + ipv4: 10.0.3.4/24 + mpls: yes + eth-rt5: + peer: [rt5, eth-rt4] + ipv4: 10.0.6.4/24 + mpls: yes + eth-rt6: + peer: [rt6, eth-rt4] + ipv4: 10.0.7.4/24 + mpls: yes + frr: + zebra: + run: yes + config: + isisd: + run: yes + config: | + interface lo + ip router isis 1 + ipv6 router isis 1 + isis passive + ! + interface eth-rt2-1 + ip router isis 1 + ipv6 router isis 1 + isis network point-to-point + isis hello-multiplier 3 + ! + interface eth-rt2-2 + ip router isis 1 + ipv6 router isis 1 + isis network point-to-point + isis hello-multiplier 3 + ! + interface eth-rt5 + ip router isis 1 + ipv6 router isis 1 + isis network point-to-point + isis hello-multiplier 3 + ! + interface eth-rt6 + ip router isis 1 + ipv6 router isis 1 + isis network point-to-point + isis hello-multiplier 3 + ! + router isis 1 + net 49.0000.0000.0000.0004.00 + is-type level-1 + topology ipv6-unicast + segment-routing on + segment-routing global-block 16000 23999 + segment-routing node-msd 8 + segment-routing prefix 4.4.4.4/32 index 40 no-php-flag + segment-routing prefix 2001:db8:1000::4/128 index 41 no-php-flag + ! + + rt5: + links: + lo: + ipv4: 5.5.5.5/32 + ipv6: 2001:db8:1000::5/128 + mpls: yes + eth-rt3-1: + peer: [rt3, eth-rt5-1] + ipv4: 10.0.4.5/24 + mpls: yes + eth-rt3-2: + peer: [rt3, eth-rt5-2] + ipv4: 10.0.5.5/24 + mpls: yes + eth-rt4: + peer: [rt4, eth-rt5] + ipv4: 10.0.6.5/24 + mpls: yes + eth-rt6: + peer: [rt6, eth-rt5] + ipv4: 10.0.8.5/24 + mpls: yes + frr: + zebra: + run: yes + config: + isisd: + run: yes + config: | + interface lo + ip router isis 1 + ipv6 router isis 1 + isis passive + ! + interface eth-rt3-1 + ip router isis 1 + ipv6 router isis 1 + isis network point-to-point + isis hello-multiplier 3 + ! + interface eth-rt3-2 + ip router isis 1 + ipv6 router isis 1 + isis network point-to-point + isis hello-multiplier 3 + ! + interface eth-rt4 + ip router isis 1 + ipv6 router isis 1 + isis network point-to-point + isis hello-multiplier 3 + ! + interface eth-rt6 + ip router isis 1 + ipv6 router isis 1 + isis network point-to-point + isis hello-multiplier 3 + ! + router isis 1 + net 49.0000.0000.0000.0005.00 + is-type level-1 + topology ipv6-unicast + segment-routing on + segment-routing global-block 16000 23999 + segment-routing node-msd 8 + segment-routing prefix 5.5.5.5/32 index 50 no-php-flag + segment-routing prefix 2001:db8:1000::5/128 index 51 no-php-flag + ! + + rt6: + links: + lo: + ipv4: 6.6.6.6/32 + ipv6: 2001:db8:1000::6/128 + mpls: yes + eth-rt4: + peer: [rt4, eth-rt6] + ipv4: 10.0.7.6/24 + mpls: yes + eth-rt5: + peer: [rt5, eth-rt6] + ipv4: 10.0.8.6/24 + mpls: yes + eth-dst: + peer: [dst, eth-rt6] + ipv4: 10.0.11.1/24 + mpls: yes + frr: + zebra: + run: yes + config: + pathd: + args: "-M pathd_pcep" + config: | + debug pathd pcep + segment-routing + traffic-eng + pcep + pce-config CONFIG + source-address ip 6.6.6.6 + pce PCE + pce-initiated + address ip ${PCE_IP} + config CONFIG + pcc + peer PCE + ! + isisd: + run: yes + config: | + interface lo + ip router isis 1 + ipv6 router isis 1 + isis passive + ! + interface eth-rt4 + ip router isis 1 + ipv6 router isis 1 + isis network point-to-point + isis hello-multiplier 3 + ! + interface eth-rt5 + ip router isis 1 + ipv6 router isis 1 + isis network point-to-point + isis hello-multiplier 3 + ! + router isis 1 + net 49.0000.0000.0000.0006.00 + is-type level-1 + redistribute ipv4 static level-1 + redistribute ipv4 connected level-1 + topology ipv6-unicast + segment-routing on + segment-routing global-block 16000 23999 + segment-routing node-msd 8 + segment-routing prefix 6.6.6.6/32 index 60 explicit-null + segment-routing prefix 2001:db8:1000::6/128 index 61 explicit-null + ! + shell: | + ip route add 9.9.9.2/32 dev eth-dst + ip link add eth-rt6-pce type veth peer name eth-pce-rt6 + ip addr add ${RT6_PCE_INT_IF_IP}/24 dev eth-rt6-pce + ip link set eth-pce-rt6 netns ${PCE_NETNS} + ip -n ${PCE_NETNS} addr add ${RT6_PCE_EXT_IF_IP}/24 dev eth-pce-rt6 + ip link set eth-rt6-pce up + ip -n ${PCE_NETNS} link set eth-pce-rt6 up + ip route add ${RT6_PCE_EXT_IF_IP}/24 via ${RT6_PCE_INT_IF_IP} dev eth-rt6-pce src 6.6.6.6 + ip -n ${PCE_NETNS} route add ${RT6_PCE_INT_IF_IP}/32 via ${RT6_PCE_EXT_IF_IP} dev eth-pce-rt6 + ip -n ${PCE_NETNS} route add 6.6.6.6/32 via ${RT6_PCE_EXT_IF_IP} dev eth-pce-rt6 + + dst: + links: + lo: + ipv4: 9.9.9.2/32 + ipv6: 2001:db8:1066::2/128 + mpls: yes + eth-rt6: + peer: [rt6, eth-dst] + ipv4: 10.0.11.2/24 + mpls: yes + frr: + zebra: + run: yes + config: + shell: | + ip route add 9.9.9.1/32 encap mpls 6666 via inet 10.0.11.1 + +switches: + sw1: + links: + sw1-rt1: + peer: [rt1, rt1-sw1] + sw1-rt2: + peer: [rt2, rt2-sw1] + sw1-rt3: + peer: [rt3, rt3-sw1] + +frr: + #perf: yes + #valgrind: yes + base-configs: + all: | + hostname %(node) + password 1 + log file %(logdir)/%(node)-%(daemon).log + log commands + zebra: | + debug zebra kernel + debug zebra packet + debug zebra mpls + isisd: | + debug isis events + debug isis route-events + debug isis spf-events + debug isis sr-events + debug isis lsp-gen diff --git a/src/te/tests/service-descriptors.json b/src/te/tests/service-descriptors.json new file mode 100644 index 0000000000000000000000000000000000000000..15023ac9da8ff443bad6274af9de8246db524358 --- /dev/null +++ b/src/te/tests/service-descriptors.json @@ -0,0 +1,24 @@ +{ + "services": [ + { + "service_id": { + "context_id": {"context_uuid": {"uuid": "admin"}}, + "service_uuid": {"uuid": "2c025055-bf6c-4250-8560-cf62f2d29e72"} + }, + "service_type": 4, "service_status": {"service_status": 1}, + "service_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid":"RT1"}}, "endpoint_uuid": {"uuid":"eth-src"}}, + {"device_id": {"device_uuid": {"uuid":"RT6"}}, "endpoint_uuid": {"uuid":"eth-dst"}} + ], + "service_constraints": [], + "service_config": {"config_rules": [ + {"action": 1, "custom": {"resource_key": "/lsp-fw", "resource_value": { + "symbolic_name": "foo", "binding_label": 1111 + }}}, + {"action": 1, "custom": {"resource_key": "/lsp-bw", "resource_value": { + "symbolic_name": "bar", "binding_label": 6666 + }}} + ]} + } + ] +} diff --git a/src/te/tests/start-testbed.sh b/src/te/tests/start-testbed.sh new file mode 100755 index 0000000000000000000000000000000000000000..07a30e091252f753ff3c89c65378c6bbcde8bae3 --- /dev/null +++ b/src/te/tests/start-testbed.sh @@ -0,0 +1,58 @@ +#!/bin/bash +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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. + +set -e + +ROOTDIR="$( cd $( dirname $0 ); pwd )" +RUNDIR="$( pwd )" +NETGENDIR="${RUNDIR}/netgen" + +if [[ ! -f "${NETGENDIR}/exe/netgen" ]]; then + echo "Failed to find Netgen binary at ${NETGENDIR}/exe/netgen" + exit 1 +fi + +PCE_IP=$( kubectl --namespace tfs get $(kubectl --namespace tfs get pods --selector=app=teservice -o name) --template '{{.status.podIP}}' ) +echo "Teraflow PCE IP address: $PCE_IP" +NAMESPACES=$( ip netns list | cut -d' ' -f1 ) +PCE_NETNS="" +for n in $NAMESPACES; do + if sudo ip -n $n addr list | grep $PCE_IP > /dev/null; then + echo "Teraflow TE service namespace: $n" + PCE_NETNS=$n + break + fi +done +if [[ -z $PCE_NETNS ]]; then + echo "Teraflow network namespace for TE service not found" + exit1 +fi + +IFS=. read PCE_IP1 PCE_IP2 PCE_IP3 PCE_IP4 <<< "$PCE_IP" + +export PCE_IP +export PCE_NETNS +export RT1_PCE_INT_IF_IP="$PCE_IP1.$PCE_IP2.$PCE_IP3.10" +export RT1_PCE_EXT_IF_IP="$PCE_IP1.$PCE_IP2.$PCE_IP3.11" +export RT6_PCE_INT_IF_IP="$PCE_IP1.$PCE_IP2.$PCE_IP3.12" +export RT6_PCE_EXT_IF_IP="$PCE_IP1.$PCE_IP2.$PCE_IP3.13" + +cp "${ROOTDIR}/netgen-config.yml" "${RUNDIR}/config.yml" +cat "${ROOTDIR}/netgen-topology.yml.template" | envsubst > "${RUNDIR}/topology.yml" + +sudo -i bash -c "\ + cd ${RUNDIR}/netgen;\ + sysctl -w net.ipv4.conf.all.rp_filter=0;\ + PATH=/usr/lib/frr:\$PATH ./exe/netgen ../topology.yml -c ../config.yml" diff --git a/src/te/tests/test_te_service.py b/src/te/tests/test_te_service.py new file mode 100644 index 0000000000000000000000000000000000000000..6237049d4ed7c69f2a6f12efc1ce0365fca7133b --- /dev/null +++ b/src/te/tests/test_te_service.py @@ -0,0 +1,108 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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. + +# Simple script to test GRPC calls to the TE service. +# First get the TE service IP using: +# > kubectl -n tfs get services +# Change it in this script and run with: +# > PYTHONPATH=./src python test_te_service.py + +import json, sys +from common.proto.context_pb2 import ConfigActionEnum, Service, ServiceStatusEnum, ServiceTypeEnum +from common.tools.grpc.Tools import grpc_message_to_json_string +from service.client.TEServiceClient import TEServiceClient + +# {"name": "", +# "service_config": { +# "config_rules": [ +# { +# "action": "CONFIGACTION_SET", +# "custom": { +# "resource_key": "/lsp-fw", +# "resource_value": "{\n\"binding_label\": 1111,\n\"symbolic_name\": \"foo\"\n}"}}, +# { +# "action": "CONFIGACTION_SET", +# "custom": { +# "resource_key": "/lsp-bw", +# "resource_value": "{\n\"binding_label\": 6666,\n\"symbolic_name\": \"bar\"\n}"}}]}, +# "service_constraints": [], +# "service_endpoint_ids": [ +# {"device_id": {"device_uuid": {"uuid": "RT1"}}, "endpoint_uuid": {"uuid": "eth-src"}}, +# {"device_id": {"device_uuid": {"uuid": "RT6"}}, "endpoint_uuid": {"uuid": "eth-dst"}}], +# "service_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, +# "service_uuid": {"uuid": "2c025055-bf6c-4250-8560-cf62f2d29e72"}}, +# "service_status": {"service_status": "SERVICESTATUS_PLANNED"}, +# "service_type": "SERVICETYPE_TE"} + +service = Service() +service.service_id.context_id.context_uuid.uuid = 'admin' +service.service_id.service_uuid.uuid = 'test-te-service' + +service.service_type = ServiceTypeEnum.SERVICETYPE_TE +service.service_status.service_status = ServiceStatusEnum.SERVICESTATUS_PLANNED + +# SRC Endpoint: +src_endpoint_id = service.service_endpoint_ids.add() +src_endpoint_id.device_id.device_uuid.uuid = 'RT1' +src_endpoint_id.endpoint_uuid.uuid = 'eth-src' + +# DST Endpoint: +dst_endpoint_id = service.service_endpoint_ids.add() +dst_endpoint_id.device_id.device_uuid.uuid = 'RT6' +dst_endpoint_id.endpoint_uuid.uuid = 'eth-dst' + +# # Capacity SLA +# sla_capacity = service.service_constraints.add() +# sla_capacity.sla_capacity.capacity_gbps = 10.0 + +# # Latency SLA +# sla_latency = service.service_constraints.add() +# sla_latency.sla_latency.e2e_latency_ms = 20.0 + +# Example config rules: +config_rule_1 = service.service_config.config_rules.add() +config_rule_1.action = ConfigActionEnum.CONFIGACTION_SET +config_rule_1.custom.resource_key = '/lsp-fw' +config_rule_1.custom.resource_value = json.dumps({ + 'binding_label': 1111, 'symbolic_name': "foo" +}) + +config_rule_2 = service.service_config.config_rules.add() +config_rule_2.action = ConfigActionEnum.CONFIGACTION_SET +config_rule_2.custom.resource_key = '/lsp-bw' +config_rule_2.custom.resource_value = json.dumps({ + 'binding_label': 6666, 'symbolic_name': "bar" +}) + +def main(): + # Connect: + te_service_client = TEServiceClient(host='XXX.XXX.XXX.XXX', port=10030) + + # RequestLSP + print('request:', grpc_message_to_json_string(service)) + service_status = te_service_client.RequestLSP(service) + print('response:', grpc_message_to_json_string(service_status)) + + # DeleteLSP + #print('request:', grpc_message_to_json_string(service)) + #service_status = te_service_client.DeleteLSP(service) + #print('response:', grpc_message_to_json_string(service_status)) + + # Close: + te_service_client.close() + + return 0 + +if __name__ == '__main__': + sys.exit(main()) diff --git a/src/te/tests/topology-descriptors.json b/src/te/tests/topology-descriptors.json new file mode 100644 index 0000000000000000000000000000000000000000..a34d8ce09b3367bce0943ef3de8565baec776842 --- /dev/null +++ b/src/te/tests/topology-descriptors.json @@ -0,0 +1,195 @@ +{ + "contexts": [ + { + "context_id": {"context_uuid": {"uuid": "admin"}}, + "topology_ids": [], + "service_ids": [] + } + ], + "topologies": [ + { + "topology_id": {"topology_uuid": {"uuid": "admin"}, "context_id": {"context_uuid": {"uuid": "admin"}}}, + "device_ids": [ + {"device_uuid": {"uuid": "SW1"}}, + {"device_uuid": {"uuid": "RT1"}}, + {"device_uuid": {"uuid": "RT2"}}, + {"device_uuid": {"uuid": "RT3"}}, + {"device_uuid": {"uuid": "RT4"}}, + {"device_uuid": {"uuid": "RT5"}}, + {"device_uuid": {"uuid": "RT6"}} + ], + "link_ids": [ + {"link_uuid": {"uuid": "RT1/SW1"}}, + {"link_uuid": {"uuid": "RT2/SW1"}}, + {"link_uuid": {"uuid": "RT3/SW1"}}, + {"link_uuid": {"uuid": "RT2/RT4/1"}}, + {"link_uuid": {"uuid": "RT2/RT4/2"}}, + {"link_uuid": {"uuid": "RT3/RT5/1"}}, + {"link_uuid": {"uuid": "RT3/RT5/2"}}, + {"link_uuid": {"uuid": "RT4/RT5"}}, + {"link_uuid": {"uuid": "RT4/RT6"}}, + {"link_uuid": {"uuid": "RT5/RT6"}} + ] + } + ], + "devices": [ + { + "device_id": {"device_uuid": {"uuid": "SW1"}}, "device_type": "emu-packet-switch", + "device_operational_status": 2, "device_drivers": [0], "device_endpoints": [], + "device_config": {"config_rules": [ + {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ + {"sample_types": [], "type": "copper", "uuid": "df8bb169-2013-4b82-9455-69777f7a01d6"}, + {"sample_types": [], "type": "copper", "uuid": "061119c1-2aa4-48e9-be64-3ddf465fc80a"}, + {"sample_types": [], "type": "copper", "uuid": "495ea3f8-e67f-46a0-84bd-a230a4b7067d"} + ]}}} + ]} + }, + { + "device_id": {"device_uuid": {"uuid": "RT1"}}, "device_type": "emu-packet-router", + "device_operational_status": 2, "device_drivers": [0], "device_endpoints": [], + "device_config": {"config_rules": [ + {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "1.1.1.1"}}, + {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, + {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ + {"sample_types": [], "type": "copper", "uuid": "eth-src"}, + {"sample_types": [], "type": "copper", "uuid": "eth-sw1"} + ]}}}, + {"action": 1, "custom": {"resource_key": "/te_data", "resource_value": {"mpls_label": 16010, "pcc_address": "1.1.1.1"}}} + ]} + }, + { + "device_id": {"device_uuid": {"uuid": "RT2"}}, "device_type": "emu-packet-router", + "device_operational_status": 2, "device_drivers": [0], "device_endpoints": [], + "device_config": {"config_rules": [ + {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "2.2.2.2"}}, + {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, + {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ + {"sample_types": [], "type": "copper", "uuid": "eth-sw1"}, + {"sample_types": [], "type": "copper", "uuid": "eth-rt4-1"}, + {"sample_types": [], "type": "copper", "uuid": "eth-rt4-2"} + ]}}}, + {"action": 1, "custom": {"resource_key": "/te_data", "resource_value": {"mpls_label": 16020, "pcc_address": "2.2.2.2"}}} + ]} + }, + { + "device_id": {"device_uuid": {"uuid": "RT3"}}, "device_type": "emu-packet-router", + "device_operational_status": 2, "device_drivers": [0], "device_endpoints": [], + "device_config": {"config_rules": [ + {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "3.3.3.3"}}, + {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, + {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ + {"sample_types": [], "type": "copper", "uuid": "eth-sw1"}, + {"sample_types": [], "type": "copper", "uuid": "eth-rt5-1"}, + {"sample_types": [], "type": "copper", "uuid": "eth-rt5-2"} + ]}}}, + {"action": 1, "custom": {"resource_key": "/te_data", "resource_value": {"mpls_label": 16030, "pcc_address": "3.3.3.3"}}} + ]} + }, + { + "device_id": {"device_uuid": {"uuid": "RT4"}}, "device_type": "emu-packet-router", + "device_operational_status": 2, "device_drivers": [0], "device_endpoints": [], + "device_config": {"config_rules": [ + {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "4.4.4.4"}}, + {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, + {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ + {"sample_types": [], "type": "copper", "uuid": "eth-rt2-1"}, + {"sample_types": [], "type": "copper", "uuid": "eth-rt2-2"}, + {"sample_types": [], "type": "copper", "uuid": "eth-rt5"}, + {"sample_types": [], "type": "copper", "uuid": "eth-rt6"} + ]}}}, + {"action": 1, "custom": {"resource_key": "/te_data", "resource_value": {"mpls_label": 16040, "pcc_address": "4.4.4.4"}}} + ]} + }, + { + "device_id": {"device_uuid": {"uuid": "RT5"}}, "device_type": "emu-packet-router", + "device_operational_status": 2, "device_drivers": [0], "device_endpoints": [], + "device_config": {"config_rules": [ + {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "5.5.5.5"}}, + {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, + {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ + {"sample_types": [], "type": "copper", "uuid": "eth-rt3-1"}, + {"sample_types": [], "type": "copper", "uuid": "eth-rt3-2"}, + {"sample_types": [], "type": "copper", "uuid": "eth-rt4"}, + {"sample_types": [], "type": "copper", "uuid": "eth-rt6"} + ]}}}, + {"action": 1, "custom": {"resource_key": "/te_data", "resource_value": {"mpls_label": 16050, "pcc_address": "5.5.5.5"}}} + ]} + }, + { + "device_id": {"device_uuid": {"uuid": "RT6"}}, "device_type": "emu-packet-router", + "device_operational_status": 2, "device_drivers": [0], "device_endpoints": [], + "device_config": {"config_rules": [ + {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "6.6.6.6"}}, + {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, + {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ + {"sample_types": [], "type": "copper", "uuid": "eth-rt4"}, + {"sample_types": [], "type": "copper", "uuid": "eth-rt5"}, + {"sample_types": [], "type": "copper", "uuid": "eth-dst"} + ]}}}, + {"action": 1, "custom": {"resource_key": "/te_data", "resource_value": {"mpls_label": 16060, "pcc_address": "6.6.6.6"}}} + ]} + } + ], + "links": [ + { + "link_id": {"link_uuid": {"uuid": "RT1/SW1"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "RT1"}}, "endpoint_uuid": {"uuid": "eth-sw1"}}, + {"device_id": {"device_uuid": {"uuid": "SW1"}}, "endpoint_uuid": {"uuid": "df8bb169-2013-4b82-9455-69777f7a01d6"}} + ] + }, + { + "link_id": {"link_uuid": {"uuid": "RT2/SW1"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "RT2"}}, "endpoint_uuid": {"uuid": "eth-sw1"}}, + {"device_id": {"device_uuid": {"uuid": "SW1"}}, "endpoint_uuid": {"uuid": "061119c1-2aa4-48e9-be64-3ddf465fc80a"}} + ] + }, + { + "link_id": {"link_uuid": {"uuid": "RT3/SW1"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "RT3"}}, "endpoint_uuid": {"uuid": "eth-sw1"}}, + {"device_id": {"device_uuid": {"uuid": "SW1"}}, "endpoint_uuid": {"uuid": "495ea3f8-e67f-46a0-84bd-a230a4b7067d"}} + ] + }, + { + "link_id": {"link_uuid": {"uuid": "RT2/RT4/1"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "RT2"}}, "endpoint_uuid": {"uuid": "eth-rt4-1"}}, + {"device_id": {"device_uuid": {"uuid": "RT4"}}, "endpoint_uuid": {"uuid": "eth-rt2-1"}} + ] + }, + { + "link_id": {"link_uuid": {"uuid": "RT2/RT4/2"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "RT2"}}, "endpoint_uuid": {"uuid": "eth-rt4-2"}}, + {"device_id": {"device_uuid": {"uuid": "RT4"}}, "endpoint_uuid": {"uuid": "eth-rt2-2"}} + ] + }, + { + "link_id": {"link_uuid": {"uuid": "RT3/RT5/1"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "RT3"}}, "endpoint_uuid": {"uuid": "eth-rt5-1"}}, + {"device_id": {"device_uuid": {"uuid": "RT5"}}, "endpoint_uuid": {"uuid": "eth-rt3-1"}} + ] + }, + { + "link_id": {"link_uuid": {"uuid": "RT3/RT5/2"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "RT3"}}, "endpoint_uuid": {"uuid": "eth-rt5-2"}}, + {"device_id": {"device_uuid": {"uuid": "RT5"}}, "endpoint_uuid": {"uuid": "eth-rt3-2"}} + ] + }, + { + "link_id": {"link_uuid": {"uuid": "RT4/RT5"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "RT4"}}, "endpoint_uuid": {"uuid": "eth-rt5"}}, + {"device_id": {"device_uuid": {"uuid": "RT5"}}, "endpoint_uuid": {"uuid": "eth-rt4"}} + ] + }, + { + "link_id": {"link_uuid": {"uuid": "RT4/RT6"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "RT4"}}, "endpoint_uuid": {"uuid": "eth-rt6"}}, + {"device_id": {"device_uuid": {"uuid": "RT6"}}, "endpoint_uuid": {"uuid": "eth-rt4"}} + ] + }, + { + "link_id": {"link_uuid": {"uuid": "RT5/RT6"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "RT5"}}, "endpoint_uuid": {"uuid": "eth-rt6"}}, + {"device_id": {"device_uuid": {"uuid": "RT6"}}, "endpoint_uuid": {"uuid": "eth-rt5"}} + ] + } + ] +} diff --git a/src/te/tutorial/1-6-setup-erlang-environmnet.md b/src/te/tutorial/1-6-setup-erlang-environmnet.md new file mode 100644 index 0000000000000000000000000000000000000000..2d1519a6f3dc0e4bb686bfa107c0ca5b16eb6cd2 --- /dev/null +++ b/src/te/tutorial/1-6-setup-erlang-environmnet.md @@ -0,0 +1,56 @@ +# 1.5. Setup Erlang Environment + +First we need to install Erlang. There is multiple way, for development we will +be using *ASDF*, a tool that allows the installation of multiple version of Erlang +at the same time, and switch from one version to the other at will. + + +## 1.5.1. Setup Erlang using asdf + +First, install any missing dependencies: + + sudo apt install curl git autoconf libncurses-dev build-essential m4 libssl-dev + +Download *ASDF* tool to the local account: + + git clone https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.10.2 + +Make *ASDF* activate on login by adding these lines at the end of the `~/.bashrc` file: + + . $HOME/.asdf/asdf.sh + . $HOME/.asdf/completions/asdf.bash + +Logout and log back in to activate *ASDF*. + +*ASDF* supports multiple tools by installing there corresponding plugins. +Install *ASDF* plugin for Erlang: + + asdf plugin add erlang https://github.com/asdf-vm/asdf-erlang.git + +Install a version of Erlang: + + asdf install erlang 24.3.4.2 + +Activate Erlang locally for TFS controller. This will create a local file +called `.tool-versions` defining which version of the tools to use when +running under the current directory: + + cd tfs-ctrl/ + asdf local erlang 24.3.4.2 + +Erlang projects uses a build tool called rebar3. It is used to manager project +dependenecies, compile a project and generate project releases. +Install rebar3 localy from source: + + cd ~ + git clone https://github.com/erlang/rebar3.git + cd rebar3 + asdf local erlang 24.3.4.2 + ./bootstrap + ./rebar3 local install + +Update `~/.bashrc` to use rebar3 by adding this line at the end: + + export PATH=$HOME/.cache/rebar3/bin:$PATH + +Logout and log back in. diff --git a/src/te/tutorial/2-6-te-demo.md b/src/te/tutorial/2-6-te-demo.md new file mode 100644 index 0000000000000000000000000000000000000000..c53a60c51cf20717e51fb514c5b02d6594ce7904 --- /dev/null +++ b/src/te/tutorial/2-6-te-demo.md @@ -0,0 +1,130 @@ +# 2.6. Traffic Engineering Demo + +## Setup Test-Bed + +### Setup libyang + + $ sudo apt update + $ sudo apt-get install cmake libpcre2-dev git make build-essential + $ mkdir -p ~/testbed + $ cd ~/testbed + $ git clone git@github.com:CESNET/libyang.git + $ cd libyang + $ git checkout v2.0.0 + $ mkdir build; cd build + $ cmake -D CMAKE_INSTALL_PREFIX:PATH=/usr -D CMAKE_BUILD_TYPE:String="Release" .. + $ make + $ sudo make install + + +### Setup Free Range Routing + + $ sudo apt update + $ sudo apt-get install git autoconf automake libtool make libreadline-dev texinfo pkg-config libpam0g-dev libjson-c-dev bison flex libc-ares-dev python3-dev python3-sphinx install-info build-essential libsnmp-dev perl libcap-dev python2 libelf-dev libunwind-dev protobuf-c-compiler libprotobuf-c-dev libsystemd-dev + $ mkdir -p ~/testbed + $ cd ~/testbed + $ git clone git@github.com:opensourcerouting/frr.git + $ cd frr + $ curl https://bootstrap.pypa.io/pip/2.7/get-pip.py --output get-pip.py + $ sudo python2 ./get-pip.py + $ export CFLAGS="-I /usr/local/include -g -O2" + $ sudo rm -rf /usr/lib/frr + $ sudo rm -rf /var/run/frr + $ sudo mkdir -p /etc/frr + $ sudo mkdir -p /var/run/frr + $ sudo chown -R root:root /etc/frr + $ ./bootstrap.sh + $ ./configure \ + --prefix=/usr \ + --includedir=\${prefix}/include \ + --enable-exampledir=\${prefix}/share/doc/frr/examples \ + --bindir=\${prefix}/bin \ + --sbindir=\${prefix}/lib/frr \ + --libdir=\${prefix}/lib/frr \ + --libexecdir=\${prefix}/lib/frr \ + --localstatedir=/var/run/frr \ + --sysconfdir=/etc/frr \ + --with-moduledir=\${prefix}/lib/frr/modules \ + --enable-configfile-mask=0640 \ + --enable-logfile-mask=0640 \ + --enable-snmp=agentx \ + --enable-multipath=64 \ + --enable-user=root \ + --enable-group=root \ + --enable-vty-group=root \ + --enable-vtysh \ + --with-pkg-git-version \ + --with-pkg-extra-version=-MyOwnFRRVersion \ + --enable-systemd=yes \ + --enable-config-rollbacks \ + --enable-pathd \ + --enable-pcep + $ make + $ sudo make install + + +### Setup NetGen + + $ sudo apt update + $ sudo apt-get install git ruby ruby-dev tmux gettext-base + $ mkdir -p ~/testbed + $ cd ~/testbed + $ git clone git@github.com:sylane/netgen.git + $ cd netgen + $ git checkout teraflow + $ sudo gem install bundler:1.15 + $ bundle _1.15_ install + + +### Run the Test-Bed + +First load the [teraflow configuration file](~/tfs-ctrl/src/te/tests/topology-descriptors.json) using the webui. + +In first console: + $ cd ~/testbed + $ ../tfs-ctrl/src/te/tests/start-testbed.sh + +Then in second console: + $ sudo -i + # cd /tmp/negen + # ./tmux.sh + +Be sure that both PCC connected to the TE service before going further. +This can be done by looking at the TE service log: + + $ kubectl --namespace tfs logs $(kubectl --namespace tfs get pods --selector=app=teservice -o name) -c server + +### Setup a flow from the Erlang console + +We will setup two unidirectional flow between router 1 and 6. +We will use the binding label 1111 for the flow from router 1 to router 6, and the binding label 6666 for the flow from router 6 to router 1. + + $ kubectl --namespace tfs exec -ti $(kubectl --namespace tfs get pods --selector=app=teservice -o name) -c server -- /tfte/bin/tfte remote_console + 1> {ok, Flow1to6} = epce_server:initiate_flow(<<"foo">>, {1, 1, 1, 1}, {6, 6, 6, 6}, 1111). + 2> {ok, Flow6to1} = epce_server:initiate_flow(<<"bar">>, {6, 6, 6, 6}, {1, 1, 1, 1}, 6666). + +Another option is to use the router names: + + 1> {ok, Flow1to6} = epce_server:initiate_flow(<<"foo">>, <<"RT1">>, <<"RT6">>, 1111). + 2> {ok, Flow6to1} = epce_server:initiate_flow(<<"bar">>, <<"RT6">>, <<"RT1">>, 6666). + +Now if we go to the tmux session src (Ctrl-B 0) we can ping dst: + + $ ping 9.9.9.2 + +From the Erlang console we can update the initiated flows to change the path the packets are flowing through: + + 3> epce_server:update_flow(Flow6to1, [16050, 16030, 16010]). + +### Setup a flow using the GRPC test script + +This does the same as the the setup from the Erlang console, but through GRPC. +After deploying Teraflow (with te), get the te service ip using: + + $ kubectl -n tfs get services + +Replace the IP in the python script `src/te/tests/test_te_service.py`. +Be sure the topology as been loaded, and netgen started as described previously, +and run the following command from the root of the teraflow controller: + + $ PYTHONPATH=./src python src/te/tests/test_te_service.py diff --git a/src/tests/benchmark/automation/tests/Objects.py b/src/tests/benchmark/automation/tests/Objects.py index 8558d1fe7af84f1e312bc44eb458a3624ed694ae..a364abdc9d5dadec25e44e497f36db0c90e98e0b 100644 --- a/src/tests/benchmark/automation/tests/Objects.py +++ b/src/tests/benchmark/automation/tests/Objects.py @@ -18,7 +18,7 @@ from common.tools.object_factory.Context import json_context, json_context_id from common.tools.object_factory.Device import ( json_device_connect_rules, json_device_emulated_connect_rules, json_device_emulated_packet_router_disabled, json_device_emulated_tapi_disabled, json_device_id, json_device_packetrouter_disabled, json_device_tapi_disabled) -from common.tools.object_factory.EndPoint import json_endpoint, json_endpoint_id +from common.tools.object_factory.EndPoint import json_endpoint, json_endpoint_descriptor, json_endpoint_id from common.tools.object_factory.Link import json_link, json_link_id from common.tools.object_factory.Topology import json_topology, json_topology_id from common.proto.kpi_sample_types_pb2 import KpiSampleType @@ -40,7 +40,8 @@ PACKET_PORT_SAMPLE_TYPES = [ ] # ----- Devices -------------------------------------------------------------------------------------------------------- -DEVICE_ENDPOINT_DEFS = [('13/0/0', 'optical', []), ('13/1/2', 'copper', PACKET_PORT_SAMPLE_TYPES)] +DEVICE_ENDPOINT_DEFS = [json_endpoint_descriptor('13/0/0', 'optical'), + json_endpoint_descriptor('13/1/2', 'copper', sample_types=PACKET_PORT_SAMPLE_TYPES)] DEVICE_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_ENDPOINT_DEFS) # ----- Object Collections --------------------------------------------------------------------------------------------- diff --git a/src/tests/benchmark/policy/deploy_specs.sh b/src/tests/benchmark/policy/deploy_specs.sh old mode 100755 new mode 100644 diff --git a/src/tests/ecoc22/deploy_specs.sh b/src/tests/ecoc22/deploy_specs.sh index 6c3d9db662a8232f1fcccf3835b98d69571b6337..b1ee5ef6d6e500078bf0e170af5dfb32f01df088 100755 --- a/src/tests/ecoc22/deploy_specs.sh +++ b/src/tests/ecoc22/deploy_specs.sh @@ -20,7 +20,20 @@ export TFS_REGISTRY_IMAGES="http://localhost:32000/tfs/" # Set the list of components, separated by spaces, you want to build images for, and deploy. -export TFS_COMPONENTS="context device automation monitoring pathcomp service slice compute webui" +#export TFS_COMPONENTS="context device pathcomp service slice compute webui load_generator" +export TFS_COMPONENTS="context device pathcomp service slice compute webui" + +# Uncomment to activate Monitoring +#export TFS_COMPONENTS="${TFS_COMPONENTS} monitoring" + +# Uncomment to activate Automation and Policy Manager +#export TFS_COMPONENTS="${TFS_COMPONENTS} automation policy" + +# Uncomment to activate Optical CyberSecurity +#export TFS_COMPONENTS="${TFS_COMPONENTS} dbscanserving opticalattackmitigator opticalattackdetector opticalattackmanager" + +# Uncomment to activate L3 CyberSecurity +#export TFS_COMPONENTS="${TFS_COMPONENTS} l3_attackmitigator l3_centralizedattackdetector" # Set the tag you want to use for your images. export TFS_IMAGE_TAG="dev" @@ -31,6 +44,12 @@ export TFS_K8S_NAMESPACE="tfs" # Set additional manifest files to be applied after the deployment export TFS_EXTRA_MANIFESTS="manifests/nginx_ingress_http.yaml" +# Uncomment to monitor performance of components +#export TFS_EXTRA_MANIFESTS="${TFS_EXTRA_MANIFESTS} manifests/servicemonitors.yaml" + +# Uncomment when deploying Optical CyberSecurity +#export TFS_EXTRA_MANIFESTS="${TFS_EXTRA_MANIFESTS} manifests/cachingservice.yaml" + # Set the new Grafana admin password export TFS_GRAFANA_PASSWORD="admin123+" @@ -43,6 +62,12 @@ export TFS_SKIP_BUILD="" # Set the namespace where CockroackDB will be deployed. export CRDB_NAMESPACE="crdb" +# Set the external port CockroackDB Postgre SQL interface will be exposed to. +export CRDB_EXT_PORT_SQL="26257" + +# Set the external port CockroackDB HTTP Mgmt GUI interface will be exposed to. +export CRDB_EXT_PORT_HTTP="8081" + # Set the database username to be used by Context. export CRDB_USERNAME="tfs" @@ -57,7 +82,7 @@ export CRDB_DATABASE="tfs" export CRDB_DEPLOY_MODE="single" # Disable flag for dropping database, if it exists. -export CRDB_DROP_DATABASE_IF_EXISTS="" +export CRDB_DROP_DATABASE_IF_EXISTS="YES" # Disable flag for re-deploying CockroachDB from scratch. export CRDB_REDEPLOY="" @@ -68,6 +93,12 @@ export CRDB_REDEPLOY="" # Set the namespace where NATS will be deployed. export NATS_NAMESPACE="nats" +# Set the external port NATS Client interface will be exposed to. +export NATS_EXT_PORT_CLIENT="4222" + +# Set the external port NATS HTTP Mgmt GUI interface will be exposed to. +export NATS_EXT_PORT_HTTP="8222" + # Disable flag for re-deploying NATS from scratch. export NATS_REDEPLOY="" @@ -77,6 +108,15 @@ export NATS_REDEPLOY="" # Set the namespace where QuestDB will be deployed. export QDB_NAMESPACE="qdb" +# Set the external port QuestDB Postgre SQL interface will be exposed to. +export QDB_EXT_PORT_SQL="8812" + +# Set the external port QuestDB Influx Line Protocol interface will be exposed to. +export QDB_EXT_PORT_ILP="9009" + +# Set the external port QuestDB HTTP Mgmt GUI interface will be exposed to. +export QDB_EXT_PORT_HTTP="9000" + # Set the database username to be used for QuestDB. export QDB_USERNAME="admin" @@ -86,8 +126,20 @@ export QDB_PASSWORD="quest" # Set the table name to be used by Monitoring for KPIs. export QDB_TABLE_MONITORING_KPIS="tfs_monitoring_kpis" +# Set the table name to be used by Slice for plotting groups. +export QDB_TABLE_SLICE_GROUPS="tfs_slice_groups" + # Disable flag for dropping tables if they exist. -export QDB_DROP_TABLES_IF_EXIST="" +export QDB_DROP_TABLES_IF_EXIST="YES" # Disable flag for re-deploying QuestDB from scratch. export QDB_REDEPLOY="" + + +# ----- K8s Observability ------------------------------------------------------ + +# Set the external port Prometheus Mgmt HTTP GUI interface will be exposed to. +export PROM_EXT_PORT_HTTP="9090" + +# Set the external port Grafana HTTP Dashboards will be exposed to. +export GRAF_EXT_PORT_HTTP="3000" diff --git a/src/tests/ecoc22/descriptors_emulated.json b/src/tests/ecoc22/descriptors_emulated.json index f55954d92fbe3cf75b3464286f897c3f931c0c39..da36a6ae995941f8dbbf998df31f8d7258decbaf 100644 --- a/src/tests/ecoc22/descriptors_emulated.json +++ b/src/tests/ecoc22/descriptors_emulated.json @@ -136,6 +136,55 @@ {"device_id": {"device_uuid": {"uuid": "CS2-GW2"}}, "endpoint_uuid": {"uuid": "1/1"}}, {"device_id": {"device_uuid": {"uuid": "OLS"}}, "endpoint_uuid": {"uuid": "50296d99-58cc-5ce7-82f5-fc8ee4eec2ec"}} ] + }, + + { + "link_id": {"link_uuid": {"uuid": "CS1-GW1/10/1==DC1-GW/eth1"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "CS1-GW1"}}, "endpoint_uuid": {"uuid": "10/1"}}, + {"device_id": {"device_uuid": {"uuid": "DC1-GW"}}, "endpoint_uuid": {"uuid": "eth1"}} + ] + }, + { + "link_id": {"link_uuid": {"uuid": "CS1-GW2/10/1==DC1-GW/eth2"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "CS1-GW2"}}, "endpoint_uuid": {"uuid": "10/1"}}, + {"device_id": {"device_uuid": {"uuid": "DC1-GW"}}, "endpoint_uuid": {"uuid": "eth2"}} + ] + }, + { + "link_id": {"link_uuid": {"uuid": "CS2-GW1/10/1==DC2-GW/eth1"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "CS2-GW1"}}, "endpoint_uuid": {"uuid": "10/1"}}, + {"device_id": {"device_uuid": {"uuid": "DC2-GW"}}, "endpoint_uuid": {"uuid": "eth1"}} + ] + }, + { + "link_id": {"link_uuid": {"uuid": "CS2-GW2/10/1==DC2-GW/eth2"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "CS2-GW2"}}, "endpoint_uuid": {"uuid": "10/1"}}, + {"device_id": {"device_uuid": {"uuid": "DC2-GW"}}, "endpoint_uuid": {"uuid": "eth2"}} + ] + }, + { + "link_id": {"link_uuid": {"uuid": "OLS/aade6001-f00b-5e2f-a357-6a0a9d3de870==CS1-GW1/1/1"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "OLS"}}, "endpoint_uuid": {"uuid": "aade6001-f00b-5e2f-a357-6a0a9d3de870"}}, + {"device_id": {"device_uuid": {"uuid": "CS1-GW1"}}, "endpoint_uuid": {"uuid": "1/1"}} + ] + }, + { + "link_id": {"link_uuid": {"uuid": "OLS/eb287d83-f05e-53ec-ab5a-adf6bd2b5418==CS1-GW2/1/1"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "OLS"}}, "endpoint_uuid": {"uuid": "eb287d83-f05e-53ec-ab5a-adf6bd2b5418"}}, + {"device_id": {"device_uuid": {"uuid": "CS1-GW2"}}, "endpoint_uuid": {"uuid": "1/1"}} + ] + }, + { + "link_id": {"link_uuid": {"uuid": "OLS/0ef74f99-1acc-57bd-ab9d-4b958b06c513==CS2-GW1/1/1"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "OLS"}}, "endpoint_uuid": {"uuid": "0ef74f99-1acc-57bd-ab9d-4b958b06c513"}}, + {"device_id": {"device_uuid": {"uuid": "CS2-GW1"}}, "endpoint_uuid": {"uuid": "1/1"}} + ] + }, + { + "link_id": {"link_uuid": {"uuid": "OLS/50296d99-58cc-5ce7-82f5-fc8ee4eec2ec==CS2-GW2/1/1"}}, "link_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "OLS"}}, "endpoint_uuid": {"uuid": "50296d99-58cc-5ce7-82f5-fc8ee4eec2ec"}}, + {"device_id": {"device_uuid": {"uuid": "CS2-GW2"}}, "endpoint_uuid": {"uuid": "1/1"}} + ] } ] } diff --git a/src/tests/ecoc22/tests/Tools.py b/src/tests/ecoc22/tests/Tools.py index 26a3eda7101907f63fc51bc042bd59dee463d7d9..ea83d06bbe19c05d8f1932c03fd595ae760cc83f 100644 --- a/src/tests/ecoc22/tests/Tools.py +++ b/src/tests/ecoc22/tests/Tools.py @@ -16,16 +16,18 @@ from typing import Dict, List, Tuple from common.tools.object_factory.EndPoint import json_endpoint, json_endpoint_id from common.tools.object_factory.Link import json_link, json_link_id -def json_endpoint_ids(device_id : Dict, endpoint_descriptors : List[Tuple[str, str, List[int]]]): +def json_endpoint_ids(device_id : Dict, endpoint_descriptors : List[Dict]]): return [ - json_endpoint_id(device_id, ep_uuid, topology_id=None) - for ep_uuid, _, _ in endpoint_descriptors + json_endpoint_id(device_id, ep_data['uuid'], topology_id=None) + for ep_data in endpoint_descriptors ] -def json_endpoints(device_id : Dict, endpoint_descriptors : List[Tuple[str, str, List[int]]]): +def json_endpoints(device_id : Dict, endpoint_descriptors : List[Dict]]): return [ - json_endpoint(device_id, ep_uuid, ep_type, topology_id=None, kpi_sample_types=ep_sample_types) - for ep_uuid, ep_type, ep_sample_types in endpoint_descriptors + json_endpoint( + device_id, ep_data['uuid'], ep_data['type'], topology_id=None, + kpi_sample_types=ep_data['sample_types']) + for ep_data in endpoint_descriptors ] def get_link_uuid(a_endpoint_id : Dict, z_endpoint_id : Dict) -> str: diff --git a/src/tests/ecoc22/tests/old_code/Objects_BigNet.py b/src/tests/ecoc22/tests/old_code/Objects_BigNet.py index fb96914678e646840400e5270892b82428c428ee..f52d4fa2bde90ef0cc4bf7fad01625e782d2b086 100644 --- a/src/tests/ecoc22/tests/old_code/Objects_BigNet.py +++ b/src/tests/ecoc22/tests/old_code/Objects_BigNet.py @@ -17,6 +17,7 @@ from common.tools.object_factory.Context import json_context, json_context_id from common.tools.object_factory.Device import ( json_device_emulated_connect_rules, json_device_emulated_datacenter_disabled, json_device_emulated_packet_router_disabled, json_device_id) +from common.tools.object_factory.EndPoint import json_endpoint_descriptor from common.tools.object_factory.Topology import json_topology, json_topology_id from .Tools import compose_bearer, compose_service_endpoint_id, json_endpoint_ids, link @@ -32,7 +33,7 @@ TOPOLOGY = json_topology(DEFAULT_TOPOLOGY_NAME, context_id=CONTEXT_ID) # ----- Customer Equipment (CE) Devices -------------------------------------------------------------------------------- DEVICE_CE1_UUID = 'CE1' -DEVICE_CE1_ENDPOINT_DEFS = [('1/1', 'copper', [])] +DEVICE_CE1_ENDPOINT_DEFS = [json_endpoint_descriptor('1/1', 'copper')] DEVICE_CE1_ID = json_device_id(DEVICE_CE1_UUID) DEVICE_CE1_ENDPOINT_IDS = json_endpoint_ids(DEVICE_CE1_ID, DEVICE_CE1_ENDPOINT_DEFS) DEVICE_CE1 = json_device_emulated_packet_router_disabled(DEVICE_CE1_UUID) @@ -40,7 +41,7 @@ ENDPOINT_ID_CE1_1_1 = DEVICE_CE1_ENDPOINT_IDS[0] DEVICE_CE1_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_CE1_ENDPOINT_DEFS) DEVICE_CE2_UUID = 'CE2' -DEVICE_CE2_ENDPOINT_DEFS = [('1/1', 'copper', [])] +DEVICE_CE2_ENDPOINT_DEFS = [json_endpoint_descriptor('1/1', 'copper')] DEVICE_CE2_ID = json_device_id(DEVICE_CE2_UUID) DEVICE_CE2_ENDPOINT_IDS = json_endpoint_ids(DEVICE_CE2_ID, DEVICE_CE2_ENDPOINT_DEFS) DEVICE_CE2 = json_device_emulated_packet_router_disabled(DEVICE_CE2_UUID) @@ -48,7 +49,7 @@ ENDPOINT_ID_CE2_1_1 = DEVICE_CE2_ENDPOINT_IDS[0] DEVICE_CE2_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_CE2_ENDPOINT_DEFS) DEVICE_CE3_UUID = 'CE3' -DEVICE_CE3_ENDPOINT_DEFS = [('1/1', 'copper', [])] +DEVICE_CE3_ENDPOINT_DEFS = [json_endpoint_descriptor('1/1', 'copper')] DEVICE_CE3_ID = json_device_id(DEVICE_CE3_UUID) DEVICE_CE3_ENDPOINT_IDS = json_endpoint_ids(DEVICE_CE3_ID, DEVICE_CE3_ENDPOINT_DEFS) DEVICE_CE3 = json_device_emulated_packet_router_disabled(DEVICE_CE3_UUID) @@ -56,7 +57,7 @@ ENDPOINT_ID_CE3_1_1 = DEVICE_CE3_ENDPOINT_IDS[0] DEVICE_CE3_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_CE3_ENDPOINT_DEFS) DEVICE_CE4_UUID = 'CE4' -DEVICE_CE4_ENDPOINT_DEFS = [('1/1', 'copper', [])] +DEVICE_CE4_ENDPOINT_DEFS = [json_endpoint_descriptor('1/1', 'copper')] DEVICE_CE4_ID = json_device_id(DEVICE_CE4_UUID) DEVICE_CE4_ENDPOINT_IDS = json_endpoint_ids(DEVICE_CE4_ID, DEVICE_CE4_ENDPOINT_DEFS) DEVICE_CE4 = json_device_emulated_packet_router_disabled(DEVICE_CE4_UUID) @@ -65,8 +66,9 @@ DEVICE_CE4_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_CE4_ENDPOIN # ----- Provider Equipment (PE) Devices -------------------------------------------------------------------------------- DEVICE_PE1_UUID = 'PE1' -DEVICE_PE1_ENDPOINT_DEFS = [('1/1', 'copper', []), - ('2/1', 'copper', []), ('2/2', 'copper', [])] +DEVICE_PE1_ENDPOINT_DEFS = [json_endpoint_descriptor('1/1', 'copper'), + json_endpoint_descriptor('2/1', 'copper'), + json_endpoint_descriptor('2/2', 'copper')] DEVICE_PE1_ID = json_device_id(DEVICE_PE1_UUID) DEVICE_PE1_ENDPOINT_IDS = json_endpoint_ids(DEVICE_PE1_ID, DEVICE_PE1_ENDPOINT_DEFS) DEVICE_PE1 = json_device_emulated_packet_router_disabled(DEVICE_PE1_UUID) @@ -76,8 +78,9 @@ ENDPOINT_ID_PE1_2_2 = DEVICE_PE1_ENDPOINT_IDS[2] DEVICE_PE1_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_PE1_ENDPOINT_DEFS) DEVICE_PE2_UUID = 'PE2' -DEVICE_PE2_ENDPOINT_DEFS = [('1/1', 'copper', []), - ('2/1', 'copper', []), ('2/2', 'copper', [])] +DEVICE_PE2_ENDPOINT_DEFS = [json_endpoint_descriptor('1/1', 'copper'), + json_endpoint_descriptor('2/1', 'copper'), + json_endpoint_descriptor('2/2', 'copper')] DEVICE_PE2_ID = json_device_id(DEVICE_PE2_UUID) DEVICE_PE2_ENDPOINT_IDS = json_endpoint_ids(DEVICE_PE2_ID, DEVICE_PE2_ENDPOINT_DEFS) DEVICE_PE2 = json_device_emulated_packet_router_disabled(DEVICE_PE2_UUID) @@ -87,8 +90,9 @@ ENDPOINT_ID_PE2_2_2 = DEVICE_PE2_ENDPOINT_IDS[2] DEVICE_PE2_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_PE2_ENDPOINT_DEFS) DEVICE_PE3_UUID = 'PE3' -DEVICE_PE3_ENDPOINT_DEFS = [('1/1', 'copper', []), - ('2/1', 'copper', []), ('2/2', 'copper', [])] +DEVICE_PE3_ENDPOINT_DEFS = [json_endpoint_descriptor('1/1', 'copper'), + json_endpoint_descriptor('2/1', 'copper'), + json_endpoint_descriptor('2/2', 'copper')] DEVICE_PE3_ID = json_device_id(DEVICE_PE3_UUID) DEVICE_PE3_ENDPOINT_IDS = json_endpoint_ids(DEVICE_PE3_ID, DEVICE_PE3_ENDPOINT_DEFS) DEVICE_PE3 = json_device_emulated_packet_router_disabled(DEVICE_PE3_UUID) @@ -98,8 +102,9 @@ ENDPOINT_ID_PE3_2_2 = DEVICE_PE3_ENDPOINT_IDS[2] DEVICE_PE3_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_PE3_ENDPOINT_DEFS) DEVICE_PE4_UUID = 'PE4' -DEVICE_PE4_ENDPOINT_DEFS = [('1/1', 'copper', []), - ('2/1', 'copper', []), ('2/2', 'copper', [])] +DEVICE_PE4_ENDPOINT_DEFS = [json_endpoint_descriptor('1/1', 'copper'), + json_endpoint_descriptor('2/1', 'copper'), + json_endpoint_descriptor('2/2', 'copper')] DEVICE_PE4_ID = json_device_id(DEVICE_PE4_UUID) DEVICE_PE4_ENDPOINT_IDS = json_endpoint_ids(DEVICE_PE4_ID, DEVICE_PE4_ENDPOINT_DEFS) DEVICE_PE4 = json_device_emulated_packet_router_disabled(DEVICE_PE4_UUID) @@ -110,8 +115,11 @@ DEVICE_PE4_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_PE4_ENDPOIN # ----- BackBone (BB) Devices ------------------------------------------------------------------------------------------ DEVICE_BB1_UUID = 'BB1' -DEVICE_BB1_ENDPOINT_DEFS = [('1/1', 'copper', []), ('1/2', 'copper', []), - ('2/1', 'copper', []), ('2/2', 'copper', []), ('2/3', 'copper', [])] +DEVICE_BB1_ENDPOINT_DEFS = [json_endpoint_descriptor('1/1', 'copper'), + json_endpoint_descriptor('1/2', 'copper'), + json_endpoint_descriptor('2/1', 'copper'), + json_endpoint_descriptor('2/2', 'copper'), + json_endpoint_descriptor('2/3', 'copper')] DEVICE_BB1_ID = json_device_id(DEVICE_BB1_UUID) DEVICE_BB1_ENDPOINT_IDS = json_endpoint_ids(DEVICE_BB1_ID, DEVICE_BB1_ENDPOINT_DEFS) DEVICE_BB1 = json_device_emulated_packet_router_disabled(DEVICE_BB1_UUID) @@ -123,8 +131,11 @@ ENDPOINT_ID_BB1_2_3 = DEVICE_BB1_ENDPOINT_IDS[4] DEVICE_BB1_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_BB1_ENDPOINT_DEFS) DEVICE_BB2_UUID = 'BB2' -DEVICE_BB2_ENDPOINT_DEFS = [('1/1', 'copper', []), ('1/2', 'copper', []), - ('2/1', 'copper', []), ('2/2', 'copper', []), ('2/3', 'copper', [])] +DEVICE_BB2_ENDPOINT_DEFS = [json_endpoint_descriptor('1/1', 'copper'), + json_endpoint_descriptor('1/2', 'copper'), + json_endpoint_descriptor('2/1', 'copper'), + json_endpoint_descriptor('2/2', 'copper'), + json_endpoint_descriptor('2/3', 'copper')] DEVICE_BB2_ID = json_device_id(DEVICE_BB2_UUID) DEVICE_BB2_ENDPOINT_IDS = json_endpoint_ids(DEVICE_BB2_ID, DEVICE_BB2_ENDPOINT_DEFS) DEVICE_BB2 = json_device_emulated_packet_router_disabled(DEVICE_BB2_UUID) @@ -136,7 +147,9 @@ ENDPOINT_ID_BB2_2_3 = DEVICE_BB2_ENDPOINT_IDS[4] DEVICE_BB2_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_BB2_ENDPOINT_DEFS) DEVICE_BB3_UUID = 'BB3' -DEVICE_BB3_ENDPOINT_DEFS = [('2/1', 'copper', []), ('2/2', 'copper', []), ('2/3', 'copper', [])] +DEVICE_BB3_ENDPOINT_DEFS = [json_endpoint_descriptor('2/1', 'copper'), + json_endpoint_descriptor('2/2', 'copper'), + json_endpoint_descriptor('2/3', 'copper')] DEVICE_BB3_ID = json_device_id(DEVICE_BB3_UUID) DEVICE_BB3_ENDPOINT_IDS = json_endpoint_ids(DEVICE_BB3_ID, DEVICE_BB3_ENDPOINT_DEFS) DEVICE_BB3 = json_device_emulated_packet_router_disabled(DEVICE_BB3_UUID) @@ -146,8 +159,11 @@ ENDPOINT_ID_BB3_2_3 = DEVICE_BB3_ENDPOINT_IDS[2] DEVICE_BB3_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_BB3_ENDPOINT_DEFS) DEVICE_BB4_UUID = 'BB4' -DEVICE_BB4_ENDPOINT_DEFS = [('1/1', 'copper', []), ('1/2', 'copper', []), - ('2/1', 'copper', []), ('2/2', 'copper', []), ('2/3', 'copper', [])] +DEVICE_BB4_ENDPOINT_DEFS = [json_endpoint_descriptor('1/1', 'copper'), + json_endpoint_descriptor('1/2', 'copper'), + json_endpoint_descriptor('2/1', 'copper'), + json_endpoint_descriptor('2/2', 'copper'), + json_endpoint_descriptor('2/3', 'copper')] DEVICE_BB4_ID = json_device_id(DEVICE_BB4_UUID) DEVICE_BB4_ENDPOINT_IDS = json_endpoint_ids(DEVICE_BB4_ID, DEVICE_BB4_ENDPOINT_DEFS) DEVICE_BB4 = json_device_emulated_packet_router_disabled(DEVICE_BB4_UUID) @@ -159,8 +175,11 @@ ENDPOINT_ID_BB4_2_3 = DEVICE_BB4_ENDPOINT_IDS[4] DEVICE_BB4_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_BB4_ENDPOINT_DEFS) DEVICE_BB5_UUID = 'BB5' -DEVICE_BB5_ENDPOINT_DEFS = [('1/1', 'copper', []), ('1/2', 'copper', []), - ('2/1', 'copper', []), ('2/2', 'copper', []), ('2/3', 'copper', [])] +DEVICE_BB5_ENDPOINT_DEFS = [json_endpoint_descriptor('1/1', 'copper'), + json_endpoint_descriptor('1/2', 'copper'), + json_endpoint_descriptor('2/1', 'copper'), + json_endpoint_descriptor('2/2', 'copper'), + json_endpoint_descriptor('2/3', 'copper')] DEVICE_BB5_ID = json_device_id(DEVICE_BB5_UUID) DEVICE_BB5_ENDPOINT_IDS = json_endpoint_ids(DEVICE_BB5_ID, DEVICE_BB5_ENDPOINT_DEFS) DEVICE_BB5 = json_device_emulated_packet_router_disabled(DEVICE_BB5_UUID) @@ -172,7 +191,9 @@ ENDPOINT_ID_BB5_2_3 = DEVICE_BB5_ENDPOINT_IDS[4] DEVICE_BB5_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_BB5_ENDPOINT_DEFS) DEVICE_BB6_UUID = 'BB6' -DEVICE_BB6_ENDPOINT_DEFS = [('2/1', 'copper', []), ('2/2', 'copper', []), ('2/3', 'copper', [])] +DEVICE_BB6_ENDPOINT_DEFS = [json_endpoint_descriptor('2/1', 'copper'), + json_endpoint_descriptor('2/2', 'copper'), + json_endpoint_descriptor('2/3', 'copper')] DEVICE_BB6_ID = json_device_id(DEVICE_BB6_UUID) DEVICE_BB6_ENDPOINT_IDS = json_endpoint_ids(DEVICE_BB6_ID, DEVICE_BB6_ENDPOINT_DEFS) DEVICE_BB6 = json_device_emulated_packet_router_disabled(DEVICE_BB6_UUID) @@ -182,8 +203,12 @@ ENDPOINT_ID_BB6_2_3 = DEVICE_BB6_ENDPOINT_IDS[2] DEVICE_BB6_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_BB6_ENDPOINT_DEFS) DEVICE_BB7_UUID = 'BB7' -DEVICE_BB7_ENDPOINT_DEFS = [('2/1', 'copper', []), ('2/2', 'copper', []), ('2/3', 'copper', []), ('2/4', 'copper', []), - ('2/5', 'copper', []), ('2/6', 'copper', [])] +DEVICE_BB7_ENDPOINT_DEFS = [json_endpoint_descriptor('2/1', 'copper'), + json_endpoint_descriptor('2/2', 'copper'), + json_endpoint_descriptor('2/3', 'copper'), + json_endpoint_descriptor('2/4', 'copper'), + json_endpoint_descriptor('2/5', 'copper'), + json_endpoint_descriptor('2/6', 'copper')] DEVICE_BB7_ID = json_device_id(DEVICE_BB7_UUID) DEVICE_BB7_ENDPOINT_IDS = json_endpoint_ids(DEVICE_BB7_ID, DEVICE_BB7_ENDPOINT_DEFS) DEVICE_BB7 = json_device_emulated_packet_router_disabled(DEVICE_BB7_UUID) diff --git a/src/tests/ecoc22/tests/old_code/Objects_DC_CSGW_OLS.py b/src/tests/ecoc22/tests/old_code/Objects_DC_CSGW_OLS.py index 522c25d6b272247093edb72cdbfa0ba515ed8cf8..ce16b9bf3241011f1326ae7bccb533c3201608fe 100644 --- a/src/tests/ecoc22/tests/old_code/Objects_DC_CSGW_OLS.py +++ b/src/tests/ecoc22/tests/old_code/Objects_DC_CSGW_OLS.py @@ -18,7 +18,7 @@ from common.tools.object_factory.Context import json_context, json_context_id from common.tools.object_factory.Device import ( json_device_emulated_connect_rules, json_device_emulated_datacenter_disabled, json_device_emulated_packet_router_disabled, json_device_emulated_tapi_disabled, json_device_id) -from common.tools.object_factory.EndPoint import json_endpoints +from common.tools.object_factory.EndPoint import json_endpoint_descriptor, 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 @@ -30,7 +30,7 @@ ADD_CONNECT_RULES_TO_DEVICES = ADD_CONNECT_RULES_TO_DEVICES.upper() in {'T', 'TR def compose_router(device_uuid, endpoint_uuids, topology_id=None): device_id = json_device_id(device_uuid) - r_endpoints = [(endpoint_uuid, 'copper', []) for endpoint_uuid in endpoint_uuids] + r_endpoints = [json_endpoint_descriptor(endpoint_uuid, 'copper') for endpoint_uuid in endpoint_uuids] config_rules = json_device_emulated_connect_rules(r_endpoints) if ADD_CONNECT_RULES_TO_DEVICES else [] endpoints = json_endpoints(device_id, r_endpoints, topology_id=topology_id) j_endpoints = [] if ADD_CONNECT_RULES_TO_DEVICES else endpoints @@ -39,7 +39,7 @@ def compose_router(device_uuid, endpoint_uuids, topology_id=None): def compose_ols(device_uuid, endpoint_uuids, topology_id=None): device_id = json_device_id(device_uuid) - r_endpoints = [(endpoint_uuid, 'optical', []) for endpoint_uuid in endpoint_uuids] + r_endpoints = [json_endpoint_descriptor(endpoint_uuid, 'optical') for endpoint_uuid in endpoint_uuids] config_rules = json_device_emulated_connect_rules(r_endpoints) if ADD_CONNECT_RULES_TO_DEVICES else [] endpoints = json_endpoints(device_id, r_endpoints, topology_id=topology_id) j_endpoints = [] if ADD_CONNECT_RULES_TO_DEVICES else endpoints @@ -48,7 +48,7 @@ def compose_ols(device_uuid, endpoint_uuids, topology_id=None): def compose_datacenter(device_uuid, endpoint_uuids, topology_id=None): device_id = json_device_id(device_uuid) - r_endpoints = [(endpoint_uuid, 'copper', []) for endpoint_uuid in endpoint_uuids] + r_endpoints = [json_endpoint_descriptor(endpoint_uuid, 'copper') for endpoint_uuid in endpoint_uuids] config_rules = json_device_emulated_connect_rules(r_endpoints) if ADD_CONNECT_RULES_TO_DEVICES else [] endpoints = json_endpoints(device_id, r_endpoints, topology_id=topology_id) j_endpoints = [] if ADD_CONNECT_RULES_TO_DEVICES else endpoints diff --git a/src/tests/ecoc22/tests/old_code/Objects_DC_CSGW_TN.py b/src/tests/ecoc22/tests/old_code/Objects_DC_CSGW_TN.py index c02f5d0c880f4bf570b7d14278c4bcbb1cffe72d..1de362a91665b73e36d4b3e9fd22ddfad184e50a 100644 --- a/src/tests/ecoc22/tests/old_code/Objects_DC_CSGW_TN.py +++ b/src/tests/ecoc22/tests/old_code/Objects_DC_CSGW_TN.py @@ -18,7 +18,7 @@ from common.tools.object_factory.Context import json_context, json_context_id from common.tools.object_factory.Device import ( json_device_emulated_connect_rules, json_device_emulated_datacenter_disabled, json_device_emulated_packet_router_disabled, json_device_id) -from common.tools.object_factory.EndPoint import json_endpoints +from common.tools.object_factory.EndPoint import json_endpoint_descriptor, 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 @@ -30,7 +30,7 @@ ADD_CONNECT_RULES_TO_DEVICES = ADD_CONNECT_RULES_TO_DEVICES.upper() in {'T', 'TR def compose_router(device_uuid, endpoint_uuids, topology_id=None): device_id = json_device_id(device_uuid) - r_endpoints = [(endpoint_uuid, 'copper', []) for endpoint_uuid in endpoint_uuids] + r_endpoints = [json_endpoint_descriptor(endpoint_uuid, 'copper') for endpoint_uuid in endpoint_uuids] config_rules = json_device_emulated_connect_rules(r_endpoints) if ADD_CONNECT_RULES_TO_DEVICES else [] endpoints = json_endpoints(device_id, r_endpoints, topology_id=topology_id) j_endpoints = [] if ADD_CONNECT_RULES_TO_DEVICES else endpoints @@ -39,7 +39,7 @@ def compose_router(device_uuid, endpoint_uuids, topology_id=None): def compose_datacenter(device_uuid, endpoint_uuids, topology_id=None): device_id = json_device_id(device_uuid) - r_endpoints = [(endpoint_uuid, 'copper', []) for endpoint_uuid in endpoint_uuids] + r_endpoints = [json_endpoint_descriptor(endpoint_uuid, 'copper') for endpoint_uuid in endpoint_uuids] config_rules = json_device_emulated_connect_rules(r_endpoints) if ADD_CONNECT_RULES_TO_DEVICES else [] endpoints = json_endpoints(device_id, r_endpoints, topology_id=topology_id) j_endpoints = [] if ADD_CONNECT_RULES_TO_DEVICES else endpoints diff --git a/src/tests/ecoc22/tests/old_code/Objects_DC_CSGW_TN_OLS.py b/src/tests/ecoc22/tests/old_code/Objects_DC_CSGW_TN_OLS.py index 6c34ec01d4c9b466aa81d306078a0ab242a334ad..2a19b7f1880f31c3e315fcd4383bc36d1fd74385 100644 --- a/src/tests/ecoc22/tests/old_code/Objects_DC_CSGW_TN_OLS.py +++ b/src/tests/ecoc22/tests/old_code/Objects_DC_CSGW_TN_OLS.py @@ -18,7 +18,7 @@ from common.tools.object_factory.Context import json_context, json_context_id from common.tools.object_factory.Device import ( json_device_emulated_connect_rules, json_device_emulated_datacenter_disabled, json_device_emulated_packet_router_disabled, json_device_emulated_tapi_disabled, json_device_id) -from common.tools.object_factory.EndPoint import json_endpoints +from common.tools.object_factory.EndPoint import json_endpoint_descriptor, 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 @@ -30,7 +30,7 @@ ADD_CONNECT_RULES_TO_DEVICES = ADD_CONNECT_RULES_TO_DEVICES.upper() in {'T', 'TR def compose_router(device_uuid, endpoint_uuids, topology_id=None): device_id = json_device_id(device_uuid) - r_endpoints = [(endpoint_uuid, 'copper', []) for endpoint_uuid in endpoint_uuids] + r_endpoints = [json_endpoint_descriptor(endpoint_uuid, 'copper') for endpoint_uuid in endpoint_uuids] config_rules = json_device_emulated_connect_rules(r_endpoints) if ADD_CONNECT_RULES_TO_DEVICES else [] endpoints = json_endpoints(device_id, r_endpoints, topology_id=topology_id) j_endpoints = [] if ADD_CONNECT_RULES_TO_DEVICES else endpoints @@ -39,7 +39,7 @@ def compose_router(device_uuid, endpoint_uuids, topology_id=None): def compose_ols(device_uuid, endpoint_uuids, topology_id=None): device_id = json_device_id(device_uuid) - r_endpoints = [(endpoint_uuid, 'optical', []) for endpoint_uuid in endpoint_uuids] + r_endpoints = [json_endpoint_descriptor(endpoint_uuid, 'optical') for endpoint_uuid in endpoint_uuids] config_rules = json_device_emulated_connect_rules(r_endpoints) if ADD_CONNECT_RULES_TO_DEVICES else [] endpoints = json_endpoints(device_id, r_endpoints, topology_id=topology_id) j_endpoints = [] if ADD_CONNECT_RULES_TO_DEVICES else endpoints @@ -48,7 +48,7 @@ def compose_ols(device_uuid, endpoint_uuids, topology_id=None): def compose_datacenter(device_uuid, endpoint_uuids, topology_id=None): device_id = json_device_id(device_uuid) - r_endpoints = [(endpoint_uuid, 'copper', []) for endpoint_uuid in endpoint_uuids] + r_endpoints = [json_endpoint_descriptor(endpoint_uuid, 'copper') for endpoint_uuid in endpoint_uuids] config_rules = json_device_emulated_connect_rules(r_endpoints) if ADD_CONNECT_RULES_TO_DEVICES else [] endpoints = json_endpoints(device_id, r_endpoints, topology_id=topology_id) j_endpoints = [] if ADD_CONNECT_RULES_TO_DEVICES else endpoints diff --git a/src/tests/oeccpsc22/deploy_specs_dom1.sh b/src/tests/oeccpsc22/deploy_specs_dom1.sh index b269236b0bd7ac6ac21a743205157fd9aec42c37..7db9159e00e3044ddeb571b03cf3e05de33a8150 100755 --- a/src/tests/oeccpsc22/deploy_specs_dom1.sh +++ b/src/tests/oeccpsc22/deploy_specs_dom1.sh @@ -30,7 +30,7 @@ export TFS_IMAGE_TAG="dev" export TFS_K8S_NAMESPACE="tfs-dom1" # Set additional manifest files to be applied after the deployment -export TFS_EXTRA_MANIFESTS="oeccpsc22/nginx-ingress-http-dom1.yaml oeccpsc22/expose-services-dom1.yaml" +export TFS_EXTRA_MANIFESTS="oeccpsc22/nginx-ingress-http-dom1.yaml" # Set the new Grafana admin password export TFS_GRAFANA_PASSWORD="admin123+" @@ -64,7 +64,7 @@ export CRDB_DATABASE="tfs_dom1" export CRDB_DEPLOY_MODE="single" # Disable flag for dropping database, if it exists. -export CRDB_DROP_DATABASE_IF_EXISTS="" +export CRDB_DROP_DATABASE_IF_EXISTS="YES" # Disable flag for re-deploying CockroachDB from scratch. export CRDB_REDEPLOY="" @@ -112,7 +112,7 @@ export QDB_TABLE_MONITORING_KPIS="tfs_monitoring_kpis" export QDB_TABLE_SLICE_GROUPS="tfs_slice_groups" # Disable flag for dropping tables if they exist. -export QDB_DROP_TABLES_IF_EXIST="" +export QDB_DROP_TABLES_IF_EXIST="YES" # Disable flag for re-deploying QuestDB from scratch. export QDB_REDEPLOY="" diff --git a/src/tests/oeccpsc22/deploy_specs_dom2.sh b/src/tests/oeccpsc22/deploy_specs_dom2.sh index 112142437ed172f3b773ae148b57b5e0732676fb..3e23c56feb3247a1b1bcef1a82feeac049654cb6 100755 --- a/src/tests/oeccpsc22/deploy_specs_dom2.sh +++ b/src/tests/oeccpsc22/deploy_specs_dom2.sh @@ -30,7 +30,7 @@ export TFS_IMAGE_TAG="dev" export TFS_K8S_NAMESPACE="tfs-dom2" # Set additional manifest files to be applied after the deployment -export TFS_EXTRA_MANIFESTS="oeccpsc22/nginx-ingress-http-dom2.yaml oeccpsc22/expose-services-dom2.yaml" +export TFS_EXTRA_MANIFESTS="oeccpsc22/nginx-ingress-http-dom2.yaml" # Set the new Grafana admin password export TFS_GRAFANA_PASSWORD="admin123+" @@ -64,7 +64,7 @@ export CRDB_DATABASE="tfs_dom2" export CRDB_DEPLOY_MODE="single" # Disable flag for dropping database, if it exists. -export CRDB_DROP_DATABASE_IF_EXISTS="" +export CRDB_DROP_DATABASE_IF_EXISTS="YES" # Disable flag for re-deploying CockroachDB from scratch. export CRDB_REDEPLOY="" @@ -112,7 +112,7 @@ export QDB_TABLE_MONITORING_KPIS="tfs_monitoring_kpis" export QDB_TABLE_SLICE_GROUPS="tfs_slice_groups" # Disable flag for dropping tables if they exist. -export QDB_DROP_TABLES_IF_EXIST="" +export QDB_DROP_TABLES_IF_EXIST="YES" # Disable flag for re-deploying QuestDB from scratch. export QDB_REDEPLOY="" diff --git a/src/tests/oeccpsc22/descriptors/domain1.json b/src/tests/oeccpsc22/descriptors/domain1.json index 2db10b4d1f2e7a702e6da99d1da28fc2fc21c288..3e12b2b3107d76828f42ecd445755ddce1d9f251 100644 --- a/src/tests/oeccpsc22/descriptors/domain1.json +++ b/src/tests/oeccpsc22/descriptors/domain1.json @@ -4,6 +4,7 @@ ], "topologies": [ {"topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "admin"}}}, + {"topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}}, {"topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "inter"}}} ], "devices": [ @@ -15,7 +16,8 @@ {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ {"uuid": "int", "context_uuid": "admin", "topology_uuid": "admin", "type": "copper/internal"}, {"uuid": "D1", "context_uuid": "admin", "topology_uuid": "inter", "type": "copper/border" } - ]}}} + ]}}}, + {"action": 1, "custom": {"resource_key": "/settings", "resource_value": {"router_id": "10.0.0.1"}}} ]} }, { @@ -26,13 +28,14 @@ {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ {"uuid": "int", "context_uuid": "admin", "topology_uuid": "admin", "type": "copper/internal"}, {"uuid": "D2", "context_uuid": "admin", "topology_uuid": "inter", "type": "copper/border" } - ]}}} + ]}}}, + {"action": 1, "custom": {"resource_key": "/settings", "resource_value": {"router_id": "10.0.0.2"}}} ]} }, { "device_id": {"device_uuid": {"uuid": "D2"}}, "device_type": "network", "device_drivers": [0], "device_endpoints": [], "device_operational_status": 2, "device_config": {"config_rules": [ - {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "10.0.2.10"}}, + {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "interdomainservice.tfs-dom2"}}, {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "10010"}}, {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ {"uuid": "D1", "context_uuid": "admin", "topology_uuid": "inter", "type": "copper/border" }, @@ -46,10 +49,14 @@ {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "127.0.0.1"}}, {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ - {"uuid": "2", "context_uuid": "admin", "topology_uuid": "admin", "type": "copper/internal"}, - {"uuid": "5", "context_uuid": "admin", "topology_uuid": "admin", "type": "copper/internal"}, - {"uuid": "DC1", "context_uuid": "admin", "topology_uuid": "inter", "type": "copper/border" } - ]}}} + {"uuid": "2", "context_uuid": "admin", "topology_uuid": "D1", "type": "copper/internal"}, + {"uuid": "5", "context_uuid": "admin", "topology_uuid": "D1", "type": "copper/internal"}, + {"uuid": "DC1", "context_uuid": "admin", "topology_uuid": "D1", "type": "copper/border" } + ]}}}, + {"action": 1, "custom": {"resource_key": "/settings", "resource_value": {"router_id": "10.0.1.1"}}}, + {"action": 1, "custom": {"resource_key": "/endpoints/endpoint[2]/settings", "resource_value": {"remote_router": "10.0.1.2"}}}, + {"action": 1, "custom": {"resource_key": "/endpoints/endpoint[5]/settings", "resource_value": {"remote_router": "10.0.1.5"}}}, + {"action": 1, "custom": {"resource_key": "/endpoints/endpoint[DC1]/settings", "resource_value": {"remote_router": "10.0.0.1"}}} ]} }, { @@ -58,10 +65,14 @@ {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "127.0.0.1"}}, {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ - {"uuid": "1", "context_uuid": "admin", "topology_uuid": "admin", "type": "copper/internal"}, - {"uuid": "3", "context_uuid": "admin", "topology_uuid": "admin", "type": "copper/internal"}, - {"uuid": "5", "context_uuid": "admin", "topology_uuid": "admin", "type": "copper/internal"} - ]}}} + {"uuid": "1", "context_uuid": "admin", "topology_uuid": "D1", "type": "copper/internal"}, + {"uuid": "3", "context_uuid": "admin", "topology_uuid": "D1", "type": "copper/internal"}, + {"uuid": "5", "context_uuid": "admin", "topology_uuid": "D1", "type": "copper/internal"} + ]}}}, + {"action": 1, "custom": {"resource_key": "/settings", "resource_value": {"router_id": "10.0.1.2"}}}, + {"action": 1, "custom": {"resource_key": "/endpoints/endpoint[1]/settings", "resource_value": {"remote_router": "10.0.1.1"}}}, + {"action": 1, "custom": {"resource_key": "/endpoints/endpoint[3]/settings", "resource_value": {"remote_router": "10.0.1.3"}}}, + {"action": 1, "custom": {"resource_key": "/endpoints/endpoint[5]/settings", "resource_value": {"remote_router": "10.0.1.5"}}} ]} }, { @@ -70,9 +81,12 @@ {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "127.0.0.1"}}, {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ - {"uuid": "2", "context_uuid": "admin", "topology_uuid": "admin", "type": "copper/internal"}, - {"uuid": "4", "context_uuid": "admin", "topology_uuid": "admin", "type": "copper/internal"} - ]}}} + {"uuid": "2", "context_uuid": "admin", "topology_uuid": "D1", "type": "copper/internal"}, + {"uuid": "4", "context_uuid": "admin", "topology_uuid": "D1", "type": "copper/internal"} + ]}}}, + {"action": 1, "custom": {"resource_key": "/settings", "resource_value": {"router_id": "10.0.1.3"}}}, + {"action": 1, "custom": {"resource_key": "/endpoints/endpoint[2]/settings", "resource_value": {"remote_router": "10.0.1.2"}}}, + {"action": 1, "custom": {"resource_key": "/endpoints/endpoint[4]/settings", "resource_value": {"remote_router": "10.0.1.4"}}} ]} }, { @@ -81,10 +95,15 @@ {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "127.0.0.1"}}, {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ - {"uuid": "3", "context_uuid": "admin", "topology_uuid": "admin", "type": "copper/internal"}, - {"uuid": "5", "context_uuid": "admin", "topology_uuid": "admin", "type": "copper/internal"}, - {"uuid": "D2", "context_uuid": "admin", "topology_uuid": "inter", "type": "copper/border" } - ]}}} + {"uuid": "3", "context_uuid": "admin", "topology_uuid": "D1", "type": "copper/internal"}, + {"uuid": "5", "context_uuid": "admin", "topology_uuid": "D1", "type": "copper/internal"}, + {"uuid": "D2", "context_uuid": "admin", "topology_uuid": "D1", "type": "copper/border" } + ]}}}, + {"action": 1, "custom": {"resource_key": "/settings", "resource_value": {"router_id": "10.0.1.4"}}}, + {"action": 1, "custom": {"resource_key": "/endpoints/endpoint[3]/settings", "resource_value": {"remote_router": "10.0.1.3"}}}, + {"action": 1, "custom": {"resource_key": "/endpoints/endpoint[5]/settings", "resource_value": {"remote_router": "10.0.1.5"}}}, + {"action": 1, "custom": {"resource_key": "/endpoints/endpoint[D2]/settings", "resource_value": {"remote_router": "10.0.2.2"}}} + ]} }, { @@ -93,22 +112,27 @@ {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "127.0.0.1"}}, {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ - {"uuid": "1", "context_uuid": "admin", "topology_uuid": "admin", "type": "copper/internal"}, - {"uuid": "2", "context_uuid": "admin", "topology_uuid": "admin", "type": "copper/internal"}, - {"uuid": "4", "context_uuid": "admin", "topology_uuid": "admin", "type": "copper/internal"} - ]}}} + {"uuid": "1", "context_uuid": "admin", "topology_uuid": "D1", "type": "copper/internal"}, + {"uuid": "2", "context_uuid": "admin", "topology_uuid": "D1", "type": "copper/internal"}, + {"uuid": "4", "context_uuid": "admin", "topology_uuid": "D1", "type": "copper/internal"} + ]}}}, + {"action": 1, "custom": {"resource_key": "/settings", "resource_value": {"router_id": "10.0.1.5"}}}, + {"action": 1, "custom": {"resource_key": "/endpoints/endpoint[1]/settings", "resource_value": {"remote_router": "10.0.1.1"}}}, + {"action": 1, "custom": {"resource_key": "/endpoints/endpoint[2]/settings", "resource_value": {"remote_router": "10.0.1.2"}}}, + {"action": 1, "custom": {"resource_key": "/endpoints/endpoint[4]/settings", "resource_value": {"remote_router": "10.0.1.4"}}} ]} } ], "links": [ {"link_id": {"link_uuid": {"uuid": "DC1/D1==R1@D1/DC1"}}, "link_endpoint_ids": [ {"device_id": {"device_uuid": {"uuid": "DC1"}}, "endpoint_uuid": {"uuid": "D1"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "inter"}}}, - {"device_id": {"device_uuid": {"uuid": "R1@D1"}}, "endpoint_uuid": {"uuid": "DC1"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "inter"}}} + {"device_id": {"device_uuid": {"uuid": "R1@D1"}}, "endpoint_uuid": {"uuid": "DC1"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}} ]}, {"link_id": {"link_uuid": {"uuid": "R1@D1/DC1==DC1/D1"}}, "link_endpoint_ids": [ - {"device_id": {"device_uuid": {"uuid": "R1@D1"}}, "endpoint_uuid": {"uuid": "DC1"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "inter"}}}, + {"device_id": {"device_uuid": {"uuid": "R1@D1"}}, "endpoint_uuid": {"uuid": "DC1"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}}, {"device_id": {"device_uuid": {"uuid": "DC1"}}, "endpoint_uuid": {"uuid": "D1"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "inter"}}} ]}, + {"link_id": {"link_uuid": {"uuid": "DC2/D2==D2/DC2"}}, "link_endpoint_ids": [ {"device_id": {"device_uuid": {"uuid": "DC2"}}, "endpoint_uuid": {"uuid": "D2"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "inter"}}}, {"device_id": {"device_uuid": {"uuid": "D2"}}, "endpoint_uuid": {"uuid": "DC2"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "inter"}}} @@ -118,61 +142,61 @@ {"device_id": {"device_uuid": {"uuid": "DC2"}}, "endpoint_uuid": {"uuid": "D2"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "inter"}}} ]}, {"link_id": {"link_uuid": {"uuid": "R4@D1/D2==D2/D1"}}, "link_endpoint_ids": [ - {"device_id": {"device_uuid": {"uuid": "R4@D1"}}, "endpoint_uuid": {"uuid": "D2"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "inter"}}}, + {"device_id": {"device_uuid": {"uuid": "R4@D1"}}, "endpoint_uuid": {"uuid": "D2"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}}, {"device_id": {"device_uuid": {"uuid": "D2"}}, "endpoint_uuid": {"uuid": "D1"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "inter"}}} ]}, {"link_id": {"link_uuid": {"uuid": "D2/D1==R4@D1/D2"}}, "link_endpoint_ids": [ {"device_id": {"device_uuid": {"uuid": "D2"}}, "endpoint_uuid": {"uuid": "D1"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "inter"}}}, - {"device_id": {"device_uuid": {"uuid": "R4@D1"}}, "endpoint_uuid": {"uuid": "D2"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "inter"}}} + {"device_id": {"device_uuid": {"uuid": "R4@D1"}}, "endpoint_uuid": {"uuid": "D2"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}} ]}, {"link_id": {"link_uuid": {"uuid": "R1@D1/2==R2@D1/1"}}, "link_endpoint_ids": [ - {"device_id": {"device_uuid": {"uuid": "R1@D1"}}, "endpoint_uuid": {"uuid": "2"}}, - {"device_id": {"device_uuid": {"uuid": "R2@D1"}}, "endpoint_uuid": {"uuid": "1"}} + {"device_id": {"device_uuid": {"uuid": "R1@D1"}}, "endpoint_uuid": {"uuid": "2"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}}, + {"device_id": {"device_uuid": {"uuid": "R2@D1"}}, "endpoint_uuid": {"uuid": "1"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}} ]}, {"link_id": {"link_uuid": {"uuid": "R1@D1/5==R5@D1/1"}}, "link_endpoint_ids": [ - {"device_id": {"device_uuid": {"uuid": "R1@D1"}}, "endpoint_uuid": {"uuid": "5"}}, - {"device_id": {"device_uuid": {"uuid": "R5@D1"}}, "endpoint_uuid": {"uuid": "1"}} + {"device_id": {"device_uuid": {"uuid": "R1@D1"}}, "endpoint_uuid": {"uuid": "5"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}}, + {"device_id": {"device_uuid": {"uuid": "R5@D1"}}, "endpoint_uuid": {"uuid": "1"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}} ]}, {"link_id": {"link_uuid": {"uuid": "R2@D1/1==R1@D1/2"}}, "link_endpoint_ids": [ - {"device_id": {"device_uuid": {"uuid": "R2@D1"}}, "endpoint_uuid": {"uuid": "1"}}, - {"device_id": {"device_uuid": {"uuid": "R1@D1"}}, "endpoint_uuid": {"uuid": "2"}} + {"device_id": {"device_uuid": {"uuid": "R2@D1"}}, "endpoint_uuid": {"uuid": "1"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}}, + {"device_id": {"device_uuid": {"uuid": "R1@D1"}}, "endpoint_uuid": {"uuid": "2"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}} ]}, {"link_id": {"link_uuid": {"uuid": "R2@D1/3==R3@D1/2"}}, "link_endpoint_ids": [ - {"device_id": {"device_uuid": {"uuid": "R2@D1"}}, "endpoint_uuid": {"uuid": "3"}}, - {"device_id": {"device_uuid": {"uuid": "R3@D1"}}, "endpoint_uuid": {"uuid": "2"}} + {"device_id": {"device_uuid": {"uuid": "R2@D1"}}, "endpoint_uuid": {"uuid": "3"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}}, + {"device_id": {"device_uuid": {"uuid": "R3@D1"}}, "endpoint_uuid": {"uuid": "2"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}} ]}, {"link_id": {"link_uuid": {"uuid": "R2@D1/5==R5@D1/2"}}, "link_endpoint_ids": [ - {"device_id": {"device_uuid": {"uuid": "R2@D1"}}, "endpoint_uuid": {"uuid": "5"}}, - {"device_id": {"device_uuid": {"uuid": "R5@D1"}}, "endpoint_uuid": {"uuid": "2"}} + {"device_id": {"device_uuid": {"uuid": "R2@D1"}}, "endpoint_uuid": {"uuid": "5"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}}, + {"device_id": {"device_uuid": {"uuid": "R5@D1"}}, "endpoint_uuid": {"uuid": "2"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}} ]}, {"link_id": {"link_uuid": {"uuid": "R3@D1/2==R2@D1/3"}}, "link_endpoint_ids": [ - {"device_id": {"device_uuid": {"uuid": "R3@D1"}}, "endpoint_uuid": {"uuid": "2"}}, - {"device_id": {"device_uuid": {"uuid": "R2@D1"}}, "endpoint_uuid": {"uuid": "3"}} + {"device_id": {"device_uuid": {"uuid": "R3@D1"}}, "endpoint_uuid": {"uuid": "2"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}}, + {"device_id": {"device_uuid": {"uuid": "R2@D1"}}, "endpoint_uuid": {"uuid": "3"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}} ]}, {"link_id": {"link_uuid": {"uuid": "R3@D1/4==R4@D1/3"}}, "link_endpoint_ids": [ - {"device_id": {"device_uuid": {"uuid": "R3@D1"}}, "endpoint_uuid": {"uuid": "4"}}, - {"device_id": {"device_uuid": {"uuid": "R4@D1"}}, "endpoint_uuid": {"uuid": "3"}} + {"device_id": {"device_uuid": {"uuid": "R3@D1"}}, "endpoint_uuid": {"uuid": "4"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}}, + {"device_id": {"device_uuid": {"uuid": "R4@D1"}}, "endpoint_uuid": {"uuid": "3"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}} ]}, {"link_id": {"link_uuid": {"uuid": "R4@D1/3==R3@D1/4"}}, "link_endpoint_ids": [ - {"device_id": {"device_uuid": {"uuid": "R4@D1"}}, "endpoint_uuid": {"uuid": "3"}}, - {"device_id": {"device_uuid": {"uuid": "R3@D1"}}, "endpoint_uuid": {"uuid": "4"}} + {"device_id": {"device_uuid": {"uuid": "R4@D1"}}, "endpoint_uuid": {"uuid": "3"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}}, + {"device_id": {"device_uuid": {"uuid": "R3@D1"}}, "endpoint_uuid": {"uuid": "4"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}} ]}, {"link_id": {"link_uuid": {"uuid": "R4@D1/5==R5@D1/4"}}, "link_endpoint_ids": [ - {"device_id": {"device_uuid": {"uuid": "R4@D1"}}, "endpoint_uuid": {"uuid": "5"}}, - {"device_id": {"device_uuid": {"uuid": "R5@D1"}}, "endpoint_uuid": {"uuid": "4"}} + {"device_id": {"device_uuid": {"uuid": "R4@D1"}}, "endpoint_uuid": {"uuid": "5"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}}, + {"device_id": {"device_uuid": {"uuid": "R5@D1"}}, "endpoint_uuid": {"uuid": "4"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}} ]}, {"link_id": {"link_uuid": {"uuid": "R5@D1/1==R1@D1/5"}}, "link_endpoint_ids": [ - {"device_id": {"device_uuid": {"uuid": "R5@D1"}}, "endpoint_uuid": {"uuid": "1"}}, - {"device_id": {"device_uuid": {"uuid": "R1@D1"}}, "endpoint_uuid": {"uuid": "5"}} + {"device_id": {"device_uuid": {"uuid": "R5@D1"}}, "endpoint_uuid": {"uuid": "1"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}}, + {"device_id": {"device_uuid": {"uuid": "R1@D1"}}, "endpoint_uuid": {"uuid": "5"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}} ]}, {"link_id": {"link_uuid": {"uuid": "R5@D1/2==R2@D1/5"}}, "link_endpoint_ids": [ - {"device_id": {"device_uuid": {"uuid": "R5@D1"}}, "endpoint_uuid": {"uuid": "2"}}, - {"device_id": {"device_uuid": {"uuid": "R2@D1"}}, "endpoint_uuid": {"uuid": "5"}} + {"device_id": {"device_uuid": {"uuid": "R5@D1"}}, "endpoint_uuid": {"uuid": "2"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}}, + {"device_id": {"device_uuid": {"uuid": "R2@D1"}}, "endpoint_uuid": {"uuid": "5"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}} ]}, {"link_id": {"link_uuid": {"uuid": "R5@D1/4==R4@D1/5"}}, "link_endpoint_ids": [ - {"device_id": {"device_uuid": {"uuid": "R5@D1"}}, "endpoint_uuid": {"uuid": "4"}}, - {"device_id": {"device_uuid": {"uuid": "R4@D1"}}, "endpoint_uuid": {"uuid": "5"}} + {"device_id": {"device_uuid": {"uuid": "R5@D1"}}, "endpoint_uuid": {"uuid": "4"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}}, + {"device_id": {"device_uuid": {"uuid": "R4@D1"}}, "endpoint_uuid": {"uuid": "5"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D1"}}} ]} ] } diff --git a/src/tests/oeccpsc22/descriptors/domain2.json b/src/tests/oeccpsc22/descriptors/domain2.json index e7a00f74e7cc14c9db6d7be6fa89ef538f9cfa34..6e282ca7aadc10d1a62e9c6d20db6be45dfbb352 100644 --- a/src/tests/oeccpsc22/descriptors/domain2.json +++ b/src/tests/oeccpsc22/descriptors/domain2.json @@ -4,6 +4,7 @@ ], "topologies": [ {"topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "admin"}}}, + {"topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D2" }}}, {"topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "inter"}}} ], "devices": [ @@ -13,9 +14,12 @@ {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "127.0.0.1"}}, {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ - {"uuid": "2", "context_uuid": "admin", "topology_uuid": "admin", "type": "copper/internal"}, - {"uuid": "3", "context_uuid": "admin", "topology_uuid": "admin", "type": "copper/internal"} - ]}}} + {"uuid": "2", "context_uuid": "admin", "topology_uuid": "D2", "type": "copper/internal"}, + {"uuid": "3", "context_uuid": "admin", "topology_uuid": "D2", "type": "copper/internal"} + ]}}}, + {"action": 1, "custom": {"resource_key": "/settings", "resource_value": {"router_id": "10.0.2.1"}}}, + {"action": 1, "custom": {"resource_key": "/endpoints/endpoint[2]/settings", "resource_value": {"remote_router": "10.0.2.2"}}}, + {"action": 1, "custom": {"resource_key": "/endpoints/endpoint[3]/settings", "resource_value": {"remote_router": "10.0.2.3"}}} ]} }, { @@ -24,10 +28,14 @@ {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "127.0.0.1"}}, {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ - {"uuid": "1", "context_uuid": "admin", "topology_uuid": "admin", "type": "copper/internal"}, - {"uuid": "3", "context_uuid": "admin", "topology_uuid": "admin", "type": "copper/internal"}, - {"uuid": "D1", "context_uuid": "admin", "topology_uuid": "inter", "type": "copper/border" } - ]}}} + {"uuid": "1", "context_uuid": "admin", "topology_uuid": "D2", "type": "copper/internal"}, + {"uuid": "3", "context_uuid": "admin", "topology_uuid": "D2", "type": "copper/internal"}, + {"uuid": "D1", "context_uuid": "admin", "topology_uuid": "D2", "type": "copper/border" } + ]}}}, + {"action": 1, "custom": {"resource_key": "/settings", "resource_value": {"router_id": "10.0.2.2"}}}, + {"action": 1, "custom": {"resource_key": "/endpoints/endpoint[1]/settings", "resource_value": {"remote_router": "10.0.2.1"}}}, + {"action": 1, "custom": {"resource_key": "/endpoints/endpoint[3]/settings", "resource_value": {"remote_router": "10.0.2.3"}}}, + {"action": 1, "custom": {"resource_key": "/endpoints/endpoint[D1]/settings", "resource_value": {"remote_router": "10.0.1.4"}}} ]} }, { @@ -36,37 +44,41 @@ {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "127.0.0.1"}}, {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ - {"uuid": "1", "context_uuid": "admin", "topology_uuid": "admin", "type": "copper/internal"}, - {"uuid": "2", "context_uuid": "admin", "topology_uuid": "admin", "type": "copper/internal"}, - {"uuid": "DC2", "context_uuid": "admin", "topology_uuid": "inter", "type": "copper/border" } - ]}}} + {"uuid": "1", "context_uuid": "admin", "topology_uuid": "D2", "type": "copper/internal"}, + {"uuid": "2", "context_uuid": "admin", "topology_uuid": "D2", "type": "copper/internal"}, + {"uuid": "DC2", "context_uuid": "admin", "topology_uuid": "D2", "type": "copper/border" } + ]}}}, + {"action": 1, "custom": {"resource_key": "/settings", "resource_value": {"router_id": "10.0.2.3"}}}, + {"action": 1, "custom": {"resource_key": "/endpoints/endpoint[1]/settings", "resource_value": {"remote_router": "10.0.2.1"}}}, + {"action": 1, "custom": {"resource_key": "/endpoints/endpoint[2]/settings", "resource_value": {"remote_router": "10.0.2.2"}}}, + {"action": 1, "custom": {"resource_key": "/endpoints/endpoint[DC2]/settings", "resource_value": {"remote_router": "10.0.0.2"}}} ]} } ], "links": [ {"link_id": {"link_uuid": {"uuid": "R1@D2/2==R2@D2/1"}}, "link_endpoint_ids": [ - {"device_id": {"device_uuid": {"uuid": "R1@D2"}}, "endpoint_uuid": {"uuid": "2"}}, - {"device_id": {"device_uuid": {"uuid": "R2@D2"}}, "endpoint_uuid": {"uuid": "1"}} + {"device_id": {"device_uuid": {"uuid": "R1@D2"}}, "endpoint_uuid": {"uuid": "2"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D2"}}}, + {"device_id": {"device_uuid": {"uuid": "R2@D2"}}, "endpoint_uuid": {"uuid": "1"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D2"}}} ]}, {"link_id": {"link_uuid": {"uuid": "R1@D2/3==R3@D2/1"}}, "link_endpoint_ids": [ - {"device_id": {"device_uuid": {"uuid": "R1@D2"}}, "endpoint_uuid": {"uuid": "3"}}, - {"device_id": {"device_uuid": {"uuid": "R3@D2"}}, "endpoint_uuid": {"uuid": "1"}} + {"device_id": {"device_uuid": {"uuid": "R1@D2"}}, "endpoint_uuid": {"uuid": "3"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D2"}}}, + {"device_id": {"device_uuid": {"uuid": "R3@D2"}}, "endpoint_uuid": {"uuid": "1"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D2"}}} ]}, {"link_id": {"link_uuid": {"uuid": "R2@D2/1==R1@D2/2"}}, "link_endpoint_ids": [ - {"device_id": {"device_uuid": {"uuid": "R2@D2"}}, "endpoint_uuid": {"uuid": "1"}}, - {"device_id": {"device_uuid": {"uuid": "R1@D2"}}, "endpoint_uuid": {"uuid": "2"}} + {"device_id": {"device_uuid": {"uuid": "R2@D2"}}, "endpoint_uuid": {"uuid": "1"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D2"}}}, + {"device_id": {"device_uuid": {"uuid": "R1@D2"}}, "endpoint_uuid": {"uuid": "2"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D2"}}} ]}, {"link_id": {"link_uuid": {"uuid": "R2@D2/3==R3@D2/2"}}, "link_endpoint_ids": [ - {"device_id": {"device_uuid": {"uuid": "R2@D2"}}, "endpoint_uuid": {"uuid": "3"}}, - {"device_id": {"device_uuid": {"uuid": "R3@D2"}}, "endpoint_uuid": {"uuid": "2"}} + {"device_id": {"device_uuid": {"uuid": "R2@D2"}}, "endpoint_uuid": {"uuid": "3"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D2"}}}, + {"device_id": {"device_uuid": {"uuid": "R3@D2"}}, "endpoint_uuid": {"uuid": "2"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D2"}}} ]}, {"link_id": {"link_uuid": {"uuid": "R3@D2/1==R1@D2/3"}}, "link_endpoint_ids": [ - {"device_id": {"device_uuid": {"uuid": "R3@D2"}}, "endpoint_uuid": {"uuid": "1"}}, - {"device_id": {"device_uuid": {"uuid": "R1@D2"}}, "endpoint_uuid": {"uuid": "3"}} + {"device_id": {"device_uuid": {"uuid": "R3@D2"}}, "endpoint_uuid": {"uuid": "1"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D2"}}}, + {"device_id": {"device_uuid": {"uuid": "R1@D2"}}, "endpoint_uuid": {"uuid": "3"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D2"}}} ]}, {"link_id": {"link_uuid": {"uuid": "R3@D2/2==R2@D2/3"}}, "link_endpoint_ids": [ - {"device_id": {"device_uuid": {"uuid": "R3@D2"}}, "endpoint_uuid": {"uuid": "2"}}, - {"device_id": {"device_uuid": {"uuid": "R2@D2"}}, "endpoint_uuid": {"uuid": "3"}} + {"device_id": {"device_uuid": {"uuid": "R3@D2"}}, "endpoint_uuid": {"uuid": "2"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D2"}}}, + {"device_id": {"device_uuid": {"uuid": "R2@D2"}}, "endpoint_uuid": {"uuid": "3"}, "topology_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "topology_uuid": {"uuid": "D2"}}} ]} ] } diff --git a/src/tests/oeccpsc22/descriptors/inter-domain-service.json b/src/tests/oeccpsc22/descriptors/inter-domain-service.json deleted file mode 100644 index 4b53c433aba16845b703b72a3fe4ef1f9e54c0f2..0000000000000000000000000000000000000000 --- a/src/tests/oeccpsc22/descriptors/inter-domain-service.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "services": [ - { - "service_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "service_uuid": {"uuid": "idc-l2-svc"}}, - "service_type": 2, - "service_status": {"service_status": 1}, - "service_endpoint_ids": [ - {"device_id":{"device_uuid":{"uuid":"DC1"}},"endpoint_uuid":{"uuid":"int"}}, - {"device_id":{"device_uuid":{"uuid":"DC2"}},"endpoint_uuid":{"uuid":"int"}} - ], - "service_constraints": [ - {"sla_capacity": {"capacity_gbps": 10.0}}, - {"sla_latency": {"e2e_latency_ms": 15.2}} - ], - "service_config": {"config_rules": [ - {"action": 1, "custom": {"resource_key": "/settings", "resource_value": {"mtu": 1512, "vlan_id": 300}}}, - {"action": 1, "custom": {"resource_key": "/device[R1@D1]/endpoint[2]/settings", "resource_value": {"remote_router": "10.0.0.2"}}}, - {"action": 1, "custom": {"resource_key": "/device[R1@D1]/endpoint[5]/settings", "resource_value": {"remote_router": "10.0.0.5"}}}, - {"action": 1, "custom": {"resource_key": "/device[R2@D1]/endpoint[1]/settings", "resource_value": {"remote_router": "10.0.0.1"}}}, - {"action": 1, "custom": {"resource_key": "/device[R2@D1]/endpoint[3]/settings", "resource_value": {"remote_router": "10.0.0.3"}}}, - {"action": 1, "custom": {"resource_key": "/device[R2@D1]/endpoint[5]/settings", "resource_value": {"remote_router": "10.0.0.5"}}}, - {"action": 1, "custom": {"resource_key": "/device[R3@D1]/endpoint[2]/settings", "resource_value": {"remote_router": "10.0.0.2"}}}, - {"action": 1, "custom": {"resource_key": "/device[R3@D1]/endpoint[4]/settings", "resource_value": {"remote_router": "10.0.0.4"}}}, - {"action": 1, "custom": {"resource_key": "/device[R4@D1]/endpoint[3]/settings", "resource_value": {"remote_router": "10.0.0.3"}}}, - {"action": 1, "custom": {"resource_key": "/device[R4@D1]/endpoint[5]/settings", "resource_value": {"remote_router": "10.0.0.5"}}}, - {"action": 1, "custom": {"resource_key": "/device[R5@D1]/endpoint[1]/settings", "resource_value": {"remote_router": "10.0.0.1"}}}, - {"action": 1, "custom": {"resource_key": "/device[R5@D1]/endpoint[2]/settings", "resource_value": {"remote_router": "10.0.0.2"}}}, - {"action": 1, "custom": {"resource_key": "/device[R5@D1]/endpoint[4]/settings", "resource_value": {"remote_router": "10.0.0.4"}}} - ]} - } - ] -} diff --git a/src/tests/oeccpsc22/descriptors/inter-domain-slice.json b/src/tests/oeccpsc22/descriptors/inter-domain-slice.json new file mode 100644 index 0000000000000000000000000000000000000000..3651f569c8316be8ad7438d4e41c96021b742443 --- /dev/null +++ b/src/tests/oeccpsc22/descriptors/inter-domain-slice.json @@ -0,0 +1,19 @@ +{ + "slices": [ + { + "slice_id": {"context_id": {"context_uuid": {"uuid": "admin"}}, "slice_uuid": {"uuid": "idc-l2-slice"}}, + "slice_status": {"slice_status": 1}, + "slice_endpoint_ids": [ + {"device_id": {"device_uuid": {"uuid": "DC1"}}, "endpoint_uuid": {"uuid": "int"}}, + {"device_id": {"device_uuid": {"uuid": "DC2"}}, "endpoint_uuid": {"uuid": "int"}} + ], + "slice_constraints": [ + {"sla_capacity": {"capacity_gbps": 10.0}}, + {"sla_latency": {"e2e_latency_ms": 15.2}} + ], + "slice_config": {"config_rules": [ + {"action": 1, "custom": {"resource_key": "/settings", "resource_value": {"mtu": 1512, "vlan_id": 300}}} + ]} + } + ] +} diff --git a/src/tests/oeccpsc22/dump_logs.sh b/src/tests/oeccpsc22/dump_logs.sh index 3a2e51a56b9346a254995d935fd45d8b5e7a1396..db96640b24d1e311b229fd86290ad0732b568b42 100755 --- a/src/tests/oeccpsc22/dump_logs.sh +++ b/src/tests/oeccpsc22/dump_logs.sh @@ -17,29 +17,27 @@ rm -rf tmp/exec echo "Collecting logs for Domain 1..." -mkdir -p tmp/exec/dom1 -kubectl --namespace tfs-dom1 logs deployments/contextservice server > tmp/exec/dom1/context.log -kubectl --namespace tfs-dom1 logs deployments/deviceservice server > tmp/exec/dom1/device.log -kubectl --namespace tfs-dom1 logs deployments/serviceservice server > tmp/exec/dom1/service.log -kubectl --namespace tfs-dom1 logs deployments/pathcompservice frontend > tmp/exec/dom1/pathcomp-frontend.log -kubectl --namespace tfs-dom1 logs deployments/pathcompservice backend > tmp/exec/dom1/pathcomp-backend.log -kubectl --namespace tfs-dom1 logs deployments/sliceservice server > tmp/exec/dom1/slice.log -kubectl --namespace tfs-dom1 logs deployment/computeservice server > tmp/exec/dom1/compute.log -kubectl --namespace tfs-dom1 logs deployment/interdomainservice server > tmp/exec/dom1/interdomain.log -kubectl --namespace tfs-dom1 logs deployment/monitoringservice server > tmp/exec/dom1/monitoring.log +mkdir -p tmp/tfs-dom1/exec +kubectl --namespace tfs-dom1 logs deployments/contextservice server > tmp/tfs-dom1/exec/context.log +kubectl --namespace tfs-dom1 logs deployments/deviceservice server > tmp/tfs-dom1/exec/device.log +kubectl --namespace tfs-dom1 logs deployments/serviceservice server > tmp/tfs-dom1/exec/service.log +kubectl --namespace tfs-dom1 logs deployments/pathcompservice frontend > tmp/tfs-dom1/exec/pathcomp-frontend.log +kubectl --namespace tfs-dom1 logs deployments/pathcompservice backend > tmp/tfs-dom1/exec/pathcomp-backend.log +kubectl --namespace tfs-dom1 logs deployments/sliceservice server > tmp/tfs-dom1/exec/slice.log +kubectl --namespace tfs-dom1 logs deployment/interdomainservice server > tmp/tfs-dom1/exec/interdomain.log +kubectl --namespace tfs-dom1 logs deployment/webuiservice server > tmp/tfs-dom1/exec/webui.log printf "\n" echo "Collecting logs for Domain 2..." -mkdir -p tmp/exec/dom2 -kubectl --namespace tfs-dom2 logs deployments/contextservice server > tmp/exec/dom2/context.log -kubectl --namespace tfs-dom2 logs deployments/deviceservice server > tmp/exec/dom2/device.log -kubectl --namespace tfs-dom2 logs deployments/serviceservice server > tmp/exec/dom2/service.log -kubectl --namespace tfs-dom2 logs deployments/pathcompservice frontend > tmp/exec/dom2/pathcomp-frontend.log -kubectl --namespace tfs-dom2 logs deployments/pathcompservice backend > tmp/exec/dom2/pathcomp-backend.log -kubectl --namespace tfs-dom2 logs deployments/sliceservice server > tmp/exec/dom2/slice.log -kubectl --namespace tfs-dom2 logs deployment/computeservice server > tmp/exec/dom2/compute.log -kubectl --namespace tfs-dom2 logs deployment/interdomainservice server > tmp/exec/dom2/interdomain.log -kubectl --namespace tfs-dom2 logs deployment/monitoringservice server > tmp/exec/dom2/monitoring.log +mkdir -p tmp/tfs-dom2/exec +kubectl --namespace tfs-dom2 logs deployments/contextservice server > tmp/tfs-dom2/exec/context.log +kubectl --namespace tfs-dom2 logs deployments/deviceservice server > tmp/tfs-dom2/exec/device.log +kubectl --namespace tfs-dom2 logs deployments/serviceservice server > tmp/tfs-dom2/exec/service.log +kubectl --namespace tfs-dom2 logs deployments/pathcompservice frontend > tmp/tfs-dom2/exec/pathcomp-frontend.log +kubectl --namespace tfs-dom2 logs deployments/pathcompservice backend > tmp/tfs-dom2/exec/pathcomp-backend.log +kubectl --namespace tfs-dom2 logs deployments/sliceservice server > tmp/tfs-dom2/exec/slice.log +kubectl --namespace tfs-dom2 logs deployment/interdomainservice server > tmp/tfs-dom2/exec/interdomain.log +kubectl --namespace tfs-dom2 logs deployment/webuiservice server > tmp/tfs-dom2/exec/webui.log printf "\n" echo "Done!" diff --git a/src/tests/oeccpsc22/expose_interdomain_dom2.sh b/src/tests/oeccpsc22/expose_interdomain_dom2.sh new file mode 100755 index 0000000000000000000000000000000000000000..c4ab728fe9c1de32e12578fde4e3ce3329409f6b --- /dev/null +++ b/src/tests/oeccpsc22/expose_interdomain_dom2.sh @@ -0,0 +1,21 @@ +#!/bin/bash +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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. + +PATCH='{"data": {"10010": "tfs-dom2/interdomainservice:10010"}}' +kubectl patch configmap nginx-ingress-tcp-microk8s-conf-dom2 --namespace ingress --patch "${PATCH}" + +CONTAINER='{"name": "nginx-ingress-microk8s", "ports": [{"containerPort": 10010, "hostPort": 10010, "protocol": "TCP"}]}' +PATCH='{"spec": {"template": {"spec": {"containers": ['${CONTAINER}']}}}}' +kubectl patch daemonset nginx-ingress-microk8s-controller-dom2 --namespace ingress --patch "${PATCH}" diff --git a/src/tests/oeccpsc22/expose-services-dom1.yaml b/src/tests/oeccpsc22/old/expose-services-dom1.yaml similarity index 90% rename from src/tests/oeccpsc22/expose-services-dom1.yaml rename to src/tests/oeccpsc22/old/expose-services-dom1.yaml index ebfb38fc4781240887fa52163224607da661b952..f7eab1372793290f607422f167e06a85c0026724 100644 --- a/src/tests/oeccpsc22/expose-services-dom1.yaml +++ b/src/tests/oeccpsc22/old/expose-services-dom1.yaml @@ -12,17 +12,17 @@ # See the License for the specific language governing permissions and # limitations under the License. -apiVersion: v1 -kind: Service -metadata: - name: remote-teraflow -spec: - type: ExternalName - externalName: interdomainservice.dom2.svc.cluster.local - ports: - - name: grpc - protocol: TCP - port: 10010 +#apiVersion: v1 +#kind: Service +#metadata: +# name: remote-teraflow +#spec: +# type: ExternalName +# externalName: interdomainservice.dom2.svc.cluster.local +# ports: +# - name: grpc +# protocol: TCP +# port: 10010 #--- #apiVersion: v1 #kind: Service diff --git a/src/tests/oeccpsc22/expose-services-dom2.yaml b/src/tests/oeccpsc22/old/expose-services-dom2.yaml similarity index 90% rename from src/tests/oeccpsc22/expose-services-dom2.yaml rename to src/tests/oeccpsc22/old/expose-services-dom2.yaml index cf04f3f5eb4b029cc4cb03e41df9c8ced23d92f8..3ef4fd8795e76504be001dab5bc562a4edf92df2 100644 --- a/src/tests/oeccpsc22/expose-services-dom2.yaml +++ b/src/tests/oeccpsc22/old/expose-services-dom2.yaml @@ -12,17 +12,17 @@ # See the License for the specific language governing permissions and # limitations under the License. -apiVersion: v1 -kind: Service -metadata: - name: remote-teraflow -spec: - type: ExternalName - externalName: interdomainservice.dom1.svc.cluster.local - ports: - - name: grpc - protocol: TCP - port: 10010 +#apiVersion: v1 +#kind: Service +#metadata: +# name: remote-teraflow +#spec: +# type: ExternalName +# externalName: interdomainservice.dom1.svc.cluster.local +# ports: +# - name: grpc +# protocol: TCP +# port: 10010 #--- #apiVersion: v1 #kind: Service diff --git a/src/tests/oeccpsc22/tests/Objects_Domain_1.py b/src/tests/oeccpsc22/tests/Objects_Domain_1.py index 2f35aa76eea8f7adfc89011cbc4822daecbd1d14..19c9324d232ef927ec7ab6ce8419eb5cfa9743d4 100644 --- a/src/tests/oeccpsc22/tests/Objects_Domain_1.py +++ b/src/tests/oeccpsc22/tests/Objects_Domain_1.py @@ -16,6 +16,7 @@ from common.Constants import DEFAULT_CONTEXT_NAME, DEFAULT_TOPOLOGY_NAME from common.tools.object_factory.Context import json_context, json_context_id from common.tools.object_factory.Device import ( json_device_emulated_connect_rules, json_device_emulated_packet_router_disabled, json_device_id) +from common.tools.object_factory.EndPoint import json_endpoint_descriptor from common.tools.object_factory.Link import json_link, json_link_id from common.tools.object_factory.Topology import json_topology, json_topology_id from .Tools import get_link_uuid, json_endpoint_ids @@ -32,12 +33,24 @@ D1_TOPOLOGY = json_topology(DEFAULT_TOPOLOGY_NAME, context_id=D1_CONTEXT_ID) # Assume all devices have the same architecture of endpoints D1_DEVICE_ENDPOINT_DEFS = [ # Trunk ports - ('1/1', '25Gbps', []), ('1/2', '25Gbps', []), ('1/3', '25Gbps', []), ('1/4', '25Gbps', []), + json_endpoint_descriptor('1/1', '25Gbps'), + json_endpoint_descriptor('1/2', '25Gbps'), + json_endpoint_descriptor('1/3', '25Gbps'), + json_endpoint_descriptor('1/4', '25Gbps'), + # Inter-domain ports - ('2/1', '100Gbps', []), ('2/2', '100Gbps', []), + json_endpoint_descriptor('2/1', '100Gbps'), + json_endpoint_descriptor('2/2', '100Gbps'), + # Access ports - ('3/1', '10Gbps', []), ('3/2', '10Gbps', []), ('3/3', '10Gbps', []), ('3/4', '10Gbps', []), - ('3/5', '10Gbps', []), ('3/6', '10Gbps', []), ('3/7', '10Gbps', []), ('3/8', '10Gbps', []), + json_endpoint_descriptor('3/1', '10Gbps'), + json_endpoint_descriptor('3/2', '10Gbps'), + json_endpoint_descriptor('3/3', '10Gbps'), + json_endpoint_descriptor('3/4', '10Gbps'), + json_endpoint_descriptor('3/5', '10Gbps'), + json_endpoint_descriptor('3/6', '10Gbps'), + json_endpoint_descriptor('3/7', '10Gbps'), + json_endpoint_descriptor('3/8', '10Gbps'), ] D1_DEVICE_D1R1_UUID = 'R1@D1' diff --git a/src/tests/oeccpsc22/tests/Objects_Domain_2.py b/src/tests/oeccpsc22/tests/Objects_Domain_2.py index 0e5065c3b6ec3e1d44a16f0ee8231aca28e2c2d1..7235290b3823eb6f99b7e8246071623381612a40 100644 --- a/src/tests/oeccpsc22/tests/Objects_Domain_2.py +++ b/src/tests/oeccpsc22/tests/Objects_Domain_2.py @@ -16,6 +16,7 @@ from common.Constants import DEFAULT_CONTEXT_NAME, DEFAULT_TOPOLOGY_NAME from common.tools.object_factory.Context import json_context, json_context_id from common.tools.object_factory.Device import ( json_device_emulated_connect_rules, json_device_emulated_packet_router_disabled, json_device_id) +from common.tools.object_factory.EndPoint import json_endpoint_descriptor from common.tools.object_factory.Link import json_link, json_link_id from common.tools.object_factory.Topology import json_topology, json_topology_id from .Tools import get_link_uuid, json_endpoint_ids @@ -32,12 +33,24 @@ D2_TOPOLOGY = json_topology(DEFAULT_TOPOLOGY_NAME, context_id=D2_CONTEXT_ID) # Assume all devices have the same architecture of endpoints D2_DEVICE_ENDPOINT_DEFS = [ # Trunk ports - ('1/1', '25Gbps', []), ('1/2', '25Gbps', []), ('1/3', '25Gbps', []), ('1/4', '25Gbps', []), + json_endpoint_descriptor('1/1', '25Gbps'), + json_endpoint_descriptor('1/2', '25Gbps'), + json_endpoint_descriptor('1/3', '25Gbps'), + json_endpoint_descriptor('1/4', '25Gbps'), + # Inter-domain ports - ('2/1', '100Gbps', []), ('2/2', '100Gbps', []), + json_endpoint_descriptor('2/1', '100Gbps'), + json_endpoint_descriptor('2/2', '100Gbps'), + # Access ports - ('3/1', '10Gbps', []), ('3/2', '10Gbps', []), ('3/3', '10Gbps', []), ('3/4', '10Gbps', []), - ('3/5', '10Gbps', []), ('3/6', '10Gbps', []), ('3/7', '10Gbps', []), ('3/8', '10Gbps', []), + json_endpoint_descriptor('3/1', '10Gbps'), + json_endpoint_descriptor('3/2', '10Gbps'), + json_endpoint_descriptor('3/3', '10Gbps'), + json_endpoint_descriptor('3/4', '10Gbps'), + json_endpoint_descriptor('3/5', '10Gbps'), + json_endpoint_descriptor('3/6', '10Gbps'), + json_endpoint_descriptor('3/7', '10Gbps'), + json_endpoint_descriptor('3/8', '10Gbps'), ] D2_DEVICE_D2R1_UUID = 'R1@D2' diff --git a/src/tests/oeccpsc22/tests/Tools.py b/src/tests/oeccpsc22/tests/Tools.py index 30333b6f47b31bda76626545b78aaa3c96bff7c0..483090f8b8c0e1524bbdf98a5f3208b485c9ddaa 100644 --- a/src/tests/oeccpsc22/tests/Tools.py +++ b/src/tests/oeccpsc22/tests/Tools.py @@ -12,14 +12,14 @@ # See the License for the specific language governing permissions and # limitations under the License. -from typing import Dict, List, Tuple +from typing import Dict, List from common.tools.object_factory.EndPoint import json_endpoint_id -def json_endpoint_ids(device_id : Dict, endpoint_descriptors : List[Tuple[str, str, List[int]]]): +def json_endpoint_ids(device_id : Dict, endpoint_descriptors : List[Dict]): return { device_id['device_uuid']['uuid']: { - ep_uuid: json_endpoint_id(device_id, ep_uuid, topology_id=None) - for ep_uuid, _, _ in endpoint_descriptors + ep_data['uuid']: json_endpoint_id(device_id, ep_data['uuid'], topology_id=None) + for ep_data in endpoint_descriptors } } diff --git a/src/tests/ofc22/deploy_specs.sh b/src/tests/ofc22/deploy_specs.sh index 6c3d9db662a8232f1fcccf3835b98d69571b6337..0c1f57387ee66ed9809695d14a9a8dad7ccda4c5 100755 --- a/src/tests/ofc22/deploy_specs.sh +++ b/src/tests/ofc22/deploy_specs.sh @@ -20,7 +20,24 @@ export TFS_REGISTRY_IMAGES="http://localhost:32000/tfs/" # Set the list of components, separated by spaces, you want to build images for, and deploy. -export TFS_COMPONENTS="context device automation monitoring pathcomp service slice compute webui" +#export TFS_COMPONENTS="context device pathcomp service slice compute webui load_generator" +export TFS_COMPONENTS="context device pathcomp service slice compute webui" + +# Uncomment to activate Monitoring +export TFS_COMPONENTS="${TFS_COMPONENTS} monitoring" + +# Uncomment to activate Automation and Policy Manager +#export TFS_COMPONENTS="${TFS_COMPONENTS} automation policy" +export TFS_COMPONENTS="${TFS_COMPONENTS} automation" + +# Uncomment to activate Optical CyberSecurity +#export TFS_COMPONENTS="${TFS_COMPONENTS} dbscanserving opticalattackmitigator opticalattackdetector opticalattackmanager" + +# Uncomment to activate L3 CyberSecurity +#export TFS_COMPONENTS="${TFS_COMPONENTS} l3_attackmitigator l3_centralizedattackdetector" + +# Uncomment to activate TE +#export TFS_COMPONENTS="${TFS_COMPONENTS} te" # Set the tag you want to use for your images. export TFS_IMAGE_TAG="dev" @@ -31,6 +48,12 @@ export TFS_K8S_NAMESPACE="tfs" # Set additional manifest files to be applied after the deployment export TFS_EXTRA_MANIFESTS="manifests/nginx_ingress_http.yaml" +# Uncomment to monitor performance of components +export TFS_EXTRA_MANIFESTS="${TFS_EXTRA_MANIFESTS} manifests/servicemonitors.yaml" + +# Uncomment when deploying Optical CyberSecurity +#export TFS_EXTRA_MANIFESTS="${TFS_EXTRA_MANIFESTS} manifests/cachingservice.yaml" + # Set the new Grafana admin password export TFS_GRAFANA_PASSWORD="admin123+" @@ -43,6 +66,12 @@ export TFS_SKIP_BUILD="" # Set the namespace where CockroackDB will be deployed. export CRDB_NAMESPACE="crdb" +# Set the external port CockroackDB Postgre SQL interface will be exposed to. +export CRDB_EXT_PORT_SQL="26257" + +# Set the external port CockroackDB HTTP Mgmt GUI interface will be exposed to. +export CRDB_EXT_PORT_HTTP="8081" + # Set the database username to be used by Context. export CRDB_USERNAME="tfs" @@ -57,7 +86,7 @@ export CRDB_DATABASE="tfs" export CRDB_DEPLOY_MODE="single" # Disable flag for dropping database, if it exists. -export CRDB_DROP_DATABASE_IF_EXISTS="" +export CRDB_DROP_DATABASE_IF_EXISTS="YES" # Disable flag for re-deploying CockroachDB from scratch. export CRDB_REDEPLOY="" @@ -68,6 +97,12 @@ export CRDB_REDEPLOY="" # Set the namespace where NATS will be deployed. export NATS_NAMESPACE="nats" +# Set the external port NATS Client interface will be exposed to. +export NATS_EXT_PORT_CLIENT="4222" + +# Set the external port NATS HTTP Mgmt GUI interface will be exposed to. +export NATS_EXT_PORT_HTTP="8222" + # Disable flag for re-deploying NATS from scratch. export NATS_REDEPLOY="" @@ -77,6 +112,15 @@ export NATS_REDEPLOY="" # Set the namespace where QuestDB will be deployed. export QDB_NAMESPACE="qdb" +# Set the external port QuestDB Postgre SQL interface will be exposed to. +export QDB_EXT_PORT_SQL="8812" + +# Set the external port QuestDB Influx Line Protocol interface will be exposed to. +export QDB_EXT_PORT_ILP="9009" + +# Set the external port QuestDB HTTP Mgmt GUI interface will be exposed to. +export QDB_EXT_PORT_HTTP="9000" + # Set the database username to be used for QuestDB. export QDB_USERNAME="admin" @@ -86,8 +130,20 @@ export QDB_PASSWORD="quest" # Set the table name to be used by Monitoring for KPIs. export QDB_TABLE_MONITORING_KPIS="tfs_monitoring_kpis" +# Set the table name to be used by Slice for plotting groups. +export QDB_TABLE_SLICE_GROUPS="tfs_slice_groups" + # Disable flag for dropping tables if they exist. -export QDB_DROP_TABLES_IF_EXIST="" +export QDB_DROP_TABLES_IF_EXIST="YES" # Disable flag for re-deploying QuestDB from scratch. export QDB_REDEPLOY="" + + +# ----- K8s Observability ------------------------------------------------------ + +# Set the external port Prometheus Mgmt HTTP GUI interface will be exposed to. +export PROM_EXT_PORT_HTTP="9090" + +# Set the external port Grafana HTTP Dashboards will be exposed to. +export GRAF_EXT_PORT_HTTP="3000" diff --git a/src/tests/ofc22/descriptors_emulated.json b/src/tests/ofc22/descriptors_emulated.json index b68b9636d58d9c80c4774e4ade557f83796ac5b5..e0ac8b3ecee916fa1c7e57adcd5d32f0b180924b 100644 --- a/src/tests/ofc22/descriptors_emulated.json +++ b/src/tests/ofc22/descriptors_emulated.json @@ -8,55 +8,63 @@ "devices": [ { "device_id": {"device_uuid": {"uuid": "R1-EMU"}}, "device_type": "emu-packet-router", - "device_operational_status": 1, "device_drivers": [0], "device_endpoints": [], + "device_operational_status": 2, "device_drivers": [0], "device_endpoints": [], "device_config": {"config_rules": [ {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "127.0.0.1"}}, {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ {"uuid": "13/0/0", "type": "optical", "sample_types": []}, {"uuid": "13/1/2", "type": "copper", "sample_types": [101, 102, 201, 202]} - ]}}} + ]}}}, + {"action": 1, "custom": {"resource_key": "/interface[13/0/0]/settings", "resource_value": {"name": "13/0/0", "enabled": true}}}, + {"action": 1, "custom": {"resource_key": "/interface[13/1/2]/settings", "resource_value": {"name": "13/1/2", "enabled": true}}} ]} }, { "device_id": {"device_uuid": {"uuid": "R2-EMU"}}, "device_type": "emu-packet-router", - "device_operational_status": 1, "device_drivers": [0], "device_endpoints": [], + "device_operational_status": 2, "device_drivers": [0], "device_endpoints": [], "device_config": {"config_rules": [ {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "127.0.0.1"}}, {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ {"uuid": "13/0/0", "type": "optical", "sample_types": []}, {"uuid": "13/1/2", "type": "copper", "sample_types": [101, 102, 201, 202]} - ]}}} + ]}}}, + {"action": 1, "custom": {"resource_key": "/interface[13/0/0]/settings", "resource_value": {"name": "13/0/0", "enabled": true}}}, + {"action": 1, "custom": {"resource_key": "/interface[13/1/2]/settings", "resource_value": {"name": "13/1/2", "enabled": true}}} ]} }, { "device_id": {"device_uuid": {"uuid": "R3-EMU"}}, "device_type": "emu-packet-router", - "device_operational_status": 1, "device_drivers": [0], "device_endpoints": [], + "device_operational_status": 2, "device_drivers": [0], "device_endpoints": [], "device_config": {"config_rules": [ {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "127.0.0.1"}}, {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ {"uuid": "13/0/0", "type": "optical", "sample_types": []}, {"uuid": "13/1/2", "type": "copper", "sample_types": [101, 102, 201, 202]} - ]}}} + ]}}}, + {"action": 1, "custom": {"resource_key": "/interface[13/0/0]/settings", "resource_value": {"name": "13/0/0", "enabled": true}}}, + {"action": 1, "custom": {"resource_key": "/interface[13/1/2]/settings", "resource_value": {"name": "13/1/2", "enabled": true}}} ]} }, { "device_id": {"device_uuid": {"uuid": "R4-EMU"}}, "device_type": "emu-packet-router", - "device_operational_status": 1, "device_drivers": [0], "device_endpoints": [], + "device_operational_status": 2, "device_drivers": [0], "device_endpoints": [], "device_config": {"config_rules": [ {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "127.0.0.1"}}, {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, {"action": 1, "custom": {"resource_key": "_connect/settings", "resource_value": {"endpoints": [ {"uuid": "13/0/0", "type": "optical", "sample_types": []}, {"uuid": "13/1/2", "type": "copper", "sample_types": [101, 102, 201, 202]} - ]}}} + ]}}}, + {"action": 1, "custom": {"resource_key": "/interface[13/0/0]/settings", "resource_value": {"name": "13/0/0", "enabled": true}}}, + {"action": 1, "custom": {"resource_key": "/interface[13/1/2]/settings", "resource_value": {"name": "13/1/2", "enabled": true}}} ]} }, { "device_id": {"device_uuid": {"uuid": "O1-OLS"}}, "device_type": "emu-open-line-system", - "device_operational_status": 1, "device_drivers": [0], "device_endpoints": [], + "device_operational_status": 2, "device_drivers": [0], "device_endpoints": [], "device_config": {"config_rules": [ {"action": 1, "custom": {"resource_key": "_connect/address", "resource_value": "127.0.0.1"}}, {"action": 1, "custom": {"resource_key": "_connect/port", "resource_value": "0"}}, @@ -65,7 +73,11 @@ {"uuid": "eb287d83-f05e-53ec-ab5a-adf6bd2b5418", "type": "optical", "sample_types": []}, {"uuid": "0ef74f99-1acc-57bd-ab9d-4b958b06c513", "type": "optical", "sample_types": []}, {"uuid": "50296d99-58cc-5ce7-82f5-fc8ee4eec2ec", "type": "optical", "sample_types": []} - ]}}} + ]}}}, + {"action": 1, "custom": {"resource_key": "/interface[aade6001-f00b-5e2f-a357-6a0a9d3de870]/settings", "resource_value": {"name": "aade6001-f00b-5e2f-a357-6a0a9d3de870", "enabled": true}}}, + {"action": 1, "custom": {"resource_key": "/interface[eb287d83-f05e-53ec-ab5a-adf6bd2b5418]/settings", "resource_value": {"name": "eb287d83-f05e-53ec-ab5a-adf6bd2b5418", "enabled": true}}}, + {"action": 1, "custom": {"resource_key": "/interface[0ef74f99-1acc-57bd-ab9d-4b958b06c513]/settings", "resource_value": {"name": "0ef74f99-1acc-57bd-ab9d-4b958b06c513", "enabled": true}}}, + {"action": 1, "custom": {"resource_key": "/interface[50296d99-58cc-5ce7-82f5-fc8ee4eec2ec]/settings", "resource_value": {"name": "50296d99-58cc-5ce7-82f5-fc8ee4eec2ec", "enabled": true}}} ]} } ], diff --git a/src/tests/ofc22/tests/ObjectsXr.py b/src/tests/ofc22/tests/ObjectsXr.py index 9871a50b8181b53cfbb767be76a1a0978eaf1d27..89c6cb7ce56644332af046606b6b5774afeb4e42 100644 --- a/src/tests/ofc22/tests/ObjectsXr.py +++ b/src/tests/ofc22/tests/ObjectsXr.py @@ -18,7 +18,7 @@ from common.tools.object_factory.Context import json_context, json_context_id from common.tools.object_factory.Device import ( json_device_connect_rules, json_device_emulated_connect_rules, json_device_emulated_packet_router_disabled, json_device_emulated_tapi_disabled, json_device_id, json_device_packetrouter_disabled, json_device_tapi_disabled) -from common.tools.object_factory.EndPoint import json_endpoint, json_endpoint_id +from common.tools.object_factory.EndPoint import json_endpoint, json_endpoint_descriptor, json_endpoint_id from common.tools.object_factory.Link import json_link, json_link_id from common.tools.object_factory.Topology import json_topology, json_topology_id from common.proto.kpi_sample_types_pb2 import KpiSampleType @@ -63,16 +63,17 @@ DEVICE_X1_PORT = 443 #USE_REAL_DEVICES = False # Uncomment to force to use emulated devices -def json_endpoint_ids(device_id : Dict, endpoint_descriptors : List[Tuple[str, str, List[int]]]): +def json_endpoint_ids(device_id : Dict, endpoint_descriptors : List[Dict]): return [ - json_endpoint_id(device_id, ep_uuid, topology_id=None) - for ep_uuid, _, _ in endpoint_descriptors + json_endpoint_id(device_id, ep_data['uuid'], topology_id=None) + for ep_data in endpoint_descriptors ] -def json_endpoints(device_id : Dict, endpoint_descriptors : List[Tuple[str, str, List[int]]]): +def json_endpoints(device_id : Dict, endpoint_descriptors : List[Dict]): return [ - json_endpoint(device_id, ep_uuid, ep_type, topology_id=None, kpi_sample_types=ep_sample_types) - for ep_uuid, ep_type, ep_sample_types in endpoint_descriptors + json_endpoint( + device_id, ep_data['uuid'], ep_data['type'], topology_id=None, kpi_sample_types=ep_data['sample_types']) + for ep_data in endpoint_descriptors ] def get_link_uuid(a_device_id : Dict, a_endpoint_id : Dict, z_device_id : Dict, z_endpoint_id : Dict) -> str: @@ -88,7 +89,8 @@ if not USE_REAL_DEVICES: DEVICE_R1_UUID = 'R1-EMU' DEVICE_R1_TIMEOUT = 120 -DEVICE_R1_ENDPOINT_DEFS = [('13/0/0', 'optical', []), ('13/1/2', 'copper', PACKET_PORT_SAMPLE_TYPES)] +DEVICE_R1_ENDPOINT_DEFS = [json_endpoint_descriptor('13/0/0', 'optical'), + json_endpoint_descriptor('13/1/2', 'copper', sample_types=PACKET_PORT_SAMPLE_TYPES)] DEVICE_R1_ID = json_device_id(DEVICE_R1_UUID) #DEVICE_R1_ENDPOINTS = json_endpoints(DEVICE_R1_ID, DEVICE_R1_ENDPOINT_DEFS) DEVICE_R1_ENDPOINT_IDS = json_endpoint_ids(DEVICE_R1_ID, DEVICE_R1_ENDPOINT_DEFS) @@ -103,7 +105,8 @@ DEVICE_R1_CONNECT_RULES = json_device_connect_rules(DEVICE_R1_ADDRESS, DEVICE_R1 DEVICE_R2_UUID = 'R2-EMU' -DEVICE_R2_ENDPOINT_DEFS = [('13/0/0', 'optical', []), ('13/1/2', 'copper', PACKET_PORT_SAMPLE_TYPES)] +DEVICE_R2_ENDPOINT_DEFS = [json_endpoint_descriptor('13/0/0', 'optical'), + json_endpoint_descriptor('13/1/2', 'copper', sample_types=PACKET_PORT_SAMPLE_TYPES)] DEVICE_R2_ID = json_device_id(DEVICE_R2_UUID) #DEVICE_R2_ENDPOINTS = json_endpoints(DEVICE_R2_ID, DEVICE_R2_ENDPOINT_DEFS) DEVICE_R2_ENDPOINT_IDS = json_endpoint_ids(DEVICE_R2_ID, DEVICE_R2_ENDPOINT_DEFS) @@ -115,7 +118,8 @@ DEVICE_R2_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_R2_ENDPOINT_ DEVICE_R3_UUID = 'R3-EMU' DEVICE_R3_TIMEOUT = 120 -DEVICE_R3_ENDPOINT_DEFS = [('13/0/0', 'optical', []), ('13/1/2', 'copper', PACKET_PORT_SAMPLE_TYPES)] +DEVICE_R3_ENDPOINT_DEFS = [json_endpoint_descriptor('13/0/0', 'optical'), + json_endpoint_descriptor('13/1/2', 'copper', sample_types=PACKET_PORT_SAMPLE_TYPES)] DEVICE_R3_ID = json_device_id(DEVICE_R3_UUID) #DEVICE_R3_ENDPOINTS = json_endpoints(DEVICE_R3_ID, DEVICE_R3_ENDPOINT_DEFS) DEVICE_R3_ENDPOINT_IDS = json_endpoint_ids(DEVICE_R3_ID, DEVICE_R3_ENDPOINT_DEFS) @@ -130,7 +134,8 @@ DEVICE_R3_CONNECT_RULES = json_device_connect_rules(DEVICE_R3_ADDRESS, DEVICE_R3 DEVICE_R4_UUID = 'R4-EMU' -DEVICE_R4_ENDPOINT_DEFS = [('13/0/0', 'optical', []), ('13/1/2', 'copper', PACKET_PORT_SAMPLE_TYPES)] +DEVICE_R4_ENDPOINT_DEFS = [json_endpoint_descriptor('13/0/0', 'optical'), + json_endpoint_descriptor('13/1/2', 'copper', sample_types=PACKET_PORT_SAMPLE_TYPES)] DEVICE_R4_ID = json_device_id(DEVICE_R4_UUID) #DEVICE_R4_ENDPOINTS = json_endpoints(DEVICE_R4_ID, DEVICE_R4_ENDPOINT_DEFS) DEVICE_R4_ENDPOINT_IDS = json_endpoint_ids(DEVICE_R4_ID, DEVICE_R4_ENDPOINT_DEFS) @@ -143,12 +148,12 @@ DEVICE_R4_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_R4_ENDPOINT_ DEVICE_X1_UUID = 'X1-XR-CONSTELLATION' DEVICE_X1_TIMEOUT = 120 DEVICE_X1_ENDPOINT_DEFS = [ - ('XR HUB 1|XR-T1', 'optical', []), - ('XR HUB 1|XR-T2', 'optical', []), - ('XR HUB 1|XR-T3', 'optical', []), - ('XR HUB 1|XR-T4', 'optical', []), - ('XR LEAF 1|XR-T1', 'optical', []), - ('XR LEAF 2|XR-T1', 'optical', []), + json_endpoint_descriptor('XR HUB 1|XR-T1', 'optical'), + json_endpoint_descriptor('XR HUB 1|XR-T2', 'optical'), + json_endpoint_descriptor('XR HUB 1|XR-T3', 'optical'), + json_endpoint_descriptor('XR HUB 1|XR-T4', 'optical'), + json_endpoint_descriptor('XR LEAF 1|XR-T1', 'optical'), + json_endpoint_descriptor('XR LEAF 2|XR-T1', 'optical'), ] DEVICE_X1_ID = json_device_id(DEVICE_X1_UUID) DEVICE_X1 = json_device_tapi_disabled(DEVICE_X1_UUID) diff --git a/src/tests/ofc22/tests/test_functional_bootstrap.py b/src/tests/ofc22/tests/test_functional_bootstrap.py index ca1882aaa22ff1ac20d0b1927199a6594a6c441a..f149604929bfa305377545b2fdab50751dded7a1 100644 --- a/src/tests/ofc22/tests/test_functional_bootstrap.py +++ b/src/tests/ofc22/tests/test_functional_bootstrap.py @@ -14,7 +14,7 @@ import logging, time from common.Constants import DEFAULT_CONTEXT_NAME -from common.proto.context_pb2 import ContextId, Empty +from common.proto.context_pb2 import ContextId, DeviceOperationalStatusEnum, Empty from common.proto.monitoring_pb2 import KpiDescriptorList from common.tools.descriptor.Loader import DescriptorLoader, check_descriptor_load_results, validate_empty_scenario from common.tools.object_factory.Context import json_context_id @@ -46,6 +46,27 @@ def test_scenario_bootstrap( assert len(response.service_ids) == 0 assert len(response.slice_ids) == 0 +def test_scenario_devices_enabled( + context_client : ContextClient, # pylint: disable=redefined-outer-name +) -> None: + """ + This test validates that the devices are enabled. + """ + DEVICE_OP_STATUS_ENABLED = DeviceOperationalStatusEnum.DEVICEOPERATIONALSTATUS_ENABLED + + num_devices = -1 + num_devices_enabled, num_retry = 0, 0 + while (num_devices != num_devices_enabled) and (num_retry < 10): + time.sleep(1.0) + response = context_client.ListDevices(Empty()) + num_devices = len(response.devices) + num_devices_enabled = 0 + for device in response.devices: + if device.device_operational_status != DEVICE_OP_STATUS_ENABLED: continue + num_devices_enabled += 1 + LOGGER.info('Num Devices enabled: {:d}/{:d}'.format(num_devices_enabled, num_devices)) + num_retry += 1 + assert num_devices_enabled == num_devices def test_scenario_kpis_created( context_client : ContextClient, # pylint: disable=redefined-outer-name @@ -67,7 +88,7 @@ def test_scenario_kpis_created( LOGGER.info('Num KPIs expected: {:d}'.format(num_kpis_expected)) num_kpis_created, num_retry = 0, 0 - while (num_kpis_created != num_kpis_expected) and (num_retry < 5): + while (num_kpis_created != num_kpis_expected) and (num_retry < 10): response: KpiDescriptorList = monitoring_client.GetKpiDescriptorList(Empty()) num_kpis_created = len(response.kpi_descriptor_list) LOGGER.info('Num KPIs created: {:d}'.format(num_kpis_created)) diff --git a/src/tests/p4/README.md b/src/tests/p4/README.md new file mode 100644 index 0000000000000000000000000000000000000000..43920d14d5e99214bb2ad8418cc4babcae5be91c --- /dev/null +++ b/src/tests/p4/README.md @@ -0,0 +1,41 @@ +# Tests for P4 functionality of TeraFlowSDN + +This directory contains the necessary scripts and configurations to run tests for the P4 functionality of TFS. + +## Basic scripts + +To run the experiments you should use the five scripts in the following order: +``` +setup.sh +run_test_01_bootstrap.sh +run_test_02_create_service.sh +run_test_03_delete_service.sh +run_test_04_cleanup.sh +``` + +The setup script copies the necessary artifacts to the SBI service pod. It should be run just once, after a fresh install of TFS. +The bootstrap script registers the context, topology, links and, devices to TFS. +The create service scripts establishes a service between two endpoints. +The delete service script delete the aforementioned service. +Cleanup script deletes all the objects (context, topology, links, devices) from TFS. + +## Objects file + +The above bash scripts make use of the corresponding python scripts found under `./tests/` directory. +More important is the `./tests/Objects.py` file, which contains the definition of the Context, Topology, Devices, Links, Services. **This is the file that need changes in case of a new topology.** + +Check the `./tests/Objects.py` file before running the experiment to make sure that the switches details are correct (ip address, port, etc.) + +## Mininet topologies + +In the `./mininet/` directory there are different mininet topology examples. The current `./tests/Objects.py` file corresponds to the `./mininet/8switch3path.py` topology. Additionally there is a backup file `./tests/topologies/6switchObjects.py` which corresponds to the `./mininet/6switch2path.py`. + +## P4 artifacts + +In the `./p4/` directory there are the compiled p4 artifacts that contain the pipeline that will be pushed to the p4 switch, along with the p4-runtime definitions. +The `./setup.sh` script copies from this directory. So if you need to change p4 program, make sure to put the compiled artifacts here. + +## Latency probe + +In the `./probe/` directory there is a little program which calculates latency between two hosts in mininet and sends them to the Monitoring component. For specific instructions, refer to the corresponding `./probe/README.md` file. + diff --git a/src/tests/p4/mininet/8switch3path.py b/src/tests/p4/mininet/8switch3path.py new file mode 100755 index 0000000000000000000000000000000000000000..9a41e53fb60514412d8cd1cecf451b132663d8f3 --- /dev/null +++ b/src/tests/p4/mininet/8switch3path.py @@ -0,0 +1,127 @@ +#!/usr/bin/python + +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# Copyright 2019-present Open Networking Foundation +# +# 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 argparse + +from mininet.cli import CLI +from mininet.log import setLogLevel +from mininet.net import Mininet +from mininet.node import Host +from mininet.topo import Topo +from stratum import StratumBmv2Switch + +CPU_PORT = 255 + +class IPv4Host(Host): + """Host that can be configured with an IPv4 gateway (default route). + """ + + def config(self, mac=None, ip=None, defaultRoute=None, lo='up', gw=None, + **_params): + super(IPv4Host, self).config(mac, ip, defaultRoute, lo, **_params) + self.cmd('ip -4 addr flush dev %s' % self.defaultIntf()) + self.cmd('ip -6 addr flush dev %s' % self.defaultIntf()) + self.cmd('ip -4 link set up %s' % self.defaultIntf()) + self.cmd('ip -4 addr add %s dev %s' % (ip, self.defaultIntf())) + if gw: + self.cmd('ip -4 route add default via %s' % gw) + # Disable offload + for attr in ["rx", "tx", "sg"]: + cmd = "/sbin/ethtool --offload %s %s off" % ( + self.defaultIntf(), attr) + self.cmd(cmd) + + def updateIP(): + return ip.split('/')[0] + + self.defaultIntf().updateIP = updateIP + +class TutorialTopo(Topo): + """Basic Server-Client topology with IPv4 hosts""" + + def __init__(self, *args, **kwargs): + Topo.__init__(self, *args, **kwargs) + + # Switches + # gRPC port 50001 + switch1 = self.addSwitch('switch1', cls=StratumBmv2Switch, cpuport=CPU_PORT) + # gRPC port 50002 + switch2 = self.addSwitch('switch2', cls=StratumBmv2Switch, cpuport=CPU_PORT) + # gRPC port 50003 + switch3 = self.addSwitch('switch3', cls=StratumBmv2Switch, cpuport=CPU_PORT) + # gRPC port 50004 + switch4 = self.addSwitch('switch4', cls=StratumBmv2Switch, cpuport=CPU_PORT) + # gRPC port 50005 + switch5 = self.addSwitch('switch5', cls=StratumBmv2Switch, cpuport=CPU_PORT) + # gRPC port 50006 + switch6 = self.addSwitch('switch6', cls=StratumBmv2Switch, cpuport=CPU_PORT) + # gRPC port 50007 + switch7 = self.addSwitch('switch7', cls=StratumBmv2Switch, cpuport=CPU_PORT) + # gRPC port 50008 + switch8 = self.addSwitch('switch8', cls=StratumBmv2Switch, cpuport=CPU_PORT) + + # Hosts + client = self.addHost('client', cls=IPv4Host, mac="aa:bb:cc:dd:ee:11", + ip='10.0.0.1/24', gw='10.0.0.100') + server = self.addHost('server', cls=IPv4Host, mac="aa:bb:cc:dd:ee:22", + ip='10.0.0.2/24', gw='10.0.0.100') + + # Switch links + self.addLink(switch1, switch2) # Switch1:port 1, Switch2:port 1 + self.addLink(switch1, switch4) # Switch1:port 2, Switch4:port 1 + self.addLink(switch1, switch6) # Switch1:port 3, Switch6:port 1 + + self.addLink(switch2, switch3) # Switch2:port 2, Switch3:port 1 + self.addLink(switch4, switch5) # Switch4:port 2, Switch5:port 1 + self.addLink(switch6, switch7) # Switch6:port 2, Switch7:port 1 + + self.addLink(switch3, switch8) # Switch3:port 2, Switch8:port 1 + self.addLink(switch5, switch8) # Switch5:port 2, Switch8:port 2 + self.addLink(switch7, switch8) # Switch7:port 2, Switch8:port 3 + + # Host links + self.addLink(client, switch1) # Switch1: port 4 + self.addLink(server, switch8) # Switch8: port 4 + +def main(): + net = Mininet(topo=TutorialTopo(), controller=None) + net.start() + + #get hosts + client = net.hosts[0] + client.setARP('10.0.0.2', 'aa:bb:cc:dd:ee:22') + server = net.hosts[1] + server.setARP('10.0.0.1', 'aa:bb:cc:dd:ee:11') + + CLI(net) + net.stop() + print '#' * 80 + print 'ATTENTION: Mininet was stopped! Perhaps accidentally?' + print 'No worries, it will restart automatically in a few seconds...' + print 'To access again the Mininet CLI, use `make mn-cli`' + print 'To detach from the CLI (without stopping), press Ctrl-D' + print 'To permanently quit Mininet, use `make stop`' + print '#' * 80 + + +if __name__ == "__main__": + parser = argparse.ArgumentParser( + description='Mininet topology script for 2x2 fabric with stratum_bmv2 and IPv4 hosts') + args = parser.parse_args() + setLogLevel('info') + + main() diff --git a/src/tests/p4/probe/README.md b/src/tests/p4/probe/README.md new file mode 100644 index 0000000000000000000000000000000000000000..bfc1e4731dc44a61b32ad5d75093f4aca1f57dbf --- /dev/null +++ b/src/tests/p4/probe/README.md @@ -0,0 +1,40 @@ +# Probe for P4 mininet devices + +Step 1: +To copy the necessary files, run: + +``` +probe-tfs/deploy.sh +``` + +Step 2: +To connect to the mininet docker, run: + +``` +probe-tfs/connect-to-mininet.sh +``` + +Step 3: +From inside the mininet docker, run: + +``` +./tfsagent +``` + +Step 4 (on another terminal): +Establish the service: +``` +src/tests/p4/run_test_02_create_service.sh +``` + +Step 5: +From inside mininet (make mn-cli): +``` +client ./tfsping +``` + +Step 6 (on another terminal): +To check the latest monitoring samples, run +``` +python src/tests/p4/probe/monitoring_kpis.py +``` diff --git a/src/tests/p4/probe/monitoring_kpis.ipynb b/src/tests/p4/probe/monitoring_kpis.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..728b7394eb9cbbf50fd5b4fcad568c0968abc608 --- /dev/null +++ b/src/tests/p4/probe/monitoring_kpis.ipynb @@ -0,0 +1,184 @@ +{ + "cells": [ + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Checking the monitoring component" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import time\n", + "import datetime\n", + "import uuid\n", + "import random\n", + "\n", + "from dotenv import load_dotenv\n", + "from IPython.display import clear_output, display, HTML\n", + "\n", + "from common.tools.timestamp.Converters import timestamp_utcnow_to_float, timestamp_float_to_string\n", + "from common.tools.grpc.Tools import grpc_message_to_json_string\n", + "from common.proto.kpi_sample_types_pb2 import KpiSampleType\n", + "from common.proto.monitoring_pb2 import KpiDescriptor, KpiId, KpiQuery, Kpi\n", + "from monitoring.client.MonitoringClient import MonitoringClient" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'0abfb00117d4461b9fa5085bee4be58f'" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "load_dotenv()\n", + "\n", + "monitoring_client = MonitoringClient()\n", + "uuid.uuid4().hex" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Created KPI {\"kpi_id\": {\"uuid\": \"1\"}}: \n" + ] + } + ], + "source": [ + "kpi_description: KpiDescriptor = KpiDescriptor()\n", + "kpi_description.kpi_description = \"Security status of service {}\".format(uuid.uuid4().hex)\n", + "kpi_description.service_id.service_uuid.uuid = \"608df176-90b8-5950-b50d-1810c6eaaa5d\"\n", + "kpi_description.kpi_sample_type = KpiSampleType.KPISAMPLETYPE_UNKNOWN\n", + "new_kpi = monitoring_client.SetKpi(kpi_description)\n", + "print(\"Created KPI {}: \".format(grpc_message_to_json_string(new_kpi)))" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<table>\n", + " <thead>\n", + " <tr><th colspan=3>2023-02-24 16:23:34.373384</th></tr>\n", + " <tr><th>KPI ID</th><th>Timestamp</th><th>Value</th></tr>\n", + " <thead>\n", + " <tbody><tr><td>0 - 1</td><td>2023-02-23T13:55:09Z</td><td>floatVal: 1868.0\n", + "</td></tr><tr><td>1 - 1</td><td>2023-02-23T13:55:07Z</td><td>floatVal: 1878.0\n", + "</td></tr><tr><td>2 - 1</td><td>2023-02-23T13:55:05Z</td><td>floatVal: 2065.0\n", + "</td></tr><tr><td>3 - 1</td><td>2023-02-23T13:55:03Z</td><td>floatVal: 1993.0\n", + "</td></tr><tr><td>4 - 1</td><td>2023-02-23T13:55:01Z</td><td>floatVal: 2006.0\n", + "</td></tr><tr><td>5 - 1</td><td>2023-02-23T13:54:59Z</td><td>floatVal: 1938.0\n", + "</td></tr><tr><td>6 - 1</td><td>2023-02-23T13:54:57Z</td><td>floatVal: 1920.0\n", + "</td></tr><tr><td>7 - 1</td><td>2023-02-23T13:54:55Z</td><td>floatVal: 1984.0\n", + "</td></tr><tr><td>8 - 1</td><td>2023-02-23T13:54:53Z</td><td>floatVal: 1883.0\n", + "</td></tr><tr><td>9 - 1</td><td>2023-02-23T13:54:51Z</td><td>floatVal: 1948.0\n", + "</td></tr></tbody></table>" + ], + "text/plain": [ + "<IPython.core.display.HTML object>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "ename": "KeyboardInterrupt", + "evalue": "", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)", + "Cell \u001b[0;32mIn [4], line 31\u001b[0m\n\u001b[1;32m 29\u001b[0m table \u001b[39m+\u001b[39m\u001b[39m=\u001b[39m \u001b[39m\"\u001b[39m\u001b[39m</tbody></table>\u001b[39m\u001b[39m\"\u001b[39m\n\u001b[1;32m 30\u001b[0m display(HTML(table))\n\u001b[0;32m---> 31\u001b[0m time\u001b[39m.\u001b[39;49msleep(\u001b[39m5\u001b[39;49m)\n\u001b[1;32m 32\u001b[0m clear_output(wait\u001b[39m=\u001b[39m\u001b[39mTrue\u001b[39;00m)\n", + "\u001b[0;31mKeyboardInterrupt\u001b[0m: " + ] + } + ], + "source": [ + "kpi_id = input(\"What is the KPI ID?\")\n", + "query = KpiQuery()\n", + "query.kpi_ids.append(KpiId(**{\"kpi_id\": {\"uuid\": kpi_id}}))\n", + "query.last_n_samples = 10\n", + "\n", + "while True:\n", + "\n", + " kpi = Kpi()\n", + " kpi.kpi_id.kpi_id.uuid = new_kpi.kpi_id.uuid\n", + " kpi.timestamp.timestamp = timestamp_utcnow_to_float()\n", + " kpi.kpi_value.int32Val = random.randint(10, 4000)\n", + " # monitoring_client.IncludeKpi(kpi)\n", + "\n", + " response = monitoring_client.QueryKpiData(query)\n", + " # print(response)\n", + " table = f\"\"\"<table>\n", + " <thead>\n", + " <tr><th colspan=3>{datetime.datetime.now()}</th></tr>\n", + " <tr><th>KPI ID</th><th>Timestamp</th><th>Value</th></tr>\n", + " <thead>\n", + " <tbody>\"\"\"\n", + " for kpi in response.raw_kpi_lists:\n", + " cur_kpi_id = kpi.kpi_id.kpi_id.uuid\n", + " for i, raw_kpi in enumerate(kpi.raw_kpis):\n", + " # print(cur_kpi_id, raw_kpi.timestamp.timestamp, raw_kpi.kpi_value)\n", + " table += \"<tr><td>{} - {}</td><td>{}</td><td>{}</td></tr>\".format(\n", + " i, cur_kpi_id, timestamp_float_to_string(raw_kpi.timestamp.timestamp), raw_kpi.kpi_value\n", + " )\n", + " table += \"</tbody></table>\"\n", + " display(HTML(table))\n", + " time.sleep(5)\n", + " clear_output(wait=True)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "tfs", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.14" + }, + "orig_nbformat": 4, + "vscode": { + "interpreter": { + "hash": "7ea5723b29014fc8d8bf1a065f5287f0787f54201758f2b5d4b4b0b2ddc48863" + } + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/src/tests/p4/probe/monitoring_kpis.py b/src/tests/p4/probe/monitoring_kpis.py new file mode 100644 index 0000000000000000000000000000000000000000..880977a2f62069586efdb398b8b3b5d3ac20dac0 --- /dev/null +++ b/src/tests/p4/probe/monitoring_kpis.py @@ -0,0 +1,85 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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. + +# File to monitor the latest *n* samples from the KPI ID *id* +# and updates it every *i* seconds +# +# Author: Carlos Natalino <carlos.natalino@chalmers.se> + +import argparse +import datetime +import time + +from common.proto.kpi_sample_types_pb2 import KpiSampleType +from common.proto.monitoring_pb2 import KpiDescriptor, KpiId, KpiQuery +from common.tools.grpc.Tools import grpc_message_to_json_string +from common.tools.timestamp.Converters import timestamp_float_to_string +from monitoring.client.MonitoringClient import MonitoringClient + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument( + "-n", + "--last-n-samples", + default=10, + type=int, + help="Number of latest samples of the KPI to show.", + ) + parser.add_argument( + "-s", + "--sleep", + default=5, + type=int, + help="Seconds between consecutive refreshes.", + ) + parser.add_argument("-id", "--kpi-id", help="KPI ID, if known.") + args = parser.parse_args() + + monitoring_client = MonitoringClient() + + if args.kpi_id is None: + service_uuid = "608df176-90b8-5950-b50d-1810c6eaaa5d" + kpi_description: KpiDescriptor = KpiDescriptor() + kpi_description.kpi_description = "Security status of service {}".format( + service_uuid + ) + kpi_description.service_id.service_uuid.uuid = service_uuid + kpi_description.kpi_sample_type = KpiSampleType.KPISAMPLETYPE_UNKNOWN + new_kpi = monitoring_client.SetKpi(kpi_description) + print("Created KPI {}: ".format(grpc_message_to_json_string(new_kpi))) + kpi_id = new_kpi.kpi_id.uuid + else: + kpi_id = args.kpi_id + + query = KpiQuery() + query.kpi_ids.append(KpiId(**{"kpi_id": {"uuid": kpi_id}})) + query.last_n_samples = args.last_n_samples + + while True: + print(chr(27) + "[2J") + response = monitoring_client.QueryKpiData(query) + print("{}\t{}\t{:<20}\t{}".format("Index", "KPI ID", "Timestamp", "Value")) + for kpi in response.raw_kpi_lists: + cur_kpi_id = kpi.kpi_id.kpi_id.uuid + for i, raw_kpi in enumerate(kpi.raw_kpis): + print( + "{}\t{}\t{}\t{}".format( + i, + cur_kpi_id, + timestamp_float_to_string(raw_kpi.timestamp.timestamp), + raw_kpi.kpi_value.floatVal, + ) + ) + print("Last update:", datetime.datetime.now().strftime("%H:%M:%S")) + time.sleep(args.sleep) diff --git a/src/tests/p4/probe/probe-tfs/.gitignore b/src/tests/p4/probe/probe-tfs/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..dc8d7ee54c37fd887f19206592ed03a33118a59a --- /dev/null +++ b/src/tests/p4/probe/probe-tfs/.gitignore @@ -0,0 +1,18 @@ +# Generated by Cargo +# will have compiled files and executables +/target/ + +# Remove Cargo.lock from gitignore if creating an executable, leave it for libraries +# More information here https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html +Cargo.lock + +# These are backup files generated by rustfmt +**/*.rs.bk + + +# Added by cargo + +/target + +.env_bkp +.env diff --git a/src/tests/p4/probe/probe-tfs/Cargo.toml b/src/tests/p4/probe/probe-tfs/Cargo.toml new file mode 100644 index 0000000000000000000000000000000000000000..fb5db98bf5233e905d83b7f9fe06d44a71c3a0fd --- /dev/null +++ b/src/tests/p4/probe/probe-tfs/Cargo.toml @@ -0,0 +1,39 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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] +name = "rust-tfs" +version = "0.1.0" +edition = "2021" + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[dependencies] +dotenv = "0.15.0" +futures = "0.3.26" +prost = "0.11.6" +surge-ping = "0.7.3" +tokio = { version = "1.25", features = ["macros", "rt-multi-thread"] } +tonic = "0.8.3" + +[[bin]] +name = "tfsping" +path = "src/ping.rs" + +[[bin]] +name = "tfsagent" +path = "src/agent.rs" + +[build-dependencies] +tonic-build = "0.8.3" diff --git a/src/tests/p4/probe/probe-tfs/LICENSE b/src/tests/p4/probe/probe-tfs/LICENSE new file mode 100644 index 0000000000000000000000000000000000000000..261eeb9e9f8b2b4b0d119366dda99c6fd7d35c64 --- /dev/null +++ b/src/tests/p4/probe/probe-tfs/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + 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/tests/p4/probe/probe-tfs/README.md b/src/tests/p4/probe/probe-tfs/README.md new file mode 100644 index 0000000000000000000000000000000000000000..f88d7c542dae22ad623797f43750e0589d2473cf --- /dev/null +++ b/src/tests/p4/probe/probe-tfs/README.md @@ -0,0 +1,2 @@ +# rust-tfs +Client for TFS functionalities written in Rust. diff --git a/src/tests/p4/probe/probe-tfs/build.rs b/src/tests/p4/probe/probe-tfs/build.rs new file mode 100644 index 0000000000000000000000000000000000000000..1dda249d16b3c571676a254f2178f772fb765c81 --- /dev/null +++ b/src/tests/p4/probe/probe-tfs/build.rs @@ -0,0 +1,34 @@ +/** + * Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) + * + * 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 script that generates Rust code for the protobuffers. + * + * Author: Carlos Natalino <carlos.natalino@chalmers.se> + */ + +fn main() { + tonic_build::configure() + .build_server(false) + .compile( + &[ + "proto/context.proto", + "proto/acl.proto", + "proto/kpi_sample_types.proto", + "proto/monitoring.proto", + ], + &["proto"], + ) + .unwrap_or_else(|e| panic!("Failed to compile protos {:?}", e)); +} diff --git a/src/tests/p4/probe/probe-tfs/connect_to_mininet.sh b/src/tests/p4/probe/probe-tfs/connect_to_mininet.sh new file mode 100755 index 0000000000000000000000000000000000000000..bba3eaa9a985f3e546f9df2681879faef0a9b83e --- /dev/null +++ b/src/tests/p4/probe/probe-tfs/connect_to_mininet.sh @@ -0,0 +1,16 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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. + +CONTAINER=`docker ps | grep mininet | cut -f1 -d" "` +docker exec -it $CONTAINER /bin/bash diff --git a/src/tests/p4/probe/probe-tfs/deploy.sh b/src/tests/p4/probe/probe-tfs/deploy.sh new file mode 100755 index 0000000000000000000000000000000000000000..733f02d11ecd4a9de90898b210b2fe9b579447f2 --- /dev/null +++ b/src/tests/p4/probe/probe-tfs/deploy.sh @@ -0,0 +1,37 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 the software +# uncomment the line below if you want to build it +# cargo build --release --target=x86_64-unknown-linux-musl + +# build a .env file with the info from context and monitoring services + +if [ -z "${CONTEXTSERVICE_SERVICE_HOST}" ] || [ -z "${CONTEXTSERVICE_SERVICE_PORT_GRPC}" ] || \ + [ -z "${MONITORINGSERVICE_SERVICE_HOST}" ] || [ -z "${MONITORINGSERVICE_SERVICE_PORT_GRPC}" ] +then + echo "TFS_ENV_VARS are not loaded." + exit 1 +fi + +echo "CONTEXTSERVICE_SERVICE_HOST=${CONTEXTSERVICE_SERVICE_HOST}" > .env +echo "CONTEXTSERVICE_SERVICE_PORT_GRPC=${CONTEXTSERVICE_SERVICE_PORT_GRPC}" >> .env +echo "MONITORINGSERVICE_SERVICE_HOST=${MONITORINGSERVICE_SERVICE_HOST}" >> .env +echo "MONITORINGSERVICE_SERVICE_PORT_GRPC=${MONITORINGSERVICE_SERVICE_PORT_GRPC}" >> .env + +# get container id +CONTAINER=`docker ps | grep mininet | cut -f1 -d" "` +docker cp target/x86_64-unknown-linux-musl/release/tfsping $CONTAINER:/root +docker cp target/x86_64-unknown-linux-musl/release/tfsagent $CONTAINER:/root +docker cp .env $CONTAINER:/root diff --git a/src/tests/p4/probe/probe-tfs/proto b/src/tests/p4/probe/probe-tfs/proto new file mode 120000 index 0000000000000000000000000000000000000000..ce803d6a96f0064d107428238b9beecb2a0ed2be --- /dev/null +++ b/src/tests/p4/probe/probe-tfs/proto @@ -0,0 +1 @@ +../../../../../proto \ No newline at end of file diff --git a/src/tests/p4/probe/probe-tfs/src/agent.rs b/src/tests/p4/probe/probe-tfs/src/agent.rs new file mode 100644 index 0000000000000000000000000000000000000000..4221cbe28ba75021d2b7c2de6dbef46a043cc2bb --- /dev/null +++ b/src/tests/p4/probe/probe-tfs/src/agent.rs @@ -0,0 +1,254 @@ +/** + * Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) + * + * 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. + * + * Program that starts the ping probe and reports it to the Unix socket. + * + * Author: Carlos Natalino <carlos.natalino@chalmers.se> + */ + +/************** Modules needed to communicate with TeraFlowSDN ***************/ +pub mod kpi_sample_types { + tonic::include_proto!("kpi_sample_types"); +} + +pub mod acl { + tonic::include_proto!("acl"); +} + +pub mod context { + // tonic::include_proto!(); + tonic::include_proto!("context"); +} + +pub mod monitoring { + tonic::include_proto!("monitoring"); +} + +/********************************** Imports **********************************/ +// standard library +use std::env; +use std::path::Path; +use std::sync::Arc; +use std::time::SystemTime; +use std::{fs, io}; + +// external libraries +use dotenv::dotenv; +use futures; +use futures::lock::Mutex; +use tokio::net::UnixListener; + +// proto +use context::context_service_client::ContextServiceClient; +use context::{Empty, Timestamp}; +use kpi_sample_types::KpiSampleType; +use monitoring::monitoring_service_client::MonitoringServiceClient; +use monitoring::{Kpi, KpiDescriptor, KpiValue}; + +#[tokio::main] +async fn main() -> Result<(), Box<dyn std::error::Error>> { + dotenv().ok(); // load the environment variables from the .env file + + let path = Path::new("/tmp/tfsping"); + + if path.exists() { + fs::remove_file(path)?; // removes the socket in case it exists + } + + let listener = UnixListener::bind(path).unwrap(); + println!("Bound to the path {:?}", path); + + // ARC Mutex that tells whether or not to send the results to the monitoring component + let send_ping = Arc::new(Mutex::new(false)); + // copy used by the task that receives data from the probe + let ping_probe = send_ping.clone(); + // copy used by the task that receives stream data from TFS + let ping_trigger = send_ping.clone(); + + // ARC mutex that hosts the KPI ID to be used as the monitoring KPI + let kpi_id: Arc<Mutex<Option<monitoring::KpiId>>> = Arc::new(Mutex::new(None)); + let kpi_id_probe = kpi_id.clone(); + let kpi_id_trigger = kpi_id.clone(); + + let t1 = tokio::spawn(async move { + let monitoring_host = env::var("MONITORINGSERVICE_SERVICE_HOST") + .unwrap_or_else(|_| panic!("receiver: Could not find monitoring host!")); + let monitoring_port = env::var("MONITORINGSERVICE_SERVICE_PORT_GRPC") + .unwrap_or_else(|_| panic!("receiver: Could not find monitoring port!")); + + let mut monitoring_client = MonitoringServiceClient::connect(format!( + "http://{}:{}", + monitoring_host, monitoring_port + )) + .await + .unwrap(); + println!("receiver: Connected to the monitoring service!"); + loop { + println!("receiver: Awaiting for new connection!"); + let (stream, _socket) = listener.accept().await.unwrap(); + + stream.readable().await.unwrap(); + + let mut buf = [0; 4]; + + match stream.try_read(&mut buf) { + Ok(n) => { + let num = u32::from_be_bytes(buf); + println!("receiver: read {} bytes -- {:?}", n, num); + + let should_ping = ping_probe.lock().await; + + if *should_ping { + // only send the value to monitoring if needed + // send the value to the monitoring component + println!("receiver: Send value to monitoring"); + + let kpi_id = kpi_id_probe.lock().await; + println!("receiver: kpi id: {:?}", kpi_id); + + let now = SystemTime::now() + .duration_since(SystemTime::UNIX_EPOCH) + .unwrap() + .as_secs(); // See struct std::time::Duration methods + + let kpi = Kpi { + kpi_id: kpi_id.clone(), + timestamp: Some(Timestamp { + timestamp: now as f64, + }), + kpi_value: Some(KpiValue { + value: Some(monitoring::kpi_value::Value::Int32Val(num as i32)), + }), + }; + // println!("Request: {:?}", kpi); + let response = monitoring_client + .include_kpi(tonic::Request::new(kpi)) + .await; + // println!("Response: {:?}", response); + if response.is_err() { + println!("receiver: Issue with the response from monitoring!"); + } + } + } + Err(ref e) if e.kind() == io::ErrorKind::WouldBlock => { + continue; + } + Err(e) => { + println!("receiver: {:?}", e); + } + } + } + }); + + let t2 = tokio::spawn(async move { + // let server_address = "129.16.37.136"; + let context_host = env::var("CONTEXTSERVICE_SERVICE_HOST") + .unwrap_or_else(|_| panic!("stream: Could not find context host!")); + let context_port = env::var("CONTEXTSERVICE_SERVICE_PORT_GRPC") + .unwrap_or_else(|_| panic!("stream: Could not find context port!")); + + let monitoring_host = env::var("MONITORINGSERVICE_SERVICE_HOST") + .unwrap_or_else(|_| panic!("stream: Could not find monitoring host!")); + let monitoring_port = env::var("MONITORINGSERVICE_SERVICE_PORT_GRPC") + .unwrap_or_else(|_| panic!("stream: Could not find monitoring port!")); + + let mut context_client = + ContextServiceClient::connect(format!("http://{}:{}", context_host, context_port)) + .await + .unwrap(); + println!("stream: Connected to the context service!"); + + let mut monitoring_client = MonitoringServiceClient::connect(format!( + "http://{}:{}", + monitoring_host, monitoring_port + )) + .await + .unwrap(); + println!("stream: Connected to the monitoring service!"); + + let mut service_event_stream = context_client + .get_service_events(tonic::Request::new(Empty {})) + .await + .unwrap() + .into_inner(); + while let Some(event) = service_event_stream.message().await.unwrap() { + let event_service = event.clone().service_id.unwrap(); + if event.event.clone().unwrap().event_type == 1 { + println!("stream: New CREATE event:\n{:?}", event_service); + + let kpi_descriptor = KpiDescriptor { + kpi_id: None, + kpi_id_list: vec![], + device_id: None, + endpoint_id: None, + slice_id: None, + connection_id: None, + kpi_description: format!( + "Latency value for service {}", + event_service.service_uuid.unwrap().uuid + ), + service_id: Some(event.clone().service_id.clone().unwrap().clone()), + kpi_sample_type: KpiSampleType::KpisampletypeUnknown.into(), + }; + + let _response = monitoring_client + .set_kpi(tonic::Request::new(kpi_descriptor)) + .await + .unwrap() + .into_inner(); + let mut kpi_id = kpi_id_trigger.lock().await; + println!("stream: KPI ID: {:?}", _response); + *kpi_id = Some(_response.clone()); + let mut should_ping = ping_trigger.lock().await; + *should_ping = true; + } else if event.event.clone().unwrap().event_type == 3 { + println!("stream: New REMOVE event:\n{:?}", event); + let mut should_ping = ping_trigger.lock().await; + *should_ping = false; + } + } + }); + + futures::future::join_all(vec![t1, t2]).await; + + // let addr = "10.0.0.2".parse().unwrap(); + // let timeout = Duration::from_secs(1); + // ping::ping(addr, Some(timeout), Some(166), Some(3), Some(5), Some(&random())).unwrap(); + + // let server_address = env::var("CONTEXTSERVICE_SERVICE_HOST").unwrap(); + + // let contexts = grpc_client.list_context_ids(tonic::Request::new(Empty { })).await?; + + // println!("{:?}", contexts.into_inner()); + // let current_context = contexts.into_inner().context_ids[0].clone(); + + // if let Some(current_context) = contexts.into_inner().context_ids[0] { + + // } + // else { + // panic!("No context available!"); + // } + + // for context in contexts.into_inner().context_ids { + // println!("{:?}", context); + // } + + // let services = grpc_client.list_services(tonic::Request::new(current_context)).await?; + // println!("{:?}", services.into_inner()); + + println!("Hello, world!"); + + Ok(()) +} diff --git a/src/tests/p4/probe/probe-tfs/src/ping.rs b/src/tests/p4/probe/probe-tfs/src/ping.rs new file mode 100644 index 0000000000000000000000000000000000000000..3c118c98782a4cb5def9a654edbe55186bbf3df7 --- /dev/null +++ b/src/tests/p4/probe/probe-tfs/src/ping.rs @@ -0,0 +1,71 @@ +/** + * Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) + * + * 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. + * + * Program that starts the ping probe and reports it to the Unix socket. + * + * Author: Carlos Natalino <carlos.natalino@chalmers.se> + */ +// standard library +use std::io; +use std::path::Path; + +// external libraries +use tokio::net::UnixStream; +use tokio::time::{sleep, Duration}; + +async fn send_value(path: &Path, value: i32) -> Result<(), Box<dyn std::error::Error>> { + let stream = UnixStream::connect(path).await?; + stream.writable().await; + // if ready.is_writable() { + match stream.try_write(&i32::to_be_bytes(value)) { + Ok(n) => { + println!("\twrite {} bytes\t{}", n, value); + } + Err(ref e) if e.kind() == io::ErrorKind::WouldBlock => { + println!("Error would block!"); + } + Err(e) => { + println!("error into()"); + return Err(e.into()); + } + } + // } + Ok(()) +} + +#[tokio::main] +async fn main() -> Result<(), Box<dyn std::error::Error>> { + let path = Path::new("/tmp/tfsping"); + + loop { + let payload = [0; 1024]; + + let result = surge_ping::ping("10.0.0.2".parse()?, &payload).await; + + // let (_packet, duration) = result.unwra + + if let Ok((_packet, duration)) = result { + println!("Ping took {:.3?}\t{:?}", duration, _packet.get_identifier()); + send_value(&path, duration.as_micros() as i32).await?; + } else { + println!("Error!"); + send_value(&path, -1).await?; + } + + sleep(Duration::from_secs(2)).await; + } + + // Ok(()) // unreachable +} diff --git a/src/tests/p4/probe/probe-tfs/target/x86_64-unknown-linux-musl/release/tfsagent b/src/tests/p4/probe/probe-tfs/target/x86_64-unknown-linux-musl/release/tfsagent new file mode 100755 index 0000000000000000000000000000000000000000..b7cef11a433c6bf2eeb94638fa90d93f25acd3c8 Binary files /dev/null and b/src/tests/p4/probe/probe-tfs/target/x86_64-unknown-linux-musl/release/tfsagent differ diff --git a/src/tests/p4/probe/probe-tfs/target/x86_64-unknown-linux-musl/release/tfsping b/src/tests/p4/probe/probe-tfs/target/x86_64-unknown-linux-musl/release/tfsping new file mode 100755 index 0000000000000000000000000000000000000000..6e943d292dd6653e857bf5eea3258d38ad246026 Binary files /dev/null and b/src/tests/p4/probe/probe-tfs/target/x86_64-unknown-linux-musl/release/tfsping differ diff --git a/src/tests/p4/tests/Objects.py b/src/tests/p4/tests/Objects.py index 29f01cd61aca58712cb0bc27b7f80c04b2f37d52..fcf618308a1e56a6e9e68205bdc0566408e26b65 100644 --- a/src/tests/p4/tests/Objects.py +++ b/src/tests/p4/tests/Objects.py @@ -25,6 +25,7 @@ from common.tools.object_factory.Service import ( from common.tools.object_factory.ConfigRule import ( json_config_rule_set, json_config_rule_delete) from common.tools.object_factory.EndPoint import json_endpoint, json_endpoint_ids, json_endpoints, json_endpoint_id +from common.tools.object_factory.EndPoint import json_endpoint_descriptor from common.tools.object_factory.Link import get_link_uuid, json_link, json_link_id from common.tools.object_factory.Topology import json_topology, json_topology_id from common.proto.kpi_sample_types_pb2 import KpiSampleType @@ -59,7 +60,7 @@ DEVICE_SW1 = json_device_p4_disabled(DEVICE_SW1_UUID) DEVICE_SW1_DPID = 1 DEVICE_SW1_NAME = DEVICE_SW1_UUID -DEVICE_SW1_IP_ADDR = '10.0.2.10' +DEVICE_SW1_IP_ADDR = '192.168.6.38' DEVICE_SW1_PORT = '50001' DEVICE_SW1_VENDOR = 'Open Networking Foundation' DEVICE_SW1_HW_VER = 'BMv2 simple_switch' @@ -68,12 +69,16 @@ DEVICE_SW1_SW_VER = 'Stratum' DEVICE_SW1_BIN_PATH = '/root/p4/bmv2.json' DEVICE_SW1_INFO_PATH = '/root/p4/p4info.txt' -DEVICE_SW1_ENDPOINT_DEFS = [('1', 'port', []), ('2', 'port', []), ('3', 'port', [])] +DEVICE_SW1_ENDPOINT_DEFS = [json_endpoint_descriptor('1', 'port'), + json_endpoint_descriptor('2', 'port'), + json_endpoint_descriptor('3', 'port'), + json_endpoint_descriptor('4', 'port')] DEVICE_SW1_ENDPOINTS = json_endpoints(DEVICE_SW1_ID, DEVICE_SW1_ENDPOINT_DEFS) DEVICE_SW1_ENDPOINT_IDS = json_endpoint_ids(DEVICE_SW1_ID, DEVICE_SW1_ENDPOINT_DEFS) ENDPOINT_ID_SW1_1 = DEVICE_SW1_ENDPOINTS[0]['endpoint_id'] ENDPOINT_ID_SW1_2 = DEVICE_SW1_ENDPOINTS[1]['endpoint_id'] ENDPOINT_ID_SW1_3 = DEVICE_SW1_ENDPOINTS[2]['endpoint_id'] +ENDPOINT_ID_SW1_4 = DEVICE_SW1_ENDPOINTS[3]['endpoint_id'] DEVICE_SW1_CONNECT_RULES = json_device_connect_rules( DEVICE_SW1_IP_ADDR, @@ -97,7 +102,7 @@ DEVICE_SW2 = json_device_p4_disabled(DEVICE_SW2_UUID) DEVICE_SW2_DPID = 1 DEVICE_SW2_NAME = DEVICE_SW2_UUID -DEVICE_SW2_IP_ADDR = '10.0.2.10' +DEVICE_SW2_IP_ADDR = '192.168.6.38' DEVICE_SW2_PORT = '50002' DEVICE_SW2_VENDOR = 'Open Networking Foundation' DEVICE_SW2_HW_VER = 'BMv2 simple_switch' @@ -106,7 +111,8 @@ DEVICE_SW2_SW_VER = 'Stratum' DEVICE_SW2_BIN_PATH = '/root/p4/bmv2.json' DEVICE_SW2_INFO_PATH = '/root/p4/p4info.txt' -DEVICE_SW2_ENDPOINT_DEFS = [('1', 'port', []), ('2', 'port', [])] +DEVICE_SW2_ENDPOINT_DEFS = [json_endpoint_descriptor('1', 'port'), + json_endpoint_descriptor('2', 'port')] DEVICE_SW2_ENDPOINTS = json_endpoints(DEVICE_SW2_ID, DEVICE_SW2_ENDPOINT_DEFS) DEVICE_SW2_ENDPOINT_IDS = json_endpoint_ids(DEVICE_SW2_ID, DEVICE_SW2_ENDPOINT_DEFS) ENDPOINT_ID_SW2_1 = DEVICE_SW2_ENDPOINTS[0]['endpoint_id'] @@ -134,7 +140,7 @@ DEVICE_SW3 = json_device_p4_disabled(DEVICE_SW3_UUID) DEVICE_SW3_DPID = 1 DEVICE_SW3_NAME = DEVICE_SW3_UUID -DEVICE_SW3_IP_ADDR = '10.0.2.10' +DEVICE_SW3_IP_ADDR = '192.168.6.38' DEVICE_SW3_PORT = '50003' DEVICE_SW3_VENDOR = 'Open Networking Foundation' DEVICE_SW3_HW_VER = 'BMv2 simple_switch' @@ -143,7 +149,8 @@ DEVICE_SW3_SW_VER = 'Stratum' DEVICE_SW3_BIN_PATH = '/root/p4/bmv2.json' DEVICE_SW3_INFO_PATH = '/root/p4/p4info.txt' -DEVICE_SW3_ENDPOINT_DEFS = [('1', 'port', []), ('2', 'port', [])] +DEVICE_SW3_ENDPOINT_DEFS = [json_endpoint_descriptor('1', 'port'), + json_endpoint_descriptor('2', 'port')] DEVICE_SW3_ENDPOINTS = json_endpoints(DEVICE_SW3_ID, DEVICE_SW3_ENDPOINT_DEFS) DEVICE_SW3_ENDPOINT_IDS = json_endpoint_ids(DEVICE_SW3_ID, DEVICE_SW3_ENDPOINT_DEFS) ENDPOINT_ID_SW3_1 = DEVICE_SW3_ENDPOINTS[0]['endpoint_id'] @@ -171,7 +178,7 @@ DEVICE_SW4 = json_device_p4_disabled(DEVICE_SW4_UUID) DEVICE_SW4_DPID = 1 DEVICE_SW4_NAME = DEVICE_SW4_UUID -DEVICE_SW4_IP_ADDR = '10.0.2.10' +DEVICE_SW4_IP_ADDR = '192.168.6.38' DEVICE_SW4_PORT = '50004' DEVICE_SW4_VENDOR = 'Open Networking Foundation' DEVICE_SW4_HW_VER = 'BMv2 simple_switch' @@ -180,7 +187,8 @@ DEVICE_SW4_SW_VER = 'Stratum' DEVICE_SW4_BIN_PATH = '/root/p4/bmv2.json' DEVICE_SW4_INFO_PATH = '/root/p4/p4info.txt' -DEVICE_SW4_ENDPOINT_DEFS = [('1', 'port', []), ('2', 'port', [])] +DEVICE_SW4_ENDPOINT_DEFS = [json_endpoint_descriptor('1', 'port'), + json_endpoint_descriptor('2', 'port')] DEVICE_SW4_ENDPOINTS = json_endpoints(DEVICE_SW4_ID, DEVICE_SW4_ENDPOINT_DEFS) DEVICE_SW4_ENDPOINT_IDS = json_endpoint_ids(DEVICE_SW4_ID, DEVICE_SW4_ENDPOINT_DEFS) ENDPOINT_ID_SW4_1 = DEVICE_SW4_ENDPOINTS[0]['endpoint_id'] @@ -208,7 +216,7 @@ DEVICE_SW5 = json_device_p4_disabled(DEVICE_SW5_UUID) DEVICE_SW5_DPID = 1 DEVICE_SW5_NAME = DEVICE_SW5_UUID -DEVICE_SW5_IP_ADDR = '10.0.2.10' +DEVICE_SW5_IP_ADDR = '192.168.6.38' DEVICE_SW5_PORT = '50005' DEVICE_SW5_VENDOR = 'Open Networking Foundation' DEVICE_SW5_HW_VER = 'BMv2 simple_switch' @@ -217,7 +225,8 @@ DEVICE_SW5_SW_VER = 'Stratum' DEVICE_SW5_BIN_PATH = '/root/p4/bmv2.json' DEVICE_SW5_INFO_PATH = '/root/p4/p4info.txt' -DEVICE_SW5_ENDPOINT_DEFS = [('1', 'port', []), ('2', 'port', [])] +DEVICE_SW5_ENDPOINT_DEFS = [json_endpoint_descriptor('1', 'port'), + json_endpoint_descriptor('2', 'port')] DEVICE_SW5_ENDPOINTS = json_endpoints(DEVICE_SW5_ID, DEVICE_SW5_ENDPOINT_DEFS) DEVICE_SW5_ENDPOINT_IDS = json_endpoint_ids(DEVICE_SW5_ID, DEVICE_SW5_ENDPOINT_DEFS) ENDPOINT_ID_SW5_1 = DEVICE_SW5_ENDPOINTS[0]['endpoint_id'] @@ -245,7 +254,7 @@ DEVICE_SW6 = json_device_p4_disabled(DEVICE_SW6_UUID) DEVICE_SW6_DPID = 1 DEVICE_SW6_NAME = DEVICE_SW6_UUID -DEVICE_SW6_IP_ADDR = '10.0.2.10' +DEVICE_SW6_IP_ADDR = '192.168.6.38' DEVICE_SW6_PORT = '50006' DEVICE_SW6_VENDOR = 'Open Networking Foundation' DEVICE_SW6_HW_VER = 'BMv2 simple_switch' @@ -254,12 +263,12 @@ DEVICE_SW6_SW_VER = 'Stratum' DEVICE_SW6_BIN_PATH = '/root/p4/bmv2.json' DEVICE_SW6_INFO_PATH = '/root/p4/p4info.txt' -DEVICE_SW6_ENDPOINT_DEFS = [('1', 'port', []), ('2', 'port', []), ('3', 'port', [])] +DEVICE_SW6_ENDPOINT_DEFS = [json_endpoint_descriptor('1', 'port'), + json_endpoint_descriptor('2', 'port')] DEVICE_SW6_ENDPOINTS = json_endpoints(DEVICE_SW6_ID, DEVICE_SW6_ENDPOINT_DEFS) DEVICE_SW6_ENDPOINT_IDS = json_endpoint_ids(DEVICE_SW6_ID, DEVICE_SW6_ENDPOINT_DEFS) ENDPOINT_ID_SW6_1 = DEVICE_SW6_ENDPOINTS[0]['endpoint_id'] ENDPOINT_ID_SW6_2 = DEVICE_SW6_ENDPOINTS[1]['endpoint_id'] -ENDPOINT_ID_SW6_3 = DEVICE_SW6_ENDPOINTS[2]['endpoint_id'] DEVICE_SW6_CONNECT_RULES = json_device_connect_rules( DEVICE_SW6_IP_ADDR, @@ -276,42 +285,186 @@ DEVICE_SW6_CONNECT_RULES = json_device_connect_rules( } ) +DEVICE_SW7_UUID = 'SW7' +DEVICE_SW7_TIMEOUT = 60 +DEVICE_SW7_ID = json_device_id(DEVICE_SW7_UUID) +DEVICE_SW7 = json_device_p4_disabled(DEVICE_SW7_UUID) + +DEVICE_SW7_DPID = 1 +DEVICE_SW7_NAME = DEVICE_SW7_UUID +DEVICE_SW7_IP_ADDR = '192.168.6.38' +DEVICE_SW7_PORT = '50007' +DEVICE_SW7_VENDOR = 'Open Networking Foundation' +DEVICE_SW7_HW_VER = 'BMv2 simple_switch' +DEVICE_SW7_SW_VER = 'Stratum' + +DEVICE_SW7_BIN_PATH = '/root/p4/bmv2.json' +DEVICE_SW7_INFO_PATH = '/root/p4/p4info.txt' + +DEVICE_SW7_ENDPOINT_DEFS = [json_endpoint_descriptor('1', 'port'), + json_endpoint_descriptor('2', 'port')] +DEVICE_SW7_ENDPOINTS = json_endpoints(DEVICE_SW7_ID, DEVICE_SW7_ENDPOINT_DEFS) +DEVICE_SW7_ENDPOINT_IDS = json_endpoint_ids(DEVICE_SW7_ID, DEVICE_SW7_ENDPOINT_DEFS) +ENDPOINT_ID_SW7_1 = DEVICE_SW7_ENDPOINTS[0]['endpoint_id'] +ENDPOINT_ID_SW7_2 = DEVICE_SW7_ENDPOINTS[1]['endpoint_id'] + +DEVICE_SW7_CONNECT_RULES = json_device_connect_rules( + DEVICE_SW7_IP_ADDR, + DEVICE_SW7_PORT, + { + 'id': DEVICE_SW7_DPID, + 'name': DEVICE_SW7_NAME, + 'vendor': DEVICE_SW7_VENDOR, + 'hw_ver': DEVICE_SW7_HW_VER, + 'sw_ver': DEVICE_SW7_SW_VER, + 'timeout': DEVICE_SW7_TIMEOUT, + 'p4bin': DEVICE_SW7_BIN_PATH, + 'p4info': DEVICE_SW7_INFO_PATH + } +) + +DEVICE_SW8_UUID = 'SW8' +DEVICE_SW8_TIMEOUT = 60 +DEVICE_SW8_ID = json_device_id(DEVICE_SW8_UUID) +DEVICE_SW8 = json_device_p4_disabled(DEVICE_SW8_UUID) + +DEVICE_SW8_DPID = 1 +DEVICE_SW8_NAME = DEVICE_SW8_UUID +DEVICE_SW8_IP_ADDR = '192.168.6.38' +DEVICE_SW8_PORT = '50008' +DEVICE_SW8_VENDOR = 'Open Networking Foundation' +DEVICE_SW8_HW_VER = 'BMv2 simple_switch' +DEVICE_SW8_SW_VER = 'Stratum' + +DEVICE_SW8_BIN_PATH = '/root/p4/bmv2.json' +DEVICE_SW8_INFO_PATH = '/root/p4/p4info.txt' + +DEVICE_SW8_ENDPOINT_DEFS = [json_endpoint_descriptor('1', 'port'), + json_endpoint_descriptor('2', 'port'), + json_endpoint_descriptor('3', 'port'), + json_endpoint_descriptor('4', 'port')] +DEVICE_SW8_ENDPOINTS = json_endpoints(DEVICE_SW8_ID, DEVICE_SW8_ENDPOINT_DEFS) +DEVICE_SW8_ENDPOINT_IDS = json_endpoint_ids(DEVICE_SW8_ID, DEVICE_SW8_ENDPOINT_DEFS) +ENDPOINT_ID_SW8_1 = DEVICE_SW8_ENDPOINTS[0]['endpoint_id'] +ENDPOINT_ID_SW8_2 = DEVICE_SW8_ENDPOINTS[1]['endpoint_id'] +ENDPOINT_ID_SW8_3 = DEVICE_SW8_ENDPOINTS[2]['endpoint_id'] +ENDPOINT_ID_SW8_4 = DEVICE_SW8_ENDPOINTS[3]['endpoint_id'] + +DEVICE_SW8_CONNECT_RULES = json_device_connect_rules( + DEVICE_SW8_IP_ADDR, + DEVICE_SW8_PORT, + { + 'id': DEVICE_SW8_DPID, + 'name': DEVICE_SW8_NAME, + 'vendor': DEVICE_SW8_VENDOR, + 'hw_ver': DEVICE_SW8_HW_VER, + 'sw_ver': DEVICE_SW8_SW_VER, + 'timeout': DEVICE_SW8_TIMEOUT, + 'p4bin': DEVICE_SW8_BIN_PATH, + 'p4info': DEVICE_SW8_INFO_PATH + } +) + # ----- Links ---------------------------------------------------------------------------------------------------------- + +# Leftmost links (SW1-SW{2n}) +# SW1_1 - SW2_1 LINK_SW1_SW2_UUID = get_link_uuid(ENDPOINT_ID_SW1_1, ENDPOINT_ID_SW2_1) LINK_SW1_SW2_ID = json_link_id(LINK_SW1_SW2_UUID) LINK_SW1_SW2 = json_link(LINK_SW1_SW2_UUID, [ENDPOINT_ID_SW1_1, ENDPOINT_ID_SW2_1]) -LINK_SW1_SW3_UUID = get_link_uuid(ENDPOINT_ID_SW1_2, ENDPOINT_ID_SW3_1) -LINK_SW1_SW3_ID = json_link_id(LINK_SW1_SW3_UUID) -LINK_SW1_SW3 = json_link(LINK_SW1_SW3_UUID, [ENDPOINT_ID_SW1_2, ENDPOINT_ID_SW3_1]) - -LINK_SW2_SW4_UUID = get_link_uuid(ENDPOINT_ID_SW2_2, ENDPOINT_ID_SW4_1) -LINK_SW2_SW4_ID = json_link_id(LINK_SW2_SW4_UUID) -LINK_SW2_SW4 = json_link(LINK_SW2_SW4_UUID, [ENDPOINT_ID_SW2_2, ENDPOINT_ID_SW4_1]) - -LINK_SW3_SW5_UUID = get_link_uuid(ENDPOINT_ID_SW3_2, ENDPOINT_ID_SW5_1) -LINK_SW3_SW5_ID = json_link_id(LINK_SW3_SW5_UUID) -LINK_SW3_SW5 = json_link(LINK_SW3_SW5_UUID, [ENDPOINT_ID_SW3_2, ENDPOINT_ID_SW5_1]) - -LINK_SW4_SW6_UUID = get_link_uuid(ENDPOINT_ID_SW4_2, ENDPOINT_ID_SW6_1) -LINK_SW4_SW6_ID = json_link_id(LINK_SW4_SW6_UUID) -LINK_SW4_SW6 = json_link(LINK_SW4_SW6_UUID, [ENDPOINT_ID_SW4_2, ENDPOINT_ID_SW6_1]) - -LINK_SW5_SW6_UUID = get_link_uuid(ENDPOINT_ID_SW5_2, ENDPOINT_ID_SW6_2) -LINK_SW5_SW6_ID = json_link_id(LINK_SW5_SW6_UUID) -LINK_SW5_SW6 = json_link(LINK_SW5_SW6_UUID, [ENDPOINT_ID_SW5_2, ENDPOINT_ID_SW6_2]) +# SW2_1 - SW1_1 +LINK_SW2_SW1_UUID = get_link_uuid(ENDPOINT_ID_SW2_1, ENDPOINT_ID_SW1_1) +LINK_SW2_SW1_ID = json_link_id(LINK_SW2_SW1_UUID) +LINK_SW2_SW1 = json_link(LINK_SW2_SW1_UUID, [ENDPOINT_ID_SW2_1, ENDPOINT_ID_SW1_1]) + +# SW1_2 - SW4_1 +LINK_SW1_SW4_UUID = get_link_uuid(ENDPOINT_ID_SW1_2, ENDPOINT_ID_SW4_1) +LINK_SW1_SW4_ID = json_link_id(LINK_SW1_SW4_UUID) +LINK_SW1_SW4 = json_link(LINK_SW1_SW4_UUID, [ENDPOINT_ID_SW1_2, ENDPOINT_ID_SW4_1]) + +# SW4_1 - SW1_2 +LINK_SW4_SW1_UUID = get_link_uuid(ENDPOINT_ID_SW4_1, ENDPOINT_ID_SW1_2) +LINK_SW4_SW1_ID = json_link_id(LINK_SW4_SW1_UUID) +LINK_SW4_SW1 = json_link(LINK_SW4_SW1_UUID, [ENDPOINT_ID_SW4_1, ENDPOINT_ID_SW1_2]) + +# SW1_3 - SW6_1 +LINK_SW1_SW6_UUID = get_link_uuid(ENDPOINT_ID_SW1_3, ENDPOINT_ID_SW6_1) +LINK_SW1_SW6_ID = json_link_id(LINK_SW1_SW6_UUID) +LINK_SW1_SW6 = json_link(LINK_SW1_SW6_UUID, [ENDPOINT_ID_SW1_3, ENDPOINT_ID_SW6_1]) + +# SW6_1 - SW1_3 +LINK_SW6_SW1_UUID = get_link_uuid(ENDPOINT_ID_SW6_1, ENDPOINT_ID_SW1_3) +LINK_SW6_SW1_ID = json_link_id(LINK_SW6_SW1_UUID) +LINK_SW6_SW1 = json_link(LINK_SW6_SW1_UUID, [ENDPOINT_ID_SW6_1, ENDPOINT_ID_SW1_3]) + +# Middle links (SW{2n}-SW{2n+1}) +# SW2_2 - SW3_1 +LINK_SW2_SW3_UUID = get_link_uuid(ENDPOINT_ID_SW2_2, ENDPOINT_ID_SW3_1) +LINK_SW2_SW3_ID = json_link_id(LINK_SW2_SW3_UUID) +LINK_SW2_SW3 = json_link(LINK_SW2_SW3_UUID, [ENDPOINT_ID_SW2_2, ENDPOINT_ID_SW3_1]) + +# SW3_1 - SW2_2 +LINK_SW3_SW2_UUID = get_link_uuid(ENDPOINT_ID_SW3_1, ENDPOINT_ID_SW2_2) +LINK_SW3_SW2_ID = json_link_id(LINK_SW3_SW2_UUID) +LINK_SW3_SW2 = json_link(LINK_SW3_SW2_UUID, [ENDPOINT_ID_SW3_1, ENDPOINT_ID_SW2_2]) + +# SW4_2 - SW5_1 +LINK_SW4_SW5_UUID = get_link_uuid(ENDPOINT_ID_SW4_2, ENDPOINT_ID_SW5_1) +LINK_SW4_SW5_ID = json_link_id(LINK_SW4_SW5_UUID) +LINK_SW4_SW5 = json_link(LINK_SW4_SW5_UUID, [ENDPOINT_ID_SW4_2, ENDPOINT_ID_SW5_1]) + +# SW5_1 - SW4_2 +LINK_SW5_SW4_UUID = get_link_uuid(ENDPOINT_ID_SW5_1, ENDPOINT_ID_SW4_2) +LINK_SW5_SW4_ID = json_link_id(LINK_SW5_SW4_UUID) +LINK_SW5_SW4 = json_link(LINK_SW5_SW4_UUID, [ENDPOINT_ID_SW5_1, ENDPOINT_ID_SW4_2]) + +# SW6_2 - SW7_1 +LINK_SW6_SW7_UUID = get_link_uuid(ENDPOINT_ID_SW6_2, ENDPOINT_ID_SW7_1) +LINK_SW6_SW7_ID = json_link_id(LINK_SW6_SW7_UUID) +LINK_SW6_SW7 = json_link(LINK_SW6_SW7_UUID, [ENDPOINT_ID_SW6_2, ENDPOINT_ID_SW7_1]) + +# SW7_1 - SW6_2 +LINK_SW7_SW6_UUID = get_link_uuid(ENDPOINT_ID_SW7_1, ENDPOINT_ID_SW6_2) +LINK_SW7_SW6_ID = json_link_id(LINK_SW7_SW6_UUID) +LINK_SW7_SW6 = json_link(LINK_SW7_SW6_UUID, [ENDPOINT_ID_SW7_1, ENDPOINT_ID_SW6_2]) + +# Rightmost links (SW{2n+1}-SW8) +# SW3_2 - SW8_1 +LINK_SW3_SW8_UUID = get_link_uuid(ENDPOINT_ID_SW3_2, ENDPOINT_ID_SW8_1) +LINK_SW3_SW8_ID = json_link_id(LINK_SW3_SW8_UUID) +LINK_SW3_SW8 = json_link(LINK_SW3_SW8_UUID, [ENDPOINT_ID_SW3_2, ENDPOINT_ID_SW8_1]) + +# SW8_1 - SW3_2 +LINK_SW8_SW3_UUID = get_link_uuid(ENDPOINT_ID_SW8_1, ENDPOINT_ID_SW3_2) +LINK_SW8_SW3_ID = json_link_id(LINK_SW8_SW3_UUID) +LINK_SW8_SW3 = json_link(LINK_SW8_SW3_UUID, [ENDPOINT_ID_SW8_1, ENDPOINT_ID_SW3_2]) + +# SW5_2 - SW8_2 +LINK_SW5_SW8_UUID = get_link_uuid(ENDPOINT_ID_SW5_2, ENDPOINT_ID_SW8_2) +LINK_SW5_SW8_ID = json_link_id(LINK_SW5_SW8_UUID) +LINK_SW5_SW8 = json_link(LINK_SW5_SW8_UUID, [ENDPOINT_ID_SW5_2, ENDPOINT_ID_SW8_2]) + +# SW8_2 - SW8_2 +LINK_SW8_SW5_UUID = get_link_uuid(ENDPOINT_ID_SW8_2, ENDPOINT_ID_SW5_2) +LINK_SW8_SW5_ID = json_link_id(LINK_SW8_SW5_UUID) +LINK_SW8_SW5 = json_link(LINK_SW8_SW5_UUID, [ENDPOINT_ID_SW8_2, ENDPOINT_ID_SW5_2]) + +# SW7_2 - SW8_3 +LINK_SW7_SW8_UUID = get_link_uuid(ENDPOINT_ID_SW7_2, ENDPOINT_ID_SW8_3) +LINK_SW7_SW8_ID = json_link_id(LINK_SW7_SW8_UUID) +LINK_SW7_SW8 = json_link(LINK_SW7_SW8_UUID, [ENDPOINT_ID_SW7_2, ENDPOINT_ID_SW8_3]) + +# SW8_3 - SW7_2 +LINK_SW8_SW7_UUID = get_link_uuid(ENDPOINT_ID_SW8_3, ENDPOINT_ID_SW7_2) +LINK_SW8_SW7_ID = json_link_id(LINK_SW8_SW7_UUID) +LINK_SW8_SW7 = json_link(LINK_SW8_SW7_UUID, [ENDPOINT_ID_SW8_3, ENDPOINT_ID_SW7_2]) # ----- Service ---------------------------------------------------------------------------------------------------------- -#SERVICE_SW1_UUID = get_service_uuid(ENDPOINT_ID_SW1_1, ENDPOINT_ID_SW1_2) -#SERVICE_SW1 = json_service_p4_planned(SERVICE_SW1_UUID) - -#SERVICE_SW2_UUID = get_service_uuid(ENDPOINT_ID_SW2_1, ENDPOINT_ID_SW2_2) -#SERVICE_SW2 = json_service_p4_planned(SERVICE_SW2_UUID) - -SERVICE_SW1_SW6_UUID = get_service_uuid(ENDPOINT_ID_SW1_3, ENDPOINT_ID_SW6_3) -SERVICE_SW1_SW6 = json_service_p4_planned(SERVICE_SW1_SW6_UUID) -SERVICE_SW1_SW6_ENDPOINT_IDS = [DEVICE_SW1_ENDPOINT_IDS[2], DEVICE_SW6_ENDPOINT_IDS[2]] +SERVICE_SW1_SW8_UUID = get_service_uuid(ENDPOINT_ID_SW1_4, ENDPOINT_ID_SW8_4) +SERVICE_SW1_SW8 = json_service_p4_planned(SERVICE_SW1_SW8_UUID) +SERVICE_SW1_SW8_ENDPOINT_IDS = [DEVICE_SW1_ENDPOINT_IDS[3], DEVICE_SW8_ENDPOINT_IDS[3]] # ----- Object Collections --------------------------------------------------------------------------------------------- @@ -325,21 +478,36 @@ DEVICES = [ (DEVICE_SW4, DEVICE_SW4_CONNECT_RULES, DEVICE_SW4_ENDPOINTS), (DEVICE_SW5, DEVICE_SW5_CONNECT_RULES, DEVICE_SW5_ENDPOINTS), (DEVICE_SW6, DEVICE_SW6_CONNECT_RULES, DEVICE_SW6_ENDPOINTS), + (DEVICE_SW7, DEVICE_SW7_CONNECT_RULES, DEVICE_SW7_ENDPOINTS), + (DEVICE_SW8, DEVICE_SW8_CONNECT_RULES, DEVICE_SW8_ENDPOINTS), ] LINKS = [ LINK_SW1_SW2, - LINK_SW1_SW3, + LINK_SW1_SW4, + LINK_SW1_SW6, - LINK_SW2_SW4, - LINK_SW3_SW5, + LINK_SW2_SW3, + LINK_SW4_SW5, + LINK_SW6_SW7, - LINK_SW4_SW6, - LINK_SW5_SW6 - ] + LINK_SW3_SW8, + LINK_SW5_SW8, + LINK_SW7_SW8, -#SERVICES = [(SERVICE_SW1, DEVICE_SW1_ENDPOINT_IDS), (SERVICE_SW2, DEVICE_SW2_ENDPOINT_IDS)] + LINK_SW2_SW1, + LINK_SW4_SW1, + LINK_SW6_SW1, -#SERVICE_SW1_SW2_ENDPOINT_IDS = DEVICE_SW1_ENDPOINT_IDS + DEVICE_SW2_ENDPOINT_IDS + LINK_SW3_SW2, + LINK_SW5_SW4, + LINK_SW7_SW6, -SERVICES = [(SERVICE_SW1_SW6, SERVICE_SW1_SW6_ENDPOINT_IDS)] \ No newline at end of file + LINK_SW8_SW3, + LINK_SW8_SW5, + LINK_SW8_SW7, +] + +SERVICES = [ + (SERVICE_SW1_SW8, SERVICE_SW1_SW8_ENDPOINT_IDS), +] diff --git a/src/tests/p4/tests/topologies/6switchObjects.py b/src/tests/p4/tests/topologies/6switchObjects.py new file mode 100644 index 0000000000000000000000000000000000000000..c5e4b616cdf3cfe0757514ac78f958837591a36c --- /dev/null +++ b/src/tests/p4/tests/topologies/6switchObjects.py @@ -0,0 +1,354 @@ +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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 Dict, List, Tuple +from common.Constants import DEFAULT_CONTEXT_NAME, DEFAULT_TOPOLOGY_NAME +from common.tools.object_factory.Context import json_context, json_context_id +from common.tools.object_factory.Device import ( + json_device_connect_rules, json_device_emulated_connect_rules, json_device_emulated_packet_router_disabled, + json_device_connect_rules, json_device_id, json_device_p4_disabled, + json_device_emulated_tapi_disabled, json_device_id, json_device_packetrouter_disabled, json_device_tapi_disabled) +from common.tools.object_factory.Service import ( + get_service_uuid, json_service_l3nm_planned,json_service_p4_planned) +from common.tools.object_factory.ConfigRule import ( + json_config_rule_set, json_config_rule_delete) +from common.tools.object_factory.EndPoint import json_endpoint, json_endpoint_ids, json_endpoints, json_endpoint_id +from common.tools.object_factory.EndPoint import json_endpoint_descriptor +from common.tools.object_factory.Link import get_link_uuid, json_link, json_link_id +from common.tools.object_factory.Topology import json_topology, json_topology_id +from common.proto.kpi_sample_types_pb2 import KpiSampleType + +# ----- Context -------------------------------------------------------------------------------------------------------- +CONTEXT_ID = json_context_id(DEFAULT_CONTEXT_NAME) +CONTEXT = json_context(DEFAULT_CONTEXT_NAME) + +# ----- Topology ------------------------------------------------------------------------------------------------------- +TOPOLOGY_ID = json_topology_id(DEFAULT_TOPOLOGY_NAME, context_id=CONTEXT_ID) +TOPOLOGY = json_topology(DEFAULT_TOPOLOGY_NAME, context_id=CONTEXT_ID) + +# ----- Monitoring Samples --------------------------------------------------------------------------------------------- +PACKET_PORT_SAMPLE_TYPES = [ + KpiSampleType.KPISAMPLETYPE_PACKETS_TRANSMITTED, + KpiSampleType.KPISAMPLETYPE_PACKETS_RECEIVED, + KpiSampleType.KPISAMPLETYPE_BYTES_TRANSMITTED, + KpiSampleType.KPISAMPLETYPE_BYTES_RECEIVED, +] + +# ----- Device Credentials and Settings -------------------------------------------------------------------------------- + + +# ----- Devices -------------------------------------------------------------------------------------------------------- + +CUR_PATH = os.path.dirname(os.path.abspath(__file__)) + +DEVICE_SW1_UUID = 'SW1' +DEVICE_SW1_TIMEOUT = 60 +DEVICE_SW1_ID = json_device_id(DEVICE_SW1_UUID) +DEVICE_SW1 = json_device_p4_disabled(DEVICE_SW1_UUID) + +DEVICE_SW1_DPID = 1 +DEVICE_SW1_NAME = DEVICE_SW1_UUID +DEVICE_SW1_IP_ADDR = '10.0.2.10' +DEVICE_SW1_PORT = '50001' +DEVICE_SW1_VENDOR = 'Open Networking Foundation' +DEVICE_SW1_HW_VER = 'BMv2 simple_switch' +DEVICE_SW1_SW_VER = 'Stratum' + +DEVICE_SW1_BIN_PATH = '/root/p4/bmv2.json' +DEVICE_SW1_INFO_PATH = '/root/p4/p4info.txt' + +DEVICE_SW1_ENDPOINT_DEFS = [json_endpoint_descriptor('1', 'port'), + json_endpoint_descriptor('2', 'port'), + json_endpoint_descriptor('3', 'port')] +DEVICE_SW1_ENDPOINTS = json_endpoints(DEVICE_SW1_ID, DEVICE_SW1_ENDPOINT_DEFS) +DEVICE_SW1_ENDPOINT_IDS = json_endpoint_ids(DEVICE_SW1_ID, DEVICE_SW1_ENDPOINT_DEFS) +ENDPOINT_ID_SW1_1 = DEVICE_SW1_ENDPOINTS[0]['endpoint_id'] +ENDPOINT_ID_SW1_2 = DEVICE_SW1_ENDPOINTS[1]['endpoint_id'] +ENDPOINT_ID_SW1_3 = DEVICE_SW1_ENDPOINTS[2]['endpoint_id'] + +DEVICE_SW1_CONNECT_RULES = json_device_connect_rules( + DEVICE_SW1_IP_ADDR, + DEVICE_SW1_PORT, + { + 'id': DEVICE_SW1_DPID, + 'name': DEVICE_SW1_NAME, + 'vendor': DEVICE_SW1_VENDOR, + 'hw_ver': DEVICE_SW1_HW_VER, + 'sw_ver': DEVICE_SW1_SW_VER, + 'timeout': DEVICE_SW1_TIMEOUT, + 'p4bin': DEVICE_SW1_BIN_PATH, + 'p4info': DEVICE_SW1_INFO_PATH + } +) + +DEVICE_SW2_UUID = 'SW2' +DEVICE_SW2_TIMEOUT = 60 +DEVICE_SW2_ID = json_device_id(DEVICE_SW2_UUID) +DEVICE_SW2 = json_device_p4_disabled(DEVICE_SW2_UUID) + +DEVICE_SW2_DPID = 1 +DEVICE_SW2_NAME = DEVICE_SW2_UUID +DEVICE_SW2_IP_ADDR = '10.0.2.10' +DEVICE_SW2_PORT = '50002' +DEVICE_SW2_VENDOR = 'Open Networking Foundation' +DEVICE_SW2_HW_VER = 'BMv2 simple_switch' +DEVICE_SW2_SW_VER = 'Stratum' + +DEVICE_SW2_BIN_PATH = '/root/p4/bmv2.json' +DEVICE_SW2_INFO_PATH = '/root/p4/p4info.txt' + +DEVICE_SW2_ENDPOINT_DEFS = [json_endpoint_descriptor('1', 'port'), + json_endpoint_descriptor('2', 'port')] +DEVICE_SW2_ENDPOINTS = json_endpoints(DEVICE_SW2_ID, DEVICE_SW2_ENDPOINT_DEFS) +DEVICE_SW2_ENDPOINT_IDS = json_endpoint_ids(DEVICE_SW2_ID, DEVICE_SW2_ENDPOINT_DEFS) +ENDPOINT_ID_SW2_1 = DEVICE_SW2_ENDPOINTS[0]['endpoint_id'] +ENDPOINT_ID_SW2_2 = DEVICE_SW2_ENDPOINTS[1]['endpoint_id'] + +DEVICE_SW2_CONNECT_RULES = json_device_connect_rules( + DEVICE_SW2_IP_ADDR, + DEVICE_SW2_PORT, + { + 'id': DEVICE_SW2_DPID, + 'name': DEVICE_SW2_NAME, + 'vendor': DEVICE_SW2_VENDOR, + 'hw_ver': DEVICE_SW2_HW_VER, + 'sw_ver': DEVICE_SW2_SW_VER, + 'timeout': DEVICE_SW2_TIMEOUT, + 'p4bin': DEVICE_SW2_BIN_PATH, + 'p4info': DEVICE_SW2_INFO_PATH + } +) + +DEVICE_SW3_UUID = 'SW3' +DEVICE_SW3_TIMEOUT = 60 +DEVICE_SW3_ID = json_device_id(DEVICE_SW3_UUID) +DEVICE_SW3 = json_device_p4_disabled(DEVICE_SW3_UUID) + +DEVICE_SW3_DPID = 1 +DEVICE_SW3_NAME = DEVICE_SW3_UUID +DEVICE_SW3_IP_ADDR = '10.0.2.10' +DEVICE_SW3_PORT = '50003' +DEVICE_SW3_VENDOR = 'Open Networking Foundation' +DEVICE_SW3_HW_VER = 'BMv2 simple_switch' +DEVICE_SW3_SW_VER = 'Stratum' + +DEVICE_SW3_BIN_PATH = '/root/p4/bmv2.json' +DEVICE_SW3_INFO_PATH = '/root/p4/p4info.txt' + +DEVICE_SW3_ENDPOINT_DEFS = [json_endpoint_descriptor('1', 'port'), + json_endpoint_descriptor('2', 'port')] +DEVICE_SW3_ENDPOINTS = json_endpoints(DEVICE_SW3_ID, DEVICE_SW3_ENDPOINT_DEFS) +DEVICE_SW3_ENDPOINT_IDS = json_endpoint_ids(DEVICE_SW3_ID, DEVICE_SW3_ENDPOINT_DEFS) +ENDPOINT_ID_SW3_1 = DEVICE_SW3_ENDPOINTS[0]['endpoint_id'] +ENDPOINT_ID_SW3_2 = DEVICE_SW3_ENDPOINTS[1]['endpoint_id'] + +DEVICE_SW3_CONNECT_RULES = json_device_connect_rules( + DEVICE_SW3_IP_ADDR, + DEVICE_SW3_PORT, + { + 'id': DEVICE_SW3_DPID, + 'name': DEVICE_SW3_NAME, + 'vendor': DEVICE_SW3_VENDOR, + 'hw_ver': DEVICE_SW3_HW_VER, + 'sw_ver': DEVICE_SW3_SW_VER, + 'timeout': DEVICE_SW3_TIMEOUT, + 'p4bin': DEVICE_SW3_BIN_PATH, + 'p4info': DEVICE_SW3_INFO_PATH + } +) + +DEVICE_SW4_UUID = 'SW4' +DEVICE_SW4_TIMEOUT = 60 +DEVICE_SW4_ID = json_device_id(DEVICE_SW4_UUID) +DEVICE_SW4 = json_device_p4_disabled(DEVICE_SW4_UUID) + +DEVICE_SW4_DPID = 1 +DEVICE_SW4_NAME = DEVICE_SW4_UUID +DEVICE_SW4_IP_ADDR = '10.0.2.10' +DEVICE_SW4_PORT = '50004' +DEVICE_SW4_VENDOR = 'Open Networking Foundation' +DEVICE_SW4_HW_VER = 'BMv2 simple_switch' +DEVICE_SW4_SW_VER = 'Stratum' + +DEVICE_SW4_BIN_PATH = '/root/p4/bmv2.json' +DEVICE_SW4_INFO_PATH = '/root/p4/p4info.txt' + +DEVICE_SW4_ENDPOINT_DEFS = [json_endpoint_descriptor('1', 'port'), + json_endpoint_descriptor('2', 'port')] +DEVICE_SW4_ENDPOINTS = json_endpoints(DEVICE_SW4_ID, DEVICE_SW4_ENDPOINT_DEFS) +DEVICE_SW4_ENDPOINT_IDS = json_endpoint_ids(DEVICE_SW4_ID, DEVICE_SW4_ENDPOINT_DEFS) +ENDPOINT_ID_SW4_1 = DEVICE_SW4_ENDPOINTS[0]['endpoint_id'] +ENDPOINT_ID_SW4_2 = DEVICE_SW4_ENDPOINTS[1]['endpoint_id'] + +DEVICE_SW4_CONNECT_RULES = json_device_connect_rules( + DEVICE_SW4_IP_ADDR, + DEVICE_SW4_PORT, + { + 'id': DEVICE_SW4_DPID, + 'name': DEVICE_SW4_NAME, + 'vendor': DEVICE_SW4_VENDOR, + 'hw_ver': DEVICE_SW4_HW_VER, + 'sw_ver': DEVICE_SW4_SW_VER, + 'timeout': DEVICE_SW4_TIMEOUT, + 'p4bin': DEVICE_SW4_BIN_PATH, + 'p4info': DEVICE_SW4_INFO_PATH + } +) + +DEVICE_SW5_UUID = 'SW5' +DEVICE_SW5_TIMEOUT = 60 +DEVICE_SW5_ID = json_device_id(DEVICE_SW5_UUID) +DEVICE_SW5 = json_device_p4_disabled(DEVICE_SW5_UUID) + +DEVICE_SW5_DPID = 1 +DEVICE_SW5_NAME = DEVICE_SW5_UUID +DEVICE_SW5_IP_ADDR = '10.0.2.10' +DEVICE_SW5_PORT = '50005' +DEVICE_SW5_VENDOR = 'Open Networking Foundation' +DEVICE_SW5_HW_VER = 'BMv2 simple_switch' +DEVICE_SW5_SW_VER = 'Stratum' + +DEVICE_SW5_BIN_PATH = '/root/p4/bmv2.json' +DEVICE_SW5_INFO_PATH = '/root/p4/p4info.txt' + +DEVICE_SW5_ENDPOINT_DEFS = [json_endpoint_descriptor('1', 'port'), + json_endpoint_descriptor('2', 'port')] +DEVICE_SW5_ENDPOINTS = json_endpoints(DEVICE_SW5_ID, DEVICE_SW5_ENDPOINT_DEFS) +DEVICE_SW5_ENDPOINT_IDS = json_endpoint_ids(DEVICE_SW5_ID, DEVICE_SW5_ENDPOINT_DEFS) +ENDPOINT_ID_SW5_1 = DEVICE_SW5_ENDPOINTS[0]['endpoint_id'] +ENDPOINT_ID_SW5_2 = DEVICE_SW5_ENDPOINTS[1]['endpoint_id'] + +DEVICE_SW5_CONNECT_RULES = json_device_connect_rules( + DEVICE_SW5_IP_ADDR, + DEVICE_SW5_PORT, + { + 'id': DEVICE_SW5_DPID, + 'name': DEVICE_SW5_NAME, + 'vendor': DEVICE_SW5_VENDOR, + 'hw_ver': DEVICE_SW5_HW_VER, + 'sw_ver': DEVICE_SW5_SW_VER, + 'timeout': DEVICE_SW5_TIMEOUT, + 'p4bin': DEVICE_SW5_BIN_PATH, + 'p4info': DEVICE_SW5_INFO_PATH + } +) + +DEVICE_SW6_UUID = 'SW6' +DEVICE_SW6_TIMEOUT = 60 +DEVICE_SW6_ID = json_device_id(DEVICE_SW6_UUID) +DEVICE_SW6 = json_device_p4_disabled(DEVICE_SW6_UUID) + +DEVICE_SW6_DPID = 1 +DEVICE_SW6_NAME = DEVICE_SW6_UUID +DEVICE_SW6_IP_ADDR = '10.0.2.10' +DEVICE_SW6_PORT = '50006' +DEVICE_SW6_VENDOR = 'Open Networking Foundation' +DEVICE_SW6_HW_VER = 'BMv2 simple_switch' +DEVICE_SW6_SW_VER = 'Stratum' + +DEVICE_SW6_BIN_PATH = '/root/p4/bmv2.json' +DEVICE_SW6_INFO_PATH = '/root/p4/p4info.txt' + +DEVICE_SW6_ENDPOINT_DEFS = [json_endpoint_descriptor('1', 'port'), + json_endpoint_descriptor('2', 'port'), + json_endpoint_descriptor('3', 'port')] +DEVICE_SW6_ENDPOINTS = json_endpoints(DEVICE_SW6_ID, DEVICE_SW6_ENDPOINT_DEFS) +DEVICE_SW6_ENDPOINT_IDS = json_endpoint_ids(DEVICE_SW6_ID, DEVICE_SW6_ENDPOINT_DEFS) +ENDPOINT_ID_SW6_1 = DEVICE_SW6_ENDPOINTS[0]['endpoint_id'] +ENDPOINT_ID_SW6_2 = DEVICE_SW6_ENDPOINTS[1]['endpoint_id'] +ENDPOINT_ID_SW6_3 = DEVICE_SW6_ENDPOINTS[2]['endpoint_id'] + +DEVICE_SW6_CONNECT_RULES = json_device_connect_rules( + DEVICE_SW6_IP_ADDR, + DEVICE_SW6_PORT, + { + 'id': DEVICE_SW6_DPID, + 'name': DEVICE_SW6_NAME, + 'vendor': DEVICE_SW6_VENDOR, + 'hw_ver': DEVICE_SW6_HW_VER, + 'sw_ver': DEVICE_SW6_SW_VER, + 'timeout': DEVICE_SW6_TIMEOUT, + 'p4bin': DEVICE_SW6_BIN_PATH, + 'p4info': DEVICE_SW6_INFO_PATH + } +) + +# ----- Links ---------------------------------------------------------------------------------------------------------- +LINK_SW1_SW2_UUID = get_link_uuid(ENDPOINT_ID_SW1_1, ENDPOINT_ID_SW2_1) +LINK_SW1_SW2_ID = json_link_id(LINK_SW1_SW2_UUID) +LINK_SW1_SW2 = json_link(LINK_SW1_SW2_UUID, [ENDPOINT_ID_SW1_1, ENDPOINT_ID_SW2_1]) + +LINK_SW1_SW3_UUID = get_link_uuid(ENDPOINT_ID_SW1_2, ENDPOINT_ID_SW3_1) +LINK_SW1_SW3_ID = json_link_id(LINK_SW1_SW3_UUID) +LINK_SW1_SW3 = json_link(LINK_SW1_SW3_UUID, [ENDPOINT_ID_SW1_2, ENDPOINT_ID_SW3_1]) + +LINK_SW2_SW4_UUID = get_link_uuid(ENDPOINT_ID_SW2_2, ENDPOINT_ID_SW4_1) +LINK_SW2_SW4_ID = json_link_id(LINK_SW2_SW4_UUID) +LINK_SW2_SW4 = json_link(LINK_SW2_SW4_UUID, [ENDPOINT_ID_SW2_2, ENDPOINT_ID_SW4_1]) + +LINK_SW3_SW5_UUID = get_link_uuid(ENDPOINT_ID_SW3_2, ENDPOINT_ID_SW5_1) +LINK_SW3_SW5_ID = json_link_id(LINK_SW3_SW5_UUID) +LINK_SW3_SW5 = json_link(LINK_SW3_SW5_UUID, [ENDPOINT_ID_SW3_2, ENDPOINT_ID_SW5_1]) + +LINK_SW4_SW6_UUID = get_link_uuid(ENDPOINT_ID_SW4_2, ENDPOINT_ID_SW6_1) +LINK_SW4_SW6_ID = json_link_id(LINK_SW4_SW6_UUID) +LINK_SW4_SW6 = json_link(LINK_SW4_SW6_UUID, [ENDPOINT_ID_SW4_2, ENDPOINT_ID_SW6_1]) + +LINK_SW5_SW6_UUID = get_link_uuid(ENDPOINT_ID_SW5_2, ENDPOINT_ID_SW6_2) +LINK_SW5_SW6_ID = json_link_id(LINK_SW5_SW6_UUID) +LINK_SW5_SW6 = json_link(LINK_SW5_SW6_UUID, [ENDPOINT_ID_SW5_2, ENDPOINT_ID_SW6_2]) + +# ----- Service ---------------------------------------------------------------------------------------------------------- + +#SERVICE_SW1_UUID = get_service_uuid(ENDPOINT_ID_SW1_1, ENDPOINT_ID_SW1_2) +#SERVICE_SW1 = json_service_p4_planned(SERVICE_SW1_UUID) + +#SERVICE_SW2_UUID = get_service_uuid(ENDPOINT_ID_SW2_1, ENDPOINT_ID_SW2_2) +#SERVICE_SW2 = json_service_p4_planned(SERVICE_SW2_UUID) + +SERVICE_SW1_SW6_UUID = get_service_uuid(ENDPOINT_ID_SW1_3, ENDPOINT_ID_SW6_3) +SERVICE_SW1_SW6 = json_service_p4_planned(SERVICE_SW1_SW6_UUID) +SERVICE_SW1_SW6_ENDPOINT_IDS = [DEVICE_SW1_ENDPOINT_IDS[2], DEVICE_SW6_ENDPOINT_IDS[2]] + +# ----- Object Collections --------------------------------------------------------------------------------------------- + +CONTEXTS = [CONTEXT] +TOPOLOGIES = [TOPOLOGY] + +DEVICES = [ + (DEVICE_SW1, DEVICE_SW1_CONNECT_RULES, DEVICE_SW1_ENDPOINTS), + (DEVICE_SW2, DEVICE_SW2_CONNECT_RULES, DEVICE_SW2_ENDPOINTS), + (DEVICE_SW3, DEVICE_SW3_CONNECT_RULES, DEVICE_SW3_ENDPOINTS), + (DEVICE_SW4, DEVICE_SW4_CONNECT_RULES, DEVICE_SW4_ENDPOINTS), + (DEVICE_SW5, DEVICE_SW5_CONNECT_RULES, DEVICE_SW5_ENDPOINTS), + (DEVICE_SW6, DEVICE_SW6_CONNECT_RULES, DEVICE_SW6_ENDPOINTS), +] + +LINKS = [ + LINK_SW1_SW2, + LINK_SW1_SW3, + + LINK_SW2_SW4, + LINK_SW3_SW5, + + LINK_SW4_SW6, + LINK_SW5_SW6 + ] + +#SERVICES = [(SERVICE_SW1, DEVICE_SW1_ENDPOINT_IDS), (SERVICE_SW2, DEVICE_SW2_ENDPOINT_IDS)] + +#SERVICE_SW1_SW2_ENDPOINT_IDS = DEVICE_SW1_ENDPOINT_IDS + DEVICE_SW2_ENDPOINT_IDS + +SERVICES = [(SERVICE_SW1_SW6, SERVICE_SW1_SW6_ENDPOINT_IDS)] \ No newline at end of file diff --git a/src/tests/scenario2/old_tests/tests/Objects.py b/src/tests/scenario2/old_tests/tests/Objects.py index 7eea0f4c3262793e9ba00ae80c66cc5b1ed0b8dc..43df127495d16b8494ff74cdf7dea64e44b072e1 100644 --- a/src/tests/scenario2/old_tests/tests/Objects.py +++ b/src/tests/scenario2/old_tests/tests/Objects.py @@ -18,7 +18,7 @@ from common.tools.object_factory.Context import json_context, json_context_id from common.tools.object_factory.Device import ( json_device_connect_rules, json_device_emulated_connect_rules, json_device_emulated_packet_router_disabled, json_device_emulated_tapi_disabled, json_device_id, json_device_packetrouter_disabled, json_device_tapi_disabled) -from common.tools.object_factory.EndPoint import json_endpoint, json_endpoint_id +from common.tools.object_factory.EndPoint import json_endpoint, json_endpoint_descriptor, json_endpoint_id from common.tools.object_factory.Link import json_link, json_link_id from common.tools.object_factory.Topology import json_topology, json_topology_id from common.proto.kpi_sample_types_pb2 import KpiSampleType @@ -63,16 +63,18 @@ except ImportError: #USE_REAL_DEVICES = False # Uncomment to force to use emulated devices -def json_endpoint_ids(device_id : Dict, endpoint_descriptors : List[Tuple[str, str, List[int]]]): +def json_endpoint_ids(device_id : Dict, endpoint_descriptors : List[Dict]]): return [ - json_endpoint_id(device_id, ep_uuid, topology_id=None) - for ep_uuid, _, _ in endpoint_descriptors + json_endpoint_id(device_id, ep_data['uuid'], topology_id=None) + for ep_data in endpoint_descriptors ] -def json_endpoints(device_id : Dict, endpoint_descriptors : List[Tuple[str, str, List[int]]]): +def json_endpoints(device_id : Dict, endpoint_descriptors : List[Dict]]): return [ - json_endpoint(device_id, ep_uuid, ep_type, topology_id=None, kpi_sample_types=ep_sample_types) - for ep_uuid, ep_type, ep_sample_types in endpoint_descriptors + json_endpoint( + device_id, ep_data['uuid'], ep_data['type'], topology_id=None, + kpi_sample_types=ep_data['sample_types']) + for ep_data in endpoint_descriptors ] def get_link_uuid(a_device_id : Dict, a_endpoint_id : Dict, z_device_id : Dict, z_endpoint_id : Dict) -> str: @@ -88,7 +90,8 @@ if not USE_REAL_DEVICES: DEVICE_R1_UUID = 'R1-EMU' DEVICE_R1_TIMEOUT = 120 -DEVICE_R1_ENDPOINT_DEFS = [('13/0/0', 'optical', []), ('13/1/2', 'copper', PACKET_PORT_SAMPLE_TYPES)] +DEVICE_R1_ENDPOINT_DEFS = [json_endpoint_descriptor('13/0/0', 'optical'), + json_endpoint_descriptor('13/1/2', 'copper', sample_types=PACKET_PORT_SAMPLE_TYPES)] DEVICE_R1_ID = json_device_id(DEVICE_R1_UUID) #DEVICE_R1_ENDPOINTS = json_endpoints(DEVICE_R1_ID, DEVICE_R1_ENDPOINT_DEFS) DEVICE_R1_ENDPOINT_IDS = json_endpoint_ids(DEVICE_R1_ID, DEVICE_R1_ENDPOINT_DEFS) @@ -103,7 +106,8 @@ DEVICE_R1_CONNECT_RULES = json_device_connect_rules(DEVICE_R1_ADDRESS, DEVICE_R1 DEVICE_R2_UUID = 'R2-EMU' -DEVICE_R2_ENDPOINT_DEFS = [('13/0/0', 'optical', []), ('13/1/2', 'copper', PACKET_PORT_SAMPLE_TYPES)] +DEVICE_R2_ENDPOINT_DEFS = [json_endpoint_descriptor('13/0/0', 'optical'), + json_endpoint_descriptor('13/1/2', 'copper', sample_types=PACKET_PORT_SAMPLE_TYPES)] DEVICE_R2_ID = json_device_id(DEVICE_R2_UUID) #DEVICE_R2_ENDPOINTS = json_endpoints(DEVICE_R2_ID, DEVICE_R2_ENDPOINT_DEFS) DEVICE_R2_ENDPOINT_IDS = json_endpoint_ids(DEVICE_R2_ID, DEVICE_R2_ENDPOINT_DEFS) @@ -115,7 +119,8 @@ DEVICE_R2_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_R2_ENDPOINT_ DEVICE_R3_UUID = 'R3-EMU' DEVICE_R3_TIMEOUT = 120 -DEVICE_R3_ENDPOINT_DEFS = [('13/0/0', 'optical', []), ('13/1/2', 'copper', PACKET_PORT_SAMPLE_TYPES)] +DEVICE_R3_ENDPOINT_DEFS = [json_endpoint_descriptor('13/0/0', 'optical'), + json_endpoint_descriptor('13/1/2', 'copper', sample_types=PACKET_PORT_SAMPLE_TYPES)] DEVICE_R3_ID = json_device_id(DEVICE_R3_UUID) #DEVICE_R3_ENDPOINTS = json_endpoints(DEVICE_R3_ID, DEVICE_R3_ENDPOINT_DEFS) DEVICE_R3_ENDPOINT_IDS = json_endpoint_ids(DEVICE_R3_ID, DEVICE_R3_ENDPOINT_DEFS) @@ -130,7 +135,8 @@ DEVICE_R3_CONNECT_RULES = json_device_connect_rules(DEVICE_R3_ADDRESS, DEVICE_R3 DEVICE_R4_UUID = 'R4-EMU' -DEVICE_R4_ENDPOINT_DEFS = [('13/0/0', 'optical', []), ('13/1/2', 'copper', PACKET_PORT_SAMPLE_TYPES)] +DEVICE_R4_ENDPOINT_DEFS = [json_endpoint_descriptor('13/0/0', 'optical'), + json_endpoint_descriptor('13/1/2', 'copper', sample_types=PACKET_PORT_SAMPLE_TYPES)] DEVICE_R4_ID = json_device_id(DEVICE_R4_UUID) #DEVICE_R4_ENDPOINTS = json_endpoints(DEVICE_R4_ID, DEVICE_R4_ENDPOINT_DEFS) DEVICE_R4_ENDPOINT_IDS = json_endpoint_ids(DEVICE_R4_ID, DEVICE_R4_ENDPOINT_DEFS) @@ -143,10 +149,10 @@ DEVICE_R4_CONNECT_RULES = json_device_emulated_connect_rules(DEVICE_R4_ENDPOINT_ DEVICE_O1_UUID = 'O1-OLS' DEVICE_O1_TIMEOUT = 120 DEVICE_O1_ENDPOINT_DEFS = [ - ('aade6001-f00b-5e2f-a357-6a0a9d3de870', 'optical', []), # node_1_port_13 - ('eb287d83-f05e-53ec-ab5a-adf6bd2b5418', 'optical', []), # node_2_port_13 - ('0ef74f99-1acc-57bd-ab9d-4b958b06c513', 'optical', []), # node_3_port_13 - ('50296d99-58cc-5ce7-82f5-fc8ee4eec2ec', 'optical', []), # node_4_port_13 + json_endpoint_descriptor('aade6001-f00b-5e2f-a357-6a0a9d3de870', 'optical', endpoint_name='node_1_port_13'), + json_endpoint_descriptor('eb287d83-f05e-53ec-ab5a-adf6bd2b5418', 'optical', endpoint_name='node_2_port_13'), + json_endpoint_descriptor('0ef74f99-1acc-57bd-ab9d-4b958b06c513', 'optical', endpoint_name='node_3_port_13'), + json_endpoint_descriptor('50296d99-58cc-5ce7-82f5-fc8ee4eec2ec', 'optical', endpoint_name='node_4_port_13'), ] DEVICE_O1_ID = json_device_id(DEVICE_O1_UUID) DEVICE_O1 = json_device_tapi_disabled(DEVICE_O1_UUID) diff --git a/src/tests/scenario3/l3/README.md b/src/tests/scenario3/l3/README.md index f66d8e351033d2762a77269243b6d3bb2a1d7022..2e243997d29b70436d1a1b88e2a3177951bfe970 100644 --- a/src/tests/scenario3/l3/README.md +++ b/src/tests/scenario3/l3/README.md @@ -1,3 +1,9 @@ -# Scripts to automatically run the "Attack Detection & Mitigation at the L3 Layer" workflow (Scenario 3). -"launch_l3_attack_detection_and_mitigation.sh" launches the TeraFlow OS components, which includes the CentralizedAttackDetector and AttackMitigator componentes necessary to perform this workflow. -"launch_l3_attack_detection_and_mitigation_complete.sh" also launches the DistributedAttackDetector, which monitors the network data plane and passively collects traffic packets and aggregates them in network flows, which are then provided to the CentralizedAttackDetector to detect attacks that may be occurring in the network. +# Demonstration of a L3 Cybersecurity Components for Attack Detection and Mitigation + +__Authors__: Partners of Universidad Politécnica de Madrid and Telefónica I+D + +## Executing + +```bash +python src/tests/scenario3/l3/run.sh +``` \ No newline at end of file diff --git a/src/tests/scenario3/l3/copy_protos_to_dad.sh b/src/tests/scenario3/l3/copy_protos_to_dad.sh deleted file mode 100755 index 6735d9cf95d2243e6f87b5508c2e3f7b9756c474..0000000000000000000000000000000000000000 --- a/src/tests/scenario3/l3/copy_protos_to_dad.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) -# -# 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. - -# Set the variables for the remote host and destination directory -REMOTE_HOST="192.168.165.73" -DEST_DIR="/home/ubuntu/TeraflowDockerDistributed/l3_distributedattackdetector/proto" - -# Copy the files to the remote host -sshpass -p "ubuntu" scp /home/ubuntu/tfs-ctrl-new/proto/src/python/l3_centralizedattackdetector_pb2.py "$REMOTE_HOST:$DEST_DIR" -sshpass -p "ubuntu" scp /home/ubuntu/tfs-ctrl-new/proto/src/python/l3_centralizedattackdetector_pb2_grpc.py "$REMOTE_HOST:$DEST_DIR" - -sshpass -p "ubuntu" scp /home/ubuntu/tfs-ctrl-new/proto/src/python/l3_attackmitigator_pb2.py "$REMOTE_HOST:$DEST_DIR" -sshpass -p "ubuntu" scp /home/ubuntu/tfs-ctrl-new/proto/src/python/l3_attackmitigator_pb2_grpc.py "$REMOTE_HOST:$DEST_DIR" diff --git a/src/tests/scenario3/l3/launch_l3_attack_detection_and_mitigation.sh b/src/tests/scenario3/l3/deploy.sh old mode 100644 new mode 100755 similarity index 90% rename from src/tests/scenario3/l3/launch_l3_attack_detection_and_mitigation.sh rename to src/tests/scenario3/l3/deploy.sh index a22d98bad6c203c825d3343c44e3d31674a41ec0..4f4f8baed2c29b290142f30960f8432926cef6a8 --- a/src/tests/scenario3/l3/launch_l3_attack_detection_and_mitigation.sh +++ b/src/tests/scenario3/l3/deploy.sh @@ -13,12 +13,8 @@ # See the License for the specific language governing permissions and # limitations under the License. -cd /home/ubuntu/tfs-ctrl -source my_deploy.sh -./deploy.sh -./show_deploy.sh - +source src/tests/scenario3/l3/deploy_specs.sh +./deploy/all.sh source tfs_runtime_env_vars.sh - ofc22/run_test_01_bootstrap.sh ofc22/run_test_02_create_service.sh diff --git a/src/tests/scenario3/l3/deploy_l3_component.sh b/src/tests/scenario3/l3/deploy_l3_component.sh deleted file mode 100755 index 8e468c9067c93a06c6716ac618f5c9fdba860d34..0000000000000000000000000000000000000000 --- a/src/tests/scenario3/l3/deploy_l3_component.sh +++ /dev/null @@ -1,60 +0,0 @@ -#!/bin/bash -# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) -# -# 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. - -component=$1 - -source "my_deploy.sh" - -echo "Deploying $component..." - -# check if component == "CAD" -if [ $component == "CAD" ]; then - # find kubernetes pod that contains "centralizedattackdetectorservice" - pod=$(kubectl --namespace $TFS_K8S_NAMESPACE get pods | grep l3-centralizedattackdetectorservice | awk '{print $1}') - - # delete pod - kubectl --namespace $TFS_K8S_NAMESPACE delete pod $pod --force --grace-period=0 - - # # wait for pod to be deleted - # while [ $(kubectl --namespace $TFS_K8S_NAMESPACE get pods | grep l3-centralizedattackdetectorservice | wc -l) -gt 0 ]; do - # sleep 1 - # done - - # deploy l3_centralizedattackdetector component - ./deploy_component.sh "l3_centralizedattackdetector" -fi - -# check if component == "AM" -if [ $component == "AM" ]; then - # find kubernetes pod that contains "l3-attackmitigatorservice" - pod=$(kubectl --namespace $TFS_K8S_NAMESPACE get pods | grep l3-attackmitigatorservice | awk '{print $1}') - - # delete pod - kubectl --namespace $TFS_K8S_NAMESPACE delete pod $pod --force --grace-period=0 - - # # wait for pod to be deleted - # while [ $(kubectl --namespace $TFS_K8S_NAMESPACE get pods | grep l3-attackmitigatorservice | wc -l) -gt 0 ]; do - # sleep 1 - # done - - # deploy l3_attackmitigator component - ./deploy_component.sh "l3_attackmitigator" -fi - -echo "Component $component deployed" - -echo "Restarting DAD..." -sshpass -p "ubuntu" ssh -o StrictHostKeyChecking=no -n -f ubuntu@192.168.165.73 "sh -c 'nohup /home/ubuntu/TeraflowDockerDistributed/restart.sh > /dev/null 2>&1 &'" -echo "DAD restarted" diff --git a/src/tests/scenario3/l3/deploy_specs.sh b/src/tests/scenario3/l3/deploy_specs.sh new file mode 100644 index 0000000000000000000000000000000000000000..8c8264fca75d471c3bbbf0cb523c7a17bcffa5a0 --- /dev/null +++ b/src/tests/scenario3/l3/deploy_specs.sh @@ -0,0 +1,148 @@ +#!/bin/bash +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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. + + +# ----- TeraFlowSDN ------------------------------------------------------------ + +# Set the URL of the internal MicroK8s Docker registry where the images will be uploaded to. +export TFS_REGISTRY_IMAGES="http://localhost:32000/tfs/" + +# Set the list of components, separated by spaces, you want to build images for, and deploy. +#export TFS_COMPONENTS="context device pathcomp service slice compute webui load_generator" +export TFS_COMPONENTS="context device pathcomp service slice webui" + +# Uncomment to activate Monitoring +export TFS_COMPONENTS="${TFS_COMPONENTS} monitoring" + +# Uncomment to activate Automation and Policy Manager +#export TFS_COMPONENTS="${TFS_COMPONENTS} automation policy" + +# Uncomment to activate Optical CyberSecurity +#export TFS_COMPONENTS="${TFS_COMPONENTS} dbscanserving opticalattackmitigator opticalattackdetector opticalattackmanager" + +# Uncomment to activate L3 CyberSecurity +export TFS_COMPONENTS="${TFS_COMPONENTS} l3_attackmitigator l3_centralizedattackdetector" + +# Uncomment to activate TE +#export TFS_COMPONENTS="${TFS_COMPONENTS} te" + +# Set the tag you want to use for your images. +export TFS_IMAGE_TAG="dev" + +# Set the name of the Kubernetes namespace to deploy TFS to. +export TFS_K8S_NAMESPACE="tfs" + +# Set additional manifest files to be applied after the deployment +export TFS_EXTRA_MANIFESTS="manifests/nginx_ingress_http.yaml" + +# Uncomment to monitor performance of components +export TFS_EXTRA_MANIFESTS="${TFS_EXTRA_MANIFESTS} manifests/servicemonitors.yaml" + +# Uncomment when deploying Optical CyberSecurity +#export TFS_EXTRA_MANIFESTS="${TFS_EXTRA_MANIFESTS} manifests/cachingservice.yaml" + +# Set the new Grafana admin password +export TFS_GRAFANA_PASSWORD="admin123+" + +# Disable skip-build flag to rebuild the Docker images. +export TFS_SKIP_BUILD="" + + +# ----- CockroachDB ------------------------------------------------------------ + +# Set the namespace where CockroackDB will be deployed. +export CRDB_NAMESPACE="crdb" + +# Set the external port CockroackDB Postgre SQL interface will be exposed to. +export CRDB_EXT_PORT_SQL="26257" + +# Set the external port CockroackDB HTTP Mgmt GUI interface will be exposed to. +export CRDB_EXT_PORT_HTTP="8081" + +# Set the database username to be used by Context. +export CRDB_USERNAME="tfs" + +# Set the database user's password to be used by Context. +export CRDB_PASSWORD="tfs123" + +# Set the database name to be used by Context. +export CRDB_DATABASE="tfs" + +# Set CockroachDB installation mode to 'single'. This option is convenient for development and testing. +# See ./deploy/all.sh or ./deploy/crdb.sh for additional details +export CRDB_DEPLOY_MODE="single" + +# Disable flag for dropping database, if it exists. +export CRDB_DROP_DATABASE_IF_EXISTS="YES" + +# Disable flag for re-deploying CockroachDB from scratch. +export CRDB_REDEPLOY="" + + +# ----- NATS ------------------------------------------------------------------- + +# Set the namespace where NATS will be deployed. +export NATS_NAMESPACE="nats" + +# Set the external port NATS Client interface will be exposed to. +export NATS_EXT_PORT_CLIENT="4222" + +# Set the external port NATS HTTP Mgmt GUI interface will be exposed to. +export NATS_EXT_PORT_HTTP="8222" + +# Disable flag for re-deploying NATS from scratch. +export NATS_REDEPLOY="" + + +# ----- QuestDB ---------------------------------------------------------------- + +# Set the namespace where QuestDB will be deployed. +export QDB_NAMESPACE="qdb" + +# Set the external port QuestDB Postgre SQL interface will be exposed to. +export QDB_EXT_PORT_SQL="8812" + +# Set the external port QuestDB Influx Line Protocol interface will be exposed to. +export QDB_EXT_PORT_ILP="9009" + +# Set the external port QuestDB HTTP Mgmt GUI interface will be exposed to. +export QDB_EXT_PORT_HTTP="9000" + +# Set the database username to be used for QuestDB. +export QDB_USERNAME="admin" + +# Set the database user's password to be used for QuestDB. +export QDB_PASSWORD="quest" + +# Set the table name to be used by Monitoring for KPIs. +export QDB_TABLE_MONITORING_KPIS="tfs_monitoring_kpis" + +# Set the table name to be used by Slice for plotting groups. +export QDB_TABLE_SLICE_GROUPS="tfs_slice_groups" + +# Disable flag for dropping tables if they exist. +export QDB_DROP_TABLES_IF_EXIST="YES" + +# Disable flag for re-deploying QuestDB from scratch. +export QDB_REDEPLOY="" + + +# ----- K8s Observability ------------------------------------------------------ + +# Set the external port Prometheus Mgmt HTTP GUI interface will be exposed to. +export PROM_EXT_PORT_HTTP="9090" + +# Set the external port Grafana HTTP Dashboards will be exposed to. +export GRAF_EXT_PORT_HTTP="3000" diff --git a/src/tests/scenario3/l3/grafana_dashboard.json b/src/tests/scenario3/l3/grafana_dashboard.json new file mode 100644 index 0000000000000000000000000000000000000000..3376931290b3a63ca9ee70ca8ad558b21e732f6a --- /dev/null +++ b/src/tests/scenario3/l3/grafana_dashboard.json @@ -0,0 +1,1211 @@ +{ + "overwrite": true, + "folderId": 0, + "dashboard": { + "id": null, + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": { + "type": "datasource", + "uid": "grafana" + }, + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "target": { + "limit": 100, + "matchAny": false, + "tags": [], + "type": "dashboard" + }, + "type": "dashboard" + } + ] + }, + "editable": true, + "fiscalYearStartMonth": 0, + "graphTooltip": 0, + "iteration": 1675103296430, + "links": [], + "liveNow": false, + "panels": [ + { + "datasource": { + "type": "postgres", + "uid": "questdb" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "smooth", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "always", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [ + { + "matcher": { + "id": "byRegexp", + "options": ".*PACKETS_.*" + }, + "properties": [ + { + "id": "custom.axisPlacement", + "value": "left" + }, + { + "id": "unit", + "value": "pps" + }, + { + "id": "custom.axisLabel", + "value": "Packets / sec" + }, + { + "id": "custom.axisSoftMin", + "value": 0 + } + ] + }, + { + "matcher": { + "id": "byRegexp", + "options": ".*BYTES_.*" + }, + "properties": [ + { + "id": "custom.axisPlacement", + "value": "right" + }, + { + "id": "unit", + "value": "Bps" + }, + { + "id": "custom.axisLabel", + "value": "Bytes / sec" + }, + { + "id": "custom.axisSoftMin", + "value": 0 + } + ] + } + ] + }, + "gridPos": { + "h": 9, + "w": 8, + "x": 0, + "y": 0 + }, + "id": 2, + "options": { + "legend": { + "calcs": [ + "first", + "min", + "mean", + "max", + "lastNotNull" + ], + "displayMode": "table", + "placement": "bottom" + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "postgres", + "uid": "questdb" + }, + "format": "time_series", + "group": [], + "hide": false, + "metricColumn": "kpi_value", + "rawQuery": true, + "rawSql": "SELECT\r\n $__time(timestamp), kpi_value AS metric, service_id, kpi_sample_type\r\nFROM\r\n tfs_monitoring\r\nWHERE\r\n $__timeFilter(timestamp) AND device_name IN (${device_name}) AND endpoint_name IN (${endpoint_name}) AND kpi_sample_type IN (${kpi_sample_type}) AND kpi_sample_type LIKE 'L3_SECURITY_STATUS_CRYPTO'\r\nGROUP BY\r\n device_name, endpoint_name, kpi_sample_type\r\nORDER BY\r\n timestamp", + "refId": "A", + "select": [ + [ + { + "params": [ + "kpi_value" + ], + "type": "column" + } + ] + ], + "table": "monitoring", + "timeColumn": "timestamp", + "where": [ + { + "name": "", + "params": [ + "device_id", + "IN", + "$device_id" + ], + "type": "expression" + } + ] + } + ], + "title": "L3 Security Status Crypto", + "transformations": [ + { + "id": "renameByRegex", + "options": { + "regex": "metric {kpi_sample_type=\\\"([^\\\"]+)\\\", service_id=\\\"([^\\\"]+)\\\"}", + "renamePattern": "Security Status Crypto - L3 (Service Id: $2)" + } + } + ], + "type": "timeseries" + }, + { + "datasource": { + "type": "postgres", + "uid": "questdb" + }, + "fieldConfig": { + "defaults": { + "color": { + "fixedColor": "#2635d4", + "mode": "fixed" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "smooth", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "always", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [ + { + "matcher": { + "id": "byRegexp", + "options": ".*PACKETS_.*" + }, + "properties": [ + { + "id": "custom.axisPlacement", + "value": "left" + }, + { + "id": "unit", + "value": "pps" + }, + { + "id": "custom.axisLabel", + "value": "Packets / sec" + }, + { + "id": "custom.axisSoftMin", + "value": 0 + } + ] + }, + { + "matcher": { + "id": "byRegexp", + "options": ".*BYTES_.*" + }, + "properties": [ + { + "id": "custom.axisPlacement", + "value": "right" + }, + { + "id": "unit", + "value": "Bps" + }, + { + "id": "custom.axisLabel", + "value": "Bytes / sec" + }, + { + "id": "custom.axisSoftMin", + "value": 0 + } + ] + } + ] + }, + "gridPos": { + "h": 9, + "w": 8, + "x": 8, + "y": 0 + }, + "id": 3, + "options": { + "legend": { + "calcs": [ + "first", + "min", + "mean", + "max", + "lastNotNull" + ], + "displayMode": "table", + "placement": "bottom" + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "postgres", + "uid": "questdb" + }, + "format": "time_series", + "group": [], + "hide": false, + "metricColumn": "kpi_value", + "rawQuery": true, + "rawSql": "SELECT\r\n $__time(timestamp), kpi_value AS metric, service_id, kpi_sample_type\r\nFROM\r\n tfs_monitoring\r\nWHERE\r\n $__timeFilter(timestamp) AND device_name IN (${device_name}) AND endpoint_name IN (${endpoint_name}) AND kpi_sample_type IN (${kpi_sample_type}) AND kpi_sample_type LIKE 'ML_CONFIDENCE'\r\nGROUP BY\r\n device_name, endpoint_name, kpi_sample_type\r\nORDER BY\r\n timestamp", + "refId": "A", + "select": [ + [ + { + "params": [ + "kpi_value" + ], + "type": "column" + } + ] + ], + "table": "monitoring", + "timeColumn": "timestamp", + "where": [ + { + "name": "", + "params": [ + "device_id", + "IN", + "$device_id" + ], + "type": "expression" + } + ] + } + ], + "title": "L3 ML Confidence", + "transformations": [ + { + "id": "renameByRegex", + "options": { + "regex": "metric {kpi_sample_type=\\\"([^\\\"]+)\\\", service_id=\\\"([^\\\"]+)\\\"}", + "renamePattern": "ML Confidence - L3 (Service Id: $2)" + } + } + ], + "type": "timeseries" + }, + { + "datasource": { + "type": "postgres", + "uid": "questdb" + }, + "fieldConfig": { + "defaults": { + "color": { + "fixedColor": "dark-orange", + "mode": "fixed" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "smooth", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "always", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [ + { + "matcher": { + "id": "byRegexp", + "options": ".*PACKETS_.*" + }, + "properties": [ + { + "id": "custom.axisPlacement", + "value": "left" + }, + { + "id": "unit", + "value": "pps" + }, + { + "id": "custom.axisLabel", + "value": "Packets / sec" + }, + { + "id": "custom.axisSoftMin", + "value": 0 + } + ] + }, + { + "matcher": { + "id": "byRegexp", + "options": ".*BYTES_.*" + }, + "properties": [ + { + "id": "custom.axisPlacement", + "value": "right" + }, + { + "id": "unit", + "value": "Bps" + }, + { + "id": "custom.axisLabel", + "value": "Bytes / sec" + }, + { + "id": "custom.axisSoftMin", + "value": 0 + } + ] + } + ] + }, + "gridPos": { + "h": 9, + "w": 8, + "x": 16, + "y": 0 + }, + "id": 4, + "options": { + "legend": { + "calcs": [ + "first", + "min", + "mean", + "max", + "lastNotNull" + ], + "displayMode": "table", + "placement": "bottom" + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "postgres", + "uid": "questdb" + }, + "format": "time_series", + "group": [], + "hide": false, + "metricColumn": "kpi_value", + "rawQuery": true, + "rawSql": "SELECT\r\n $__time(timestamp), kpi_value AS metric, service_id, kpi_sample_type\r\nFROM\r\n tfs_monitoring\r\nWHERE\r\n $__timeFilter(timestamp) AND device_name IN (${device_name}) AND endpoint_name IN (${endpoint_name}) AND kpi_sample_type IN (${kpi_sample_type}) AND kpi_sample_type LIKE 'L3_UNIQUE_ATTACK_CONNS'\r\nGROUP BY\r\n device_name, endpoint_name, kpi_sample_type\r\nORDER BY\r\n timestamp", + "refId": "A", + "select": [ + [ + { + "params": [ + "kpi_value" + ], + "type": "column" + } + ] + ], + "table": "monitoring", + "timeColumn": "timestamp", + "where": [ + { + "name": "", + "params": [ + "device_id", + "IN", + "$device_id" + ], + "type": "expression" + } + ] + } + ], + "title": "L3 Unique Attack Connections", + "transformations": [ + { + "id": "renameByRegex", + "options": { + "regex": "metric {kpi_sample_type=\\\"([^\\\"]+)\\\", service_id=\\\"([^\\\"]+)\\\"}", + "renamePattern": "Unique Attack Connections - L3 (Service Id: $2)" + } + } + ], + "type": "timeseries" + }, + { + "datasource": { + "type": "postgres", + "uid": "questdb" + }, + "fieldConfig": { + "defaults": { + "color": { + "fixedColor": "#ad3fe3", + "mode": "fixed" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "smooth", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "always", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [ + { + "matcher": { + "id": "byRegexp", + "options": ".*PACKETS_.*" + }, + "properties": [ + { + "id": "custom.axisPlacement", + "value": "left" + }, + { + "id": "unit", + "value": "pps" + }, + { + "id": "custom.axisLabel", + "value": "Packets / sec" + }, + { + "id": "custom.axisSoftMin", + "value": 0 + } + ] + }, + { + "matcher": { + "id": "byRegexp", + "options": ".*BYTES_.*" + }, + "properties": [ + { + "id": "custom.axisPlacement", + "value": "right" + }, + { + "id": "unit", + "value": "Bps" + }, + { + "id": "custom.axisLabel", + "value": "Bytes / sec" + }, + { + "id": "custom.axisSoftMin", + "value": 0 + } + ] + } + ] + }, + "gridPos": { + "h": 9, + "w": 12, + "x": 0, + "y": 9 + }, + "id": 5, + "options": { + "legend": { + "calcs": [ + "first", + "min", + "mean", + "max", + "lastNotNull" + ], + "displayMode": "table", + "placement": "bottom" + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "postgres", + "uid": "questdb" + }, + "format": "time_series", + "group": [], + "hide": false, + "metricColumn": "kpi_value", + "rawQuery": true, + "rawSql": "SELECT\r\n $__time(timestamp), kpi_value AS metric, service_id, kpi_sample_type\r\nFROM\r\n tfs_monitoring\r\nWHERE\r\n $__timeFilter(timestamp) AND device_name IN (${device_name}) AND endpoint_name IN (${endpoint_name}) AND kpi_sample_type IN (${kpi_sample_type}) AND kpi_sample_type LIKE 'L3_UNIQUE_COMPROMISED_CLIENTS'\r\nGROUP BY\r\n device_name, endpoint_name, kpi_sample_type\r\nORDER BY\r\n timestamp", + "refId": "A", + "select": [ + [ + { + "params": [ + "kpi_value" + ], + "type": "column" + } + ] + ], + "table": "monitoring", + "timeColumn": "timestamp", + "where": [ + { + "name": "", + "params": [ + "device_id", + "IN", + "$device_id" + ], + "type": "expression" + } + ] + } + ], + "title": "L3 Unique Compromised Clients", + "transformations": [ + { + "id": "renameByRegex", + "options": { + "regex": "metric {kpi_sample_type=\\\"([^\\\"]+)\\\", service_id=\\\"([^\\\"]+)\\\"}", + "renamePattern": "Unique Compromised Clients - L3 (Service Id: $2)" + } + } + ], + "type": "timeseries" + }, + { + "datasource": { + "type": "postgres", + "uid": "questdb" + }, + "fieldConfig": { + "defaults": { + "color": { + "fixedColor": "#f6ca1b", + "mode": "fixed" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "smooth", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "always", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [ + { + "matcher": { + "id": "byRegexp", + "options": ".*PACKETS_.*" + }, + "properties": [ + { + "id": "custom.axisPlacement", + "value": "left" + }, + { + "id": "unit", + "value": "pps" + }, + { + "id": "custom.axisLabel", + "value": "Packets / sec" + }, + { + "id": "custom.axisSoftMin", + "value": 0 + } + ] + }, + { + "matcher": { + "id": "byRegexp", + "options": ".*BYTES_.*" + }, + "properties": [ + { + "id": "custom.axisPlacement", + "value": "right" + }, + { + "id": "unit", + "value": "Bps" + }, + { + "id": "custom.axisLabel", + "value": "Bytes / sec" + }, + { + "id": "custom.axisSoftMin", + "value": 0 + } + ] + } + ] + }, + "gridPos": { + "h": 9, + "w": 12, + "x": 12, + "y": 9 + }, + "id": 6, + "options": { + "legend": { + "calcs": [ + "first", + "min", + "mean", + "max", + "lastNotNull" + ], + "displayMode": "table", + "placement": "bottom" + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "postgres", + "uid": "questdb" + }, + "format": "time_series", + "group": [], + "hide": false, + "metricColumn": "kpi_value", + "rawQuery": true, + "rawSql": "SELECT\r\n $__time(timestamp), kpi_value AS metric, service_id, kpi_sample_type\r\nFROM\r\n tfs_monitoring\r\nWHERE\r\n $__timeFilter(timestamp) AND device_name IN (${device_name}) AND endpoint_name IN (${endpoint_name}) AND kpi_sample_type IN (${kpi_sample_type}) AND kpi_sample_type LIKE 'L3_UNIQUE_ATTACKERS'\r\nGROUP BY\r\n device_name, endpoint_name, kpi_sample_type\r\nORDER BY\r\n timestamp", + "refId": "A", + "select": [ + [ + { + "params": [ + "kpi_value" + ], + "type": "column" + } + ] + ], + "table": "monitoring", + "timeColumn": "timestamp", + "where": [ + { + "name": "", + "params": [ + "device_id", + "IN", + "$device_id" + ], + "type": "expression" + } + ] + } + ], + "title": "L3 Unique Attackers", + "transformations": [ + { + "id": "renameByRegex", + "options": { + "regex": "metric {kpi_sample_type=\\\"([^\\\"]+)\\\", service_id=\\\"([^\\\"]+)\\\"}", + "renamePattern": "Unique Attackers - L3 (Service Id: $2)" + } + } + ], + "type": "timeseries" + }, + { + "datasource": { + "type": "postgres", + "uid": "questdb" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "smooth", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "always", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [ + { + "matcher": { + "id": "byRegexp", + "options": ".*PACKETS_.*" + }, + "properties": [ + { + "id": "custom.axisPlacement", + "value": "left" + }, + { + "id": "unit", + "value": "pps" + }, + { + "id": "custom.axisLabel", + "value": "Packets / sec" + }, + { + "id": "custom.axisSoftMin", + "value": 0 + } + ] + }, + { + "matcher": { + "id": "byRegexp", + "options": ".*BYTES_.*" + }, + "properties": [ + { + "id": "custom.axisPlacement", + "value": "right" + }, + { + "id": "unit", + "value": "Bps" + }, + { + "id": "custom.axisLabel", + "value": "Bytes / sec" + }, + { + "id": "custom.axisSoftMin", + "value": 0 + } + ] + } + ] + }, + "gridPos": { + "h": 19, + "w": 24, + "x": 0, + "y": 18 + }, + "id": 7, + "options": { + "legend": { + "calcs": [ + "first", + "min", + "mean", + "max", + "lastNotNull" + ], + "displayMode": "table", + "placement": "bottom" + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "postgres", + "uid": "questdb" + }, + "format": "time_series", + "group": [], + "hide": false, + "metricColumn": "kpi_value", + "rawQuery": true, + "rawSql": "SELECT\r\n $__time(timestamp), kpi_value AS metric, device_name, endpoint_name, kpi_sample_type\r\nFROM\r\n tfs_monitoring\r\nWHERE\r\n $__timeFilter(timestamp) AND device_name IN (${device_name}) AND endpoint_name IN (${endpoint_name}) AND kpi_sample_type IN (${kpi_sample_type})\r\nGROUP BY\r\n device_name, endpoint_name, kpi_sample_type\r\nORDER BY\r\n timestamp", + "refId": "A", + "select": [ + [ + { + "params": [ + "kpi_value" + ], + "type": "column" + } + ] + ], + "table": "monitoring", + "timeColumn": "timestamp", + "where": [ + { + "name": "", + "params": [ + "device_id", + "IN", + "$device_id" + ], + "type": "expression" + } + ] + } + ], + "title": "L3 Monitoring Packets/Bytes Received/Sent", + "transformations": [ + { + "id": "renameByRegex", + "options": { + "regex": "metric {device_name=\\\"([^\\\"]+)\\\", endpoint_name=\\\"([^\\\"]+)\\\", kpi_sample_type=\\\"([^\\\"]+)\\\"}", + "renamePattern": "$3 ($1 : $2)" + } + } + ], + "type": "timeseries" + } + ], + "refresh": "5s", + "schemaVersion": 36, + "style": "dark", + "tags": [], + "templating": { + "list": [ + { + "current": { + "selected": true, + "text": [ + "All" + ], + "value": [ + "$__all" + ] + }, + "datasource": { + "type": "postgres", + "uid": "questdb" + }, + "definition": "SELECT DISTINCT device_name FROM tfs_monitoring;", + "hide": 0, + "includeAll": true, + "label": "Device", + "multi": true, + "name": "device_name", + "options": [], + "query": "SELECT DISTINCT device_name FROM tfs_monitoring;", + "refresh": 2, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query" + }, + { + "current": { + "selected": true, + "text": [ + "All" + ], + "value": [ + "$__all" + ] + }, + "datasource": { + "type": "postgres", + "uid": "questdb" + }, + "definition": "SELECT DISTINCT endpoint_name FROM tfs_monitoring WHERE device_name IN (${device_name})", + "hide": 0, + "includeAll": true, + "label": "EndPoint", + "multi": true, + "name": "endpoint_name", + "options": [], + "query": "SELECT DISTINCT endpoint_name FROM tfs_monitoring WHERE device_name IN (${device_name})", + "refresh": 2, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query" + }, + { + "current": { + "selected": true, + "text": [ + "All" + ], + "value": [ + "$__all" + ] + }, + "datasource": { + "type": "postgres", + "uid": "questdb" + }, + "definition": "SELECT DISTINCT kpi_sample_type FROM tfs_monitoring;", + "hide": 0, + "includeAll": true, + "label": "Kpi Sample Type", + "multi": true, + "name": "kpi_sample_type", + "options": [], + "query": "SELECT DISTINCT kpi_sample_type FROM tfs_monitoring;", + "refresh": 2, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query" + } + ] + }, + "time": { + "from": "now-5m", + "to": "now" + }, + "timepicker": {}, + "timezone": "utc", + "title": "L3 Monitoring", + "uid": "tf-l3-monit", + "version": 6, + "weekStart": "" + } +} \ No newline at end of file diff --git a/src/tests/scenario3/l3/run.sh b/src/tests/scenario3/l3/run.sh new file mode 100644 index 0000000000000000000000000000000000000000..c62ea89ea7e9bfd15e387af56ec19f23206df945 --- /dev/null +++ b/src/tests/scenario3/l3/run.sh @@ -0,0 +1,29 @@ +#!/bin/bash +# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) +# +# 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. + +# Deploy TeraFlowSDN with L3 Cybersecurity Components for Attack Detection and Mitigation +echo "Deploying TFS with L3 Cybersecurity Components for Attack Detection and Mitigation..." +./deploy.sh +echo "TFS deployed." + +# Deploy Distributed Attack Detector +if $DAD_NODE_PASSWORD == "" || $DAD_NODE_IP == ""; then + echo "Please set the DAD_NODE_PASSWORD and DAD_NODE_IP environment variables." + exit 1 +fi + +echo "Deploying Distributed Attack Detector..." +sshpass -p $DAD_NODE_PASSWORD ssh -o StrictHostKeyChecking=no -n -f ubuntu@$DAD_NODE_IP "sh -c 'nohup /home/ubuntu/TeraflowDockerDistributed/restart.sh > /dev/null 2>&1 &'" +echo "Distributed Attack Detector deployed." \ No newline at end of file diff --git a/src/tests/scenario3/optical/dashboard.json b/src/tests/scenario3/optical/dashboard.json index 990ab47e95f9db5bc021ca91333f4c5fe61f7ff7..0ec738eacd422138c4a93d5a75b1864279173132 100644 --- a/src/tests/scenario3/optical/dashboard.json +++ b/src/tests/scenario3/optical/dashboard.json @@ -66,6 +66,7 @@ "liveNow": false, "panels": [ { + "collapsed": false, "gridPos": { "h": 1, "w": 24, @@ -73,6 +74,7 @@ "y": 0 }, "id": 12, + "panels": [], "title": "General status", "type": "row" }, @@ -216,7 +218,7 @@ "options": { "legend": { "calcs": [], - "displayMode": "list", + "displayMode": "hidden", "placement": "bottom" }, "tooltip": { @@ -230,7 +232,11 @@ "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, - "expr": "tfs_opticalattackmanager_dropped_assessments_created", + "editorMode": "code", + "exemplar": false, + "expr": "rate(tfs_opticalattackmanager_dropped_assessments_created[1m])", + "instant": false, + "range": true, "refId": "A" } ], @@ -238,6 +244,7 @@ "type": "timeseries" }, { + "collapsed": false, "gridPos": { "h": 1, "w": 24, @@ -245,6 +252,7 @@ "y": 9 }, "id": 10, + "panels": [], "title": "Pipeline", "type": "row" }, @@ -253,6 +261,7 @@ "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, + "description": "", "fieldConfig": { "defaults": { "color": { @@ -309,11 +318,11 @@ "x": 0, "y": 10 }, - "id": 16, + "id": 14, "options": { "legend": { "calcs": [], - "displayMode": "list", + "displayMode": "hidden", "placement": "bottom" }, "tooltip": { @@ -328,25 +337,13 @@ "uid": "${DS_PROMETHEUS}" }, "editorMode": "code", - "expr": "histogram_quantile(0.95, sum(rate(tfs_opticalattackmanager_loop_seconds_bucket[$__rate_interval])) by (le))", - "legendFormat": "Measured", + "expr": "tfs_opticalattackmanager_active_services", + "legendFormat": "Active services", "range": true, "refId": "A" - }, - { - "datasource": { - "type": "prometheus", - "uid": "${DS_PROMETHEUS}" - }, - "editorMode": "code", - "expr": "tfs_opticalattackmanager_desired_monitoring_interval", - "hide": false, - "legendFormat": "Desired", - "range": true, - "refId": "B" } ], - "title": "Loop time", + "title": "Number of active optical services", "type": "timeseries" }, { @@ -354,7 +351,6 @@ "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, - "description": "", "fieldConfig": { "defaults": { "color": { @@ -411,7 +407,7 @@ "x": 12, "y": 10 }, - "id": 14, + "id": 16, "options": { "legend": { "calcs": [], @@ -430,13 +426,25 @@ "uid": "${DS_PROMETHEUS}" }, "editorMode": "code", - "expr": "tfs_opticalattackmanager_active_services", - "legendFormat": "Active services", + "expr": "histogram_quantile(0.95, sum(rate(tfs_opticalattackmanager_loop_seconds_bucket[$__rate_interval])) by (le))", + "legendFormat": "Measured", "range": true, "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${DS_PROMETHEUS}" + }, + "editorMode": "code", + "expr": "tfs_opticalattackmanager_desired_monitoring_interval", + "hide": false, + "legendFormat": "Desired", + "range": true, + "refId": "B" } ], - "title": "Number of active optical services", + "title": "Loop time", "type": "timeseries" }, { @@ -543,7 +551,7 @@ "uid": "${DS_PROMETHEUS}" }, "editorMode": "code", - "expr": "histogram_quantile(0.95, sum(rate(tfs_opticalattackdetector_inference_response_time_bucket[$__rate_interval])) by (le))", + "expr": "histogram_quantile(0.95, sum(rate(tfs_opticalattackdetector_execution_details_histogram_duration_bucket{step=\"uldetection\"}[$__rate_interval])) by (le))", "hide": false, "legendFormat": "UL Inference", "range": true, @@ -555,7 +563,7 @@ "uid": "${DS_PROMETHEUS}" }, "editorMode": "code", - "expr": "histogram_quantile(0.95, sum(rate(tfs_opticalattackdetector_cache_response_time_bucket[$__rate_interval])) by (le))", + "expr": "histogram_quantile(0.95, sum(rate(tfs_opticalattackdetector_execution_details_histogram_duration_bucket{step=\"cachefetch\"}[$__rate_interval])) by (le))", "hide": false, "interval": "", "legendFormat": "Cache", @@ -568,7 +576,7 @@ "uid": "${DS_PROMETHEUS}" }, "editorMode": "code", - "expr": "histogram_quantile(0.95, sum(rate(tfs_opticalattackdetector_mitigation_response_time_bucket[$__rate_interval])) by (le))", + "expr": "histogram_quantile(0.95, sum(rate(tfs_opticalattackdetector_execution_details_histogram_duration_bucket{step=\"mitigation\"}[$__rate_interval])) by (le))", "hide": false, "interval": "", "legendFormat": "Mitigator", @@ -1353,7 +1361,7 @@ "type": "timeseries" }, { - "collapsed": false, + "collapsed": true, "gridPos": { "h": 1, "w": 24, @@ -1361,163 +1369,164 @@ "y": 44 }, "id": 2, - "panels": [], - "title": "General status", - "type": "row" - }, - { - "datasource": { - "type": "prometheus", - "uid": "${DS_PROMETHEUS}" - }, - "fieldConfig": { - "defaults": { - "color": { - "mode": "palette-classic" - }, - "custom": { - "axisLabel": "", - "axisPlacement": "auto", - "barAlignment": 0, - "drawStyle": "line", - "fillOpacity": 29, - "gradientMode": "none", - "hideFrom": { - "legend": false, - "tooltip": false, - "viz": false - }, - "lineInterpolation": "linear", - "lineWidth": 1, - "pointSize": 5, - "scaleDistribution": { - "type": "linear" - }, - "showPoints": "auto", - "spanNulls": false, - "stacking": { - "group": "A", - "mode": "normal" - }, - "thresholdsStyle": { - "mode": "off" - } - }, - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "red", - "value": 80 - } - ] - }, - "unit": "mwatt" - }, - "overrides": [] - }, - "gridPos": { - "h": 8, - "w": 12, - "x": 0, - "y": 45 - }, - "id": 33, - "options": { - "legend": { - "calcs": [], - "displayMode": "list", - "placement": "right" - }, - "tooltip": { - "mode": "single", - "sort": "none" - } - }, - "targets": [ - { - "datasource": { - "type": "prometheus", - "uid": "${DS_PROMETHEUS}" - }, - "editorMode": "code", - "exemplar": false, - "expr": "sum(scaph_process_power_consumption_microwatts{namespace=\"tfs\", cmdline=~\".+opticalattackmanager.+\"})/1000", - "instant": false, - "legendFormat": "Manager", - "range": true, - "refId": "A" - }, + "panels": [ { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, - "editorMode": "code", - "exemplar": false, - "expr": "sum(scaph_process_power_consumption_microwatts{namespace=\"tfs\", cmdline=~\".+opticalattackdetector.+\"})/1000", - "hide": false, - "instant": false, - "legendFormat": "Detector", - "range": true, - "refId": "B" - }, - { - "datasource": { - "type": "prometheus", - "uid": "${DS_PROMETHEUS}" + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 29, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "normal" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "mwatt" + }, + "overrides": [] }, - "editorMode": "code", - "exemplar": false, - "expr": "sum(scaph_process_power_consumption_microwatts{namespace=\"tfs\", cmdline=~\".+dbscan.+\"})/1000", - "hide": false, - "instant": false, - "interval": "", - "legendFormat": "UL Inference", - "range": true, - "refId": "C" - }, - { - "datasource": { - "type": "prometheus", - "uid": "${DS_PROMETHEUS}" + "gridPos": { + "h": 8, + "w": 12, + "x": 0, + "y": 45 }, - "editorMode": "code", - "exemplar": false, - "expr": "sum(scaph_process_power_consumption_microwatts{namespace=\"tfs\", cmdline=~\"redis-server.+\"})/1000", - "hide": false, - "instant": false, - "interval": "", - "legendFormat": "Cache", - "range": true, - "refId": "D" - }, - { - "datasource": { - "type": "prometheus", - "uid": "${DS_PROMETHEUS}" + "id": 33, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "right" + }, + "tooltip": { + "mode": "single", + "sort": "none" + } }, - "editorMode": "code", - "exemplar": false, - "expr": "sum(scaph_process_power_consumption_microwatts{namespace=\"tfs\", cmdline=~\".+opticalattackmitigator.+\"})/1000", - "hide": false, - "instant": false, - "interval": "", - "legendFormat": "Mitigator", - "range": true, - "refId": "E" + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${DS_PROMETHEUS}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "sum(scaph_process_power_consumption_microwatts{namespace=\"tfs\", cmdline=~\".+opticalattackmanager.+\"})/1000", + "instant": false, + "legendFormat": "Manager", + "range": true, + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${DS_PROMETHEUS}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "sum(scaph_process_power_consumption_microwatts{namespace=\"tfs\", cmdline=~\".+opticalattackdetector.+\"})/1000", + "hide": false, + "instant": false, + "legendFormat": "Detector", + "range": true, + "refId": "B" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${DS_PROMETHEUS}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "sum(scaph_process_power_consumption_microwatts{namespace=\"tfs\", cmdline=~\".+dbscan.+\"})/1000", + "hide": false, + "instant": false, + "interval": "", + "legendFormat": "UL Inference", + "range": true, + "refId": "C" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${DS_PROMETHEUS}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "sum(scaph_process_power_consumption_microwatts{namespace=\"tfs\", cmdline=~\"redis-server.+\"})/1000", + "hide": false, + "instant": false, + "interval": "", + "legendFormat": "Cache", + "range": true, + "refId": "D" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${DS_PROMETHEUS}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "sum(scaph_process_power_consumption_microwatts{namespace=\"tfs\", cmdline=~\".+opticalattackmitigator.+\"})/1000", + "hide": false, + "instant": false, + "interval": "", + "legendFormat": "Mitigator", + "range": true, + "refId": "E" + } + ], + "title": "Energy consumption", + "type": "timeseries" } ], - "title": "Energy consumption", - "type": "timeseries" + "title": "General status", + "type": "row" } ], - "refresh": "5s", + "refresh": "", "schemaVersion": 36, "style": "dark", "tags": [], @@ -1525,13 +1534,13 @@ "list": [] }, "time": { - "from": "now-5m", + "from": "now-30m", "to": "now" }, "timepicker": {}, "timezone": "", "title": "TFS / Optical cybersecurity", "uid": "-Q-B-AsVk", - "version": 1, + "version": 5, "weekStart": "" } \ No newline at end of file diff --git a/src/tests/scenario3/optical/deploy_specs.sh b/src/tests/scenario3/optical/deploy_specs.sh index 878013d8b82177e3d70aa432e01583f03eded237..73c9112254c3e95eea4155abd7afd26ee358e368 100644 --- a/src/tests/scenario3/optical/deploy_specs.sh +++ b/src/tests/scenario3/optical/deploy_specs.sh @@ -21,6 +21,8 @@ export TFS_COMPONENTS="context device automation monitoring pathcomp service sli # addition for the optical cybersecurity component export TFS_COMPONENTS="${TFS_COMPONENTS} dbscanserving opticalattackmitigator opticalattackdetector opticalattackmanager" + +export TFS_EXTRA_MANIFESTS="manifests/nginx_ingress_http.yaml manifests/servicemonitors.yaml" export TFS_EXTRA_MANIFESTS="${TFS_EXTRA_MANIFESTS} manifests/cachingservice.yaml" diff --git a/src/tests/scenario3/optical/jocn/README.md b/src/tests/scenario3/optical/jocn/README.md index 0981331111d00ff7e6a6245c20186d4dc60f55f8..dfc3d373b626e8f68a52ecd86ea6834568c82f00 100644 --- a/src/tests/scenario3/optical/jocn/README.md +++ b/src/tests/scenario3/optical/jocn/README.md @@ -2,4 +2,6 @@ __Authors__: [Carlos Natalino](https://www.chalmers.se/en/persons/carda/), Lluis Gifre Renom, Francisco-Javier Moreno-Muro, Sergio Gonzalez Diaz, Ricard Vilalta, Raul Muñoz, Paolo Monti, and Marija Furdek -Experiments from the JOCN paper. \ No newline at end of file +The paper has been published as open access: https://doi.org/10.1364/JOCN.482932 + +This folder contains the experiments published in the JOCN paper. diff --git a/src/tests/scenario3/optical/jocn/run_experiment.py b/src/tests/scenario3/optical/jocn/run_experiment.py index 4ebf5ea80baecc89a66fef5bcb0f240bd61f1f5a..d9cfb9e4b4d7daa55f2b399c90c52a35715d279c 100644 --- a/src/tests/scenario3/optical/jocn/run_experiment.py +++ b/src/tests/scenario3/optical/jocn/run_experiment.py @@ -29,15 +29,24 @@ from kubernetes import client, config from common.Constants import ServiceNameEnum from common.Settings import get_service_host, get_setting, wait_for_environment_variables -from configs import base_results_folder, datetime_format, hpa_data - LOGGER = None SERVICE_LIST_KEY = get_setting( "OPTICALATTACKMANAGER_SERVICE_LIST_KEY", default="opt-sec:active-services" ) # Configs can be set in Configuration class directly or using helper utility +namespace = get_setting("TFS_K8S_NAMESPACE", default="tfs") config.load_kube_config() +v1 = client.CoreV1Api() + +ret = v1.list_namespaced_endpoints(namespace=namespace, watch=False) +for item in ret.items: + if "caching" in item.metadata.name: + for subset in item.subsets: + for port in subset.ports: + if "redis" in port.name: # endpoint is ready for being scraped + CACHING_HOST = subset.addresses[0].ip + CACHING_PORT = port.port logging.getLogger("kubernetes").setLevel(logging.INFO) # avoid lengthy messages @@ -53,17 +62,11 @@ def signal_handler(signal, frame): # pylint: disable=redefined-outer-name def manage_number_services(terminate, folder): # connecting with Redis - redis_host = get_service_host(ServiceNameEnum.CACHING) - redis_password = None - if redis_host is not None: - redis_port = int(get_setting("CACHINGSERVICE_SERVICE_PORT_REDIS")) - redis_password = get_setting("REDIS_PASSWORD") - else: - LOGGER.fatal("No environment variables set for Redis") + redis_password = get_setting("REDIS_PASSWORD") cache = None try: - cache = redis.Redis(host=redis_host, port=redis_port, password=redis_password) + cache = redis.Redis(host=CACHING_HOST, port=CACHING_PORT, password=redis_password) except Exception as e: LOGGER.exception(e) @@ -73,43 +76,11 @@ def manage_number_services(terminate, folder): # make sure we have the correct loop time cache.set("MONITORING_INTERVAL", 30) - # connecting to the HPA API - autoscaling = client.AutoscalingV1Api() - - # connecting to the custom objects API - api = client.CustomObjectsApi() - - # open the file that will store the information - services_file = open(os.path.join(folder, "services.csv"), "wt", encoding="utf-8") - services_file.write("# file with number of services\n") - services_file.write("timestamp,number_services") - - hpa_file = open(os.path.join(folder, "hpas.csv"), "wt", encoding="utf-8") - - # writing headers for the HPA columns - hpas = autoscaling.list_namespaced_horizontal_pod_autoscaler(namespace="tfs") - - for hpa in hpas.items: - hpa_file.write(hpa.metadata.name + "\n") - for d in hpa_data: - services_file.write(f",{hpa.metadata.name}_{d}") - - # monitoring CPU and RAM usage of the single Pods - for s in ["cache", "manager"]: - for k in ["cpu", "ram"]: - services_file.write(f",{s}_{k}") - - services_file.write("\n") - services_file.flush() - - hpa_file.flush() - hpa_file.close() - # define number of services # 6 values followed by two zeros number_services = [0, 10] - loads = [120, 240, 480, 960, 1440, 1920, 1922] + loads = [120, 240, 480, 960, 1440, 1920, 1921] for load in loads: number_services.append(int(load/2)) for _ in range(5): @@ -125,41 +96,6 @@ def manage_number_services(terminate, folder): if cur_tick % ticks == 0: LOGGER.debug("go load!") - # getting data from autoscaler - hpas = autoscaling.list_namespaced_horizontal_pod_autoscaler(namespace="tfs") - # - "cur_utilization" - # - "target_utilization" - # - "cur_replicas" - # - "desired_replicas" - hpa_string = "" - for hpa in hpas.items: - hpa_string += f",{hpa.status.current_cpu_utilization_percentage}" - hpa_string += f",{hpa.spec.target_cpu_utilization_percentage}" - hpa_string += f",{hpa.status.current_replicas}" - hpa_string += f",{hpa.status.desired_replicas}" - - # monitoring resource usage - k8s_pods = api.list_cluster_custom_object( - "metrics.k8s.io", "v1beta1", "namespaces/tfs/pods" - ) - # - "cache_cpu" - # - "cache_ram" - # - "manager_cpu" - # - "manager_ram" - resource_string = "" - - # we use two loops to ensure the same order - for stats in k8s_pods["items"]: - if "caching" in stats['metadata']['name']: - resource_string += f",{stats['containers'][0]['usage']['cpu']}" - resource_string += f",{stats['containers'][0]['usage']['memory']}" - break - for stats in k8s_pods["items"]: - if "opticalattackmanager" in stats['metadata']['name']: - resource_string += f",{stats['containers'][0]['usage']['cpu']}" - resource_string += f",{stats['containers'][0]['usage']['memory']}" - break - # calculate the difference between current and expected cur_services = cache.llen(SERVICE_LIST_KEY) diff_services = cur_services - number_services[cur_tick % len(number_services)] @@ -169,12 +105,6 @@ def manage_number_services(terminate, folder): LOGGER.info("Setting monitoring interval to 60") set_to_60 = True - # write current number with one second difference - cur_datetime = datetime.datetime.now() - reported_datetime = cur_datetime - datetime.timedelta(seconds=1) - reported_datetime_str = reported_datetime.strftime(datetime_format) - services_file.write(f"{reported_datetime_str},{cur_services}{hpa_string}\n") - if diff_services < 0: # current is lower than expected LOGGER.debug(f"inserting <{-diff_services}> services") for _ in range(-diff_services): @@ -193,97 +123,20 @@ def manage_number_services(terminate, folder): LOGGER.debug(f"deleting <{diff_services}> services") cache.lpop(SERVICE_LIST_KEY, diff_services) - # writing the new number with the current time - services_file.write( - f"{datetime.datetime.now().strftime(datetime_format)}," - f"{number_services[cur_tick % len(number_services)]}" - f"{hpa_string}{resource_string}\n" - ) - assert number_services[cur_tick % len(number_services)] == cache.llen(SERVICE_LIST_KEY) - services_file.flush() else: LOGGER.debug("tick load!") cur_tick += 1 if cur_tick > len(number_services) + 1: break - services_file.flush() - services_file.close() + # make sure we have the correct loop time cache.set("MONITORING_INTERVAL", 30) LOGGER.info("Finished load!") -def monitor_endpoints(terminate): - LOGGER.info("starting experiment!") - v1 = client.CoreV1Api() - while not terminate.wait(timeout=30): - - # load base yaml - with open("/home/carda/projects/prometheus/prometheus.yml.backup", "rt") as file: - current_version = yaml.load(file, Loader=yaml.FullLoader) - - # checking endpoints - ret = v1.list_namespaced_endpoints(namespace="tfs", watch=False) - for item in ret.items: - found = False - - for subset in item.subsets: - for p, q in enumerate(subset.ports): - if q.name == "metrics": # endpoint is ready for being scraped - found = True - if not found: - continue # if no `metrics` port, jump! - - found = False # now look for existing configuration - for i in range(len(current_version["scrape_configs"])): - if current_version["scrape_configs"][i]["job_name"] == item.metadata.name: - found = True - break # found it! `i` will contain the correct index - - if not found: # write it from zero! - current_version["scrape_configs"].append({}) - current_version["scrape_configs"][-1]["job_name"] = item.metadata.name - - # set the correct `i` value - i = len(current_version["scrape_configs"]) - 1 - - if "static_configs" not in current_version["scrape_configs"][i]: - current_version["scrape_configs"][i]["static_configs"] = [{"targets": []}] - # reset IPs - current_version["scrape_configs"][i]["static_configs"][0]["targets"] = [] - for subset in item.subsets: - for p, q in enumerate(subset.ports): - if q.name == "metrics": - for c, a in enumerate(subset.addresses): - print(f"{item.metadata.name}\t{a.ip}:{q.port}") - current_version["scrape_configs"][i]["static_configs"][0]["targets"].append(f"{a.ip}:9192") - - # write yaml - with open("/home/carda/projects/prometheus/prometheus.yml", "wt") as file: - yaml.dump(current_version, file) - - # reloading configuration - # docs: https://www.robustperception.io/reloading-prometheus-configuration/ - requests.post("http://127.0.0.1:9090/-/reload") - - # resetting prometheus to the original state - # load base yaml - with open("/home/carda/projects/prometheus/prometheus.yml.backup", "rt") as file: - current_version = yaml.load(file, Loader=yaml.FullLoader) - - # write yaml - with open("/home/carda/projects/prometheus/prometheus.yml", "wt") as file: - yaml.dump(current_version, file) - # reloading configuration - # docs: https://www.robustperception.io/reloading-prometheus-configuration/ - requests.post("http://127.0.0.1:9090/-/reload") - - LOGGER.info("Finished experiment!") - - if __name__ == "__main__": # logging.basicConfig(level="DEBUG") logging.basicConfig( @@ -294,41 +147,18 @@ if __name__ == "__main__": LOGGER = logging.getLogger(__name__) wait_for_environment_variables( - ["CACHINGSERVICE_SERVICE_PORT_REDIS", "REDIS_PASSWORD"] + ["REDIS_PASSWORD"] ) signal.signal(signal.SIGINT, signal_handler) signal.signal(signal.SIGTERM, signal_handler) - # generate results folder - output_folder = os.path.join(base_results_folder, "jocn_" + datetime.datetime.now( - datetime.timezone.utc - ).strftime("%Y%m%dT%H%M%S.%fUTC")) - os.makedirs(output_folder) - # start load handler - proc_load = multiprocessing.Process( - target=manage_number_services, - args=( - terminate, - output_folder, - ), - ) - proc_load.start() - - # start experiment monitoring - proc_experiment = multiprocessing.Process( - target=monitor_endpoints, args=(terminate,) - ) - proc_experiment.start() + manage_number_services(terminate=terminate) # Wait for Ctrl+C or termination signal while not terminate.wait(timeout=0.1): pass - # waits for the processes to finish - proc_load.join() - proc_experiment.join() - # exits LOGGER.info("Bye!") diff --git a/src/tests/scenario3/optical/ofc23/README.md b/src/tests/scenario3/optical/ofc23/README.md index f517ab728906fa7640143a7b27d76418c5ee7960..32d5eb25216dfe17b5b80ca0430da4eee69f26f5 100644 --- a/src/tests/scenario3/optical/ofc23/README.md +++ b/src/tests/scenario3/optical/ofc23/README.md @@ -4,14 +4,22 @@ __Authors__: [Carlos Natalino](https://www.chalmers.se/en/persons/carda/), Lluis ## Executing +All the commands here assume you are in the TFS home folder. + +First, we need to load the TFS deploy specifications: + ```bash source src/tests/scenario3/optical/deploy_specs.sh ``` +Then, we load the environment variables that identify the TFS deployment: + ```bash source tfs_runtime_env_vars.sh ``` +Then, we are able to execute the load generator: + ```bash python src/tests/scenario3/optical/ofc23/run_experiment_demo.py ``` \ No newline at end of file diff --git a/src/tests/scenario3/optical/ofc23/dashboard.json b/src/tests/scenario3/optical/ofc23/dashboard.json index d62fe95a0407287168cd03195f3d48457d7ec288..98328dfd4d0a03dd8be710532c483e9e92aa13d4 100644 --- a/src/tests/scenario3/optical/ofc23/dashboard.json +++ b/src/tests/scenario3/optical/ofc23/dashboard.json @@ -725,7 +725,7 @@ }, "timepicker": {}, "timezone": "", - "title": "Scalable and Efficient Pipeline for ML-based Optical Network Monitoring", + "title": "Scalable and Efficient Pipeline for ML-based Optical Network Monitoring - No longer maintained!", "uid": "IYQSZX0Vk", "version": 4, "weekStart": "" diff --git a/src/tests/scenario3/optical/ofc23/run_experiment_demo.py b/src/tests/scenario3/optical/ofc23/run_experiment_demo.py index 27151695b82426cc76c97971bbbb1749d4ebbbf5..2f09f8d5aba38c865a20a2e57d22630d380a2b1b 100644 --- a/src/tests/scenario3/optical/ofc23/run_experiment_demo.py +++ b/src/tests/scenario3/optical/ofc23/run_experiment_demo.py @@ -21,24 +21,26 @@ import threading import redis from kubernetes import client, config -from common.Constants import ServiceNameEnum -from common.Settings import get_service_host, get_setting, wait_for_environment_variables +from common.Settings import get_setting, wait_for_environment_variables # Configs can be set in Configuration class directly or using helper utility namespace = get_setting("TFS_K8S_NAMESPACE", default="tfs") config.load_kube_config() v1 = client.CoreV1Api() -caching_pod = None -pods = v1.list_namespaced_pod(namespace=namespace) -for pod in pods.items: - # print(pod.metadata) - if "app" in pod.metadata.labels and "caching" in pod.metadata.labels["app"]: - caching_pod = pod +ret = v1.list_namespaced_endpoints(namespace=namespace, watch=False) +for item in ret.items: + if "caching" in item.metadata.name: + for subset in item.subsets: + for port in subset.ports: + print(item.metadata.name, port) + if "redis" in port.name: # endpoint is ready for being scraped + CACHING_HOST = subset.addresses[0].ip + CACHING_PORT = port.port LOGGER = None SERVICE_LIST_KEY = get_setting( - "OPTICALATTACKMANAGER_SERVICE_LIST_KEY", default="opt-sec:active-services" + "OPTICALATTACKMANAGER_SERVICE_LIST_KEY", default="opt-sec-active-services" ) # setting up graceful shutdown @@ -53,19 +55,12 @@ def signal_handler(signal, frame): # pylint: disable=redefined-outer-name def manage_number_services(terminate): # connecting with Redis - redis_host = caching_pod.status.pod_ip - redis_password = None - if redis_host is not None: - redis_port = int(get_setting("CACHINGSERVICE_SERVICE_PORT_REDIS", default=6379)) - redis_password = get_setting("REDIS_PASSWORD") - LOGGER.info(f"Redis password: {redis_password}") - else: - LOGGER.fatal("No environment variables set for Redis") + redis_password = get_setting("REDIS_PASSWORD") cache = None try: - LOGGER.info(f"Connecting to Redis: host={redis_host}, port={redis_port}, password={redis_password}") - cache = redis.Redis(host=redis_host, port=redis_port, password=redis_password) + LOGGER.info(f"Connecting to Redis: host={CACHING_HOST}, port={CACHING_PORT}, password={redis_password}") + cache = redis.Redis(host=CACHING_HOST, port=CACHING_PORT, password=redis_password) cache.ping() LOGGER.info("Connected to Redis") except Exception as e: @@ -78,10 +73,11 @@ def manage_number_services(terminate): cache.set("MONITORING_INTERVAL", 30) # define number of services + next_kpi_id = 0 print("Starting load!") while not terminate.wait(timeout=1): # timeout=300 - print("\no <number> -> sets the number services currently monitored") + print("\n\no <number> -> sets the number services currently monitored") print("p <seconds> -> sets the loop period") print("m <1=SL / 2=UL> -> sets the ML model used") print("q -> exit") @@ -101,16 +97,20 @@ def manage_number_services(terminate): if diff_services < 0: # current is lower than expected LOGGER.debug(f"\tinserting <{-diff_services}> services") for _ in range(-diff_services): + next_kpi_id += 1 cache.lpush( SERVICE_LIST_KEY, pickle.dumps( { "context": str(uuid.uuid4()), "service": str(uuid.uuid4()), - "kpi": str(uuid.uuid4()), + # "kpi": str(uuid.uuid4()), + "kpi": str(next_kpi_id), } ), ) + LOGGER.debug(f"Services at the Redis DB: {cache.llen(SERVICE_LIST_KEY)}") + elif diff_services > 0: # current is greater than expected # delete services LOGGER.debug(f"\tdeleting <{diff_services}> services") diff --git a/src/tests/scenario3/optical/scaphandre.yaml b/src/tests/scenario3/optical/scaphandre.yaml deleted file mode 100644 index 3b348cb8a91ee257eaa9aa73e96108d20931e2a2..0000000000000000000000000000000000000000 --- a/src/tests/scenario3/optical/scaphandre.yaml +++ /dev/null @@ -1,47 +0,0 @@ -# Copyright 2022-2023 ETSI TeraFlowSDN - TFS OSG (https://tfs.etsi.org/) -# -# 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. - -# this file deploys a tool that enables the monitoring of energy consumption -# per component. -# More info: https://github.com/hubblo-org/scaphandre - ---- -apiVersion: monitoring.coreos.com/v1 -kind: ServiceMonitor -metadata: - namespace: monitoring # namespace where prometheus is running - name: tfs-scaph-metric - labels: - app.kubernetes.io/name: scaphandre - #release: prometheus - #release: prom # name of the release - # ( VERY IMPORTANT: You need to know the correct release name by viewing - # the servicemonitor of Prometheus itself: Without the correct name, - # Prometheus cannot identify the metrics of the Flask app as the target.) -spec: - selector: - matchLabels: - # Target app service - #namespace: tfs - app.kubernetes.io/name: scaphandre - #release: prometheus # same as above - endpoints: - - port: metrics # named port in target app - scheme: http - path: /metrics # path to scrape - interval: 5s # scrape interval - namespaceSelector: - any: false - matchNames: - - tfs # namespace where the app is running \ No newline at end of file diff --git a/src/webui/grafana_db_mon_kpis_psql.json b/src/webui/grafana_db_mon_kpis_psql.json index 750e5254ea1e4e689d92fc39cedd22a5ee619e03..df72f9ab052c02d5a4af7e7923a96fe968116103 100644 --- a/src/webui/grafana_db_mon_kpis_psql.json +++ b/src/webui/grafana_db_mon_kpis_psql.json @@ -144,7 +144,6 @@ "options": { "legend": { "calcs": [ - "first", "min", "mean", "max", @@ -169,7 +168,7 @@ "hide": false, "metricColumn": "kpi_value", "rawQuery": true, - "rawSql": "SELECT\r\n $__time(timestamp), kpi_value AS metric, device_name, endpoint_name, kpi_sample_type\r\nFROM\r\n tfs_monitoring_kpis\r\nWHERE\r\n $__timeFilter(timestamp) AND device_name IN (${device_name}) AND endpoint_name IN (${endpoint_name}) AND kpi_sample_type IN (${kpi_sample_type})\r\nGROUP BY\r\n device_name, endpoint_name, kpi_sample_type\r\nORDER BY\r\n timestamp", + "rawSql": "SELECT\r\n $__time(timestamp), kpi_value AS metric, device_name, endpoint_name, kpi_sample_type\r\nFROM\r\n tfs_monitoring_kpis\r\nWHERE\r\n $__timeFilter(timestamp) AND device_name IN (${device_name}) AND endpoint_name IN (${endpoint_name}) AND kpi_sample_type IN (${kpi_sample_type})\r\nORDER BY\r\n timestamp", "refId": "A", "select": [ [ diff --git a/src/webui/service/device/forms.py b/src/webui/service/device/forms.py index 24bc92b3a5a4aec4321c07b17830f6111be7176d..e884e96a511ab90625bda257075c80adce4406cd 100644 --- a/src/webui/service/device/forms.py +++ b/src/webui/service/device/forms.py @@ -18,10 +18,10 @@ from wtforms.validators import DataRequired, Length, NumberRange, ValidationErro from common.proto.context_pb2 import DeviceOperationalStatusEnum class AddDeviceForm(FlaskForm): - device_id = StringField('ID', - validators=[DataRequired(), Length(min=5)]) + device_id = StringField('ID', validators=[DataRequired(), Length(min=5)]) device_type = SelectField('Type') operational_status = SelectField('Operational Status', coerce=int, validators=[NumberRange(min=0)]) + device_drivers_undefined = BooleanField('UNDEFINED / EMULATED') device_drivers_openconfig = BooleanField('OPENCONFIG') device_drivers_transport_api = BooleanField('TRANSPORT_API') @@ -30,9 +30,12 @@ class AddDeviceForm(FlaskForm): device_drivers_onf_tr_352 = BooleanField('ONF_TR_352') device_drivers_xr = BooleanField('XR') device_drivers_ietf_l2vpn = BooleanField('IETF L2VPN') + device_drivers_gnmi_openconfig = BooleanField('GNMI OPENCONFIG') + device_config_address = StringField('connect/address',default='127.0.0.1',validators=[DataRequired(), Length(min=5)]) device_config_port = StringField('connect/port',default='0',validators=[DataRequired(), Length(min=1)]) device_config_settings = TextAreaField('connect/settings',default='{}',validators=[DataRequired(), Length(min=2)]) + submit = SubmitField('Add') def validate_operational_status(form, field): diff --git a/src/webui/service/device/routes.py b/src/webui/service/device/routes.py index bc46847704b28fb6ef44de0aae030ccb67935928..4590c7f01a24e801ecc775ad0b22cf0dcdea3452 100644 --- a/src/webui/service/device/routes.py +++ b/src/webui/service/device/routes.py @@ -122,6 +122,8 @@ def add(): device_drivers.append(DeviceDriverEnum.DEVICEDRIVER_XR) if form.device_drivers_ietf_l2vpn.data: device_drivers.append(DeviceDriverEnum.DEVICEDRIVER_IETF_L2VPN) + if form.device_drivers_gnmi_openconfig.data: + device_drivers.append(DeviceDriverEnum.DEVICEDRIVER_GNMI_OPENCONFIG) device_obj.device_drivers.extend(device_drivers) # pylint: disable=no-member try: diff --git a/src/webui/service/templates/device/add.html b/src/webui/service/templates/device/add.html index 6b11a19208cc9c10daa4b7615ff46ac627162573..c9165667dd8c089e91400f652177b4ca4ec98010 100644 --- a/src/webui/service/templates/device/add.html +++ b/src/webui/service/templates/device/add.html @@ -81,20 +81,17 @@ {% endfor %} </div> {% else %} - {{ form.device_drivers_undefined }} {{ form.device_drivers_undefined.label(class="col-sm-3 - col-form-label") }} - {{ form.device_drivers_openconfig }} {{ form.device_drivers_openconfig.label(class="col-sm-3 - col-form-label") }} - {{ form.device_drivers_transport_api }} {{ form.device_drivers_transport_api.label(class="col-sm-3 - col-form-label") }} - <br />{{ form.device_drivers_p4 }} {{ form.device_drivers_p4.label(class="col-sm-3 col-form-label") }} - {{ form.device_drivers_ietf_network_topology }} {{ - form.device_drivers_ietf_network_topology.label(class="col-sm-3 - col-form-label") }} - {{ form.device_drivers_onf_tr_352 }} {{ form.device_drivers_onf_tr_352.label(class="col-sm-3 - col-form-label") }}<br /> - {{ form.device_drivers_xr }} {{ form.device_drivers_xr.label(class="col-sm-3 - col-form-label") }} + {{ form.device_drivers_undefined }} {{ form.device_drivers_undefined.label(class="col-sm-3 col-form-label") }} + {{ form.device_drivers_openconfig }} {{ form.device_drivers_openconfig.label(class="col-sm-3 col-form-label") }} + {{ form.device_drivers_transport_api }} {{ form.device_drivers_transport_api.label(class="col-sm-3 col-form-label") }} + <br /> + {{ form.device_drivers_p4 }} {{ form.device_drivers_p4.label(class="col-sm-3 col-form-label") }} + {{ form.device_drivers_ietf_network_topology }} {{form.device_drivers_ietf_network_topology.label(class="col-sm-3 col-form-label") }} + {{ form.device_drivers_onf_tr_352 }} {{ form.device_drivers_onf_tr_352.label(class="col-sm-3 col-form-label") }} + <br /> + {{ form.device_drivers_xr }} {{ form.device_drivers_xr.label(class="col-sm-3 col-form-label") }} + {{ form.device_drivers_ietf_l2vpn }} {{ form.device_drivers_ietf_l2vpn.label(class="col-sm-3 col-form-label") }} + {{ form.device_drivers_gnmi_openconfig }} {{ form.device_drivers_gnmi_openconfig.label(class="col-sm-3 col-form-label") }} {% endif %} </div> </div> diff --git a/src/webui/service/templates/device/detail.html b/src/webui/service/templates/device/detail.html index 4d33578e2532c26b4062565bd2cbb52106773a1a..c35ae163d3f8344f1ebb49241cc15a4afa3401d5 100644 --- a/src/webui/service/templates/device/detail.html +++ b/src/webui/service/templates/device/detail.html @@ -63,6 +63,7 @@ <th scope="col">Endpoint UUID</th> <th scope="col">Name</th> <th scope="col">Type</th> + <th scope="col">Location</th> </tr> </thead> <tbody> @@ -77,6 +78,9 @@ <td> {{ endpoint.endpoint_type }} </td> + <td> + {{ endpoint.endpoint_location }} + </td> </tr> {% endfor %} </tbody>